diff --git a/build/contracts/Avatar.json b/build/contracts/Avatar.json index 92fb69a..1bef823 100644 --- a/build/contracts/Avatar.json +++ b/build/contracts/Avatar.json @@ -119,14 +119,22 @@ "type": "function" }, { - "constant": true, + "constant": false, "inputs": [ { - "name": "_address", + "name": "_from", + "type": "address" + }, + { + "name": "_to", "type": "address" + }, + { + "name": "_value", + "type": "uint256" } ], - "name": "isOnWhiteList", + "name": "transferFrom", "outputs": [ { "name": "", @@ -134,26 +142,18 @@ } ], "payable": false, - "stateMutability": "view", + "stateMutability": "nonpayable", "type": "function" }, { - "constant": false, + "constant": true, "inputs": [ { - "name": "_from", - "type": "address" - }, - { - "name": "_to", + "name": "_address", "type": "address" - }, - { - "name": "_value", - "type": "uint256" } ], - "name": "transferFrom", + "name": "isOnWhiteList", "outputs": [ { "name": "", @@ -161,18 +161,18 @@ } ], "payable": false, - "stateMutability": "nonpayable", + "stateMutability": "view", "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", "exportedSymbols": { "Avatar": [ 287 @@ -193,23 +193,23 @@ "src": "0:24:2" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", "id": 90, "nodeType": "ImportDirective", "scope": 288, - "sourceUnit": 1097, + "sourceUnit": 1157, "src": "25:24:2", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", "id": 91, "nodeType": "ImportDirective", "scope": 288, - "sourceUnit": 872, + "sourceUnit": 905, "src": "50:28:2", "symbolAliases": [], "unitAlias": "" @@ -220,7 +220,7 @@ "id": 92, "nodeType": "ImportDirective", "scope": 288, - "sourceUnit": 2807, + "sourceUnit": 2950, "src": "79:59:2", "symbolAliases": [], "unitAlias": "" @@ -234,10 +234,10 @@ "id": 93, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "223:7:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, @@ -247,7 +247,7 @@ } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, @@ -255,7 +255,7 @@ "id": 287, "linearizedBaseContracts": [ 287, - 2806 + 2949 ], "name": "Avatar", "nodeType": "ContractDefinition", @@ -270,7 +270,7 @@ "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { @@ -278,10 +278,10 @@ "id": 95, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "237:8:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -345,7 +345,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "358:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -378,7 +378,7 @@ "name": "isOnWhiteList", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, + "referencedDeclaration": 286, "src": "344:13:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", @@ -411,10 +411,10 @@ "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "336:7:2", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", @@ -482,7 +482,7 @@ "referencedDeclaration": 96, "src": "443:8:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -497,13 +497,13 @@ "referencedDeclaration": 112, "src": "454:9:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "443:20:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -525,7 +525,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "473:5:2", "typeDescriptions": { "typeIdentifier": "t_address", @@ -542,7 +542,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "481:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -597,7 +597,7 @@ "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { @@ -605,10 +605,10 @@ "id": 111, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "406:8:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1369,7 +1369,7 @@ "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, + "referencedDeclaration": 2923, "src": "553:9:2", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -1758,7 +1758,7 @@ "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, + "referencedDeclaration": 2923, "src": "1160:9:2", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -1819,325 +1819,300 @@ }, { "body": { - "id": 255, + "id": 253, "nodeType": "Block", - "src": "1415:180:2", + "src": "1510:143:2", "statements": [ { - "body": { - "id": 251, - "nodeType": "Block", - "src": "1469:98: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": [ { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 246, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "argumentTypes": null, + "arguments": [ + { "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" - } - }, + "hexValue": "50617261746969546f6b656e", + "id": 242, "isConstant": false, - "isLValue": true, - "isPure": false, + "isLValue": false, + "isPure": true, + "kind": "string", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1487:12:2", + "nodeType": "Literal", + "src": "1575:14:2", + "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { + ], + "expression": { "argumentTypes": null, - "id": 245, - "name": "_address", + "id": 240, + "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "1503:8:2", + "referencedDeclaration": 96, + "src": "1554:8:2", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" } }, - "src": "1487:24:2", + "id": 241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1554:20:2", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" } }, - "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" - } - ] + "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" } } - ] - }, - "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", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 239, + "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1442:1:2", + "referencedDeclaration": 904, + "src": "1541:12:2", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" } }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { + "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": 236, - "name": "whitelist", + "id": 248, + "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1446:9:2", + "referencedDeclaration": 226, + "src": "1627:5:2", "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "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", + "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" - }, - "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": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { "argumentTypes": null, - "id": 239, - "name": "i", + "id": 246, + "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1464:1:2", + "referencedDeclaration": 238, + "src": "1608:5:2", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "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_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 241, - "nodeType": "ExpressionStatement", - "src": "1464:3:2" - }, - "nodeType": "ForStatement", - "src": "1425:142:2" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 253, + "id": 251, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "bool", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "1583:5:2", - "subdenomination": null, + "names": [], + "nodeType": "FunctionCall", + "src": "1608:38:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" - }, - "value": "false" + } }, - "functionReturnParameters": 230, - "id": 254, + "functionReturnParameters": 236, + "id": 252, "nodeType": "Return", - "src": "1576:12:2" + "src": "1601:45:2" } ] }, "documentation": null, - "id": 256, + "id": 254, "implemented": true, "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isOnWhiteList", + "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": 227, + "id": 231, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 226, - "name": "_address", + "name": "_from", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1367:16:2", + "scope": 254, + "src": "1375:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2148,7 +2123,33 @@ "id": 225, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1367:7:2", + "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" @@ -2156,22 +2157,48 @@ }, "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": "1366:18:2" + "src": "1365:76:2" }, "payable": false, "returnParameters": { - "id": 230, + "id": 236, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 229, + "id": 235, "name": "", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1409:4:2", + "scope": 254, + "src": "1500:4:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2179,10 +2206,10 @@ "typeString": "bool" }, "typeName": { - "id": 228, + "id": 234, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1409:4:2", + "src": "1500:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2192,11 +2219,11 @@ "visibility": "internal" } ], - "src": "1408:6:2" + "src": "1499:6:2" }, "scope": 287, - "src": "1344:251:2", - "stateMutability": "view", + "src": "1344:309:2", + "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, @@ -2204,256 +2231,301 @@ "body": { "id": 285, "nodeType": "Block", - "src": "1705:143:2", + "src": "1726:180: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": [ + "body": { + "id": 281, + "nodeType": "Block", + "src": "1780:98:2", + "statements": [ { - "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" - } + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" }, - "id": 273, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1749:20:2", + "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_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "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" + "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" + } + ] } } - ], - "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)" - } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 276, + "id": 268, "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" - } - }, - { + "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": 281, - "name": "_to", + "id": 266, + "name": "whitelist", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 260, - "src": "1829:3:2", + "referencedDeclaration": 99, + "src": "1757:9:2", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "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": [ { - "argumentTypes": null, - "id": 282, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "1834:6:2", + "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": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "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": 278, - "name": "token", + "id": 269, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 270, - "src": "1803:5:2", + "referencedDeclaration": 262, + "src": "1775:1:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "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)" + "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": false, - "kind": "functionCall", + "isPure": true, + "kind": "bool", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1803:38:2", + "nodeType": "Literal", + "src": "1894:5:2", + "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" - } + }, + "value": "false" }, - "functionReturnParameters": 268, + "functionReturnParameters": 260, "id": 284, "nodeType": "Return", - "src": "1796:45:2" + "src": "1887:12:2" } ] }, @@ -2461,67 +2533,21 @@ "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", + "isDeclaredConst": true, + "modifiers": [], + "name": "isOnWhiteList", "nodeType": "FunctionDefinition", "parameters": { - "id": 263, + "id": 257, "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", + "id": 256, + "name": "_address", "nodeType": "VariableDeclaration", "scope": 286, - "src": "1638:11:2", + "src": "1682:16:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2529,10 +2555,10 @@ "typeString": "address" }, "typeName": { - "id": 259, + "id": 255, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1638:7:2", + "src": "1682:7:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2540,48 +2566,22 @@ }, "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" + "src": "1681:18:2" }, "payable": false, "returnParameters": { - "id": 268, + "id": 260, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 267, + "id": 259, "name": "", "nodeType": "VariableDeclaration", "scope": 286, - "src": "1697:4:2", + "src": "1720:4:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2589,10 +2589,10 @@ "typeString": "bool" }, "typeName": { - "id": 266, + "id": 258, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1697:4:2", + "src": "1720:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2602,23 +2602,23 @@ "visibility": "internal" } ], - "src": "1696:6:2" + "src": "1719:6:2" }, "scope": 287, - "src": "1601:247:2", - "stateMutability": "nonpayable", + "src": "1659:247:2", + "stateMutability": "view", "superFunction": null, "visibility": "public" } ], "scope": 288, - "src": "204:1646:2" + "src": "204:1705:2" } ], - "src": "0:1851:2" + "src": "0:1910:2" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", "exportedSymbols": { "Avatar": [ 287 @@ -2639,23 +2639,23 @@ "src": "0:24:2" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", "id": 90, "nodeType": "ImportDirective", "scope": 288, - "sourceUnit": 1097, + "sourceUnit": 1157, "src": "25:24:2", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", "id": 91, "nodeType": "ImportDirective", "scope": 288, - "sourceUnit": 872, + "sourceUnit": 905, "src": "50:28:2", "symbolAliases": [], "unitAlias": "" @@ -2666,7 +2666,7 @@ "id": 92, "nodeType": "ImportDirective", "scope": 288, - "sourceUnit": 2807, + "sourceUnit": 2950, "src": "79:59:2", "symbolAliases": [], "unitAlias": "" @@ -2680,10 +2680,10 @@ "id": 93, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "223:7:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, @@ -2693,7 +2693,7 @@ } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, @@ -2701,7 +2701,7 @@ "id": 287, "linearizedBaseContracts": [ 287, - 2806 + 2949 ], "name": "Avatar", "nodeType": "ContractDefinition", @@ -2716,7 +2716,7 @@ "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { @@ -2724,10 +2724,10 @@ "id": 95, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "237:8:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2791,7 +2791,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "358:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -2824,7 +2824,7 @@ "name": "isOnWhiteList", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, + "referencedDeclaration": 286, "src": "344:13:2", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", @@ -2857,10 +2857,10 @@ "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "336:7:2", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", @@ -2928,7 +2928,7 @@ "referencedDeclaration": 96, "src": "443:8:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2943,13 +2943,13 @@ "referencedDeclaration": 112, "src": "454:9:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "443:20:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2971,7 +2971,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "473:5:2", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2988,7 +2988,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "481:3:2", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -3043,7 +3043,7 @@ "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { @@ -3051,10 +3051,10 @@ "id": 111, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "406:8:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3815,7 +3815,7 @@ "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, + "referencedDeclaration": 2923, "src": "553:9:2", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -4204,7 +4204,7 @@ "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, + "referencedDeclaration": 2923, "src": "1160:9:2", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -4265,325 +4265,300 @@ }, { "body": { - "id": 255, + "id": 253, "nodeType": "Block", - "src": "1415:180:2", + "src": "1510:143: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" - } - }, + "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": true, - "isPure": false, + "isLValue": false, + "isPure": true, + "kind": "string", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1487:12:2", + "nodeType": "Literal", + "src": "1575:14:2", + "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" + }, + "value": "ParatiiToken" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", + "typeString": "literal_string \"ParatiiToken\"" } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { + ], + "expression": { "argumentTypes": null, - "id": 245, - "name": "_address", + "id": 240, + "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "1503:8:2", + "referencedDeclaration": 96, + "src": "1554:8:2", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_contract$_Registry_$1156", + "typeString": "contract Registry" } }, - "src": "1487:24:2", + "id": 241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getContract", + "nodeType": "MemberAccess", + "referencedDeclaration": 1121, + "src": "1554:20:2", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" } }, - "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" - } - ] + "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" } } - ] - }, - "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", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 239, + "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1442:1:2", + "referencedDeclaration": 904, + "src": "1541:12:2", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", + "typeString": "type(contract ParatiiToken)" } }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { + "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": 236, - "name": "whitelist", + "id": 248, + "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 99, - "src": "1446:9:2", + "referencedDeclaration": 226, + "src": "1627:5:2", "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[] storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "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", + "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" - }, - "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": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { "argumentTypes": null, - "id": 239, - "name": "i", + "id": 246, + "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 232, - "src": "1464:1:2", + "referencedDeclaration": 238, + "src": "1608:5:2", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "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_uint256", - "typeString": "uint256" + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 241, - "nodeType": "ExpressionStatement", - "src": "1464:3:2" - }, - "nodeType": "ForStatement", - "src": "1425:142:2" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 253, + "id": 251, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "bool", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "1583:5:2", - "subdenomination": null, + "names": [], + "nodeType": "FunctionCall", + "src": "1608:38:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" - }, - "value": "false" + } }, - "functionReturnParameters": 230, - "id": 254, + "functionReturnParameters": 236, + "id": 252, "nodeType": "Return", - "src": "1576:12:2" + "src": "1601:45:2" } ] }, "documentation": null, - "id": 256, + "id": 254, "implemented": true, "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "isOnWhiteList", + "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": 227, + "id": 231, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 226, - "name": "_address", + "name": "_from", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1367:16:2", + "scope": 254, + "src": "1375:13:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4594,7 +4569,33 @@ "id": 225, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1367:7:2", + "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" @@ -4602,22 +4603,48 @@ }, "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": "1366:18:2" + "src": "1365:76:2" }, "payable": false, "returnParameters": { - "id": 230, + "id": 236, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 229, + "id": 235, "name": "", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "1409:4:2", + "scope": 254, + "src": "1500:4:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4625,10 +4652,10 @@ "typeString": "bool" }, "typeName": { - "id": 228, + "id": 234, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1409:4:2", + "src": "1500:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4638,11 +4665,11 @@ "visibility": "internal" } ], - "src": "1408:6:2" + "src": "1499:6:2" }, "scope": 287, - "src": "1344:251:2", - "stateMutability": "view", + "src": "1344:309:2", + "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, @@ -4650,256 +4677,301 @@ "body": { "id": 285, "nodeType": "Block", - "src": "1705:143:2", + "src": "1726:180: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": [ + "body": { + "id": 281, + "nodeType": "Block", + "src": "1780:98:2", + "statements": [ { - "argumentTypes": null, - "arguments": [ - { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { "argumentTypes": null, - "hexValue": "50617261746969546f6b656e", + "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": false, - "isPure": true, - "kind": "string", + "isLValue": true, + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "1770:14:2", - "subdenomination": null, + "nodeType": "IndexAccess", + "src": "1798:12:2", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" - }, - "value": "ParatiiToken" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", - "typeString": "literal_string \"ParatiiToken\"" + "typeIdentifier": "t_address", + "typeString": "address" } - ], - "expression": { + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { "argumentTypes": null, - "id": 272, - "name": "registry", + "id": 275, + "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "1749:8:2", + "referencedDeclaration": 256, + "src": "1814:8:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", - "typeString": "contract Registry" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 273, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1749:20:2", + "src": "1798:24:2", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "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" + "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" + } + ] } - ], - "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)" } + ] + }, + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 276, + "id": 268, "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" - } - }, - { + "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": 281, - "name": "_to", + "id": 266, + "name": "whitelist", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 260, - "src": "1829:3:2", + "referencedDeclaration": 99, + "src": "1757:9:2", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "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": [ { - "argumentTypes": null, - "id": 282, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "1834:6:2", + "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": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "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": 278, - "name": "token", + "id": 269, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 270, - "src": "1803:5:2", + "referencedDeclaration": 262, + "src": "1775:1:2", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", - "typeString": "contract ParatiiToken" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "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)" + "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": false, - "kind": "functionCall", + "isPure": true, + "kind": "bool", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1803:38:2", + "nodeType": "Literal", + "src": "1894:5:2", + "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" - } + }, + "value": "false" }, - "functionReturnParameters": 268, + "functionReturnParameters": 260, "id": 284, "nodeType": "Return", - "src": "1796:45:2" + "src": "1887:12:2" } ] }, @@ -4907,67 +4979,21 @@ "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", + "isDeclaredConst": true, + "modifiers": [], + "name": "isOnWhiteList", "nodeType": "FunctionDefinition", "parameters": { - "id": 263, + "id": 257, "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", + "id": 256, + "name": "_address", "nodeType": "VariableDeclaration", "scope": 286, - "src": "1638:11:2", + "src": "1682:16:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4975,10 +5001,10 @@ "typeString": "address" }, "typeName": { - "id": 259, + "id": 255, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1638:7:2", + "src": "1682:7:2", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4986,48 +5012,22 @@ }, "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" + "src": "1681:18:2" }, "payable": false, "returnParameters": { - "id": 268, + "id": 260, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 267, + "id": 259, "name": "", "nodeType": "VariableDeclaration", "scope": 286, - "src": "1697:4:2", + "src": "1720:4:2", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5035,10 +5035,10 @@ "typeString": "bool" }, "typeName": { - "id": 266, + "id": 258, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1697:4:2", + "src": "1720:4:2", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5048,20 +5048,20 @@ "visibility": "internal" } ], - "src": "1696:6:2" + "src": "1719:6:2" }, "scope": 287, - "src": "1601:247:2", - "stateMutability": "nonpayable", + "src": "1659:247:2", + "stateMutability": "view", "superFunction": null, "visibility": "public" } ], "scope": 288, - "src": "204:1646:2" + "src": "204:1705:2" } ], - "src": "0:1851:2" + "src": "0:1910:2" }, "compiler": { "name": "solc", @@ -5069,5 +5069,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.668Z" + "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 fdffa37..8e44530 100644 --- a/build/contracts/BasicToken.json +++ b/build/contracts/BasicToken.json @@ -90,14 +90,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", "exportedSymbols": { "BasicToken": [ - 2883 + 3026 ] }, - "id": 2884, + "id": 3027, "nodeType": "SourceUnit", "nodes": [ { - "id": 2808, + "id": 2951, "literals": [ "solidity", "^", @@ -110,10 +110,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", "file": "./ERC20Basic.sol", - "id": 2809, + "id": 2952, "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2956, + "scope": 3027, + "sourceUnit": 3099, "src": "27:26:17", "symbolAliases": [], "unitAlias": "" @@ -121,10 +121,10 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "../math/SafeMath.sol", - "id": 2810, + "id": 2953, "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2751, + "scope": 3027, + "sourceUnit": 2894, "src": "54:30:17", "symbolAliases": [], "unitAlias": "" @@ -135,53 +135,53 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2811, + "id": 2954, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, + "referencedDeclaration": 3098, "src": "200:10:17", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", + "typeIdentifier": "t_contract$_ERC20Basic_$3098", "typeString": "contract ERC20Basic" } }, - "id": 2812, + "id": 2955, "nodeType": "InheritanceSpecifier", "src": "200:10:17" } ], "contractDependencies": [ - 2955 + 3098 ], "contractKind": "contract", "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", "fullyImplemented": true, - "id": 2883, + "id": 3026, "linearizedBaseContracts": [ - 2883, - 2955 + 3026, + 3098 ], "name": "BasicToken", "nodeType": "ContractDefinition", "nodes": [ { - "id": 2815, + "id": 2958, "libraryName": { "contractScope": null, - "id": 2813, + "id": 2956, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, + "referencedDeclaration": 2893, "src": "221:8:17", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", + "typeIdentifier": "t_contract$_SafeMath_$2893", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", "src": "215:27:17", "typeName": { - "id": 2814, + "id": 2957, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "234:7:17", @@ -193,10 +193,10 @@ }, { "constant": false, - "id": 2819, + "id": 2962, "name": "balances", "nodeType": "VariableDeclaration", - "scope": 2883, + "scope": 3026, "src": "246:36:17", "stateVariable": true, "storageLocation": "default", @@ -205,9 +205,9 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 2818, + "id": 2961, "keyType": { - "id": 2816, + "id": 2959, "name": "address", "nodeType": "ElementaryTypeName", "src": "254:7:17", @@ -223,7 +223,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 2817, + "id": 2960, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "265:7:17", @@ -238,7 +238,7 @@ }, { "body": { - "id": 2869, + "id": 3012, "nodeType": "Block", "src": "506:265:17", "statements": [ @@ -252,18 +252,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2833, + "id": 2976, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2829, + "id": 2972, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "520:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -278,7 +278,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2831, + "id": 2974, "isConstant": false, "isLValue": false, "isPure": true, @@ -301,7 +301,7 @@ "typeString": "int_const 0" } ], - "id": 2830, + "id": 2973, "isConstant": false, "isLValue": false, "isPure": true, @@ -314,7 +314,7 @@ }, "typeName": "address" }, - "id": 2832, + "id": 2975, "isConstant": false, "isLValue": false, "isPure": true, @@ -342,21 +342,21 @@ "typeString": "bool" } ], - "id": 2828, + "id": 2971, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "512:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2834, + "id": 2977, "isConstant": false, "isLValue": false, "isPure": false, @@ -370,14 +370,14 @@ "typeString": "tuple()" } }, - "id": 2835, + "id": 2978, "nodeType": "ExpressionStatement", "src": "512:26:17" }, { "expression": { "argumentTypes": null, - "id": 2847, + "id": 2990, "isConstant": false, "isLValue": false, "isPure": false, @@ -386,34 +386,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2836, + "id": 2979, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "608:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2839, + "id": 2982, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2837, + "id": 2980, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "617:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2838, + "id": 2981, "isConstant": false, "isLValue": false, "isPure": false, @@ -445,11 +445,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2845, + "id": 2988, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2823, + "referencedDeclaration": 2966, "src": "656:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -468,34 +468,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2840, + "id": 2983, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "631:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2843, + "id": 2986, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2841, + "id": 2984, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "640:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2842, + "id": 2985, "isConstant": false, "isLValue": false, "isPure": false, @@ -520,21 +520,21 @@ "typeString": "uint256" } }, - "id": 2844, + "id": 2987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 2846, + "id": 2989, "isConstant": false, "isLValue": false, "isPure": false, @@ -554,14 +554,14 @@ "typeString": "uint256" } }, - "id": 2848, + "id": 2991, "nodeType": "ExpressionStatement", "src": "608:55:17" }, { "expression": { "argumentTypes": null, - "id": 2858, + "id": 3001, "isConstant": false, "isLValue": false, "isPure": false, @@ -570,25 +570,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2849, + "id": 2992, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "669:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2851, + "id": 2994, "indexExpression": { "argumentTypes": null, - "id": 2850, + "id": 2993, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "678:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -613,11 +613,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2856, + "id": 2999, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2823, + "referencedDeclaration": 2966, "src": "703:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -636,25 +636,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2852, + "id": 2995, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "685:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2854, + "id": 2997, "indexExpression": { "argumentTypes": null, - "id": 2853, + "id": 2996, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "694:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -672,21 +672,21 @@ "typeString": "uint256" } }, - "id": 2855, + "id": 2998, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 2749, + "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": 2857, + "id": 3000, "isConstant": false, "isLValue": false, "isPure": false, @@ -706,7 +706,7 @@ "typeString": "uint256" } }, - "id": 2859, + "id": 3002, "nodeType": "ExpressionStatement", "src": "669:41:17" }, @@ -718,18 +718,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2861, + "id": 3004, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "725:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2862, + "id": 3005, "isConstant": false, "isLValue": false, "isPure": false, @@ -745,11 +745,11 @@ }, { "argumentTypes": null, - "id": 2863, + "id": 3006, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "737:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -758,11 +758,11 @@ }, { "argumentTypes": null, - "id": 2864, + "id": 3007, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2823, + "referencedDeclaration": 2966, "src": "742:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -785,18 +785,18 @@ "typeString": "uint256" } ], - "id": 2860, + "id": 3003, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2954, + "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": 2865, + "id": 3008, "isConstant": false, "isLValue": false, "isPure": false, @@ -810,7 +810,7 @@ "typeString": "tuple()" } }, - "id": 2866, + "id": 3009, "nodeType": "ExpressionStatement", "src": "716:33:17" }, @@ -818,7 +818,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 2867, + "id": 3010, "isConstant": false, "isLValue": false, "isPure": true, @@ -833,15 +833,15 @@ }, "value": "true" }, - "functionReturnParameters": 2827, - "id": 2868, + "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": 2870, + "id": 3013, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -849,15 +849,15 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 2824, + "id": 2967, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2821, + "id": 2964, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 2870, + "scope": 3013, "src": "455:11:17", "stateVariable": false, "storageLocation": "default", @@ -866,7 +866,7 @@ "typeString": "address" }, "typeName": { - "id": 2820, + "id": 2963, "name": "address", "nodeType": "ElementaryTypeName", "src": "455:7:17", @@ -880,10 +880,10 @@ }, { "constant": false, - "id": 2823, + "id": 2966, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 2870, + "scope": 3013, "src": "468:14:17", "stateVariable": false, "storageLocation": "default", @@ -892,7 +892,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2822, + "id": 2965, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "468:7:17", @@ -909,15 +909,15 @@ }, "payable": false, "returnParameters": { - "id": 2827, + "id": 2970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2826, + "id": 2969, "name": "", "nodeType": "VariableDeclaration", - "scope": 2870, + "scope": 3013, "src": "500:4:17", "stateVariable": false, "storageLocation": "default", @@ -926,7 +926,7 @@ "typeString": "bool" }, "typeName": { - "id": 2825, + "id": 2968, "name": "bool", "nodeType": "ElementaryTypeName", "src": "500:4:17", @@ -941,15 +941,15 @@ ], "src": "499:6:17" }, - "scope": 2883, + "scope": 3026, "src": "437:334:17", "stateMutability": "nonpayable", - "superFunction": 2946, + "superFunction": 3089, "visibility": "public" }, { "body": { - "id": 2881, + "id": 3024, "nodeType": "Block", "src": "1050:34:17", "statements": [ @@ -958,25 +958,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2877, + "id": 3020, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1063:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2879, + "id": 3022, "indexExpression": { "argumentTypes": null, - "id": 2878, + "id": 3021, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2872, + "referencedDeclaration": 3015, "src": "1072:6:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -994,15 +994,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 2876, - "id": 2880, + "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": 2882, + "id": 3025, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1010,15 +1010,15 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 2873, + "id": 3016, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2872, + "id": 3015, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 2882, + "scope": 3025, "src": "992:14:17", "stateVariable": false, "storageLocation": "default", @@ -1027,7 +1027,7 @@ "typeString": "address" }, "typeName": { - "id": 2871, + "id": 3014, "name": "address", "nodeType": "ElementaryTypeName", "src": "992:7:17", @@ -1044,15 +1044,15 @@ }, "payable": false, "returnParameters": { - "id": 2876, + "id": 3019, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2875, + "id": 3018, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 2882, + "scope": 3025, "src": "1033:15:17", "stateVariable": false, "storageLocation": "default", @@ -1061,7 +1061,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2874, + "id": 3017, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1033:7:17", @@ -1076,14 +1076,14 @@ ], "src": "1032:17:17" }, - "scope": 2883, + "scope": 3026, "src": "973:111:17", "stateMutability": "view", - "superFunction": 2937, + "superFunction": 3080, "visibility": "public" } ], - "scope": 2884, + "scope": 3027, "src": "177:910:17" } ], @@ -1093,14 +1093,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", "exportedSymbols": { "BasicToken": [ - 2883 + 3026 ] }, - "id": 2884, + "id": 3027, "nodeType": "SourceUnit", "nodes": [ { - "id": 2808, + "id": 2951, "literals": [ "solidity", "^", @@ -1113,10 +1113,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", "file": "./ERC20Basic.sol", - "id": 2809, + "id": 2952, "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2956, + "scope": 3027, + "sourceUnit": 3099, "src": "27:26:17", "symbolAliases": [], "unitAlias": "" @@ -1124,10 +1124,10 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "../math/SafeMath.sol", - "id": 2810, + "id": 2953, "nodeType": "ImportDirective", - "scope": 2884, - "sourceUnit": 2751, + "scope": 3027, + "sourceUnit": 2894, "src": "54:30:17", "symbolAliases": [], "unitAlias": "" @@ -1138,53 +1138,53 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2811, + "id": 2954, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, + "referencedDeclaration": 3098, "src": "200:10:17", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", + "typeIdentifier": "t_contract$_ERC20Basic_$3098", "typeString": "contract ERC20Basic" } }, - "id": 2812, + "id": 2955, "nodeType": "InheritanceSpecifier", "src": "200:10:17" } ], "contractDependencies": [ - 2955 + 3098 ], "contractKind": "contract", "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", "fullyImplemented": true, - "id": 2883, + "id": 3026, "linearizedBaseContracts": [ - 2883, - 2955 + 3026, + 3098 ], "name": "BasicToken", "nodeType": "ContractDefinition", "nodes": [ { - "id": 2815, + "id": 2958, "libraryName": { "contractScope": null, - "id": 2813, + "id": 2956, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, + "referencedDeclaration": 2893, "src": "221:8:17", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", + "typeIdentifier": "t_contract$_SafeMath_$2893", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", "src": "215:27:17", "typeName": { - "id": 2814, + "id": 2957, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "234:7:17", @@ -1196,10 +1196,10 @@ }, { "constant": false, - "id": 2819, + "id": 2962, "name": "balances", "nodeType": "VariableDeclaration", - "scope": 2883, + "scope": 3026, "src": "246:36:17", "stateVariable": true, "storageLocation": "default", @@ -1208,9 +1208,9 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 2818, + "id": 2961, "keyType": { - "id": 2816, + "id": 2959, "name": "address", "nodeType": "ElementaryTypeName", "src": "254:7:17", @@ -1226,7 +1226,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 2817, + "id": 2960, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "265:7:17", @@ -1241,7 +1241,7 @@ }, { "body": { - "id": 2869, + "id": 3012, "nodeType": "Block", "src": "506:265:17", "statements": [ @@ -1255,18 +1255,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2833, + "id": 2976, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2829, + "id": 2972, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "520:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1281,7 +1281,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2831, + "id": 2974, "isConstant": false, "isLValue": false, "isPure": true, @@ -1304,7 +1304,7 @@ "typeString": "int_const 0" } ], - "id": 2830, + "id": 2973, "isConstant": false, "isLValue": false, "isPure": true, @@ -1317,7 +1317,7 @@ }, "typeName": "address" }, - "id": 2832, + "id": 2975, "isConstant": false, "isLValue": false, "isPure": true, @@ -1345,21 +1345,21 @@ "typeString": "bool" } ], - "id": 2828, + "id": 2971, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "512:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2834, + "id": 2977, "isConstant": false, "isLValue": false, "isPure": false, @@ -1373,14 +1373,14 @@ "typeString": "tuple()" } }, - "id": 2835, + "id": 2978, "nodeType": "ExpressionStatement", "src": "512:26:17" }, { "expression": { "argumentTypes": null, - "id": 2847, + "id": 2990, "isConstant": false, "isLValue": false, "isPure": false, @@ -1389,34 +1389,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2836, + "id": 2979, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "608:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2839, + "id": 2982, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2837, + "id": 2980, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "617:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2838, + "id": 2981, "isConstant": false, "isLValue": false, "isPure": false, @@ -1448,11 +1448,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2845, + "id": 2988, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2823, + "referencedDeclaration": 2966, "src": "656:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1471,34 +1471,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2840, + "id": 2983, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "631:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2843, + "id": 2986, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2841, + "id": 2984, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "640:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2842, + "id": 2985, "isConstant": false, "isLValue": false, "isPure": false, @@ -1523,21 +1523,21 @@ "typeString": "uint256" } }, - "id": 2844, + "id": 2987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 2846, + "id": 2989, "isConstant": false, "isLValue": false, "isPure": false, @@ -1557,14 +1557,14 @@ "typeString": "uint256" } }, - "id": 2848, + "id": 2991, "nodeType": "ExpressionStatement", "src": "608:55:17" }, { "expression": { "argumentTypes": null, - "id": 2858, + "id": 3001, "isConstant": false, "isLValue": false, "isPure": false, @@ -1573,25 +1573,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2849, + "id": 2992, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "669:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2851, + "id": 2994, "indexExpression": { "argumentTypes": null, - "id": 2850, + "id": 2993, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "678:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1616,11 +1616,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2856, + "id": 2999, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2823, + "referencedDeclaration": 2966, "src": "703:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1639,25 +1639,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2852, + "id": 2995, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "685:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2854, + "id": 2997, "indexExpression": { "argumentTypes": null, - "id": 2853, + "id": 2996, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "694:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1675,21 +1675,21 @@ "typeString": "uint256" } }, - "id": 2855, + "id": 2998, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 2749, + "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": 2857, + "id": 3000, "isConstant": false, "isLValue": false, "isPure": false, @@ -1709,7 +1709,7 @@ "typeString": "uint256" } }, - "id": 2859, + "id": 3002, "nodeType": "ExpressionStatement", "src": "669:41:17" }, @@ -1721,18 +1721,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2861, + "id": 3004, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "725:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2862, + "id": 3005, "isConstant": false, "isLValue": false, "isPure": false, @@ -1748,11 +1748,11 @@ }, { "argumentTypes": null, - "id": 2863, + "id": 3006, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2821, + "referencedDeclaration": 2964, "src": "737:3:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1761,11 +1761,11 @@ }, { "argumentTypes": null, - "id": 2864, + "id": 3007, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2823, + "referencedDeclaration": 2966, "src": "742:6:17", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1788,18 +1788,18 @@ "typeString": "uint256" } ], - "id": 2860, + "id": 3003, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2954, + "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": 2865, + "id": 3008, "isConstant": false, "isLValue": false, "isPure": false, @@ -1813,7 +1813,7 @@ "typeString": "tuple()" } }, - "id": 2866, + "id": 3009, "nodeType": "ExpressionStatement", "src": "716:33:17" }, @@ -1821,7 +1821,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 2867, + "id": 3010, "isConstant": false, "isLValue": false, "isPure": true, @@ -1836,15 +1836,15 @@ }, "value": "true" }, - "functionReturnParameters": 2827, - "id": 2868, + "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": 2870, + "id": 3013, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1852,15 +1852,15 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 2824, + "id": 2967, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2821, + "id": 2964, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 2870, + "scope": 3013, "src": "455:11:17", "stateVariable": false, "storageLocation": "default", @@ -1869,7 +1869,7 @@ "typeString": "address" }, "typeName": { - "id": 2820, + "id": 2963, "name": "address", "nodeType": "ElementaryTypeName", "src": "455:7:17", @@ -1883,10 +1883,10 @@ }, { "constant": false, - "id": 2823, + "id": 2966, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 2870, + "scope": 3013, "src": "468:14:17", "stateVariable": false, "storageLocation": "default", @@ -1895,7 +1895,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2822, + "id": 2965, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "468:7:17", @@ -1912,15 +1912,15 @@ }, "payable": false, "returnParameters": { - "id": 2827, + "id": 2970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2826, + "id": 2969, "name": "", "nodeType": "VariableDeclaration", - "scope": 2870, + "scope": 3013, "src": "500:4:17", "stateVariable": false, "storageLocation": "default", @@ -1929,7 +1929,7 @@ "typeString": "bool" }, "typeName": { - "id": 2825, + "id": 2968, "name": "bool", "nodeType": "ElementaryTypeName", "src": "500:4:17", @@ -1944,15 +1944,15 @@ ], "src": "499:6:17" }, - "scope": 2883, + "scope": 3026, "src": "437:334:17", "stateMutability": "nonpayable", - "superFunction": 2946, + "superFunction": 3089, "visibility": "public" }, { "body": { - "id": 2881, + "id": 3024, "nodeType": "Block", "src": "1050:34:17", "statements": [ @@ -1961,25 +1961,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2877, + "id": 3020, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1063:8:17", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2879, + "id": 3022, "indexExpression": { "argumentTypes": null, - "id": 2878, + "id": 3021, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2872, + "referencedDeclaration": 3015, "src": "1072:6:17", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1997,15 +1997,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 2876, - "id": 2880, + "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": 2882, + "id": 3025, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2013,15 +2013,15 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 2873, + "id": 3016, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2872, + "id": 3015, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 2882, + "scope": 3025, "src": "992:14:17", "stateVariable": false, "storageLocation": "default", @@ -2030,7 +2030,7 @@ "typeString": "address" }, "typeName": { - "id": 2871, + "id": 3014, "name": "address", "nodeType": "ElementaryTypeName", "src": "992:7:17", @@ -2047,15 +2047,15 @@ }, "payable": false, "returnParameters": { - "id": 2876, + "id": 3019, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2875, + "id": 3018, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 2882, + "scope": 3025, "src": "1033:15:17", "stateVariable": false, "storageLocation": "default", @@ -2064,7 +2064,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2874, + "id": 3017, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1033:7:17", @@ -2079,14 +2079,14 @@ ], "src": "1032:17:17" }, - "scope": 2883, + "scope": 3026, "src": "973:111:17", "stateMutability": "view", - "superFunction": 2937, + "superFunction": 3080, "visibility": "public" } ], - "scope": 2884, + "scope": 3027, "src": "177:910:17" } ], @@ -2098,5 +2098,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.689Z" + "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 e5d0b4f..da6b840 100644 --- a/build/contracts/Debug.json +++ b/build/contracts/Debug.json @@ -86,14 +86,14 @@ "type": "event" } ], - "bytecode": "0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a72305820f1195c9349f61217a003a89a9ceea3db09fc866781858583c5d334526b4681860029", - "deployedBytecode": "0x6080604052600080fd00a165627a7a72305820f1195c9349f61217a003a89a9ceea3db09fc866781858583c5d334526b4681860029", + "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": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", "exportedSymbols": { "Debug": [ 87 @@ -428,7 +428,7 @@ "src": "0:362:1" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", "exportedSymbols": { "Debug": [ 87 @@ -768,5 +768,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.668Z" + "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 e40a86e..bfda7a5 100644 --- a/build/contracts/ERC20.json +++ b/build/contracts/ERC20.json @@ -185,14 +185,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", "exportedSymbols": { "ERC20": [ - 2926 + 3069 ] }, - "id": 2927, + "id": 3070, "nodeType": "SourceUnit", "nodes": [ { - "id": 2885, + "id": 3028, "literals": [ "solidity", "^", @@ -205,10 +205,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", "file": "./ERC20Basic.sol", - "id": 2886, + "id": 3029, "nodeType": "ImportDirective", - "scope": 2927, - "sourceUnit": 2956, + "scope": 3070, + "sourceUnit": 3099, "src": "27:26:18", "symbolAliases": [], "unitAlias": "" @@ -219,31 +219,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2887, + "id": 3030, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, + "referencedDeclaration": 3098, "src": "163:10:18", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", + "typeIdentifier": "t_contract$_ERC20Basic_$3098", "typeString": "contract ERC20Basic" } }, - "id": 2888, + "id": 3031, "nodeType": "InheritanceSpecifier", "src": "163:10:18" } ], "contractDependencies": [ - 2955 + 3098 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 2926, + "id": 3069, "linearizedBaseContracts": [ - 2926, - 2955 + 3069, + 3098 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -251,7 +251,7 @@ { "body": null, "documentation": null, - "id": 2897, + "id": 3040, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -259,15 +259,15 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 2893, + "id": 3036, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2890, + "id": 3033, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2897, + "scope": 3040, "src": "197:13:18", "stateVariable": false, "storageLocation": "default", @@ -276,7 +276,7 @@ "typeString": "address" }, "typeName": { - "id": 2889, + "id": 3032, "name": "address", "nodeType": "ElementaryTypeName", "src": "197:7:18", @@ -290,10 +290,10 @@ }, { "constant": false, - "id": 2892, + "id": 3035, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 2897, + "scope": 3040, "src": "212:15:18", "stateVariable": false, "storageLocation": "default", @@ -302,7 +302,7 @@ "typeString": "address" }, "typeName": { - "id": 2891, + "id": 3034, "name": "address", "nodeType": "ElementaryTypeName", "src": "212:7:18", @@ -319,15 +319,15 @@ }, "payable": false, "returnParameters": { - "id": 2896, + "id": 3039, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2895, + "id": 3038, "name": "", "nodeType": "VariableDeclaration", - "scope": 2897, + "scope": 3040, "src": "254:7:18", "stateVariable": false, "storageLocation": "default", @@ -336,7 +336,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2894, + "id": 3037, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "254:7:18", @@ -351,7 +351,7 @@ ], "src": "253:9:18" }, - "scope": 2926, + "scope": 3069, "src": "178:85:18", "stateMutability": "view", "superFunction": null, @@ -360,7 +360,7 @@ { "body": null, "documentation": null, - "id": 2908, + "id": 3051, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -368,15 +368,15 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 2904, + "id": 3047, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2899, + "id": 3042, "name": "from", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "288:12:18", "stateVariable": false, "storageLocation": "default", @@ -385,7 +385,7 @@ "typeString": "address" }, "typeName": { - "id": 2898, + "id": 3041, "name": "address", "nodeType": "ElementaryTypeName", "src": "288:7:18", @@ -399,10 +399,10 @@ }, { "constant": false, - "id": 2901, + "id": 3044, "name": "to", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "302:10:18", "stateVariable": false, "storageLocation": "default", @@ -411,7 +411,7 @@ "typeString": "address" }, "typeName": { - "id": 2900, + "id": 3043, "name": "address", "nodeType": "ElementaryTypeName", "src": "302:7:18", @@ -425,10 +425,10 @@ }, { "constant": false, - "id": 2903, + "id": 3046, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "314:13:18", "stateVariable": false, "storageLocation": "default", @@ -437,7 +437,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2902, + "id": 3045, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "314:7:18", @@ -454,15 +454,15 @@ }, "payable": false, "returnParameters": { - "id": 2907, + "id": 3050, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2906, + "id": 3049, "name": "", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "345:4:18", "stateVariable": false, "storageLocation": "default", @@ -471,7 +471,7 @@ "typeString": "bool" }, "typeName": { - "id": 2905, + "id": 3048, "name": "bool", "nodeType": "ElementaryTypeName", "src": "345:4:18", @@ -486,7 +486,7 @@ ], "src": "344:6:18" }, - "scope": 2926, + "scope": 3069, "src": "266:85:18", "stateMutability": "nonpayable", "superFunction": null, @@ -495,7 +495,7 @@ { "body": null, "documentation": null, - "id": 2917, + "id": 3060, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -503,15 +503,15 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 2913, + "id": 3056, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2910, + "id": 3053, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 2917, + "scope": 3060, "src": "371:15:18", "stateVariable": false, "storageLocation": "default", @@ -520,7 +520,7 @@ "typeString": "address" }, "typeName": { - "id": 2909, + "id": 3052, "name": "address", "nodeType": "ElementaryTypeName", "src": "371:7:18", @@ -534,10 +534,10 @@ }, { "constant": false, - "id": 2912, + "id": 3055, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2917, + "scope": 3060, "src": "388:13:18", "stateVariable": false, "storageLocation": "default", @@ -546,7 +546,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2911, + "id": 3054, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "388:7:18", @@ -563,15 +563,15 @@ }, "payable": false, "returnParameters": { - "id": 2916, + "id": 3059, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2915, + "id": 3058, "name": "", "nodeType": "VariableDeclaration", - "scope": 2917, + "scope": 3060, "src": "419:4:18", "stateVariable": false, "storageLocation": "default", @@ -580,7 +580,7 @@ "typeString": "bool" }, "typeName": { - "id": 2914, + "id": 3057, "name": "bool", "nodeType": "ElementaryTypeName", "src": "419:4:18", @@ -595,7 +595,7 @@ ], "src": "418:6:18" }, - "scope": 2926, + "scope": 3069, "src": "354:71:18", "stateMutability": "nonpayable", "superFunction": null, @@ -604,20 +604,20 @@ { "anonymous": false, "documentation": null, - "id": 2925, + "id": 3068, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 2924, + "id": 3067, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2919, + "id": 3062, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2925, + "scope": 3068, "src": "443:21:18", "stateVariable": false, "storageLocation": "default", @@ -626,7 +626,7 @@ "typeString": "address" }, "typeName": { - "id": 2918, + "id": 3061, "name": "address", "nodeType": "ElementaryTypeName", "src": "443:7:18", @@ -640,11 +640,11 @@ }, { "constant": false, - "id": 2921, + "id": 3064, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 2925, + "scope": 3068, "src": "466:23:18", "stateVariable": false, "storageLocation": "default", @@ -653,7 +653,7 @@ "typeString": "address" }, "typeName": { - "id": 2920, + "id": 3063, "name": "address", "nodeType": "ElementaryTypeName", "src": "466:7:18", @@ -667,11 +667,11 @@ }, { "constant": false, - "id": 2923, + "id": 3066, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2925, + "scope": 3068, "src": "491:13:18", "stateVariable": false, "storageLocation": "default", @@ -680,7 +680,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2922, + "id": 3065, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "491:7:18", @@ -698,7 +698,7 @@ "src": "428:78:18" } ], - "scope": 2927, + "scope": 3070, "src": "145:363:18" } ], @@ -708,14 +708,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", "exportedSymbols": { "ERC20": [ - 2926 + 3069 ] }, - "id": 2927, + "id": 3070, "nodeType": "SourceUnit", "nodes": [ { - "id": 2885, + "id": 3028, "literals": [ "solidity", "^", @@ -728,10 +728,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", "file": "./ERC20Basic.sol", - "id": 2886, + "id": 3029, "nodeType": "ImportDirective", - "scope": 2927, - "sourceUnit": 2956, + "scope": 3070, + "sourceUnit": 3099, "src": "27:26:18", "symbolAliases": [], "unitAlias": "" @@ -742,31 +742,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2887, + "id": 3030, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2955, + "referencedDeclaration": 3098, "src": "163:10:18", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$2955", + "typeIdentifier": "t_contract$_ERC20Basic_$3098", "typeString": "contract ERC20Basic" } }, - "id": 2888, + "id": 3031, "nodeType": "InheritanceSpecifier", "src": "163:10:18" } ], "contractDependencies": [ - 2955 + 3098 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 2926, + "id": 3069, "linearizedBaseContracts": [ - 2926, - 2955 + 3069, + 3098 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -774,7 +774,7 @@ { "body": null, "documentation": null, - "id": 2897, + "id": 3040, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -782,15 +782,15 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 2893, + "id": 3036, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2890, + "id": 3033, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2897, + "scope": 3040, "src": "197:13:18", "stateVariable": false, "storageLocation": "default", @@ -799,7 +799,7 @@ "typeString": "address" }, "typeName": { - "id": 2889, + "id": 3032, "name": "address", "nodeType": "ElementaryTypeName", "src": "197:7:18", @@ -813,10 +813,10 @@ }, { "constant": false, - "id": 2892, + "id": 3035, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 2897, + "scope": 3040, "src": "212:15:18", "stateVariable": false, "storageLocation": "default", @@ -825,7 +825,7 @@ "typeString": "address" }, "typeName": { - "id": 2891, + "id": 3034, "name": "address", "nodeType": "ElementaryTypeName", "src": "212:7:18", @@ -842,15 +842,15 @@ }, "payable": false, "returnParameters": { - "id": 2896, + "id": 3039, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2895, + "id": 3038, "name": "", "nodeType": "VariableDeclaration", - "scope": 2897, + "scope": 3040, "src": "254:7:18", "stateVariable": false, "storageLocation": "default", @@ -859,7 +859,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2894, + "id": 3037, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "254:7:18", @@ -874,7 +874,7 @@ ], "src": "253:9:18" }, - "scope": 2926, + "scope": 3069, "src": "178:85:18", "stateMutability": "view", "superFunction": null, @@ -883,7 +883,7 @@ { "body": null, "documentation": null, - "id": 2908, + "id": 3051, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -891,15 +891,15 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 2904, + "id": 3047, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2899, + "id": 3042, "name": "from", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "288:12:18", "stateVariable": false, "storageLocation": "default", @@ -908,7 +908,7 @@ "typeString": "address" }, "typeName": { - "id": 2898, + "id": 3041, "name": "address", "nodeType": "ElementaryTypeName", "src": "288:7:18", @@ -922,10 +922,10 @@ }, { "constant": false, - "id": 2901, + "id": 3044, "name": "to", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "302:10:18", "stateVariable": false, "storageLocation": "default", @@ -934,7 +934,7 @@ "typeString": "address" }, "typeName": { - "id": 2900, + "id": 3043, "name": "address", "nodeType": "ElementaryTypeName", "src": "302:7:18", @@ -948,10 +948,10 @@ }, { "constant": false, - "id": 2903, + "id": 3046, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "314:13:18", "stateVariable": false, "storageLocation": "default", @@ -960,7 +960,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2902, + "id": 3045, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "314:7:18", @@ -977,15 +977,15 @@ }, "payable": false, "returnParameters": { - "id": 2907, + "id": 3050, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2906, + "id": 3049, "name": "", "nodeType": "VariableDeclaration", - "scope": 2908, + "scope": 3051, "src": "345:4:18", "stateVariable": false, "storageLocation": "default", @@ -994,7 +994,7 @@ "typeString": "bool" }, "typeName": { - "id": 2905, + "id": 3048, "name": "bool", "nodeType": "ElementaryTypeName", "src": "345:4:18", @@ -1009,7 +1009,7 @@ ], "src": "344:6:18" }, - "scope": 2926, + "scope": 3069, "src": "266:85:18", "stateMutability": "nonpayable", "superFunction": null, @@ -1018,7 +1018,7 @@ { "body": null, "documentation": null, - "id": 2917, + "id": 3060, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -1026,15 +1026,15 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 2913, + "id": 3056, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2910, + "id": 3053, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 2917, + "scope": 3060, "src": "371:15:18", "stateVariable": false, "storageLocation": "default", @@ -1043,7 +1043,7 @@ "typeString": "address" }, "typeName": { - "id": 2909, + "id": 3052, "name": "address", "nodeType": "ElementaryTypeName", "src": "371:7:18", @@ -1057,10 +1057,10 @@ }, { "constant": false, - "id": 2912, + "id": 3055, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2917, + "scope": 3060, "src": "388:13:18", "stateVariable": false, "storageLocation": "default", @@ -1069,7 +1069,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2911, + "id": 3054, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "388:7:18", @@ -1086,15 +1086,15 @@ }, "payable": false, "returnParameters": { - "id": 2916, + "id": 3059, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2915, + "id": 3058, "name": "", "nodeType": "VariableDeclaration", - "scope": 2917, + "scope": 3060, "src": "419:4:18", "stateVariable": false, "storageLocation": "default", @@ -1103,7 +1103,7 @@ "typeString": "bool" }, "typeName": { - "id": 2914, + "id": 3057, "name": "bool", "nodeType": "ElementaryTypeName", "src": "419:4:18", @@ -1118,7 +1118,7 @@ ], "src": "418:6:18" }, - "scope": 2926, + "scope": 3069, "src": "354:71:18", "stateMutability": "nonpayable", "superFunction": null, @@ -1127,20 +1127,20 @@ { "anonymous": false, "documentation": null, - "id": 2925, + "id": 3068, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 2924, + "id": 3067, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2919, + "id": 3062, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2925, + "scope": 3068, "src": "443:21:18", "stateVariable": false, "storageLocation": "default", @@ -1149,7 +1149,7 @@ "typeString": "address" }, "typeName": { - "id": 2918, + "id": 3061, "name": "address", "nodeType": "ElementaryTypeName", "src": "443:7:18", @@ -1163,11 +1163,11 @@ }, { "constant": false, - "id": 2921, + "id": 3064, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 2925, + "scope": 3068, "src": "466:23:18", "stateVariable": false, "storageLocation": "default", @@ -1176,7 +1176,7 @@ "typeString": "address" }, "typeName": { - "id": 2920, + "id": 3063, "name": "address", "nodeType": "ElementaryTypeName", "src": "466:7:18", @@ -1190,11 +1190,11 @@ }, { "constant": false, - "id": 2923, + "id": 3066, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2925, + "scope": 3068, "src": "491:13:18", "stateVariable": false, "storageLocation": "default", @@ -1203,7 +1203,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2922, + "id": 3065, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "491:7:18", @@ -1221,7 +1221,7 @@ "src": "428:78:18" } ], - "scope": 2927, + "scope": 3070, "src": "145:363:18" } ], @@ -1233,5 +1233,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.690Z" + "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 87786aa..62c904b 100644 --- a/build/contracts/ERC20Basic.json +++ b/build/contracts/ERC20Basic.json @@ -90,14 +90,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", "exportedSymbols": { "ERC20Basic": [ - 2955 + 3098 ] }, - "id": 2956, + "id": 3099, "nodeType": "SourceUnit", "nodes": [ { - "id": 2928, + "id": 3071, "literals": [ "solidity", "^", @@ -113,19 +113,19 @@ "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, + "id": 3098, "linearizedBaseContracts": [ - 2955 + 3098 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2930, + "id": 3073, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 2955, + "scope": 3098, "src": "179:26:19", "stateVariable": true, "storageLocation": "default", @@ -134,7 +134,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2929, + "id": 3072, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "179:7:19", @@ -149,7 +149,7 @@ { "body": null, "documentation": null, - "id": 2937, + "id": 3080, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -157,15 +157,15 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 2933, + "id": 3076, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2932, + "id": 3075, "name": "who", "nodeType": "VariableDeclaration", - "scope": 2937, + "scope": 3080, "src": "228:11:19", "stateVariable": false, "storageLocation": "default", @@ -174,7 +174,7 @@ "typeString": "address" }, "typeName": { - "id": 2931, + "id": 3074, "name": "address", "nodeType": "ElementaryTypeName", "src": "228:7:19", @@ -191,15 +191,15 @@ }, "payable": false, "returnParameters": { - "id": 2936, + "id": 3079, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2935, + "id": 3078, "name": "", "nodeType": "VariableDeclaration", - "scope": 2937, + "scope": 3080, "src": "266:7:19", "stateVariable": false, "storageLocation": "default", @@ -208,7 +208,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2934, + "id": 3077, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "266:7:19", @@ -223,7 +223,7 @@ ], "src": "265:9:19" }, - "scope": 2955, + "scope": 3098, "src": "209:66:19", "stateMutability": "view", "superFunction": null, @@ -232,7 +232,7 @@ { "body": null, "documentation": null, - "id": 2946, + "id": 3089, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -240,15 +240,15 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 2942, + "id": 3085, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2939, + "id": 3082, "name": "to", "nodeType": "VariableDeclaration", - "scope": 2946, + "scope": 3089, "src": "296:10:19", "stateVariable": false, "storageLocation": "default", @@ -257,7 +257,7 @@ "typeString": "address" }, "typeName": { - "id": 2938, + "id": 3081, "name": "address", "nodeType": "ElementaryTypeName", "src": "296:7:19", @@ -271,10 +271,10 @@ }, { "constant": false, - "id": 2941, + "id": 3084, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2946, + "scope": 3089, "src": "308:13:19", "stateVariable": false, "storageLocation": "default", @@ -283,7 +283,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2940, + "id": 3083, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "308:7:19", @@ -300,15 +300,15 @@ }, "payable": false, "returnParameters": { - "id": 2945, + "id": 3088, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2944, + "id": 3087, "name": "", "nodeType": "VariableDeclaration", - "scope": 2946, + "scope": 3089, "src": "339:4:19", "stateVariable": false, "storageLocation": "default", @@ -317,7 +317,7 @@ "typeString": "bool" }, "typeName": { - "id": 2943, + "id": 3086, "name": "bool", "nodeType": "ElementaryTypeName", "src": "339:4:19", @@ -332,7 +332,7 @@ ], "src": "338:6:19" }, - "scope": 2955, + "scope": 3098, "src": "278:67:19", "stateMutability": "nonpayable", "superFunction": null, @@ -341,20 +341,20 @@ { "anonymous": false, "documentation": null, - "id": 2954, + "id": 3097, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 2953, + "id": 3096, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2948, + "id": 3091, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 2954, + "scope": 3097, "src": "363:20:19", "stateVariable": false, "storageLocation": "default", @@ -363,7 +363,7 @@ "typeString": "address" }, "typeName": { - "id": 2947, + "id": 3090, "name": "address", "nodeType": "ElementaryTypeName", "src": "363:7:19", @@ -377,11 +377,11 @@ }, { "constant": false, - "id": 2950, + "id": 3093, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 2954, + "scope": 3097, "src": "385:18:19", "stateVariable": false, "storageLocation": "default", @@ -390,7 +390,7 @@ "typeString": "address" }, "typeName": { - "id": 2949, + "id": 3092, "name": "address", "nodeType": "ElementaryTypeName", "src": "385:7:19", @@ -404,11 +404,11 @@ }, { "constant": false, - "id": 2952, + "id": 3095, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2954, + "scope": 3097, "src": "405:13:19", "stateVariable": false, "storageLocation": "default", @@ -417,7 +417,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2951, + "id": 3094, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "405:7:19", @@ -435,7 +435,7 @@ "src": "348:72:19" } ], - "scope": 2956, + "scope": 3099, "src": "155:267:19" } ], @@ -445,14 +445,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/ERC20Basic.sol", "exportedSymbols": { "ERC20Basic": [ - 2955 + 3098 ] }, - "id": 2956, + "id": 3099, "nodeType": "SourceUnit", "nodes": [ { - "id": 2928, + "id": 3071, "literals": [ "solidity", "^", @@ -468,19 +468,19 @@ "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, + "id": 3098, "linearizedBaseContracts": [ - 2955 + 3098 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2930, + "id": 3073, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 2955, + "scope": 3098, "src": "179:26:19", "stateVariable": true, "storageLocation": "default", @@ -489,7 +489,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2929, + "id": 3072, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "179:7:19", @@ -504,7 +504,7 @@ { "body": null, "documentation": null, - "id": 2937, + "id": 3080, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -512,15 +512,15 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 2933, + "id": 3076, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2932, + "id": 3075, "name": "who", "nodeType": "VariableDeclaration", - "scope": 2937, + "scope": 3080, "src": "228:11:19", "stateVariable": false, "storageLocation": "default", @@ -529,7 +529,7 @@ "typeString": "address" }, "typeName": { - "id": 2931, + "id": 3074, "name": "address", "nodeType": "ElementaryTypeName", "src": "228:7:19", @@ -546,15 +546,15 @@ }, "payable": false, "returnParameters": { - "id": 2936, + "id": 3079, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2935, + "id": 3078, "name": "", "nodeType": "VariableDeclaration", - "scope": 2937, + "scope": 3080, "src": "266:7:19", "stateVariable": false, "storageLocation": "default", @@ -563,7 +563,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2934, + "id": 3077, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "266:7:19", @@ -578,7 +578,7 @@ ], "src": "265:9:19" }, - "scope": 2955, + "scope": 3098, "src": "209:66:19", "stateMutability": "view", "superFunction": null, @@ -587,7 +587,7 @@ { "body": null, "documentation": null, - "id": 2946, + "id": 3089, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -595,15 +595,15 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 2942, + "id": 3085, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2939, + "id": 3082, "name": "to", "nodeType": "VariableDeclaration", - "scope": 2946, + "scope": 3089, "src": "296:10:19", "stateVariable": false, "storageLocation": "default", @@ -612,7 +612,7 @@ "typeString": "address" }, "typeName": { - "id": 2938, + "id": 3081, "name": "address", "nodeType": "ElementaryTypeName", "src": "296:7:19", @@ -626,10 +626,10 @@ }, { "constant": false, - "id": 2941, + "id": 3084, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2946, + "scope": 3089, "src": "308:13:19", "stateVariable": false, "storageLocation": "default", @@ -638,7 +638,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2940, + "id": 3083, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "308:7:19", @@ -655,15 +655,15 @@ }, "payable": false, "returnParameters": { - "id": 2945, + "id": 3088, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2944, + "id": 3087, "name": "", "nodeType": "VariableDeclaration", - "scope": 2946, + "scope": 3089, "src": "339:4:19", "stateVariable": false, "storageLocation": "default", @@ -672,7 +672,7 @@ "typeString": "bool" }, "typeName": { - "id": 2943, + "id": 3086, "name": "bool", "nodeType": "ElementaryTypeName", "src": "339:4:19", @@ -687,7 +687,7 @@ ], "src": "338:6:19" }, - "scope": 2955, + "scope": 3098, "src": "278:67:19", "stateMutability": "nonpayable", "superFunction": null, @@ -696,20 +696,20 @@ { "anonymous": false, "documentation": null, - "id": 2954, + "id": 3097, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 2953, + "id": 3096, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2948, + "id": 3091, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 2954, + "scope": 3097, "src": "363:20:19", "stateVariable": false, "storageLocation": "default", @@ -718,7 +718,7 @@ "typeString": "address" }, "typeName": { - "id": 2947, + "id": 3090, "name": "address", "nodeType": "ElementaryTypeName", "src": "363:7:19", @@ -732,11 +732,11 @@ }, { "constant": false, - "id": 2950, + "id": 3093, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 2954, + "scope": 3097, "src": "385:18:19", "stateVariable": false, "storageLocation": "default", @@ -745,7 +745,7 @@ "typeString": "address" }, "typeName": { - "id": 2949, + "id": 3092, "name": "address", "nodeType": "ElementaryTypeName", "src": "385:7:19", @@ -759,11 +759,11 @@ }, { "constant": false, - "id": 2952, + "id": 3095, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 2954, + "scope": 3097, "src": "405:13:19", "stateVariable": false, "storageLocation": "default", @@ -772,7 +772,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2951, + "id": 3094, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "405:7:19", @@ -790,7 +790,7 @@ "src": "348:72:19" } ], - "scope": 2956, + "scope": 3099, "src": "155:267:19" } ], @@ -802,5 +802,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.690Z" + "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 ce94d14..3f21be8 100644 --- a/build/contracts/Likes.json +++ b/build/contracts/Likes.json @@ -220,20 +220,20 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Likes.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Likes.sol", "exportedSymbols": { "Likes": [ - 593 + 608 ] }, - "id": 594, + "id": 609, "nodeType": "SourceUnit", "nodes": [ { @@ -252,8 +252,8 @@ "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", "id": 290, "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2807, + "scope": 609, + "sourceUnit": 2950, "src": "26:59:3", "symbolAliases": [], "unitAlias": "" @@ -263,19 +263,19 @@ "file": "zeppelin-solidity/contracts/math/SafeMath.sol", "id": 291, "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2751, + "scope": 609, + "sourceUnit": 2894, "src": "86:55:3", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", "id": 292, "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 1097, + "scope": 609, + "sourceUnit": 1157, "src": "142:24:3", "symbolAliases": [], "unitAlias": "" @@ -289,10 +289,10 @@ "id": 293, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "186:7:3", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, @@ -302,15 +302,15 @@ } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 593, + "id": 608, "linearizedBaseContracts": [ - 593, - 2806 + 608, + 2949 ], "name": "Likes", "nodeType": "ContractDefinition", @@ -320,7 +320,7 @@ "id": 296, "name": "paratiiRegistry", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "201:23:3", "stateVariable": true, "storageLocation": "default", @@ -346,7 +346,7 @@ "id": 302, "name": "_likes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "291:60:3", "stateVariable": true, "storageLocation": "default", @@ -410,7 +410,7 @@ "id": 308, "name": "_dislikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "357:63:3", "stateVariable": true, "storageLocation": "default", @@ -474,7 +474,7 @@ "id": 312, "name": "_userLikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "458:44:3", "stateVariable": true, "storageLocation": "default", @@ -519,7 +519,7 @@ "id": 316, "name": "_userDislikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "508:47:3", "stateVariable": true, "storageLocation": "default", @@ -564,7 +564,7 @@ "id": 320, "name": "_vidLikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "561:43:3", "stateVariable": true, "storageLocation": "default", @@ -609,7 +609,7 @@ "id": 324, "name": "_vidDislikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "610:46:3", "stateVariable": true, "storageLocation": "default", @@ -765,7 +765,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "792:5:3", "typeDescriptions": { "typeIdentifier": "t_address", @@ -782,7 +782,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "800:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -845,7 +845,7 @@ "referencedDeclaration": 334, "src": "838:16:3", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -883,7 +883,7 @@ "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { @@ -891,10 +891,10 @@ "id": 333, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "748:8:3", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -911,7 +911,7 @@ "parameters": [], "src": "782:0:3" }, - "scope": 593, + "scope": 608, "src": "736:125:3", "stateMutability": "nonpayable", "superFunction": null, @@ -919,9 +919,9 @@ }, { "body": { - "id": 503, + "id": 506, "nodeType": "Block", - "src": "923:1547:3", + "src": "923:1565:3", "statements": [ { "assignments": [ @@ -933,7 +933,7 @@ "id": 355, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "933:16:3", "stateVariable": false, "storageLocation": "default", @@ -964,7 +964,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "952:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -998,7 +998,7 @@ "id": 360, "name": "_videoHash", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "972:18:3", "stateVariable": false, "storageLocation": "default", @@ -1020,43 +1020,95 @@ "visibility": "internal" } ], - "id": 364, + "id": 367, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 362, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1003:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], "id": 361, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "993:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 363, + "id": 366, "isConstant": false, "isLValue": false, "isPure": false, @@ -1064,27 +1116,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "993:19:3", + "src": "993:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "972:40:3" + "src": "972:58:3" }, { "assignments": [ - 366 + 369 ], "declarations": [ { "constant": false, - "id": 366, + "id": 369, "name": "_userLikesVideo", "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1022:20:3", + "scope": 507, + "src": "1040:20:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1092,10 +1144,10 @@ "typeString": "bool" }, "typeName": { - "id": 365, + "id": 368, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1022:4:3", + "src": "1040:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1105,18 +1157,18 @@ "visibility": "internal" } ], - "id": 371, + "id": 374, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 368, + "id": 371, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1060:8:3", + "src": "1078:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1124,12 +1176,12 @@ }, { "argumentTypes": null, - "id": 369, + "id": 372, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "1070:8:3", + "src": "1088:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1147,18 +1199,18 @@ "typeString": "string memory" } ], - "id": 367, + "id": 370, "name": "userLikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 574, - "src": "1045:14:3", + "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": 370, + "id": 373, "isConstant": false, "isLValue": false, "isPure": false, @@ -1166,27 +1218,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1045:34:3", + "src": "1063:34:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "1022:57:3" + "src": "1040:57:3" }, { "assignments": [ - 373 + 376 ], "declarations": [ { "constant": false, - "id": 373, + "id": 376, "name": "_userDislikesVideo", "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1089:23:3", + "scope": 507, + "src": "1107:23:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1194,10 +1246,10 @@ "typeString": "bool" }, "typeName": { - "id": 372, + "id": 375, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1089:4:3", + "src": "1107:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1207,18 +1259,18 @@ "visibility": "internal" } ], - "id": 378, + "id": 381, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 375, + "id": 378, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1133:8:3", + "src": "1151:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1226,12 +1278,12 @@ }, { "argumentTypes": null, - "id": 376, + "id": 379, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "1143:8:3", + "src": "1161:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1249,18 +1301,18 @@ "typeString": "string memory" } ], - "id": 374, + "id": 377, "name": "userDislikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "1115:17:3", + "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": 377, + "id": 380, "isConstant": false, "isLValue": false, "isPure": false, @@ -1268,14 +1320,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1115:37:3", + "src": "1133:37:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "1089:63:3" + "src": "1107:63:3" }, { "condition": { @@ -1284,19 +1336,19 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 381, + "id": 384, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 379, + "id": 382, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1167:6:3", + "src": "1185:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1306,38 +1358,38 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 380, + "id": 383, "name": "_userLikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "1177:15:3", + "referencedDeclaration": 369, + "src": "1195:15:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1167:25:3", + "src": "1185:25:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 384, + "id": 387, "nodeType": "IfStatement", - "src": "1163:118:3", + "src": "1181:118:3", "trueBody": { - "id": 383, + "id": 386, "nodeType": "Block", - "src": "1194:87:3", + "src": "1212:87:3", "statements": [ { "expression": null, "functionReturnParameters": 353, - "id": 382, + "id": 385, "nodeType": "Return", - "src": "1264:7:3" + "src": "1282:7:3" } ] } @@ -1349,14 +1401,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 388, + "id": 391, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 386, + "id": 389, "isConstant": false, "isLValue": false, "isPure": false, @@ -1364,15 +1416,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1295:7:3", + "src": "1313:7:3", "subExpression": { "argumentTypes": null, - "id": 385, + "id": 388, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1296:6:3", + "src": "1314:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1387,38 +1439,38 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 387, + "id": 390, "name": "_userDislikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1306:18:3", + "referencedDeclaration": 376, + "src": "1324:18:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1295:29:3", + "src": "1313:29:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 391, + "id": 394, "nodeType": "IfStatement", - "src": "1291:125:3", + "src": "1309:125:3", "trueBody": { - "id": 390, + "id": 393, "nodeType": "Block", - "src": "1326:90:3", + "src": "1344:90:3", "statements": [ { "expression": null, "functionReturnParameters": 353, - "id": 389, + "id": 392, "nodeType": "Return", - "src": "1399:7:3" + "src": "1417:7:3" } ] } @@ -1426,30 +1478,30 @@ { "condition": { "argumentTypes": null, - "id": 392, + "id": 395, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1430:6:3", + "src": "1448:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 443, + "id": 446, "nodeType": "IfStatement", - "src": "1426:481:3", + "src": "1444:481:3", "trueBody": { - "id": 442, + "id": 445, "nodeType": "Block", - "src": "1438:469:3", + "src": "1456:469:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 399, + "id": 402, "isConstant": false, "isLValue": false, "isPure": false, @@ -1460,26 +1512,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 393, + "id": 396, "name": "_likes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 302, - "src": "1519:6:3", + "src": "1537:6:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 396, + "id": 399, "indexExpression": { "argumentTypes": null, - "id": 394, + "id": 397, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1526:8:3", + "src": "1544:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1490,21 +1542,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1519:16:3", + "src": "1537:16:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 397, + "id": 400, "indexExpression": { "argumentTypes": null, - "id": 395, + "id": 398, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1536:10:3", + "src": "1554:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1515,7 +1567,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1519:28:3", + "src": "1537:28:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1526,14 +1578,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 398, + "id": 401, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1550:4:3", + "src": "1568:4:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1541,20 +1593,20 @@ }, "value": "true" }, - "src": "1519:35:3", + "src": "1537:35:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 400, + "id": 403, "nodeType": "ExpressionStatement", - "src": "1519:35:3" + "src": "1537:35:3" }, { "expression": { "argumentTypes": null, - "id": 405, + "id": 408, "isConstant": false, "isLValue": false, "isPure": false, @@ -1563,26 +1615,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 401, + "id": 404, "name": "_userLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 312, - "src": "1568:10:3", + "src": "1586:10:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 403, + "id": 406, "indexExpression": { "argumentTypes": null, - "id": 402, + "id": 405, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1579:8:3", + "src": "1597:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1593,7 +1645,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1568:20:3", + "src": "1586:20:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1604,14 +1656,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 404, + "id": 407, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1592:1:3", + "src": "1610:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -1619,20 +1671,20 @@ }, "value": "1" }, - "src": "1568:25:3", + "src": "1586:25:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 406, + "id": 409, "nodeType": "ExpressionStatement", - "src": "1568:25:3" + "src": "1586:25:3" }, { "expression": { "argumentTypes": null, - "id": 411, + "id": 414, "isConstant": false, "isLValue": false, "isPure": false, @@ -1641,26 +1693,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 407, + "id": 410, "name": "_vidLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 320, - "src": "1607:9:3", + "src": "1625:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 409, + "id": 412, "indexExpression": { "argumentTypes": null, - "id": 408, + "id": 411, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1617:10:3", + "src": "1635:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1671,7 +1723,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1607:21:3", + "src": "1625:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1682,14 +1734,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 410, + "id": 413, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1632:1:3", + "src": "1650:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -1697,43 +1749,43 @@ }, "value": "1" }, - "src": "1607:26:3", + "src": "1625:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 412, + "id": 415, "nodeType": "ExpressionStatement", - "src": "1607:26:3" + "src": "1625:26:3" }, { "condition": { "argumentTypes": null, - "id": 413, + "id": 416, "name": "_userDislikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1652:18:3", + "referencedDeclaration": 376, + "src": "1670:18:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 435, + "id": 438, "nodeType": "IfStatement", - "src": "1648:189:3", + "src": "1666:189:3", "trueBody": { - "id": 434, + "id": 437, "nodeType": "Block", - "src": "1672:165:3", + "src": "1690:165:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 420, + "id": 423, "isConstant": false, "isLValue": false, "isPure": false, @@ -1744,26 +1796,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 414, + "id": 417, "name": "_dislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 308, - "src": "1690:9:3", + "src": "1708:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 417, + "id": 420, "indexExpression": { "argumentTypes": null, - "id": 415, + "id": 418, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1700:8:3", + "src": "1718:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1774,21 +1826,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1690:19:3", + "src": "1708:19:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 418, + "id": 421, "indexExpression": { "argumentTypes": null, - "id": 416, + "id": 419, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1710:10:3", + "src": "1728:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1799,7 +1851,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1690:31:3", + "src": "1708:31:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1810,14 +1862,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 419, + "id": 422, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1724:5:3", + "src": "1742:5:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1825,20 +1877,20 @@ }, "value": "false" }, - "src": "1690:39:3", + "src": "1708:39:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 421, + "id": 424, "nodeType": "ExpressionStatement", - "src": "1690:39:3" + "src": "1708:39:3" }, { "expression": { "argumentTypes": null, - "id": 426, + "id": 429, "isConstant": false, "isLValue": false, "isPure": false, @@ -1847,26 +1899,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 422, + "id": 425, "name": "_userDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 316, - "src": "1747:13:3", + "src": "1765:13:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 424, + "id": 427, "indexExpression": { "argumentTypes": null, - "id": 423, + "id": 426, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1761:8:3", + "src": "1779:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1877,7 +1929,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1747:23:3", + "src": "1765:23:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1888,14 +1940,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 425, + "id": 428, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1774:1:3", + "src": "1792:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -1903,20 +1955,20 @@ }, "value": "1" }, - "src": "1747:28:3", + "src": "1765:28:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 427, + "id": 430, "nodeType": "ExpressionStatement", - "src": "1747:28:3" + "src": "1765:28:3" }, { "expression": { "argumentTypes": null, - "id": 432, + "id": 435, "isConstant": false, "isLValue": false, "isPure": false, @@ -1925,26 +1977,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 428, + "id": 431, "name": "_vidDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 324, - "src": "1793:12:3", + "src": "1811:12:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 430, + "id": 433, "indexExpression": { "argumentTypes": null, - "id": 429, + "id": 432, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1806:10:3", + "src": "1824:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1955,7 +2007,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1793:24:3", + "src": "1811:24:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1966,14 +2018,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 431, + "id": 434, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1821:1:3", + "src": "1839:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -1981,15 +2033,15 @@ }, "value": "1" }, - "src": "1793:29:3", + "src": "1811:29:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 433, + "id": 436, "nodeType": "ExpressionStatement", - "src": "1793:29:3" + "src": "1811:29:3" } ] } @@ -2000,12 +2052,12 @@ "arguments": [ { "argumentTypes": null, - "id": 437, + "id": 440, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1869:8:3", + "src": "1887:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2013,12 +2065,12 @@ }, { "argumentTypes": null, - "id": 438, + "id": 441, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "1879:8:3", + "src": "1897:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2026,12 +2078,12 @@ }, { "argumentTypes": null, - "id": 439, + "id": 442, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1889:6:3", + "src": "1907:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2053,18 +2105,18 @@ "typeString": "bool" } ], - "id": 436, + "id": 439, "name": "LogLikeVideo", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 332, - "src": "1856:12:3", + "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": 440, + "id": 443, "isConstant": false, "isLValue": false, "isPure": false, @@ -2072,15 +2124,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1856:40:3", + "src": "1874:40:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 441, + "id": 444, "nodeType": "EmitStatement", - "src": "1851:45:3" + "src": "1869:45:3" } ] } @@ -2088,7 +2140,7 @@ { "condition": { "argumentTypes": null, - "id": 445, + "id": 448, "isConstant": false, "isLValue": false, "isPure": false, @@ -2096,15 +2148,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1921:7:3", + "src": "1939:7:3", "subExpression": { "argumentTypes": null, - "id": 444, + "id": 447, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1922:6:3", + "src": "1940:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2116,18 +2168,18 @@ } }, "falseBody": null, - "id": 502, + "id": 505, "nodeType": "IfStatement", - "src": "1917:547:3", + "src": "1935:547:3", "trueBody": { - "id": 501, + "id": 504, "nodeType": "Block", - "src": "1930:534:3", + "src": "1948:534:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 452, + "id": 455, "isConstant": false, "isLValue": false, "isPure": false, @@ -2138,26 +2190,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 446, + "id": 449, "name": "_dislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 308, - "src": "2011:9:3", + "src": "2029:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 449, + "id": 452, "indexExpression": { "argumentTypes": null, - "id": 447, + "id": 450, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2021:8:3", + "src": "2039:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2168,21 +2220,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2011:19:3", + "src": "2029:19:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 450, + "id": 453, "indexExpression": { "argumentTypes": null, - "id": 448, + "id": 451, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2031:10:3", + "src": "2049:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2193,7 +2245,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2011:31:3", + "src": "2029:31:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2204,14 +2256,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 451, + "id": 454, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2045:4:3", + "src": "2063:4:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2219,20 +2271,20 @@ }, "value": "true" }, - "src": "2011:38:3", + "src": "2029:38:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 453, + "id": 456, "nodeType": "ExpressionStatement", - "src": "2011:38:3" + "src": "2029:38:3" }, { "expression": { "argumentTypes": null, - "id": 458, + "id": 461, "isConstant": false, "isLValue": false, "isPure": false, @@ -2241,26 +2293,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 454, + "id": 457, "name": "_userDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 316, - "src": "2063:13:3", + "src": "2081:13:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 456, + "id": 459, "indexExpression": { "argumentTypes": null, - "id": 455, + "id": 458, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2077:8:3", + "src": "2095:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2271,7 +2323,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2063:23:3", + "src": "2081:23:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2282,14 +2334,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 457, + "id": 460, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2090:1:3", + "src": "2108:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2297,20 +2349,20 @@ }, "value": "1" }, - "src": "2063:28:3", + "src": "2081:28:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 459, + "id": 462, "nodeType": "ExpressionStatement", - "src": "2063:28:3" + "src": "2081:28:3" }, { "expression": { "argumentTypes": null, - "id": 464, + "id": 467, "isConstant": false, "isLValue": false, "isPure": false, @@ -2319,26 +2371,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 460, + "id": 463, "name": "_vidDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 324, - "src": "2105:12:3", + "src": "2123:12:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 462, + "id": 465, "indexExpression": { "argumentTypes": null, - "id": 461, + "id": 464, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2118:10:3", + "src": "2136:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2349,7 +2401,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2105:24:3", + "src": "2123:24:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2360,14 +2412,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 463, + "id": 466, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2133:1:3", + "src": "2151:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2375,43 +2427,43 @@ }, "value": "1" }, - "src": "2105:29:3", + "src": "2123:29:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 465, + "id": 468, "nodeType": "ExpressionStatement", - "src": "2105:29:3" + "src": "2123:29:3" }, { "condition": { "argumentTypes": null, - "id": 466, + "id": 469, "name": "_userLikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "2153:15:3", + "referencedDeclaration": 369, + "src": "2171:15:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 488, + "id": 491, "nodeType": "IfStatement", - "src": "2149:177:3", + "src": "2167:177:3", "trueBody": { - "id": 487, + "id": 490, "nodeType": "Block", - "src": "2170:156:3", + "src": "2188:156:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 473, + "id": 476, "isConstant": false, "isLValue": false, "isPure": false, @@ -2422,26 +2474,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 467, + "id": 470, "name": "_likes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 302, - "src": "2188:6:3", + "src": "2206:6:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 470, + "id": 473, "indexExpression": { "argumentTypes": null, - "id": 468, + "id": 471, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2195:8:3", + "src": "2213:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2452,21 +2504,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2188:16:3", + "src": "2206:16:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 471, + "id": 474, "indexExpression": { "argumentTypes": null, - "id": 469, + "id": 472, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2205:10:3", + "src": "2223:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2477,7 +2529,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2188:28:3", + "src": "2206:28:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2488,14 +2540,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 472, + "id": 475, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2219:5:3", + "src": "2237:5:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2503,20 +2555,20 @@ }, "value": "false" }, - "src": "2188:36:3", + "src": "2206:36:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 474, + "id": 477, "nodeType": "ExpressionStatement", - "src": "2188:36:3" + "src": "2206:36:3" }, { "expression": { "argumentTypes": null, - "id": 479, + "id": 482, "isConstant": false, "isLValue": false, "isPure": false, @@ -2525,26 +2577,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 475, + "id": 478, "name": "_userLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 312, - "src": "2242:10:3", + "src": "2260:10:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 477, + "id": 480, "indexExpression": { "argumentTypes": null, - "id": 476, + "id": 479, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2253:8:3", + "src": "2271:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2555,7 +2607,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2242:20:3", + "src": "2260:20:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2566,14 +2618,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 478, + "id": 481, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2266:1:3", + "src": "2284:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2581,20 +2633,20 @@ }, "value": "1" }, - "src": "2242:25:3", + "src": "2260:25:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 480, + "id": 483, "nodeType": "ExpressionStatement", - "src": "2242:25:3" + "src": "2260:25:3" }, { "expression": { "argumentTypes": null, - "id": 485, + "id": 488, "isConstant": false, "isLValue": false, "isPure": false, @@ -2603,26 +2655,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 481, + "id": 484, "name": "_vidLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 320, - "src": "2285:9:3", + "src": "2303:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 483, + "id": 486, "indexExpression": { "argumentTypes": null, - "id": 482, + "id": 485, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2295:10:3", + "src": "2313:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2633,7 +2685,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2285:21:3", + "src": "2303:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2644,14 +2696,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 484, + "id": 487, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2310:1:3", + "src": "2328:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2659,15 +2711,15 @@ }, "value": "1" }, - "src": "2285:26:3", + "src": "2303:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 486, + "id": 489, "nodeType": "ExpressionStatement", - "src": "2285:26:3" + "src": "2303:26:3" } ] } @@ -2678,12 +2730,12 @@ "arguments": [ { "argumentTypes": null, - "id": 490, + "id": 493, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2357:8:3", + "src": "2375:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2691,12 +2743,12 @@ }, { "argumentTypes": null, - "id": 491, + "id": 494, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "2367:8:3", + "src": "2385:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2704,12 +2756,12 @@ }, { "argumentTypes": null, - "id": 492, + "id": 495, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "2377:6:3", + "src": "2395:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2731,18 +2783,18 @@ "typeString": "bool" } ], - "id": 489, + "id": 492, "name": "LogLikeVideo", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 332, - "src": "2344:12:3", + "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": 493, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -2750,15 +2802,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2344:40:3", + "src": "2362:40:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 494, + "id": 497, "nodeType": "EmitStatement", - "src": "2339:45:3" + "src": "2357:45:3" }, { "eventCall": { @@ -2766,12 +2818,12 @@ "arguments": [ { "argumentTypes": null, - "id": 496, + "id": 499, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2416:8:3", + "src": "2434:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2780,14 +2832,14 @@ { "argumentTypes": null, "hexValue": "74686973207061737365642068657265", - "id": 497, + "id": 500, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2426:18:3", + "src": "2444:18:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", @@ -2797,12 +2849,12 @@ }, { "argumentTypes": null, - "id": 498, + "id": 501, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "2446:6:3", + "src": "2464:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2824,18 +2876,18 @@ "typeString": "bool" } ], - "id": 495, + "id": 498, "name": "LogLikeVideo", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 332, - "src": "2403:12:3", + "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": 499, + "id": 502, "isConstant": false, "isLValue": false, "isPure": false, @@ -2843,15 +2895,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2403:50:3", + "src": "2421:50:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 500, + "id": 503, "nodeType": "EmitStatement", - "src": "2398:55:3" + "src": "2416:55:3" } ] } @@ -2859,7 +2911,7 @@ ] }, "documentation": null, - "id": 504, + "id": 507, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2875,7 +2927,7 @@ "id": 349, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "886:15:3", "stateVariable": false, "storageLocation": "default", @@ -2901,7 +2953,7 @@ "id": 351, "name": "_liked", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "903:11:3", "stateVariable": false, "storageLocation": "default", @@ -2932,43 +2984,43 @@ "parameters": [], "src": "923:0:3" }, - "scope": 593, - "src": "867:1603:3", + "scope": 608, + "src": "867:1621:3", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 515, + "id": 518, "nodeType": "Block", - "src": "2539:44:3", + "src": "2557:44:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 511, + "id": 514, "name": "_userLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 312, - "src": "2556:10:3", + "src": "2574:10:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 513, + "id": 516, "indexExpression": { "argumentTypes": null, - "id": 512, + "id": 515, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 506, - "src": "2567:8:3", + "referencedDeclaration": 509, + "src": "2585:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2979,21 +3031,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2556:20:3", + "src": "2574:20:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 510, - "id": 514, + "functionReturnParameters": 513, + "id": 517, "nodeType": "Return", - "src": "2549:27:3" + "src": "2567:27:3" } ] }, "documentation": null, - "id": 516, + "id": 519, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3001,16 +3053,16 @@ "name": "userLikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 507, + "id": 510, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 506, + "id": 509, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2495:16:3", + "scope": 519, + "src": "2513:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3018,10 +3070,10 @@ "typeString": "address" }, "typeName": { - "id": 505, + "id": 508, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2495:7:3", + "src": "2513:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3031,20 +3083,20 @@ "visibility": "internal" } ], - "src": "2494:18:3" + "src": "2512:18:3" }, "payable": false, "returnParameters": { - "id": 510, + "id": 513, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 509, + "id": 512, "name": "", "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2533:4:3", + "scope": 519, + "src": "2551:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3052,10 +3104,10 @@ "typeString": "uint256" }, "typeName": { - "id": 508, + "id": 511, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2533:4:3", + "src": "2551:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3065,45 +3117,45 @@ "visibility": "internal" } ], - "src": "2532:6:3" + "src": "2550:6:3" }, - "scope": 593, - "src": "2476:107:3", + "scope": 608, + "src": "2494:107:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 527, + "id": 530, "nodeType": "Block", - "src": "2777:47:3", + "src": "2795:47:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 523, + "id": 526, "name": "_userDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 316, - "src": "2794:13:3", + "src": "2812:13:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 525, + "id": 528, "indexExpression": { "argumentTypes": null, - "id": 524, + "id": 527, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "2808:8:3", + "referencedDeclaration": 521, + "src": "2826:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3114,21 +3166,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2794:23:3", + "src": "2812:23:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 522, - "id": 526, + "functionReturnParameters": 525, + "id": 529, "nodeType": "Return", - "src": "2787:30:3" + "src": "2805:30:3" } ] }, "documentation": "@dev returns total of dislikes registered by this user\n@param _address Address of the user", - "id": 528, + "id": 531, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3136,16 +3188,16 @@ "name": "userDislikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 519, + "id": 522, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 518, + "id": 521, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2732:16:3", + "scope": 531, + "src": "2750:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3153,10 +3205,10 @@ "typeString": "address" }, "typeName": { - "id": 517, + "id": 520, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2732:7:3", + "src": "2750:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3166,20 +3218,20 @@ "visibility": "internal" } ], - "src": "2731:18:3" + "src": "2749:18:3" }, "payable": false, "returnParameters": { - "id": 522, + "id": 525, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 521, + "id": 524, "name": "", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2770:4:3", + "scope": 531, + "src": "2788:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3187,10 +3239,10 @@ "typeString": "uint256" }, "typeName": { - "id": 520, + "id": 523, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2770:4:3", + "src": "2788:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3200,73 +3252,125 @@ "visibility": "internal" } ], - "src": "2769:6:3" + "src": "2787:6:3" }, - "scope": 593, - "src": "2710:114:3", + "scope": 608, + "src": "2728:114:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 541, + "id": 547, "nodeType": "Block", - "src": "2891:54:3", + "src": "2909:72:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 535, + "id": 538, "name": "_vidLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 320, - "src": "2908:9:3", + "src": "2926:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 539, + "id": 545, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 537, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "2928:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 536, + "id": 539, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2918:9:3", + "referencedDeclaration": 3338, + "src": "2936:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 538, + "id": 544, "isConstant": false, "isLValue": false, "isPure": false, @@ -3274,7 +3378,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2918:19:3", + "src": "2936:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3285,21 +3389,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2908:30:3", + "src": "2926:48:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 534, - "id": 540, + "functionReturnParameters": 537, + "id": 546, "nodeType": "Return", - "src": "2901:37:3" + "src": "2919:55:3" } ] }, "documentation": null, - "id": 542, + "id": 548, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3307,16 +3411,16 @@ "name": "vidLikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 534, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 530, + "id": 533, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2848:15:3", + "scope": 548, + "src": "2866:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3324,10 +3428,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 532, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2848:6:3", + "src": "2866:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3337,20 +3441,20 @@ "visibility": "internal" } ], - "src": "2847:17:3" + "src": "2865:17:3" }, "payable": false, "returnParameters": { - "id": 534, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 533, + "id": 536, "name": "", "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2885:4:3", + "scope": 548, + "src": "2903:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3358,10 +3462,10 @@ "typeString": "uint256" }, "typeName": { - "id": 532, + "id": 535, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2885:4:3", + "src": "2903:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3371,73 +3475,125 @@ "visibility": "internal" } ], - "src": "2884:6:3" + "src": "2902:6:3" }, - "scope": 593, - "src": "2830:115:3", + "scope": 608, + "src": "2848:133:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 555, + "id": 564, "nodeType": "Block", - "src": "3015:57:3", + "src": "3051:75:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 549, + "id": 555, "name": "_vidDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 324, - "src": "3032:12:3", + "src": "3068:12:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 553, + "id": 562, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 551, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "3055:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 550, + "id": 556, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3045:9:3", + "referencedDeclaration": 3338, + "src": "3081:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 552, + "id": 561, "isConstant": false, "isLValue": false, "isPure": false, @@ -3445,7 +3601,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3045:19:3", + "src": "3081:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3456,21 +3612,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3032:33:3", + "src": "3068:51:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 548, - "id": 554, + "functionReturnParameters": 554, + "id": 563, "nodeType": "Return", - "src": "3025:40:3" + "src": "3061:58:3" } ] }, "documentation": null, - "id": 556, + "id": 565, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3478,16 +3634,16 @@ "name": "vidDislikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 545, + "id": 551, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 544, + "id": 550, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 556, - "src": "2972:15:3", + "scope": 565, + "src": "3008:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3495,10 +3651,10 @@ "typeString": "string" }, "typeName": { - "id": 543, + "id": 549, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2972:6:3", + "src": "3008:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3508,20 +3664,20 @@ "visibility": "internal" } ], - "src": "2971:17:3" + "src": "3007:17:3" }, "payable": false, "returnParameters": { - "id": 548, + "id": 554, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 547, + "id": 553, "name": "", "nodeType": "VariableDeclaration", - "scope": 556, - "src": "3009:4:3", + "scope": 565, + "src": "3045:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3529,10 +3685,10 @@ "typeString": "uint256" }, "typeName": { - "id": 546, + "id": 552, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3009:4:3", + "src": "3045:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3542,19 +3698,19 @@ "visibility": "internal" } ], - "src": "3008:6:3" + "src": "3044:6:3" }, - "scope": 593, - "src": "2951:121:3", + "scope": 608, + "src": "2987:139:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 573, + "id": 585, "nodeType": "Block", - "src": "3163:61:3", + "src": "3217:79:3", "statements": [ { "expression": { @@ -3563,26 +3719,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 565, + "id": 574, "name": "_likes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 302, - "src": "3180:6:3", + "src": "3234:6:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 567, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 566, + "id": 575, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 558, - "src": "3187:8:3", + "referencedDeclaration": 567, + "src": "3241:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3593,49 +3749,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3180:16:3", + "src": "3234:16:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 571, + "id": 583, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 569, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "3207:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 568, + "id": 577, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3197:9:3", + "referencedDeclaration": 3338, + "src": "3251:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 570, + "id": 582, "isConstant": false, "isLValue": false, "isPure": false, @@ -3643,7 +3851,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3197:19:3", + "src": "3251:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3654,21 +3862,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3180:37:3", + "src": "3234:55:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 564, - "id": 572, + "functionReturnParameters": 573, + "id": 584, "nodeType": "Return", - "src": "3173:44:3" + "src": "3227:62:3" } ] }, "documentation": null, - "id": 574, + "id": 586, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3676,16 +3884,16 @@ "name": "userLikesVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 561, + "id": 570, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 558, + "id": 567, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3102:16:3", + "scope": 586, + "src": "3156:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3693,10 +3901,10 @@ "typeString": "address" }, "typeName": { - "id": 557, + "id": 566, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3102:7:3", + "src": "3156:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3707,11 +3915,11 @@ }, { "constant": false, - "id": 560, + "id": 569, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3120:15:3", + "scope": 586, + "src": "3174:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3719,10 +3927,10 @@ "typeString": "string" }, "typeName": { - "id": 559, + "id": 568, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3120:6:3", + "src": "3174:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3732,20 +3940,20 @@ "visibility": "internal" } ], - "src": "3101:35:3" + "src": "3155:35:3" }, "payable": false, "returnParameters": { - "id": 564, + "id": 573, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 563, + "id": 572, "name": "", "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3157:4:3", + "scope": 586, + "src": "3211:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3753,10 +3961,10 @@ "typeString": "bool" }, "typeName": { - "id": 562, + "id": 571, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3157:4:3", + "src": "3211:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3766,19 +3974,19 @@ "visibility": "internal" } ], - "src": "3156:6:3" + "src": "3210:6:3" }, - "scope": 593, - "src": "3078:146:3", + "scope": 608, + "src": "3132:164:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 591, + "id": 606, "nodeType": "Block", - "src": "3318:64:3", + "src": "3390:82:3", "statements": [ { "expression": { @@ -3787,26 +3995,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 583, + "id": 595, "name": "_dislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 308, - "src": "3335:9:3", + "src": "3407:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 585, + "id": 597, "indexExpression": { "argumentTypes": null, - "id": 584, + "id": 596, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 576, - "src": "3345:8:3", + "referencedDeclaration": 588, + "src": "3417:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3817,49 +4025,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3335:19:3", + "src": "3407:19:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 589, + "id": 604, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "3365:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 586, + "id": 598, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3355:9:3", + "referencedDeclaration": 3338, + "src": "3427:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 588, + "id": 603, "isConstant": false, "isLValue": false, "isPure": false, @@ -3867,7 +4127,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3355:19:3", + "src": "3427:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3878,21 +4138,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3335:40:3", + "src": "3407:58:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 582, - "id": 590, + "functionReturnParameters": 594, + "id": 605, "nodeType": "Return", - "src": "3328:47:3" + "src": "3400:65:3" } ] }, "documentation": null, - "id": 592, + "id": 607, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3900,16 +4160,16 @@ "name": "userDislikesVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 579, + "id": 591, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 576, + "id": 588, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3257:16:3", + "scope": 607, + "src": "3329:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3917,10 +4177,10 @@ "typeString": "address" }, "typeName": { - "id": 575, + "id": 587, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3257:7:3", + "src": "3329:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3931,11 +4191,11 @@ }, { "constant": false, - "id": 578, + "id": 590, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3275:15:3", + "scope": 607, + "src": "3347:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3943,10 +4203,10 @@ "typeString": "string" }, "typeName": { - "id": 577, + "id": 589, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3275:6:3", + "src": "3347:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3956,20 +4216,20 @@ "visibility": "internal" } ], - "src": "3256:35:3" + "src": "3328:35:3" }, "payable": false, "returnParameters": { - "id": 582, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 581, + "id": 593, "name": "", "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3312:4:3", + "scope": 607, + "src": "3384:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3977,10 +4237,10 @@ "typeString": "bool" }, "typeName": { - "id": 580, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3312:4:3", + "src": "3384:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3990,29 +4250,29 @@ "visibility": "internal" } ], - "src": "3311:6:3" + "src": "3383:6:3" }, - "scope": 593, - "src": "3230:152:3", + "scope": 608, + "src": "3302:170:3", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 594, - "src": "168:3216:3" + "scope": 609, + "src": "168:3306:3" } ], - "src": "0:3385:3" + "src": "0:3475:3" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Likes.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Likes.sol", "exportedSymbols": { "Likes": [ - 593 + 608 ] }, - "id": 594, + "id": 609, "nodeType": "SourceUnit", "nodes": [ { @@ -4031,8 +4291,8 @@ "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", "id": 290, "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2807, + "scope": 609, + "sourceUnit": 2950, "src": "26:59:3", "symbolAliases": [], "unitAlias": "" @@ -4042,19 +4302,19 @@ "file": "zeppelin-solidity/contracts/math/SafeMath.sol", "id": 291, "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 2751, + "scope": 609, + "sourceUnit": 2894, "src": "86:55:3", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", "id": 292, "nodeType": "ImportDirective", - "scope": 594, - "sourceUnit": 1097, + "scope": 609, + "sourceUnit": 1157, "src": "142:24:3", "symbolAliases": [], "unitAlias": "" @@ -4068,10 +4328,10 @@ "id": 293, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "186:7:3", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, @@ -4081,15 +4341,15 @@ } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 593, + "id": 608, "linearizedBaseContracts": [ - 593, - 2806 + 608, + 2949 ], "name": "Likes", "nodeType": "ContractDefinition", @@ -4099,7 +4359,7 @@ "id": 296, "name": "paratiiRegistry", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "201:23:3", "stateVariable": true, "storageLocation": "default", @@ -4125,7 +4385,7 @@ "id": 302, "name": "_likes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "291:60:3", "stateVariable": true, "storageLocation": "default", @@ -4189,7 +4449,7 @@ "id": 308, "name": "_dislikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "357:63:3", "stateVariable": true, "storageLocation": "default", @@ -4253,7 +4513,7 @@ "id": 312, "name": "_userLikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "458:44:3", "stateVariable": true, "storageLocation": "default", @@ -4298,7 +4558,7 @@ "id": 316, "name": "_userDislikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "508:47:3", "stateVariable": true, "storageLocation": "default", @@ -4343,7 +4603,7 @@ "id": 320, "name": "_vidLikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "561:43:3", "stateVariable": true, "storageLocation": "default", @@ -4388,7 +4648,7 @@ "id": 324, "name": "_vidDislikes", "nodeType": "VariableDeclaration", - "scope": 593, + "scope": 608, "src": "610:46:3", "stateVariable": true, "storageLocation": "default", @@ -4544,7 +4804,7 @@ "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "792:5:3", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4561,7 +4821,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "800:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -4624,7 +4884,7 @@ "referencedDeclaration": 334, "src": "838:16:3", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -4662,7 +4922,7 @@ "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { @@ -4670,10 +4930,10 @@ "id": 333, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "748:8:3", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -4690,7 +4950,7 @@ "parameters": [], "src": "782:0:3" }, - "scope": 593, + "scope": 608, "src": "736:125:3", "stateMutability": "nonpayable", "superFunction": null, @@ -4698,9 +4958,9 @@ }, { "body": { - "id": 503, + "id": 506, "nodeType": "Block", - "src": "923:1547:3", + "src": "923:1565:3", "statements": [ { "assignments": [ @@ -4712,7 +4972,7 @@ "id": 355, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "933:16:3", "stateVariable": false, "storageLocation": "default", @@ -4743,7 +5003,7 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "952:3:3", "typeDescriptions": { "typeIdentifier": "t_magic_message", @@ -4777,7 +5037,7 @@ "id": 360, "name": "_videoHash", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "972:18:3", "stateVariable": false, "storageLocation": "default", @@ -4799,43 +5059,95 @@ "visibility": "internal" } ], - "id": 364, + "id": 367, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 362, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "1003:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], "id": 361, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "993:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 363, + "id": 366, "isConstant": false, "isLValue": false, "isPure": false, @@ -4843,27 +5155,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "993:19:3", + "src": "993:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "972:40:3" + "src": "972:58:3" }, { "assignments": [ - 366 + 369 ], "declarations": [ { "constant": false, - "id": 366, + "id": 369, "name": "_userLikesVideo", "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1022:20:3", + "scope": 507, + "src": "1040:20:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4871,10 +5183,10 @@ "typeString": "bool" }, "typeName": { - "id": 365, + "id": 368, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1022:4:3", + "src": "1040:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4884,18 +5196,18 @@ "visibility": "internal" } ], - "id": 371, + "id": 374, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 368, + "id": 371, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1060:8:3", + "src": "1078:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4903,12 +5215,12 @@ }, { "argumentTypes": null, - "id": 369, + "id": 372, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "1070:8:3", + "src": "1088:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4926,18 +5238,18 @@ "typeString": "string memory" } ], - "id": 367, + "id": 370, "name": "userLikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 574, - "src": "1045:14:3", + "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": 370, + "id": 373, "isConstant": false, "isLValue": false, "isPure": false, @@ -4945,27 +5257,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1045:34:3", + "src": "1063:34:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "1022:57:3" + "src": "1040:57:3" }, { "assignments": [ - 373 + 376 ], "declarations": [ { "constant": false, - "id": 373, + "id": 376, "name": "_userDislikesVideo", "nodeType": "VariableDeclaration", - "scope": 504, - "src": "1089:23:3", + "scope": 507, + "src": "1107:23:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4973,10 +5285,10 @@ "typeString": "bool" }, "typeName": { - "id": 372, + "id": 375, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1089:4:3", + "src": "1107:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4986,18 +5298,18 @@ "visibility": "internal" } ], - "id": 378, + "id": 381, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 375, + "id": 378, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1133:8:3", + "src": "1151:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5005,12 +5317,12 @@ }, { "argumentTypes": null, - "id": 376, + "id": 379, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "1143:8:3", + "src": "1161:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5028,18 +5340,18 @@ "typeString": "string memory" } ], - "id": 374, + "id": 377, "name": "userDislikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "1115:17:3", + "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": 377, + "id": 380, "isConstant": false, "isLValue": false, "isPure": false, @@ -5047,14 +5359,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1115:37:3", + "src": "1133:37:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "1089:63:3" + "src": "1107:63:3" }, { "condition": { @@ -5063,19 +5375,19 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 381, + "id": 384, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 379, + "id": 382, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1167:6:3", + "src": "1185:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5085,38 +5397,38 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 380, + "id": 383, "name": "_userLikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "1177:15:3", + "referencedDeclaration": 369, + "src": "1195:15:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1167:25:3", + "src": "1185:25:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 384, + "id": 387, "nodeType": "IfStatement", - "src": "1163:118:3", + "src": "1181:118:3", "trueBody": { - "id": 383, + "id": 386, "nodeType": "Block", - "src": "1194:87:3", + "src": "1212:87:3", "statements": [ { "expression": null, "functionReturnParameters": 353, - "id": 382, + "id": 385, "nodeType": "Return", - "src": "1264:7:3" + "src": "1282:7:3" } ] } @@ -5128,14 +5440,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 388, + "id": 391, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 386, + "id": 389, "isConstant": false, "isLValue": false, "isPure": false, @@ -5143,15 +5455,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1295:7:3", + "src": "1313:7:3", "subExpression": { "argumentTypes": null, - "id": 385, + "id": 388, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1296:6:3", + "src": "1314:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5166,38 +5478,38 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 387, + "id": 390, "name": "_userDislikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1306:18:3", + "referencedDeclaration": 376, + "src": "1324:18:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1295:29:3", + "src": "1313:29:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 391, + "id": 394, "nodeType": "IfStatement", - "src": "1291:125:3", + "src": "1309:125:3", "trueBody": { - "id": 390, + "id": 393, "nodeType": "Block", - "src": "1326:90:3", + "src": "1344:90:3", "statements": [ { "expression": null, "functionReturnParameters": 353, - "id": 389, + "id": 392, "nodeType": "Return", - "src": "1399:7:3" + "src": "1417:7:3" } ] } @@ -5205,30 +5517,30 @@ { "condition": { "argumentTypes": null, - "id": 392, + "id": 395, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1430:6:3", + "src": "1448:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 443, + "id": 446, "nodeType": "IfStatement", - "src": "1426:481:3", + "src": "1444:481:3", "trueBody": { - "id": 442, + "id": 445, "nodeType": "Block", - "src": "1438:469:3", + "src": "1456:469:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 399, + "id": 402, "isConstant": false, "isLValue": false, "isPure": false, @@ -5239,26 +5551,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 393, + "id": 396, "name": "_likes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 302, - "src": "1519:6:3", + "src": "1537:6:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 396, + "id": 399, "indexExpression": { "argumentTypes": null, - "id": 394, + "id": 397, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1526:8:3", + "src": "1544:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5269,21 +5581,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1519:16:3", + "src": "1537:16:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 397, + "id": 400, "indexExpression": { "argumentTypes": null, - "id": 395, + "id": 398, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1536:10:3", + "src": "1554:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5294,7 +5606,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1519:28:3", + "src": "1537:28:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5305,14 +5617,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 398, + "id": 401, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1550:4:3", + "src": "1568:4:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5320,20 +5632,20 @@ }, "value": "true" }, - "src": "1519:35:3", + "src": "1537:35:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 400, + "id": 403, "nodeType": "ExpressionStatement", - "src": "1519:35:3" + "src": "1537:35:3" }, { "expression": { "argumentTypes": null, - "id": 405, + "id": 408, "isConstant": false, "isLValue": false, "isPure": false, @@ -5342,26 +5654,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 401, + "id": 404, "name": "_userLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 312, - "src": "1568:10:3", + "src": "1586:10:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 403, + "id": 406, "indexExpression": { "argumentTypes": null, - "id": 402, + "id": 405, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1579:8:3", + "src": "1597:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5372,7 +5684,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1568:20:3", + "src": "1586:20:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5383,14 +5695,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 404, + "id": 407, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1592:1:3", + "src": "1610:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -5398,20 +5710,20 @@ }, "value": "1" }, - "src": "1568:25:3", + "src": "1586:25:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 406, + "id": 409, "nodeType": "ExpressionStatement", - "src": "1568:25:3" + "src": "1586:25:3" }, { "expression": { "argumentTypes": null, - "id": 411, + "id": 414, "isConstant": false, "isLValue": false, "isPure": false, @@ -5420,26 +5732,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 407, + "id": 410, "name": "_vidLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 320, - "src": "1607:9:3", + "src": "1625:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 409, + "id": 412, "indexExpression": { "argumentTypes": null, - "id": 408, + "id": 411, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1617:10:3", + "src": "1635:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5450,7 +5762,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1607:21:3", + "src": "1625:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5461,14 +5773,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 410, + "id": 413, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1632:1:3", + "src": "1650:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -5476,43 +5788,43 @@ }, "value": "1" }, - "src": "1607:26:3", + "src": "1625:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 412, + "id": 415, "nodeType": "ExpressionStatement", - "src": "1607:26:3" + "src": "1625:26:3" }, { "condition": { "argumentTypes": null, - "id": 413, + "id": 416, "name": "_userDislikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 373, - "src": "1652:18:3", + "referencedDeclaration": 376, + "src": "1670:18:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 435, + "id": 438, "nodeType": "IfStatement", - "src": "1648:189:3", + "src": "1666:189:3", "trueBody": { - "id": 434, + "id": 437, "nodeType": "Block", - "src": "1672:165:3", + "src": "1690:165:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 420, + "id": 423, "isConstant": false, "isLValue": false, "isPure": false, @@ -5523,26 +5835,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 414, + "id": 417, "name": "_dislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 308, - "src": "1690:9:3", + "src": "1708:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 417, + "id": 420, "indexExpression": { "argumentTypes": null, - "id": 415, + "id": 418, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1700:8:3", + "src": "1718:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5553,21 +5865,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1690:19:3", + "src": "1708:19:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 418, + "id": 421, "indexExpression": { "argumentTypes": null, - "id": 416, + "id": 419, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1710:10:3", + "src": "1728:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5578,7 +5890,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1690:31:3", + "src": "1708:31:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5589,14 +5901,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 419, + "id": 422, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1724:5:3", + "src": "1742:5:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5604,20 +5916,20 @@ }, "value": "false" }, - "src": "1690:39:3", + "src": "1708:39:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 421, + "id": 424, "nodeType": "ExpressionStatement", - "src": "1690:39:3" + "src": "1708:39:3" }, { "expression": { "argumentTypes": null, - "id": 426, + "id": 429, "isConstant": false, "isLValue": false, "isPure": false, @@ -5626,26 +5938,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 422, + "id": 425, "name": "_userDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 316, - "src": "1747:13:3", + "src": "1765:13:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 424, + "id": 427, "indexExpression": { "argumentTypes": null, - "id": 423, + "id": 426, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1761:8:3", + "src": "1779:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5656,7 +5968,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1747:23:3", + "src": "1765:23:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5667,14 +5979,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 425, + "id": 428, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1774:1:3", + "src": "1792:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -5682,20 +5994,20 @@ }, "value": "1" }, - "src": "1747:28:3", + "src": "1765:28:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 427, + "id": 430, "nodeType": "ExpressionStatement", - "src": "1747:28:3" + "src": "1765:28:3" }, { "expression": { "argumentTypes": null, - "id": 432, + "id": 435, "isConstant": false, "isLValue": false, "isPure": false, @@ -5704,26 +6016,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 428, + "id": 431, "name": "_vidDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 324, - "src": "1793:12:3", + "src": "1811:12:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 430, + "id": 433, "indexExpression": { "argumentTypes": null, - "id": 429, + "id": 432, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "1806:10:3", + "src": "1824:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5734,7 +6046,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1793:24:3", + "src": "1811:24:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5745,14 +6057,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 431, + "id": 434, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1821:1:3", + "src": "1839:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -5760,15 +6072,15 @@ }, "value": "1" }, - "src": "1793:29:3", + "src": "1811:29:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 433, + "id": 436, "nodeType": "ExpressionStatement", - "src": "1793:29:3" + "src": "1811:29:3" } ] } @@ -5779,12 +6091,12 @@ "arguments": [ { "argumentTypes": null, - "id": 437, + "id": 440, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "1869:8:3", + "src": "1887:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5792,12 +6104,12 @@ }, { "argumentTypes": null, - "id": 438, + "id": 441, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "1879:8:3", + "src": "1897:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5805,12 +6117,12 @@ }, { "argumentTypes": null, - "id": 439, + "id": 442, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1889:6:3", + "src": "1907:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5832,18 +6144,18 @@ "typeString": "bool" } ], - "id": 436, + "id": 439, "name": "LogLikeVideo", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 332, - "src": "1856:12:3", + "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": 440, + "id": 443, "isConstant": false, "isLValue": false, "isPure": false, @@ -5851,15 +6163,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1856:40:3", + "src": "1874:40:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 441, + "id": 444, "nodeType": "EmitStatement", - "src": "1851:45:3" + "src": "1869:45:3" } ] } @@ -5867,7 +6179,7 @@ { "condition": { "argumentTypes": null, - "id": 445, + "id": 448, "isConstant": false, "isLValue": false, "isPure": false, @@ -5875,15 +6187,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "1921:7:3", + "src": "1939:7:3", "subExpression": { "argumentTypes": null, - "id": 444, + "id": 447, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "1922:6:3", + "src": "1940:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5895,18 +6207,18 @@ } }, "falseBody": null, - "id": 502, + "id": 505, "nodeType": "IfStatement", - "src": "1917:547:3", + "src": "1935:547:3", "trueBody": { - "id": 501, + "id": 504, "nodeType": "Block", - "src": "1930:534:3", + "src": "1948:534:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 452, + "id": 455, "isConstant": false, "isLValue": false, "isPure": false, @@ -5917,26 +6229,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 446, + "id": 449, "name": "_dislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 308, - "src": "2011:9:3", + "src": "2029:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 449, + "id": 452, "indexExpression": { "argumentTypes": null, - "id": 447, + "id": 450, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2021:8:3", + "src": "2039:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5947,21 +6259,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2011:19:3", + "src": "2029:19:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 450, + "id": 453, "indexExpression": { "argumentTypes": null, - "id": 448, + "id": 451, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2031:10:3", + "src": "2049:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5972,7 +6284,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2011:31:3", + "src": "2029:31:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5983,14 +6295,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 451, + "id": 454, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2045:4:3", + "src": "2063:4:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5998,20 +6310,20 @@ }, "value": "true" }, - "src": "2011:38:3", + "src": "2029:38:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 453, + "id": 456, "nodeType": "ExpressionStatement", - "src": "2011:38:3" + "src": "2029:38:3" }, { "expression": { "argumentTypes": null, - "id": 458, + "id": 461, "isConstant": false, "isLValue": false, "isPure": false, @@ -6020,26 +6332,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 454, + "id": 457, "name": "_userDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 316, - "src": "2063:13:3", + "src": "2081:13:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 456, + "id": 459, "indexExpression": { "argumentTypes": null, - "id": 455, + "id": 458, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2077:8:3", + "src": "2095:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6050,7 +6362,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2063:23:3", + "src": "2081:23:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6061,14 +6373,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 457, + "id": 460, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2090:1:3", + "src": "2108:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -6076,20 +6388,20 @@ }, "value": "1" }, - "src": "2063:28:3", + "src": "2081:28:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 459, + "id": 462, "nodeType": "ExpressionStatement", - "src": "2063:28:3" + "src": "2081:28:3" }, { "expression": { "argumentTypes": null, - "id": 464, + "id": 467, "isConstant": false, "isLValue": false, "isPure": false, @@ -6098,26 +6410,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 460, + "id": 463, "name": "_vidDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 324, - "src": "2105:12:3", + "src": "2123:12:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 462, + "id": 465, "indexExpression": { "argumentTypes": null, - "id": 461, + "id": 464, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2118:10:3", + "src": "2136:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6128,7 +6440,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2105:24:3", + "src": "2123:24:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6139,14 +6451,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 463, + "id": 466, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2133:1:3", + "src": "2151:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -6154,43 +6466,43 @@ }, "value": "1" }, - "src": "2105:29:3", + "src": "2123:29:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 465, + "id": 468, "nodeType": "ExpressionStatement", - "src": "2105:29:3" + "src": "2123:29:3" }, { "condition": { "argumentTypes": null, - "id": 466, + "id": 469, "name": "_userLikesVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "2153:15:3", + "referencedDeclaration": 369, + "src": "2171:15:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 488, + "id": 491, "nodeType": "IfStatement", - "src": "2149:177:3", + "src": "2167:177:3", "trueBody": { - "id": 487, + "id": 490, "nodeType": "Block", - "src": "2170:156:3", + "src": "2188:156:3", "statements": [ { "expression": { "argumentTypes": null, - "id": 473, + "id": 476, "isConstant": false, "isLValue": false, "isPure": false, @@ -6201,26 +6513,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 467, + "id": 470, "name": "_likes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 302, - "src": "2188:6:3", + "src": "2206:6:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 470, + "id": 473, "indexExpression": { "argumentTypes": null, - "id": 468, + "id": 471, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2195:8:3", + "src": "2213:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6231,21 +6543,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2188:16:3", + "src": "2206:16:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 471, + "id": 474, "indexExpression": { "argumentTypes": null, - "id": 469, + "id": 472, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2205:10:3", + "src": "2223:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6256,7 +6568,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2188:28:3", + "src": "2206:28:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6267,14 +6579,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 472, + "id": 475, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2219:5:3", + "src": "2237:5:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6282,20 +6594,20 @@ }, "value": "false" }, - "src": "2188:36:3", + "src": "2206:36:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 474, + "id": 477, "nodeType": "ExpressionStatement", - "src": "2188:36:3" + "src": "2206:36:3" }, { "expression": { "argumentTypes": null, - "id": 479, + "id": 482, "isConstant": false, "isLValue": false, "isPure": false, @@ -6304,26 +6616,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 475, + "id": 478, "name": "_userLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 312, - "src": "2242:10:3", + "src": "2260:10:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 477, + "id": 480, "indexExpression": { "argumentTypes": null, - "id": 476, + "id": 479, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2253:8:3", + "src": "2271:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6334,7 +6646,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2242:20:3", + "src": "2260:20:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6345,14 +6657,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 478, + "id": 481, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2266:1:3", + "src": "2284:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -6360,20 +6672,20 @@ }, "value": "1" }, - "src": "2242:25:3", + "src": "2260:25:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 480, + "id": 483, "nodeType": "ExpressionStatement", - "src": "2242:25:3" + "src": "2260:25:3" }, { "expression": { "argumentTypes": null, - "id": 485, + "id": 488, "isConstant": false, "isLValue": false, "isPure": false, @@ -6382,26 +6694,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 481, + "id": 484, "name": "_vidLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 320, - "src": "2285:9:3", + "src": "2303:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 483, + "id": 486, "indexExpression": { "argumentTypes": null, - "id": 482, + "id": 485, "name": "_videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 360, - "src": "2295:10:3", + "src": "2313:10:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6412,7 +6724,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2285:21:3", + "src": "2303:21:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6423,14 +6735,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "31", - "id": 484, + "id": 487, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2310:1:3", + "src": "2328:1:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -6438,15 +6750,15 @@ }, "value": "1" }, - "src": "2285:26:3", + "src": "2303:26:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 486, + "id": 489, "nodeType": "ExpressionStatement", - "src": "2285:26:3" + "src": "2303:26:3" } ] } @@ -6457,12 +6769,12 @@ "arguments": [ { "argumentTypes": null, - "id": 490, + "id": 493, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2357:8:3", + "src": "2375:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6470,12 +6782,12 @@ }, { "argumentTypes": null, - "id": 491, + "id": 494, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 349, - "src": "2367:8:3", + "src": "2385:8:3", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6483,12 +6795,12 @@ }, { "argumentTypes": null, - "id": 492, + "id": 495, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "2377:6:3", + "src": "2395:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6510,18 +6822,18 @@ "typeString": "bool" } ], - "id": 489, + "id": 492, "name": "LogLikeVideo", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 332, - "src": "2344:12:3", + "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": 493, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -6529,15 +6841,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2344:40:3", + "src": "2362:40:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 494, + "id": 497, "nodeType": "EmitStatement", - "src": "2339:45:3" + "src": "2357:45:3" }, { "eventCall": { @@ -6545,12 +6857,12 @@ "arguments": [ { "argumentTypes": null, - "id": 496, + "id": 499, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 355, - "src": "2416:8:3", + "src": "2434:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6559,14 +6871,14 @@ { "argumentTypes": null, "hexValue": "74686973207061737365642068657265", - "id": 497, + "id": 500, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2426:18:3", + "src": "2444:18:3", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9e480025039447a554ff4f3a62c71dd9b34e6a281c3693913bc42ac7651ef1e8", @@ -6576,12 +6888,12 @@ }, { "argumentTypes": null, - "id": 498, + "id": 501, "name": "_liked", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 351, - "src": "2446:6:3", + "src": "2464:6:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6603,18 +6915,18 @@ "typeString": "bool" } ], - "id": 495, + "id": 498, "name": "LogLikeVideo", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 332, - "src": "2403:12:3", + "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": 499, + "id": 502, "isConstant": false, "isLValue": false, "isPure": false, @@ -6622,15 +6934,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2403:50:3", + "src": "2421:50:3", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 500, + "id": 503, "nodeType": "EmitStatement", - "src": "2398:55:3" + "src": "2416:55:3" } ] } @@ -6638,7 +6950,7 @@ ] }, "documentation": null, - "id": 504, + "id": 507, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -6654,7 +6966,7 @@ "id": 349, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "886:15:3", "stateVariable": false, "storageLocation": "default", @@ -6680,7 +6992,7 @@ "id": 351, "name": "_liked", "nodeType": "VariableDeclaration", - "scope": 504, + "scope": 507, "src": "903:11:3", "stateVariable": false, "storageLocation": "default", @@ -6711,43 +7023,43 @@ "parameters": [], "src": "923:0:3" }, - "scope": 593, - "src": "867:1603:3", + "scope": 608, + "src": "867:1621:3", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 515, + "id": 518, "nodeType": "Block", - "src": "2539:44:3", + "src": "2557:44:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 511, + "id": 514, "name": "_userLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 312, - "src": "2556:10:3", + "src": "2574:10:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 513, + "id": 516, "indexExpression": { "argumentTypes": null, - "id": 512, + "id": 515, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 506, - "src": "2567:8:3", + "referencedDeclaration": 509, + "src": "2585:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6758,21 +7070,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2556:20:3", + "src": "2574:20:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 510, - "id": 514, + "functionReturnParameters": 513, + "id": 517, "nodeType": "Return", - "src": "2549:27:3" + "src": "2567:27:3" } ] }, "documentation": null, - "id": 516, + "id": 519, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -6780,16 +7092,16 @@ "name": "userLikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 507, + "id": 510, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 506, + "id": 509, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2495:16:3", + "scope": 519, + "src": "2513:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6797,10 +7109,10 @@ "typeString": "address" }, "typeName": { - "id": 505, + "id": 508, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2495:7:3", + "src": "2513:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6810,20 +7122,20 @@ "visibility": "internal" } ], - "src": "2494:18:3" + "src": "2512:18:3" }, "payable": false, "returnParameters": { - "id": 510, + "id": 513, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 509, + "id": 512, "name": "", "nodeType": "VariableDeclaration", - "scope": 516, - "src": "2533:4:3", + "scope": 519, + "src": "2551:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6831,10 +7143,10 @@ "typeString": "uint256" }, "typeName": { - "id": 508, + "id": 511, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2533:4:3", + "src": "2551:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6844,45 +7156,45 @@ "visibility": "internal" } ], - "src": "2532:6:3" + "src": "2550:6:3" }, - "scope": 593, - "src": "2476:107:3", + "scope": 608, + "src": "2494:107:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 527, + "id": 530, "nodeType": "Block", - "src": "2777:47:3", + "src": "2795:47:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 523, + "id": 526, "name": "_userDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 316, - "src": "2794:13:3", + "src": "2812:13:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 525, + "id": 528, "indexExpression": { "argumentTypes": null, - "id": 524, + "id": 527, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 518, - "src": "2808:8:3", + "referencedDeclaration": 521, + "src": "2826:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6893,21 +7205,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2794:23:3", + "src": "2812:23:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 522, - "id": 526, + "functionReturnParameters": 525, + "id": 529, "nodeType": "Return", - "src": "2787:30:3" + "src": "2805:30:3" } ] }, "documentation": "@dev returns total of dislikes registered by this user\n@param _address Address of the user", - "id": 528, + "id": 531, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -6915,16 +7227,16 @@ "name": "userDislikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 519, + "id": 522, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 518, + "id": 521, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2732:16:3", + "scope": 531, + "src": "2750:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6932,10 +7244,10 @@ "typeString": "address" }, "typeName": { - "id": 517, + "id": 520, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2732:7:3", + "src": "2750:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6945,20 +7257,20 @@ "visibility": "internal" } ], - "src": "2731:18:3" + "src": "2749:18:3" }, "payable": false, "returnParameters": { - "id": 522, + "id": 525, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 521, + "id": 524, "name": "", "nodeType": "VariableDeclaration", - "scope": 528, - "src": "2770:4:3", + "scope": 531, + "src": "2788:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6966,10 +7278,10 @@ "typeString": "uint256" }, "typeName": { - "id": 520, + "id": 523, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2770:4:3", + "src": "2788:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6979,73 +7291,125 @@ "visibility": "internal" } ], - "src": "2769:6:3" + "src": "2787:6:3" }, - "scope": 593, - "src": "2710:114:3", + "scope": 608, + "src": "2728:114:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 541, + "id": 547, "nodeType": "Block", - "src": "2891:54:3", + "src": "2909:72:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 535, + "id": 538, "name": "_vidLikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 320, - "src": "2908:9:3", + "src": "2926:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 539, + "id": 545, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 537, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "2928:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 536, + "id": 539, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2918:9:3", + "referencedDeclaration": 3338, + "src": "2936:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 538, + "id": 544, "isConstant": false, "isLValue": false, "isPure": false, @@ -7053,7 +7417,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2918:19:3", + "src": "2936:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7064,21 +7428,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2908:30:3", + "src": "2926:48:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 534, - "id": 540, + "functionReturnParameters": 537, + "id": 546, "nodeType": "Return", - "src": "2901:37:3" + "src": "2919:55:3" } ] }, "documentation": null, - "id": 542, + "id": 548, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -7086,16 +7450,16 @@ "name": "vidLikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 534, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 530, + "id": 533, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2848:15:3", + "scope": 548, + "src": "2866:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7103,10 +7467,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 532, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2848:6:3", + "src": "2866:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7116,20 +7480,20 @@ "visibility": "internal" } ], - "src": "2847:17:3" + "src": "2865:17:3" }, "payable": false, "returnParameters": { - "id": 534, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 533, + "id": 536, "name": "", "nodeType": "VariableDeclaration", - "scope": 542, - "src": "2885:4:3", + "scope": 548, + "src": "2903:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7137,10 +7501,10 @@ "typeString": "uint256" }, "typeName": { - "id": 532, + "id": 535, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2885:4:3", + "src": "2903:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7150,73 +7514,125 @@ "visibility": "internal" } ], - "src": "2884:6:3" + "src": "2902:6:3" }, - "scope": 593, - "src": "2830:115:3", + "scope": 608, + "src": "2848:133:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 555, + "id": 564, "nodeType": "Block", - "src": "3015:57:3", + "src": "3051:75:3", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 549, + "id": 555, "name": "_vidDislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 324, - "src": "3032:12:3", + "src": "3068:12:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 553, + "id": 562, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 551, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 544, - "src": "3055:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 550, + "id": 556, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3045:9:3", + "referencedDeclaration": 3338, + "src": "3081:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 552, + "id": 561, "isConstant": false, "isLValue": false, "isPure": false, @@ -7224,7 +7640,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3045:19:3", + "src": "3081:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7235,21 +7651,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3032:33:3", + "src": "3068:51:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 548, - "id": 554, + "functionReturnParameters": 554, + "id": 563, "nodeType": "Return", - "src": "3025:40:3" + "src": "3061:58:3" } ] }, "documentation": null, - "id": 556, + "id": 565, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -7257,16 +7673,16 @@ "name": "vidDislikes", "nodeType": "FunctionDefinition", "parameters": { - "id": 545, + "id": 551, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 544, + "id": 550, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 556, - "src": "2972:15:3", + "scope": 565, + "src": "3008:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7274,10 +7690,10 @@ "typeString": "string" }, "typeName": { - "id": 543, + "id": 549, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2972:6:3", + "src": "3008:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7287,20 +7703,20 @@ "visibility": "internal" } ], - "src": "2971:17:3" + "src": "3007:17:3" }, "payable": false, "returnParameters": { - "id": 548, + "id": 554, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 547, + "id": 553, "name": "", "nodeType": "VariableDeclaration", - "scope": 556, - "src": "3009:4:3", + "scope": 565, + "src": "3045:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7308,10 +7724,10 @@ "typeString": "uint256" }, "typeName": { - "id": 546, + "id": 552, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3009:4:3", + "src": "3045:4:3", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7321,19 +7737,19 @@ "visibility": "internal" } ], - "src": "3008:6:3" + "src": "3044:6:3" }, - "scope": 593, - "src": "2951:121:3", + "scope": 608, + "src": "2987:139:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 573, + "id": 585, "nodeType": "Block", - "src": "3163:61:3", + "src": "3217:79:3", "statements": [ { "expression": { @@ -7342,26 +7758,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 565, + "id": 574, "name": "_likes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 302, - "src": "3180:6:3", + "src": "3234:6:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 567, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 566, + "id": 575, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 558, - "src": "3187:8:3", + "referencedDeclaration": 567, + "src": "3241:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7372,49 +7788,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3180:16:3", + "src": "3234:16:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 571, + "id": 583, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 569, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 560, - "src": "3207:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 568, + "id": 577, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3197:9:3", + "referencedDeclaration": 3338, + "src": "3251:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 570, + "id": 582, "isConstant": false, "isLValue": false, "isPure": false, @@ -7422,7 +7890,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3197:19:3", + "src": "3251:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7433,21 +7901,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3180:37:3", + "src": "3234:55:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 564, - "id": 572, + "functionReturnParameters": 573, + "id": 584, "nodeType": "Return", - "src": "3173:44:3" + "src": "3227:62:3" } ] }, "documentation": null, - "id": 574, + "id": 586, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -7455,16 +7923,16 @@ "name": "userLikesVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 561, + "id": 570, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 558, + "id": 567, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3102:16:3", + "scope": 586, + "src": "3156:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7472,10 +7940,10 @@ "typeString": "address" }, "typeName": { - "id": 557, + "id": 566, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3102:7:3", + "src": "3156:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7486,11 +7954,11 @@ }, { "constant": false, - "id": 560, + "id": 569, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3120:15:3", + "scope": 586, + "src": "3174:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7498,10 +7966,10 @@ "typeString": "string" }, "typeName": { - "id": 559, + "id": 568, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3120:6:3", + "src": "3174:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7511,20 +7979,20 @@ "visibility": "internal" } ], - "src": "3101:35:3" + "src": "3155:35:3" }, "payable": false, "returnParameters": { - "id": 564, + "id": 573, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 563, + "id": 572, "name": "", "nodeType": "VariableDeclaration", - "scope": 574, - "src": "3157:4:3", + "scope": 586, + "src": "3211:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7532,10 +8000,10 @@ "typeString": "bool" }, "typeName": { - "id": 562, + "id": 571, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3157:4:3", + "src": "3211:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7545,19 +8013,19 @@ "visibility": "internal" } ], - "src": "3156:6:3" + "src": "3210:6:3" }, - "scope": 593, - "src": "3078:146:3", + "scope": 608, + "src": "3132:164:3", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 591, + "id": 606, "nodeType": "Block", - "src": "3318:64:3", + "src": "3390:82:3", "statements": [ { "expression": { @@ -7566,26 +8034,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 583, + "id": 595, "name": "_dislikes", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 308, - "src": "3335:9:3", + "src": "3407:9:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_bool_$_$", "typeString": "mapping(address => mapping(bytes32 => bool))" } }, - "id": 585, + "id": 597, "indexExpression": { "argumentTypes": null, - "id": 584, + "id": 596, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 576, - "src": "3345:8:3", + "referencedDeclaration": 588, + "src": "3417:8:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7596,49 +8064,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3335:19:3", + "src": "3407:19:3", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 589, + "id": 604, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "3365:8:3", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 586, + "id": 598, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3355:9:3", + "referencedDeclaration": 3338, + "src": "3427:9:3", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 588, + "id": 603, "isConstant": false, "isLValue": false, "isPure": false, @@ -7646,7 +8166,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3355:19:3", + "src": "3427:37:3", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7657,21 +8177,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3335:40:3", + "src": "3407:58:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 582, - "id": 590, + "functionReturnParameters": 594, + "id": 605, "nodeType": "Return", - "src": "3328:47:3" + "src": "3400:65:3" } ] }, "documentation": null, - "id": 592, + "id": 607, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -7679,16 +8199,16 @@ "name": "userDislikesVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 579, + "id": 591, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 576, + "id": 588, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3257:16:3", + "scope": 607, + "src": "3329:16:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7696,10 +8216,10 @@ "typeString": "address" }, "typeName": { - "id": 575, + "id": 587, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3257:7:3", + "src": "3329:7:3", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7710,11 +8230,11 @@ }, { "constant": false, - "id": 578, + "id": 590, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3275:15:3", + "scope": 607, + "src": "3347:15:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7722,10 +8242,10 @@ "typeString": "string" }, "typeName": { - "id": 577, + "id": 589, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3275:6:3", + "src": "3347:6:3", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7735,20 +8255,20 @@ "visibility": "internal" } ], - "src": "3256:35:3" + "src": "3328:35:3" }, "payable": false, "returnParameters": { - "id": 582, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 581, + "id": 593, "name": "", "nodeType": "VariableDeclaration", - "scope": 592, - "src": "3312:4:3", + "scope": 607, + "src": "3384:4:3", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7756,10 +8276,10 @@ "typeString": "bool" }, "typeName": { - "id": 580, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3312:4:3", + "src": "3384:4:3", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7769,20 +8289,20 @@ "visibility": "internal" } ], - "src": "3311:6:3" + "src": "3383:6:3" }, - "scope": 593, - "src": "3230:152:3", + "scope": 608, + "src": "3302:170:3", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 594, - "src": "168:3216:3" + "scope": 609, + "src": "168:3306:3" } ], - "src": "0:3385:3" + "src": "0:3475:3" }, "compiler": { "name": "solc", @@ -7790,5 +8310,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.669Z" + "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 58ef991..6effade 100644 --- a/build/contracts/Migrations.json +++ b/build/contracts/Migrations.json @@ -64,14 +64,14 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/Migrations.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/Migrations.sol", "exportedSymbols": { "Migrations": [ 56 @@ -110,7 +110,7 @@ "name": "owner", "nodeType": "VariableDeclaration", "scope": 56, - "src": "48:20:0", + "src": "50:20:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -121,7 +121,7 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "48:7:0", + "src": "50:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -136,7 +136,7 @@ "name": "last_completed_migration", "nodeType": "VariableDeclaration", "scope": 56, - "src": "72:36:0", + "src": "76:36:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -147,7 +147,7 @@ "id": 4, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "72:4:0", + "src": "76:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -160,7 +160,7 @@ "body": { "id": 13, "nodeType": "Block", - "src": "135:37:0", + "src": "141:43:0", "statements": [ { "condition": { @@ -182,8 +182,8 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "145:3:0", + "referencedDeclaration": 3344, + "src": "155:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" @@ -197,7 +197,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "145:10:0", + "src": "155:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -212,13 +212,13 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3, - "src": "159:5:0", + "src": "169:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "145:19:0", + "src": "155:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -227,11 +227,11 @@ "falseBody": null, "id": 12, "nodeType": "IfStatement", - "src": "141:26:0", + "src": "151:26:0", "trueBody": { "id": 11, "nodeType": "PlaceholderStatement", - "src": "166:1:0" + "src": "176:1:0" } } ] @@ -244,16 +244,16 @@ "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "132:2:0" + "src": "138:2:0" }, - "src": "113:59:0", + "src": "119:65:0", "visibility": "internal" }, { "body": { "id": 22, "nodeType": "Block", - "src": "198:29:0", + "src": "211:35:0", "statements": [ { "expression": { @@ -270,7 +270,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3, - "src": "204:5:0", + "src": "221:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -286,8 +286,8 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "212:3:0", + "referencedDeclaration": 3344, + "src": "229:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" @@ -301,13 +301,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "212:10:0", + "src": "229:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "204:18:0", + "src": "221:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -315,7 +315,7 @@ }, "id": 21, "nodeType": "ExpressionStatement", - "src": "204:18:0" + "src": "221:18:0" } ] }, @@ -325,23 +325,23 @@ "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "Migrations", + "name": "", "nodeType": "FunctionDefinition", "parameters": { "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "195:2:0" + "src": "201:2:0" }, "payable": false, "returnParameters": { "id": 16, "nodeType": "ParameterList", "parameters": [], - "src": "198:0:0" + "src": "211:0:0" }, "scope": 56, - "src": "176:51:0", + "src": "190:56:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -350,7 +350,7 @@ "body": { "id": 34, "nodeType": "Block", - "src": "280:47:0", + "src": "308:53:0", "statements": [ { "expression": { @@ -367,7 +367,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5, - "src": "286:24:0", + "src": "318:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -382,13 +382,13 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "313:9:0", + "src": "345:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "286:36:0", + "src": "318:36:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -396,7 +396,7 @@ }, "id": 33, "nodeType": "ExpressionStatement", - "src": "286:36:0" + "src": "318:36:0" } ] }, @@ -416,14 +416,14 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "269:10:0", + "src": "297:10:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "269:10:0" + "src": "297:10:0" } ], "name": "setCompleted", @@ -438,7 +438,7 @@ "name": "completed", "nodeType": "VariableDeclaration", "scope": 35, - "src": "253:14:0", + "src": "274:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -449,7 +449,7 @@ "id": 24, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "253:4:0", + "src": "274:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -459,17 +459,17 @@ "visibility": "internal" } ], - "src": "252:16:0" + "src": "273:16:0" }, "payable": false, "returnParameters": { "id": 29, "nodeType": "ParameterList", "parameters": [], - "src": "280:0:0" + "src": "308:0:0" }, "scope": 56, - "src": "231:96:0", + "src": "252:109:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -478,7 +478,7 @@ "body": { "id": 54, "nodeType": "Block", - "src": "380:109:0", + "src": "422:119:0", "statements": [ { "assignments": [ @@ -491,7 +491,7 @@ "name": "upgraded", "nodeType": "VariableDeclaration", "scope": 55, - "src": "386:19:0", + "src": "432:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -504,7 +504,7 @@ "name": "Migrations", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 56, - "src": "386:10:0", + "src": "432:10:0", "typeDescriptions": { "typeIdentifier": "t_contract$_Migrations_$56", "typeString": "contract Migrations" @@ -525,7 +525,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 37, - "src": "419:11:0", + "src": "465:11:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -544,7 +544,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 56, - "src": "408:10:0", + "src": "454:10:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Migrations_$56_$", "typeString": "type(contract Migrations)" @@ -558,14 +558,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "408:23:0", + "src": "454:23:0", "typeDescriptions": { "typeIdentifier": "t_contract$_Migrations_$56", "typeString": "contract Migrations" } }, "nodeType": "VariableDeclarationStatement", - "src": "386:45:0" + "src": "432:45:0" }, { "expression": { @@ -578,7 +578,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5, - "src": "459:24:0", + "src": "509:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -599,7 +599,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 43, - "src": "437:8:0", + "src": "487:8:0", "typeDescriptions": { "typeIdentifier": "t_contract$_Migrations_$56", "typeString": "contract Migrations" @@ -613,7 +613,7 @@ "memberName": "setCompleted", "nodeType": "MemberAccess", "referencedDeclaration": 35, - "src": "437:21:0", + "src": "487:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256) external" @@ -627,7 +627,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "437:47:0", + "src": "487:47:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" @@ -635,7 +635,7 @@ }, "id": 53, "nodeType": "ExpressionStatement", - "src": "437:47:0" + "src": "487:47:0" } ] }, @@ -655,14 +655,14 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "369:10:0", + "src": "412:10:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "369:10:0" + "src": "412:10:0" } ], "name": "upgrade", @@ -677,7 +677,7 @@ "name": "new_address", "nodeType": "VariableDeclaration", "scope": 55, - "src": "348:19:0", + "src": "384:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -688,7 +688,7 @@ "id": 36, "name": "address", "nodeType": "ElementaryTypeName", - "src": "348:7:0", + "src": "384:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -698,30 +698,30 @@ "visibility": "internal" } ], - "src": "347:21:0" + "src": "383:21:0" }, "payable": false, "returnParameters": { "id": 41, "nodeType": "ParameterList", "parameters": [], - "src": "380:0:0" + "src": "422:0:0" }, "scope": 56, - "src": "331:158:0", + "src": "367:174:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], "scope": 57, - "src": "24:467:0" + "src": "24:519:0" } ], - "src": "0:492:0" + "src": "0:544:0" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/Migrations.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/Migrations.sol", "exportedSymbols": { "Migrations": [ 56 @@ -760,7 +760,7 @@ "name": "owner", "nodeType": "VariableDeclaration", "scope": 56, - "src": "48:20:0", + "src": "50:20:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -771,7 +771,7 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "48:7:0", + "src": "50:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -786,7 +786,7 @@ "name": "last_completed_migration", "nodeType": "VariableDeclaration", "scope": 56, - "src": "72:36:0", + "src": "76:36:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -797,7 +797,7 @@ "id": 4, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "72:4:0", + "src": "76:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -810,7 +810,7 @@ "body": { "id": 13, "nodeType": "Block", - "src": "135:37:0", + "src": "141:43:0", "statements": [ { "condition": { @@ -832,8 +832,8 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "145:3:0", + "referencedDeclaration": 3344, + "src": "155:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" @@ -847,7 +847,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "145:10:0", + "src": "155:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -862,13 +862,13 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3, - "src": "159:5:0", + "src": "169:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "145:19:0", + "src": "155:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -877,11 +877,11 @@ "falseBody": null, "id": 12, "nodeType": "IfStatement", - "src": "141:26:0", + "src": "151:26:0", "trueBody": { "id": 11, "nodeType": "PlaceholderStatement", - "src": "166:1:0" + "src": "176:1:0" } } ] @@ -894,16 +894,16 @@ "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "132:2:0" + "src": "138:2:0" }, - "src": "113:59:0", + "src": "119:65:0", "visibility": "internal" }, { "body": { "id": 22, "nodeType": "Block", - "src": "198:29:0", + "src": "211:35:0", "statements": [ { "expression": { @@ -920,7 +920,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 3, - "src": "204:5:0", + "src": "221:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -936,8 +936,8 @@ "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "212:3:0", + "referencedDeclaration": 3344, + "src": "229:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" @@ -951,13 +951,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "212:10:0", + "src": "229:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "204:18:0", + "src": "221:18:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -965,7 +965,7 @@ }, "id": 21, "nodeType": "ExpressionStatement", - "src": "204:18:0" + "src": "221:18:0" } ] }, @@ -975,23 +975,23 @@ "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "Migrations", + "name": "", "nodeType": "FunctionDefinition", "parameters": { "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "195:2:0" + "src": "201:2:0" }, "payable": false, "returnParameters": { "id": 16, "nodeType": "ParameterList", "parameters": [], - "src": "198:0:0" + "src": "211:0:0" }, "scope": 56, - "src": "176:51:0", + "src": "190:56:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -1000,7 +1000,7 @@ "body": { "id": 34, "nodeType": "Block", - "src": "280:47:0", + "src": "308:53:0", "statements": [ { "expression": { @@ -1017,7 +1017,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5, - "src": "286:24:0", + "src": "318:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1032,13 +1032,13 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 25, - "src": "313:9:0", + "src": "345:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "286:36:0", + "src": "318:36:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1046,7 +1046,7 @@ }, "id": 33, "nodeType": "ExpressionStatement", - "src": "286:36:0" + "src": "318:36:0" } ] }, @@ -1066,14 +1066,14 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "269:10:0", + "src": "297:10:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "269:10:0" + "src": "297:10:0" } ], "name": "setCompleted", @@ -1088,7 +1088,7 @@ "name": "completed", "nodeType": "VariableDeclaration", "scope": 35, - "src": "253:14:0", + "src": "274:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1099,7 +1099,7 @@ "id": 24, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "253:4:0", + "src": "274:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1109,17 +1109,17 @@ "visibility": "internal" } ], - "src": "252:16:0" + "src": "273:16:0" }, "payable": false, "returnParameters": { "id": 29, "nodeType": "ParameterList", "parameters": [], - "src": "280:0:0" + "src": "308:0:0" }, "scope": 56, - "src": "231:96:0", + "src": "252:109:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -1128,7 +1128,7 @@ "body": { "id": 54, "nodeType": "Block", - "src": "380:109:0", + "src": "422:119:0", "statements": [ { "assignments": [ @@ -1141,7 +1141,7 @@ "name": "upgraded", "nodeType": "VariableDeclaration", "scope": 55, - "src": "386:19:0", + "src": "432:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1154,7 +1154,7 @@ "name": "Migrations", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 56, - "src": "386:10:0", + "src": "432:10:0", "typeDescriptions": { "typeIdentifier": "t_contract$_Migrations_$56", "typeString": "contract Migrations" @@ -1175,7 +1175,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 37, - "src": "419:11:0", + "src": "465:11:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1194,7 +1194,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 56, - "src": "408:10:0", + "src": "454:10:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Migrations_$56_$", "typeString": "type(contract Migrations)" @@ -1208,14 +1208,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "408:23:0", + "src": "454:23:0", "typeDescriptions": { "typeIdentifier": "t_contract$_Migrations_$56", "typeString": "contract Migrations" } }, "nodeType": "VariableDeclarationStatement", - "src": "386:45:0" + "src": "432:45:0" }, { "expression": { @@ -1228,7 +1228,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5, - "src": "459:24:0", + "src": "509:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1249,7 +1249,7 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 43, - "src": "437:8:0", + "src": "487:8:0", "typeDescriptions": { "typeIdentifier": "t_contract$_Migrations_$56", "typeString": "contract Migrations" @@ -1263,7 +1263,7 @@ "memberName": "setCompleted", "nodeType": "MemberAccess", "referencedDeclaration": 35, - "src": "437:21:0", + "src": "487:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256) external" @@ -1277,7 +1277,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "437:47:0", + "src": "487:47:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" @@ -1285,7 +1285,7 @@ }, "id": 53, "nodeType": "ExpressionStatement", - "src": "437:47:0" + "src": "487:47:0" } ] }, @@ -1305,14 +1305,14 @@ "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 14, - "src": "369:10:0", + "src": "412:10:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "369:10:0" + "src": "412:10:0" } ], "name": "upgrade", @@ -1327,7 +1327,7 @@ "name": "new_address", "nodeType": "VariableDeclaration", "scope": 55, - "src": "348:19:0", + "src": "384:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1338,7 +1338,7 @@ "id": 36, "name": "address", "nodeType": "ElementaryTypeName", - "src": "348:7:0", + "src": "384:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1348,27 +1348,27 @@ "visibility": "internal" } ], - "src": "347:21:0" + "src": "383:21:0" }, "payable": false, "returnParameters": { "id": 41, "nodeType": "ParameterList", "parameters": [], - "src": "380:0:0" + "src": "422:0:0" }, "scope": 56, - "src": "331:158:0", + "src": "367:174:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], "scope": 57, - "src": "24:467:0" + "src": "24:519:0" } ], - "src": "0:492:0" + "src": "0:544:0" }, "compiler": { "name": "solc", @@ -1376,5 +1376,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.667Z" + "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 1b29272..07d7cfa 100644 --- a/build/contracts/Ownable.json +++ b/build/contracts/Ownable.json @@ -63,14 +63,14 @@ "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "exportedSymbols": { "Ownable": [ - 2806 + 2949 ] }, - "id": 2807, + "id": 2950, "nodeType": "SourceUnit", "nodes": [ { - "id": 2752, + "id": 2895, "literals": [ "solidity", "^", @@ -86,19 +86,19 @@ "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, + "id": 2949, "linearizedBaseContracts": [ - 2806 + 2949 ], "name": "Ownable", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2754, + "id": 2897, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2806, + "scope": 2949, "src": "238:20:16", "stateVariable": true, "storageLocation": "default", @@ -107,7 +107,7 @@ "typeString": "address" }, "typeName": { - "id": 2753, + "id": 2896, "name": "address", "nodeType": "ElementaryTypeName", "src": "238:7:16", @@ -122,20 +122,20 @@ { "anonymous": false, "documentation": null, - "id": 2760, + "id": 2903, "name": "OwnershipTransferred", "nodeType": "EventDefinition", "parameters": { - "id": 2759, + "id": 2902, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2756, + "id": 2899, "indexed": true, "name": "previousOwner", "nodeType": "VariableDeclaration", - "scope": 2760, + "scope": 2903, "src": "291:29:16", "stateVariable": false, "storageLocation": "default", @@ -144,7 +144,7 @@ "typeString": "address" }, "typeName": { - "id": 2755, + "id": 2898, "name": "address", "nodeType": "ElementaryTypeName", "src": "291:7:16", @@ -158,11 +158,11 @@ }, { "constant": false, - "id": 2758, + "id": 2901, "indexed": true, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 2760, + "scope": 2903, "src": "322:24:16", "stateVariable": false, "storageLocation": "default", @@ -171,7 +171,7 @@ "typeString": "address" }, "typeName": { - "id": 2757, + "id": 2900, "name": "address", "nodeType": "ElementaryTypeName", "src": "322:7:16", @@ -190,25 +190,25 @@ }, { "body": { - "id": 2768, + "id": 2911, "nodeType": "Block", "src": "488:29:16", "statements": [ { "expression": { "argumentTypes": null, - "id": 2766, + "id": 2909, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2763, + "id": 2906, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "494:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -221,18 +221,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2764, + "id": 2907, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "502:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2765, + "id": 2908, "isConstant": false, "isLValue": false, "isPure": false, @@ -252,14 +252,14 @@ "typeString": "address" } }, - "id": 2767, + "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": 2769, + "id": 2912, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -267,19 +267,19 @@ "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 2761, + "id": 2904, "nodeType": "ParameterList", "parameters": [], "src": "485:2:16" }, "payable": false, "returnParameters": { - "id": 2762, + "id": 2905, "nodeType": "ParameterList", "parameters": [], "src": "488:0:16" }, - "scope": 2806, + "scope": 2949, "src": "469:48:16", "stateMutability": "nonpayable", "superFunction": null, @@ -287,7 +287,7 @@ }, { "body": { - "id": 2779, + "id": 2922, "nodeType": "Block", "src": "619:46:16", "statements": [ @@ -301,7 +301,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2775, + "id": 2918, "isConstant": false, "isLValue": false, "isPure": false, @@ -310,18 +310,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2772, + "id": 2915, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "633:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2773, + "id": 2916, "isConstant": false, "isLValue": false, "isPure": false, @@ -339,11 +339,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2774, + "id": 2917, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "647:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -364,21 +364,21 @@ "typeString": "bool" } ], - "id": 2771, + "id": 2914, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "625:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2776, + "id": 2919, "isConstant": false, "isLValue": false, "isPure": false, @@ -392,23 +392,23 @@ "typeString": "tuple()" } }, - "id": 2777, + "id": 2920, "nodeType": "ExpressionStatement", "src": "625:28:16" }, { - "id": 2778, + "id": 2921, "nodeType": "PlaceholderStatement", "src": "659:1:16" } ] }, "documentation": "@dev Throws if called by any account other than the owner.", - "id": 2780, + "id": 2923, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 2770, + "id": 2913, "nodeType": "ParameterList", "parameters": [], "src": "616:2:16" @@ -418,7 +418,7 @@ }, { "body": { - "id": 2804, + "id": 2947, "nodeType": "Block", "src": "889:107:16", "statements": [ @@ -432,18 +432,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2792, + "id": 2935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2788, + "id": 2931, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2782, + "referencedDeclaration": 2925, "src": "903:8:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -458,7 +458,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2790, + "id": 2933, "isConstant": false, "isLValue": false, "isPure": true, @@ -481,7 +481,7 @@ "typeString": "int_const 0" } ], - "id": 2789, + "id": 2932, "isConstant": false, "isLValue": false, "isPure": true, @@ -494,7 +494,7 @@ }, "typeName": "address" }, - "id": 2791, + "id": 2934, "isConstant": false, "isLValue": false, "isPure": true, @@ -522,21 +522,21 @@ "typeString": "bool" } ], - "id": 2787, + "id": 2930, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "895:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2793, + "id": 2936, "isConstant": false, "isLValue": false, "isPure": false, @@ -550,7 +550,7 @@ "typeString": "tuple()" } }, - "id": 2794, + "id": 2937, "nodeType": "ExpressionStatement", "src": "895:31:16" }, @@ -560,11 +560,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2796, + "id": 2939, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "953:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -573,11 +573,11 @@ }, { "argumentTypes": null, - "id": 2797, + "id": 2940, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2782, + "referencedDeclaration": 2925, "src": "960:8:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -596,18 +596,18 @@ "typeString": "address" } ], - "id": 2795, + "id": 2938, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2760, + "referencedDeclaration": 2903, "src": "932:20:16", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 2798, + "id": 2941, "isConstant": false, "isLValue": false, "isPure": false, @@ -621,25 +621,25 @@ "typeString": "tuple()" } }, - "id": 2799, + "id": 2942, "nodeType": "ExpressionStatement", "src": "932:37:16" }, { "expression": { "argumentTypes": null, - "id": 2802, + "id": 2945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2800, + "id": 2943, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "975:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -650,11 +650,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2801, + "id": 2944, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2782, + "referencedDeclaration": 2925, "src": "983:8:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -667,28 +667,28 @@ "typeString": "address" } }, - "id": 2803, + "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": 2805, + "id": 2948, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2785, + "id": 2928, "modifierName": { "argumentTypes": null, - "id": 2784, + "id": 2927, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, + "referencedDeclaration": 2923, "src": "872:9:16", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -702,15 +702,15 @@ "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 2783, + "id": 2926, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2782, + "id": 2925, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 2805, + "scope": 2948, "src": "854:16:16", "stateVariable": false, "storageLocation": "default", @@ -719,7 +719,7 @@ "typeString": "address" }, "typeName": { - "id": 2781, + "id": 2924, "name": "address", "nodeType": "ElementaryTypeName", "src": "854:7:16", @@ -736,19 +736,19 @@ }, "payable": false, "returnParameters": { - "id": 2786, + "id": 2929, "nodeType": "ParameterList", "parameters": [], "src": "889:0:16" }, - "scope": 2806, + "scope": 2949, "src": "827:169:16", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2807, + "scope": 2950, "src": "217:782:16" } ], @@ -758,14 +758,14 @@ "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "exportedSymbols": { "Ownable": [ - 2806 + 2949 ] }, - "id": 2807, + "id": 2950, "nodeType": "SourceUnit", "nodes": [ { - "id": 2752, + "id": 2895, "literals": [ "solidity", "^", @@ -781,19 +781,19 @@ "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, + "id": 2949, "linearizedBaseContracts": [ - 2806 + 2949 ], "name": "Ownable", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2754, + "id": 2897, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2806, + "scope": 2949, "src": "238:20:16", "stateVariable": true, "storageLocation": "default", @@ -802,7 +802,7 @@ "typeString": "address" }, "typeName": { - "id": 2753, + "id": 2896, "name": "address", "nodeType": "ElementaryTypeName", "src": "238:7:16", @@ -817,20 +817,20 @@ { "anonymous": false, "documentation": null, - "id": 2760, + "id": 2903, "name": "OwnershipTransferred", "nodeType": "EventDefinition", "parameters": { - "id": 2759, + "id": 2902, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2756, + "id": 2899, "indexed": true, "name": "previousOwner", "nodeType": "VariableDeclaration", - "scope": 2760, + "scope": 2903, "src": "291:29:16", "stateVariable": false, "storageLocation": "default", @@ -839,7 +839,7 @@ "typeString": "address" }, "typeName": { - "id": 2755, + "id": 2898, "name": "address", "nodeType": "ElementaryTypeName", "src": "291:7:16", @@ -853,11 +853,11 @@ }, { "constant": false, - "id": 2758, + "id": 2901, "indexed": true, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 2760, + "scope": 2903, "src": "322:24:16", "stateVariable": false, "storageLocation": "default", @@ -866,7 +866,7 @@ "typeString": "address" }, "typeName": { - "id": 2757, + "id": 2900, "name": "address", "nodeType": "ElementaryTypeName", "src": "322:7:16", @@ -885,25 +885,25 @@ }, { "body": { - "id": 2768, + "id": 2911, "nodeType": "Block", "src": "488:29:16", "statements": [ { "expression": { "argumentTypes": null, - "id": 2766, + "id": 2909, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2763, + "id": 2906, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "494:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -916,18 +916,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2764, + "id": 2907, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "502:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2765, + "id": 2908, "isConstant": false, "isLValue": false, "isPure": false, @@ -947,14 +947,14 @@ "typeString": "address" } }, - "id": 2767, + "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": 2769, + "id": 2912, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -962,19 +962,19 @@ "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 2761, + "id": 2904, "nodeType": "ParameterList", "parameters": [], "src": "485:2:16" }, "payable": false, "returnParameters": { - "id": 2762, + "id": 2905, "nodeType": "ParameterList", "parameters": [], "src": "488:0:16" }, - "scope": 2806, + "scope": 2949, "src": "469:48:16", "stateMutability": "nonpayable", "superFunction": null, @@ -982,7 +982,7 @@ }, { "body": { - "id": 2779, + "id": 2922, "nodeType": "Block", "src": "619:46:16", "statements": [ @@ -996,7 +996,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2775, + "id": 2918, "isConstant": false, "isLValue": false, "isPure": false, @@ -1005,18 +1005,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2772, + "id": 2915, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "633:3:16", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2773, + "id": 2916, "isConstant": false, "isLValue": false, "isPure": false, @@ -1034,11 +1034,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2774, + "id": 2917, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "647:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1059,21 +1059,21 @@ "typeString": "bool" } ], - "id": 2771, + "id": 2914, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "625:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2776, + "id": 2919, "isConstant": false, "isLValue": false, "isPure": false, @@ -1087,23 +1087,23 @@ "typeString": "tuple()" } }, - "id": 2777, + "id": 2920, "nodeType": "ExpressionStatement", "src": "625:28:16" }, { - "id": 2778, + "id": 2921, "nodeType": "PlaceholderStatement", "src": "659:1:16" } ] }, "documentation": "@dev Throws if called by any account other than the owner.", - "id": 2780, + "id": 2923, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 2770, + "id": 2913, "nodeType": "ParameterList", "parameters": [], "src": "616:2:16" @@ -1113,7 +1113,7 @@ }, { "body": { - "id": 2804, + "id": 2947, "nodeType": "Block", "src": "889:107:16", "statements": [ @@ -1127,18 +1127,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2792, + "id": 2935, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2788, + "id": 2931, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2782, + "referencedDeclaration": 2925, "src": "903:8:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1153,7 +1153,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2790, + "id": 2933, "isConstant": false, "isLValue": false, "isPure": true, @@ -1176,7 +1176,7 @@ "typeString": "int_const 0" } ], - "id": 2789, + "id": 2932, "isConstant": false, "isLValue": false, "isPure": true, @@ -1189,7 +1189,7 @@ }, "typeName": "address" }, - "id": 2791, + "id": 2934, "isConstant": false, "isLValue": false, "isPure": true, @@ -1217,21 +1217,21 @@ "typeString": "bool" } ], - "id": 2787, + "id": 2930, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "895:7:16", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2793, + "id": 2936, "isConstant": false, "isLValue": false, "isPure": false, @@ -1245,7 +1245,7 @@ "typeString": "tuple()" } }, - "id": 2794, + "id": 2937, "nodeType": "ExpressionStatement", "src": "895:31:16" }, @@ -1255,11 +1255,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2796, + "id": 2939, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "953:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1268,11 +1268,11 @@ }, { "argumentTypes": null, - "id": 2797, + "id": 2940, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2782, + "referencedDeclaration": 2925, "src": "960:8:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1291,18 +1291,18 @@ "typeString": "address" } ], - "id": 2795, + "id": 2938, "name": "OwnershipTransferred", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2760, + "referencedDeclaration": 2903, "src": "932:20:16", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 2798, + "id": 2941, "isConstant": false, "isLValue": false, "isPure": false, @@ -1316,25 +1316,25 @@ "typeString": "tuple()" } }, - "id": 2799, + "id": 2942, "nodeType": "ExpressionStatement", "src": "932:37:16" }, { "expression": { "argumentTypes": null, - "id": 2802, + "id": 2945, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2800, + "id": 2943, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "975:5:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1345,11 +1345,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2801, + "id": 2944, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2782, + "referencedDeclaration": 2925, "src": "983:8:16", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1362,28 +1362,28 @@ "typeString": "address" } }, - "id": 2803, + "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": 2805, + "id": 2948, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2785, + "id": 2928, "modifierName": { "argumentTypes": null, - "id": 2784, + "id": 2927, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, + "referencedDeclaration": 2923, "src": "872:9:16", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -1397,15 +1397,15 @@ "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 2783, + "id": 2926, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2782, + "id": 2925, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 2805, + "scope": 2948, "src": "854:16:16", "stateVariable": false, "storageLocation": "default", @@ -1414,7 +1414,7 @@ "typeString": "address" }, "typeName": { - "id": 2781, + "id": 2924, "name": "address", "nodeType": "ElementaryTypeName", "src": "854:7:16", @@ -1431,19 +1431,19 @@ }, "payable": false, "returnParameters": { - "id": 2786, + "id": 2929, "nodeType": "ParameterList", "parameters": [], "src": "889:0:16" }, - "scope": 2806, + "scope": 2949, "src": "827:169:16", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2807, + "scope": 2950, "src": "217:782:16" } ], @@ -1455,5 +1455,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.688Z" + "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 6e68fa1..75e6299 100644 --- a/build/contracts/PTIDistributor.json +++ b/build/contracts/PTIDistributor.json @@ -262,7 +262,7 @@ } ], "payable": false, - "stateMutability": "view", + "stateMutability": "pure", "type": "function" }, { @@ -292,24 +292,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/PTIDistributor.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/PTIDistributor.sol", "exportedSymbols": { "PTIDistributor": [ - 833 + 866 ] }, - "id": 834, + "id": 867, "nodeType": "SourceUnit", "nodes": [ { - "id": 595, + "id": 610, "literals": [ "solidity", "^", @@ -322,32 +322,32 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 596, + "id": 611, "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 2807, + "scope": 867, + "sourceUnit": 2950, "src": "26:59:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 597, + "id": 612, "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 872, + "scope": 867, + "sourceUnit": 905, "src": "86:28:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 598, + "id": 613, "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 1097, + "scope": 867, + "sourceUnit": 1157, "src": "115:24:4", "symbolAliases": [], "unitAlias": "" @@ -358,57 +358,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 599, + "id": 614, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "168:7:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 600, + "id": 615, "nodeType": "InheritanceSpecifier", "src": "168:7:4" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 833, + "id": 866, "linearizedBaseContracts": [ - 833, - 2806 + 866, + 2949 ], "name": "PTIDistributor", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 602, + "id": 617, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 833, + "scope": 866, "src": "183:24:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 601, + "id": 616, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "183:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -418,20 +418,20 @@ { "anonymous": false, "documentation": null, - "id": 610, + "id": 625, "name": "LogDistribute", "nodeType": "EventDefinition", "parameters": { - "id": 609, + "id": 624, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 604, + "id": 619, "indexed": false, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 610, + "scope": 625, "src": "234:18:4", "stateVariable": false, "storageLocation": "default", @@ -440,7 +440,7 @@ "typeString": "address" }, "typeName": { - "id": 603, + "id": 618, "name": "address", "nodeType": "ElementaryTypeName", "src": "234:7:4", @@ -454,11 +454,11 @@ }, { "constant": false, - "id": 606, + "id": 621, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 610, + "scope": 625, "src": "254:12:4", "stateVariable": false, "storageLocation": "default", @@ -467,7 +467,7 @@ "typeString": "uint256" }, "typeName": { - "id": 605, + "id": 620, "name": "uint", "nodeType": "ElementaryTypeName", "src": "254:4:4", @@ -481,11 +481,11 @@ }, { "constant": false, - "id": 608, + "id": 623, "indexed": false, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 610, + "scope": 625, "src": "268:14:4", "stateVariable": false, "storageLocation": "default", @@ -494,7 +494,7 @@ "typeString": "string" }, "typeName": { - "id": 607, + "id": 622, "name": "string", "nodeType": "ElementaryTypeName", "src": "268:6:4", @@ -514,20 +514,20 @@ { "anonymous": false, "documentation": null, - "id": 618, + "id": 633, "name": "LogDistributeTransferable", "nodeType": "EventDefinition", "parameters": { - "id": 617, + "id": 632, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 612, + "id": 627, "indexed": false, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 618, + "scope": 633, "src": "321:18:4", "stateVariable": false, "storageLocation": "default", @@ -536,7 +536,7 @@ "typeString": "address" }, "typeName": { - "id": 611, + "id": 626, "name": "address", "nodeType": "ElementaryTypeName", "src": "321:7:4", @@ -550,11 +550,11 @@ }, { "constant": false, - "id": 614, + "id": 629, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 618, + "scope": 633, "src": "341:12:4", "stateVariable": false, "storageLocation": "default", @@ -563,7 +563,7 @@ "typeString": "uint256" }, "typeName": { - "id": 613, + "id": 628, "name": "uint", "nodeType": "ElementaryTypeName", "src": "341:4:4", @@ -577,11 +577,11 @@ }, { "constant": false, - "id": 616, + "id": 631, "indexed": false, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 618, + "scope": 633, "src": "355:14:4", "stateVariable": false, "storageLocation": "default", @@ -590,7 +590,7 @@ "typeString": "string" }, "typeName": { - "id": 615, + "id": 630, "name": "string", "nodeType": "ElementaryTypeName", "src": "355:6:4", @@ -610,20 +610,20 @@ { "anonymous": false, "documentation": null, - "id": 622, + "id": 637, "name": "LogDebug", "nodeType": "EventDefinition", "parameters": { - "id": 621, + "id": 636, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 620, + "id": 635, "indexed": false, "name": "_hashing", "nodeType": "VariableDeclaration", - "scope": 622, + "scope": 637, "src": "391:16:4", "stateVariable": false, "storageLocation": "default", @@ -632,7 +632,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 619, + "id": 634, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "391:7:4", @@ -652,20 +652,20 @@ { "anonymous": false, "documentation": null, - "id": 626, + "id": 641, "name": "LogDebugOwner", "nodeType": "EventDefinition", "parameters": { - "id": 625, + "id": 640, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 624, + "id": 639, "indexed": false, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 626, + "scope": 641, "src": "434:14:4", "stateVariable": false, "storageLocation": "default", @@ -674,7 +674,7 @@ "typeString": "address" }, "typeName": { - "id": 623, + "id": 638, "name": "address", "nodeType": "ElementaryTypeName", "src": "434:7:4", @@ -693,10 +693,10 @@ }, { "constant": false, - "id": 630, + "id": 645, "name": "isUsed", "nodeType": "VariableDeclaration", - "scope": 833, + "scope": 866, "src": "456:38:4", "stateVariable": true, "storageLocation": "default", @@ -705,9 +705,9 @@ "typeString": "mapping(bytes32 => bool)" }, "typeName": { - "id": 629, + "id": 644, "keyType": { - "id": 627, + "id": 642, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "464:7:4", @@ -723,7 +723,7 @@ "typeString": "mapping(bytes32 => bool)" }, "valueType": { - "id": 628, + "id": 643, "name": "bool", "nodeType": "ElementaryTypeName", "src": "475:4:4", @@ -738,25 +738,25 @@ }, { "body": { - "id": 644, + "id": 659, "nodeType": "Block", "src": "540:65:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 638, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 635, + "id": 650, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "550:5:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -769,18 +769,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 636, + "id": 651, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "558:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 637, + "id": 652, "isConstant": false, "isLValue": false, "isPure": false, @@ -800,28 +800,28 @@ "typeString": "address" } }, - "id": 639, + "id": 654, "nodeType": "ExpressionStatement", "src": "550:18:4" }, { "expression": { "argumentTypes": null, - "id": 642, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 640, + "id": 655, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 602, + "referencedDeclaration": 617, "src": "578:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -829,31 +829,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 641, + "id": 656, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 647, "src": "589:9:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "578:20:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 643, + "id": 658, "nodeType": "ExpressionStatement", "src": "578:20:4" } ] }, "documentation": null, - "id": 645, + "id": 660, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -861,31 +861,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 633, + "id": 648, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 632, + "id": 647, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 645, + "scope": 660, "src": "513:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 631, + "id": 646, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "513:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -897,12 +897,12 @@ }, "payable": false, "returnParameters": { - "id": 634, + "id": 649, "nodeType": "ParameterList", "parameters": [], "src": "540:0:4" }, - "scope": 833, + "scope": 866, "src": "501:104:4", "stateMutability": "nonpayable", "superFunction": null, @@ -910,22 +910,22 @@ }, { "body": { - "id": 727, + "id": 748, "nodeType": "Block", - "src": "741:510:4", + "src": "829:546:4", "statements": [ { "assignments": [ - 663 + 678 ], "declarations": [ { "constant": false, - "id": 663, + "id": 678, "name": "message", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "751:15:4", + "scope": 749, + "src": "839:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -933,10 +933,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 662, + "id": 677, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "751:7:4", + "src": "839:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -946,94 +946,146 @@ "visibility": "internal" } ], - "id": 670, + "id": 688, "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", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes 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" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 664, + "id": 679, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "769:9:4", + "referencedDeclaration": 3338, + "src": "857:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 669, + "id": 687, "isConstant": false, "isLValue": false, "isPure": false, @@ -1041,27 +1093,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "769:46:4", + "src": "857:64:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "751:64:4" + "src": "839:82:4" }, { "assignments": [ - 672 + 690 ], "declarations": [ { "constant": false, - "id": 672, + "id": 690, "name": "prefix", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "825:19:4", + "scope": 749, + "src": "931:19:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -1069,10 +1121,10 @@ "typeString": "bytes" }, "typeName": { - "id": 671, + "id": 689, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "825:5:4", + "src": "931:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -1082,18 +1134,18 @@ "visibility": "internal" } ], - "id": 674, + "id": 692, "initialValue": { "argumentTypes": null, "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 673, + "id": 691, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "847:34:4", + "src": "953:34:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", @@ -1102,20 +1154,20 @@ "value": "\u0019Ethereum Signed Message:\n32" }, "nodeType": "VariableDeclarationStatement", - "src": "825:56:4" + "src": "931:56:4" }, { "assignments": [ - 676 + 694 ], "declarations": [ { "constant": false, - "id": 676, + "id": 694, "name": "prefixedHash", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "891:20:4", + "scope": 749, + "src": "997:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1123,10 +1175,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 675, + "id": 693, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "891:7:4", + "src": "997:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1136,35 +1188,91 @@ "visibility": "internal" } ], - "id": 681, + "id": 702, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 678, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 672, - "src": "924:6:4", + "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" } - }, - { - "argumentTypes": null, - "id": 679, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "932:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } } ], "expression": { @@ -1172,24 +1280,20 @@ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" } ], - "id": 677, + "id": 695, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "914:9:4", + "referencedDeclaration": 3338, + "src": "1020:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 680, + "id": 701, "isConstant": false, "isLValue": false, "isPure": false, @@ -1197,14 +1301,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "914:26:4", + "src": "1020:44:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "891:49:4" + "src": "997:67:4" }, { "expression": { @@ -1216,14 +1320,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 695, + "id": 716, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 686, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, @@ -1231,31 +1335,31 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "958:14:4", + "src": "1082:14:4", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 683, + "id": 704, "name": "isUsed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "959:6:4", + "referencedDeclaration": 645, + "src": "1083:6:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 685, + "id": 706, "indexExpression": { "argumentTypes": null, - "id": 684, + "id": 705, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "966:5:4", + "referencedDeclaration": 666, + "src": "1090:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1266,7 +1370,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "959:13:4", + "src": "1083:13:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1285,7 +1389,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 694, + "id": 715, "isConstant": false, "isLValue": false, "isPure": false, @@ -1295,12 +1399,12 @@ "arguments": [ { "argumentTypes": null, - "id": 688, + "id": 709, "name": "prefixedHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 676, - "src": "986:12:4", + "referencedDeclaration": 694, + "src": "1110:12:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1308,12 +1412,12 @@ }, { "argumentTypes": null, - "id": 689, + "id": 710, "name": "_v", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "1000:2:4", + "referencedDeclaration": 670, + "src": "1124:2:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -1321,12 +1425,12 @@ }, { "argumentTypes": null, - "id": 690, + "id": 711, "name": "_r", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 657, - "src": "1004:2:4", + "referencedDeclaration": 672, + "src": "1128:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1334,12 +1438,12 @@ }, { "argumentTypes": null, - "id": 691, + "id": 712, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "1008:2:4", + "referencedDeclaration": 674, + "src": "1132:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1365,18 +1469,18 @@ "typeString": "bytes32" } ], - "id": 687, + "id": 708, "name": "ecrecover", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "976:9:4", + "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": 692, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -1384,7 +1488,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "976:35:4", + "src": "1100:35:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1394,24 +1498,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 693, + "id": 714, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1015:5:4", + "referencedDeclaration": 2897, + "src": "1139:5:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "976:44:4", + "src": "1100:44:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "958:62:4", + "src": "1082:62:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1425,21 +1529,21 @@ "typeString": "bool" } ], - "id": 682, + "id": 703, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "950:7:4", + "referencedDeclaration": 3347, + "src": "1074:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 696, + "id": 717, "isConstant": false, "isLValue": false, "isPure": false, @@ -1447,20 +1551,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "950:71:4", + "src": "1074:71:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 697, + "id": 718, "nodeType": "ExpressionStatement", - "src": "950:71:4" + "src": "1074:71:4" }, { "expression": { "argumentTypes": null, - "id": 702, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -1469,26 +1573,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 698, + "id": 719, "name": "isUsed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "1031:6:4", + "referencedDeclaration": 645, + "src": "1155:6:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 700, + "id": 721, "indexExpression": { "argumentTypes": null, - "id": 699, + "id": 720, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "1038:5:4", + "referencedDeclaration": 666, + "src": "1162:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1499,7 +1603,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1031:13:4", + "src": "1155:13:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1510,14 +1614,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 701, + "id": 722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1047:4:4", + "src": "1171:4:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1525,43 +1629,43 @@ }, "value": "true" }, - "src": "1031:20:4", + "src": "1155:20:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 703, + "id": 724, "nodeType": "ExpressionStatement", - "src": "1031:20:4" + "src": "1155:20:4" }, { "assignments": [ - 705 + 726 ], "declarations": [ { "constant": false, - "id": 705, + "id": 726, "name": "token", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "1061:18:4", + "scope": 749, + "src": "1185:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" }, "typeName": { "contractScope": null, - "id": 704, + "id": 725, "name": "ParatiiToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "1061:12:4", + "referencedDeclaration": 904, + "src": "1185:12:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -1569,7 +1673,7 @@ "visibility": "internal" } ], - "id": 712, + "id": 733, "initialValue": { "argumentTypes": null, "arguments": [ @@ -1579,14 +1683,14 @@ { "argumentTypes": null, "hexValue": "50617261746969546f6b656e", - "id": 709, + "id": 730, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1116:14:4", + "src": "1240:14:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", @@ -1604,32 +1708,32 @@ ], "expression": { "argumentTypes": null, - "id": 707, + "id": 728, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 602, - "src": "1095:8:4", + "referencedDeclaration": 617, + "src": "1219:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 708, + "id": 729, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1095:20:4", + "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": 710, + "id": 731, "isConstant": false, "isLValue": false, "isPure": false, @@ -1637,7 +1741,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1095:36:4", + "src": "1219:36:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1651,18 +1755,18 @@ "typeString": "address" } ], - "id": 706, + "id": 727, "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1082:12:4", + "referencedDeclaration": 904, + "src": "1206:12:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", "typeString": "type(contract ParatiiToken)" } }, - "id": 711, + "id": 732, "isConstant": false, "isLValue": false, "isPure": false, @@ -1670,14 +1774,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1082:50:4", + "src": "1206:50:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, "nodeType": "VariableDeclarationStatement", - "src": "1061:71:4" + "src": "1185:71:4" }, { "expression": { @@ -1688,12 +1792,12 @@ "arguments": [ { "argumentTypes": null, - "id": 716, + "id": 737, "name": "_toAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1165:10:4", + "referencedDeclaration": 662, + "src": "1289:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1701,12 +1805,12 @@ }, { "argumentTypes": null, - "id": 717, + "id": 738, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1177:7:4", + "referencedDeclaration": 664, + "src": "1301:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1726,32 +1830,32 @@ ], "expression": { "argumentTypes": null, - "id": 714, + "id": 735, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 705, - "src": "1150:5:4", + "referencedDeclaration": 726, + "src": "1274:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 715, + "id": 736, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "1150:14:4", + "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": 718, + "id": 739, "isConstant": false, "isLValue": false, "isPure": false, @@ -1759,7 +1863,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1150:35:4", + "src": "1274:35:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1773,21 +1877,21 @@ "typeString": "bool" } ], - "id": 713, + "id": 734, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1142:7:4", + "referencedDeclaration": 3347, + "src": "1266:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 719, + "id": 740, "isConstant": false, "isLValue": false, "isPure": false, @@ -1795,15 +1899,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1142:44:4", + "src": "1266:44:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 720, + "id": 741, "nodeType": "ExpressionStatement", - "src": "1142:44:4" + "src": "1266:44:4" }, { "eventCall": { @@ -1811,12 +1915,12 @@ "arguments": [ { "argumentTypes": null, - "id": 722, + "id": 743, "name": "_toAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1215:10:4", + "referencedDeclaration": 662, + "src": "1339:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1824,12 +1928,12 @@ }, { "argumentTypes": null, - "id": 723, + "id": 744, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1227:7:4", + "referencedDeclaration": 664, + "src": "1351:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1837,12 +1941,12 @@ }, { "argumentTypes": null, - "id": 724, + "id": 745, "name": "_reason", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "1236:7:4", + "referencedDeclaration": 668, + "src": "1360:7:4", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1864,18 +1968,18 @@ "typeString": "string memory" } ], - "id": 721, + "id": 742, "name": "LogDistribute", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 610, - "src": "1201:13:4", + "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": 725, + "id": 746, "isConstant": false, "isLValue": false, "isPure": false, @@ -1883,20 +1987,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1201:43:4", + "src": "1325:43:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 726, + "id": 747, "nodeType": "EmitStatement", - "src": "1196:48:4" + "src": "1320:48:4" } ] }, "documentation": null, - "id": 728, + "id": 749, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1904,16 +2008,16 @@ "name": "distribute", "nodeType": "FunctionDefinition", "parameters": { - "id": 660, + "id": 675, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 647, + "id": 662, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "632:18:4", + "scope": 749, + "src": "640:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1921,10 +2025,10 @@ "typeString": "address" }, "typeName": { - "id": 646, + "id": 661, "name": "address", "nodeType": "ElementaryTypeName", - "src": "632:7:4", + "src": "640:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1935,11 +2039,11 @@ }, { "constant": false, - "id": 649, + "id": 664, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "652:15:4", + "scope": 749, + "src": "669:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1947,10 +2051,10 @@ "typeString": "uint256" }, "typeName": { - "id": 648, + "id": 663, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "652:7:4", + "src": "669:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1961,11 +2065,11 @@ }, { "constant": false, - "id": 651, + "id": 666, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "669:13:4", + "scope": 749, + "src": "695:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1973,10 +2077,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 650, + "id": 665, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "669:7:4", + "src": "695:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1987,11 +2091,11 @@ }, { "constant": false, - "id": 653, + "id": 668, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "684:14:4", + "scope": 749, + "src": "719:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1999,10 +2103,10 @@ "typeString": "string" }, "typeName": { - "id": 652, + "id": 667, "name": "string", "nodeType": "ElementaryTypeName", - "src": "684:6:4", + "src": "719:6:4", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2013,11 +2117,11 @@ }, { "constant": false, - "id": 655, + "id": 670, "name": "_v", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "700:8:4", + "scope": 749, + "src": "744:8:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2025,10 +2129,10 @@ "typeString": "uint8" }, "typeName": { - "id": 654, + "id": 669, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "700:5:4", + "src": "744:5:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2039,11 +2143,11 @@ }, { "constant": false, - "id": 657, + "id": 672, "name": "_r", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "710:10:4", + "scope": 749, + "src": "770:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2051,10 +2155,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 656, + "id": 671, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "710:7:4", + "src": "770:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2065,11 +2169,11 @@ }, { "constant": false, - "id": 659, + "id": 674, "name": "_s", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "722:10:4", + "scope": 749, + "src": "791:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2077,10 +2181,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 658, + "id": 673, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "722:7:4", + "src": "791:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2090,39 +2194,39 @@ "visibility": "internal" } ], - "src": "631:102:4" + "src": "630:177:4" }, "payable": false, "returnParameters": { - "id": 661, + "id": 676, "nodeType": "ParameterList", "parameters": [], - "src": "741:0:4" + "src": "829:0:4" }, - "scope": 833, - "src": "612:639:4", + "scope": 866, + "src": "611:764:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 774, + "id": 801, "nodeType": "Block", - "src": "1392:271:4", + "src": "1600:307:4", "statements": [ { "assignments": [ - 746 + 767 ], "declarations": [ { "constant": false, - "id": 746, + "id": 767, "name": "message", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1402:15:4", + "scope": 802, + "src": "1610:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2130,10 +2234,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 745, + "id": 766, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1402:7:4", + "src": "1610:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2143,94 +2247,146 @@ "visibility": "internal" } ], - "id": 753, + "id": 777, "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", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes 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" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 747, + "id": 768, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1420:9:4", + "referencedDeclaration": 3338, + "src": "1628:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 752, + "id": 776, "isConstant": false, "isLValue": false, "isPure": false, @@ -2238,27 +2394,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1420:46:4", + "src": "1628:64:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1402:64:4" + "src": "1610:82:4" }, { "assignments": [ - 755 + 779 ], "declarations": [ { "constant": false, - "id": 755, + "id": 779, "name": "prefix", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1476:19:4", + "scope": 802, + "src": "1702:19:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2266,10 +2422,10 @@ "typeString": "bytes" }, "typeName": { - "id": 754, + "id": 778, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1476:5:4", + "src": "1702:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -2279,18 +2435,18 @@ "visibility": "internal" } ], - "id": 757, + "id": 781, "initialValue": { "argumentTypes": null, "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 756, + "id": 780, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1498:34:4", + "src": "1724:34:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", @@ -2299,20 +2455,20 @@ "value": "\u0019Ethereum Signed Message:\n32" }, "nodeType": "VariableDeclarationStatement", - "src": "1476:56:4" + "src": "1702:56:4" }, { "assignments": [ - 759 + 783 ], "declarations": [ { "constant": false, - "id": 759, + "id": 783, "name": "prefixedHash", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1542:20:4", + "scope": 802, + "src": "1768:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2320,10 +2476,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 758, + "id": 782, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1542:7:4", + "src": "1768:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2333,35 +2489,91 @@ "visibility": "internal" } ], - "id": 764, + "id": 791, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 761, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "1575:6:4", + "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" } - }, - { - "argumentTypes": null, - "id": 762, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 746, - "src": "1583:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } } ], "expression": { @@ -2369,24 +2581,20 @@ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" } ], - "id": 760, + "id": 784, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1565:9:4", + "referencedDeclaration": 3338, + "src": "1791:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 763, + "id": 790, "isConstant": false, "isLValue": false, "isPure": false, @@ -2394,14 +2602,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1565:26:4", + "src": "1791:44:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1542:49:4" + "src": "1768:67:4" }, { "eventCall": { @@ -2412,12 +2620,12 @@ "arguments": [ { "argumentTypes": null, - "id": 767, + "id": 794, "name": "prefixedHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 759, - "src": "1630:12:4", + "referencedDeclaration": 783, + "src": "1874:12:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2425,12 +2633,12 @@ }, { "argumentTypes": null, - "id": 768, + "id": 795, "name": "_v", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 738, - "src": "1644:2:4", + "referencedDeclaration": 759, + "src": "1888:2:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2438,12 +2646,12 @@ }, { "argumentTypes": null, - "id": 769, + "id": 796, "name": "_r", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "1648:2:4", + "referencedDeclaration": 761, + "src": "1892:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2451,12 +2659,12 @@ }, { "argumentTypes": null, - "id": 770, + "id": 797, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "1652:2:4", + "referencedDeclaration": 763, + "src": "1896:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2482,18 +2690,18 @@ "typeString": "bytes32" } ], - "id": 766, + "id": 793, "name": "ecrecover", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1620:9:4", + "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": 771, + "id": 798, "isConstant": false, "isLValue": false, "isPure": false, @@ -2501,7 +2709,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1620:35:4", + "src": "1864:35:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2515,18 +2723,18 @@ "typeString": "address" } ], - "id": 765, + "id": 792, "name": "LogDebugOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "1606:13:4", + "referencedDeclaration": 641, + "src": "1850:13:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 772, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -2534,20 +2742,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1606:50:4", + "src": "1850:50:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 773, + "id": 800, "nodeType": "EmitStatement", - "src": "1601:55:4" + "src": "1845:55:4" } ] }, "documentation": null, - "id": 775, + "id": 802, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2555,16 +2763,16 @@ "name": "checkOwnerPacked", "nodeType": "FunctionDefinition", "parameters": { - "id": 743, + "id": 764, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 730, + "id": 751, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1283:18:4", + "scope": 802, + "src": "1416:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2572,10 +2780,10 @@ "typeString": "address" }, "typeName": { - "id": 729, + "id": 750, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1283:7:4", + "src": "1416:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2586,11 +2794,11 @@ }, { "constant": false, - "id": 732, + "id": 753, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1303:15:4", + "scope": 802, + "src": "1445:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2598,10 +2806,10 @@ "typeString": "uint256" }, "typeName": { - "id": 731, + "id": 752, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1303:7:4", + "src": "1445:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2612,11 +2820,11 @@ }, { "constant": false, - "id": 734, + "id": 755, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1320:13:4", + "scope": 802, + "src": "1471:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2624,10 +2832,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 733, + "id": 754, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1320:7:4", + "src": "1471:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2638,11 +2846,11 @@ }, { "constant": false, - "id": 736, + "id": 757, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1335:14:4", + "scope": 802, + "src": "1495:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2650,10 +2858,10 @@ "typeString": "string" }, "typeName": { - "id": 735, + "id": 756, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1335:6:4", + "src": "1495:6:4", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2664,11 +2872,11 @@ }, { "constant": false, - "id": 738, + "id": 759, "name": "_v", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1351:8:4", + "scope": 802, + "src": "1520:8:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2676,10 +2884,10 @@ "typeString": "uint8" }, "typeName": { - "id": 737, + "id": 758, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1351:5:4", + "src": "1520:5:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2690,11 +2898,11 @@ }, { "constant": false, - "id": 740, + "id": 761, "name": "_r", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1361:10:4", + "scope": 802, + "src": "1539:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2702,10 +2910,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 739, + "id": 760, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1361:7:4", + "src": "1539:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2716,11 +2924,11 @@ }, { "constant": false, - "id": 742, + "id": 763, "name": "_s", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1373:10:4", + "scope": 802, + "src": "1560:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2728,10 +2936,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 741, + "id": 762, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1373:7:4", + "src": "1560:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2741,39 +2949,39 @@ "visibility": "internal" } ], - "src": "1282:102:4" + "src": "1406:174:4" }, "payable": false, "returnParameters": { - "id": 744, + "id": 765, "nodeType": "ParameterList", "parameters": [], - "src": "1392:0:4" + "src": "1600:0:4" }, - "scope": 833, - "src": "1257:406:4", + "scope": 866, + "src": "1381:526:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 806, + "id": 836, "nodeType": "Block", - "src": "1767:182:4", + "src": "2042:200:4", "statements": [ { "assignments": [ - 789 + 816 ], "declarations": [ { "constant": false, - "id": 789, + "id": 816, "name": "prefix", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1777:19:4", + "scope": 837, + "src": "2052:19:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -2781,10 +2989,10 @@ "typeString": "bytes" }, "typeName": { - "id": 788, + "id": 815, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1777:5:4", + "src": "2052:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -2794,18 +3002,18 @@ "visibility": "internal" } ], - "id": 791, + "id": 818, "initialValue": { "argumentTypes": null, "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 790, + "id": 817, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1799:34:4", + "src": "2074:34:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", @@ -2814,20 +3022,20 @@ "value": "\u0019Ethereum Signed Message:\n32" }, "nodeType": "VariableDeclarationStatement", - "src": "1777:56:4" + "src": "2052:56:4" }, { "assignments": [ - 793 + 820 ], "declarations": [ { "constant": false, - "id": 793, + "id": 820, "name": "prefixedHash", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1843:20:4", + "scope": 837, + "src": "2118:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2835,10 +3043,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 792, + "id": 819, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1843:7:4", + "src": "2118:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2848,35 +3056,91 @@ "visibility": "internal" } ], - "id": 798, + "id": 828, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 795, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 789, - "src": "1876:6:4", + "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" } - }, - { - "argumentTypes": null, - "id": 796, - "name": "_hash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "1884:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } } ], "expression": { @@ -2884,24 +3148,20 @@ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" } ], - "id": 794, + "id": 821, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1866:9:4", + "referencedDeclaration": 3338, + "src": "2141:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 797, + "id": 827, "isConstant": false, "isLValue": false, "isPure": false, @@ -2909,14 +3169,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1866:24:4", + "src": "2141:42:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1843:47:4" + "src": "2118:65:4" }, { "expression": { @@ -2924,12 +3184,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 830, "name": "prefixedHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 793, - "src": "1917:12:4", + "referencedDeclaration": 820, + "src": "2210:12:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2937,12 +3197,12 @@ }, { "argumentTypes": null, - "id": 801, + "id": 831, "name": "_v", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 779, - "src": "1931:2:4", + "referencedDeclaration": 806, + "src": "2224:2:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -2950,12 +3210,12 @@ }, { "argumentTypes": null, - "id": 802, + "id": 832, "name": "_r", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 781, - "src": "1935:2:4", + "referencedDeclaration": 808, + "src": "2228:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2963,12 +3223,12 @@ }, { "argumentTypes": null, - "id": 803, + "id": 833, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 783, - "src": "1939:2:4", + "referencedDeclaration": 810, + "src": "2232:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2994,18 +3254,18 @@ "typeString": "bytes32" } ], - "id": 799, + "id": 829, "name": "ecrecover", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1907:9:4", + "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": 804, + "id": 834, "isConstant": false, "isLValue": false, "isPure": false, @@ -3013,21 +3273,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1907:35:4", + "src": "2200:35:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 787, - "id": 805, + "functionReturnParameters": 814, + "id": 835, "nodeType": "Return", - "src": "1900:42:4" + "src": "2193:42:4" } ] }, "documentation": null, - "id": 807, + "id": 837, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3035,16 +3295,16 @@ "name": "checkOwner", "nodeType": "FunctionDefinition", "parameters": { - "id": 784, + "id": 811, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 777, + "id": 804, "name": "_hash", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1688:13:4", + "scope": 837, + "src": "1933:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3052,10 +3312,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 776, + "id": 803, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1688:7:4", + "src": "1933:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3066,11 +3326,11 @@ }, { "constant": false, - "id": 779, + "id": 806, "name": "_v", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1703:8:4", + "scope": 837, + "src": "1948:8:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3078,10 +3338,10 @@ "typeString": "uint8" }, "typeName": { - "id": 778, + "id": 805, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1703:5:4", + "src": "1948:5:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -3092,11 +3352,11 @@ }, { "constant": false, - "id": 781, + "id": 808, "name": "_r", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1713:10:4", + "scope": 837, + "src": "1958:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3104,10 +3364,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 780, + "id": 807, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1713:7:4", + "src": "1958:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3118,11 +3378,11 @@ }, { "constant": false, - "id": 783, + "id": 810, "name": "_s", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1725:10:4", + "scope": 837, + "src": "1970:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3130,10 +3390,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 782, + "id": 809, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1725:7:4", + "src": "1970:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3143,20 +3403,20 @@ "visibility": "internal" } ], - "src": "1687:49:4" + "src": "1932:49:4" }, "payable": false, "returnParameters": { - "id": 787, + "id": 814, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 786, + "id": 813, "name": "", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1758:7:4", + "scope": 837, + "src": "2028:7:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3164,10 +3424,10 @@ "typeString": "address" }, "typeName": { - "id": 785, + "id": 812, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1758:7:4", + "src": "2028:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3177,32 +3437,32 @@ "visibility": "internal" } ], - "src": "1757:9:4" + "src": "2027:9:4" }, - "scope": 833, - "src": "1668:281:4", - "stateMutability": "view", + "scope": 866, + "src": "1913:329:4", + "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { - "id": 831, + "id": 864, "nodeType": "Block", - "src": "2052:113:4", + "src": "2358:131:4", "statements": [ { "assignments": [ - 819 + 849 ], "declarations": [ { "constant": false, - "id": 819, + "id": 849, "name": "hashing", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2062:15:4", + "scope": 865, + "src": "2368:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3210,10 +3470,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 818, + "id": 848, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2062:7:4", + "src": "2368:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3223,94 +3483,146 @@ "visibility": "internal" } ], - "id": 826, + "id": 859, "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", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes 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" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 820, + "id": 850, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2080:9:4", + "referencedDeclaration": 3338, + "src": "2386:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 825, + "id": 858, "isConstant": false, "isLValue": false, "isPure": false, @@ -3318,14 +3630,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2080:46:4", + "src": "2386:64:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "2062:64:4" + "src": "2368:82:4" }, { "eventCall": { @@ -3333,12 +3645,12 @@ "arguments": [ { "argumentTypes": null, - "id": 828, + "id": 861, "name": "hashing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 819, - "src": "2150:7:4", + "referencedDeclaration": 849, + "src": "2474:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3352,18 +3664,18 @@ "typeString": "bytes32" } ], - "id": 827, + "id": 860, "name": "LogDebug", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 622, - "src": "2141:8:4", + "referencedDeclaration": 637, + "src": "2465:8:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 829, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, @@ -3371,20 +3683,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2141:17:4", + "src": "2465:17:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 830, + "id": 863, "nodeType": "EmitStatement", - "src": "2136:22:4" + "src": "2460:22:4" } ] }, "documentation": null, - "id": 832, + "id": 865, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3392,16 +3704,16 @@ "name": "checkHashing", "nodeType": "FunctionDefinition", "parameters": { - "id": 816, + "id": 846, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 809, + "id": 839, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1977:18:4", + "scope": 865, + "src": "2270:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3409,10 +3721,10 @@ "typeString": "address" }, "typeName": { - "id": 808, + "id": 838, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1977:7:4", + "src": "2270:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3423,11 +3735,11 @@ }, { "constant": false, - "id": 811, + "id": 841, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1997:15:4", + "scope": 865, + "src": "2290:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3435,10 +3747,10 @@ "typeString": "uint256" }, "typeName": { - "id": 810, + "id": 840, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1997:7:4", + "src": "2290:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3449,11 +3761,11 @@ }, { "constant": false, - "id": 813, + "id": 843, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2014:13:4", + "scope": 865, + "src": "2307:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3461,10 +3773,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 812, + "id": 842, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2014:7:4", + "src": "2307:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3475,11 +3787,11 @@ }, { "constant": false, - "id": 815, + "id": 845, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2029:14:4", + "scope": 865, + "src": "2322:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3487,10 +3799,10 @@ "typeString": "string" }, "typeName": { - "id": 814, + "id": 844, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2029:6:4", + "src": "2322:6:4", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3500,40 +3812,40 @@ "visibility": "internal" } ], - "src": "1976:68:4" + "src": "2269:68:4" }, "payable": false, "returnParameters": { - "id": 817, + "id": 847, "nodeType": "ParameterList", "parameters": [], - "src": "2052:0:4" + "src": "2358:0:4" }, - "scope": 833, - "src": "1955:210:4", + "scope": 866, + "src": "2248:241:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 834, - "src": "141:2026:4" + "scope": 867, + "src": "141:2350:4" } ], - "src": "0:2168:4" + "src": "0:2492:4" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/PTIDistributor.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/PTIDistributor.sol", "exportedSymbols": { "PTIDistributor": [ - 833 + 866 ] }, - "id": 834, + "id": 867, "nodeType": "SourceUnit", "nodes": [ { - "id": 595, + "id": 610, "literals": [ "solidity", "^", @@ -3546,32 +3858,32 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 596, + "id": 611, "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 2807, + "scope": 867, + "sourceUnit": 2950, "src": "26:59:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 597, + "id": 612, "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 872, + "scope": 867, + "sourceUnit": 905, "src": "86:28:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 598, + "id": 613, "nodeType": "ImportDirective", - "scope": 834, - "sourceUnit": 1097, + "scope": 867, + "sourceUnit": 1157, "src": "115:24:4", "symbolAliases": [], "unitAlias": "" @@ -3582,57 +3894,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 599, + "id": 614, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "168:7:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 600, + "id": 615, "nodeType": "InheritanceSpecifier", "src": "168:7:4" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 833, + "id": 866, "linearizedBaseContracts": [ - 833, - 2806 + 866, + 2949 ], "name": "PTIDistributor", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 602, + "id": 617, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 833, + "scope": 866, "src": "183:24:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 601, + "id": 616, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "183:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3642,20 +3954,20 @@ { "anonymous": false, "documentation": null, - "id": 610, + "id": 625, "name": "LogDistribute", "nodeType": "EventDefinition", "parameters": { - "id": 609, + "id": 624, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 604, + "id": 619, "indexed": false, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 610, + "scope": 625, "src": "234:18:4", "stateVariable": false, "storageLocation": "default", @@ -3664,7 +3976,7 @@ "typeString": "address" }, "typeName": { - "id": 603, + "id": 618, "name": "address", "nodeType": "ElementaryTypeName", "src": "234:7:4", @@ -3678,11 +3990,11 @@ }, { "constant": false, - "id": 606, + "id": 621, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 610, + "scope": 625, "src": "254:12:4", "stateVariable": false, "storageLocation": "default", @@ -3691,7 +4003,7 @@ "typeString": "uint256" }, "typeName": { - "id": 605, + "id": 620, "name": "uint", "nodeType": "ElementaryTypeName", "src": "254:4:4", @@ -3705,11 +4017,11 @@ }, { "constant": false, - "id": 608, + "id": 623, "indexed": false, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 610, + "scope": 625, "src": "268:14:4", "stateVariable": false, "storageLocation": "default", @@ -3718,7 +4030,7 @@ "typeString": "string" }, "typeName": { - "id": 607, + "id": 622, "name": "string", "nodeType": "ElementaryTypeName", "src": "268:6:4", @@ -3738,20 +4050,20 @@ { "anonymous": false, "documentation": null, - "id": 618, + "id": 633, "name": "LogDistributeTransferable", "nodeType": "EventDefinition", "parameters": { - "id": 617, + "id": 632, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 612, + "id": 627, "indexed": false, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 618, + "scope": 633, "src": "321:18:4", "stateVariable": false, "storageLocation": "default", @@ -3760,7 +4072,7 @@ "typeString": "address" }, "typeName": { - "id": 611, + "id": 626, "name": "address", "nodeType": "ElementaryTypeName", "src": "321:7:4", @@ -3774,11 +4086,11 @@ }, { "constant": false, - "id": 614, + "id": 629, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 618, + "scope": 633, "src": "341:12:4", "stateVariable": false, "storageLocation": "default", @@ -3787,7 +4099,7 @@ "typeString": "uint256" }, "typeName": { - "id": 613, + "id": 628, "name": "uint", "nodeType": "ElementaryTypeName", "src": "341:4:4", @@ -3801,11 +4113,11 @@ }, { "constant": false, - "id": 616, + "id": 631, "indexed": false, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 618, + "scope": 633, "src": "355:14:4", "stateVariable": false, "storageLocation": "default", @@ -3814,7 +4126,7 @@ "typeString": "string" }, "typeName": { - "id": 615, + "id": 630, "name": "string", "nodeType": "ElementaryTypeName", "src": "355:6:4", @@ -3834,20 +4146,20 @@ { "anonymous": false, "documentation": null, - "id": 622, + "id": 637, "name": "LogDebug", "nodeType": "EventDefinition", "parameters": { - "id": 621, + "id": 636, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 620, + "id": 635, "indexed": false, "name": "_hashing", "nodeType": "VariableDeclaration", - "scope": 622, + "scope": 637, "src": "391:16:4", "stateVariable": false, "storageLocation": "default", @@ -3856,7 +4168,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 619, + "id": 634, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "391:7:4", @@ -3876,20 +4188,20 @@ { "anonymous": false, "documentation": null, - "id": 626, + "id": 641, "name": "LogDebugOwner", "nodeType": "EventDefinition", "parameters": { - "id": 625, + "id": 640, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 624, + "id": 639, "indexed": false, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 626, + "scope": 641, "src": "434:14:4", "stateVariable": false, "storageLocation": "default", @@ -3898,7 +4210,7 @@ "typeString": "address" }, "typeName": { - "id": 623, + "id": 638, "name": "address", "nodeType": "ElementaryTypeName", "src": "434:7:4", @@ -3917,10 +4229,10 @@ }, { "constant": false, - "id": 630, + "id": 645, "name": "isUsed", "nodeType": "VariableDeclaration", - "scope": 833, + "scope": 866, "src": "456:38:4", "stateVariable": true, "storageLocation": "default", @@ -3929,9 +4241,9 @@ "typeString": "mapping(bytes32 => bool)" }, "typeName": { - "id": 629, + "id": 644, "keyType": { - "id": 627, + "id": 642, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "464:7:4", @@ -3947,7 +4259,7 @@ "typeString": "mapping(bytes32 => bool)" }, "valueType": { - "id": 628, + "id": 643, "name": "bool", "nodeType": "ElementaryTypeName", "src": "475:4:4", @@ -3962,25 +4274,25 @@ }, { "body": { - "id": 644, + "id": 659, "nodeType": "Block", "src": "540:65:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 638, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 635, + "id": 650, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "550:5:4", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3993,18 +4305,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 636, + "id": 651, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "558:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 637, + "id": 652, "isConstant": false, "isLValue": false, "isPure": false, @@ -4024,28 +4336,28 @@ "typeString": "address" } }, - "id": 639, + "id": 654, "nodeType": "ExpressionStatement", "src": "550:18:4" }, { "expression": { "argumentTypes": null, - "id": 642, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 640, + "id": 655, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 602, + "referencedDeclaration": 617, "src": "578:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -4053,31 +4365,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 641, + "id": 656, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 632, + "referencedDeclaration": 647, "src": "589:9:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "578:20:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 643, + "id": 658, "nodeType": "ExpressionStatement", "src": "578:20:4" } ] }, "documentation": null, - "id": 645, + "id": 660, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -4085,31 +4397,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 633, + "id": 648, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 632, + "id": 647, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 645, + "scope": 660, "src": "513:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 631, + "id": 646, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "513:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -4121,12 +4433,12 @@ }, "payable": false, "returnParameters": { - "id": 634, + "id": 649, "nodeType": "ParameterList", "parameters": [], "src": "540:0:4" }, - "scope": 833, + "scope": 866, "src": "501:104:4", "stateMutability": "nonpayable", "superFunction": null, @@ -4134,22 +4446,22 @@ }, { "body": { - "id": 727, + "id": 748, "nodeType": "Block", - "src": "741:510:4", + "src": "829:546:4", "statements": [ { "assignments": [ - 663 + 678 ], "declarations": [ { "constant": false, - "id": 663, + "id": 678, "name": "message", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "751:15:4", + "scope": 749, + "src": "839:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4157,10 +4469,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 662, + "id": 677, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "751:7:4", + "src": "839:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4170,94 +4482,146 @@ "visibility": "internal" } ], - "id": 670, + "id": 688, "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" + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 664, + "id": 679, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "769:9:4", + "referencedDeclaration": 3338, + "src": "857:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 669, + "id": 687, "isConstant": false, "isLValue": false, "isPure": false, @@ -4265,27 +4629,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "769:46:4", + "src": "857:64:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "751:64:4" + "src": "839:82:4" }, { "assignments": [ - 672 + 690 ], "declarations": [ { "constant": false, - "id": 672, + "id": 690, "name": "prefix", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "825:19:4", + "scope": 749, + "src": "931:19:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -4293,10 +4657,10 @@ "typeString": "bytes" }, "typeName": { - "id": 671, + "id": 689, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "825:5:4", + "src": "931:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -4306,18 +4670,18 @@ "visibility": "internal" } ], - "id": 674, + "id": 692, "initialValue": { "argumentTypes": null, "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 673, + "id": 691, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "847:34:4", + "src": "953:34:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", @@ -4326,20 +4690,20 @@ "value": "\u0019Ethereum Signed Message:\n32" }, "nodeType": "VariableDeclarationStatement", - "src": "825:56:4" + "src": "931:56:4" }, { "assignments": [ - 676 + 694 ], "declarations": [ { "constant": false, - "id": 676, + "id": 694, "name": "prefixedHash", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "891:20:4", + "scope": 749, + "src": "997:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4347,10 +4711,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 675, + "id": 693, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "891:7:4", + "src": "997:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4360,35 +4724,91 @@ "visibility": "internal" } ], - "id": 681, + "id": 702, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 678, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 672, - "src": "924:6:4", + "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" } - }, - { - "argumentTypes": null, - "id": 679, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 663, - "src": "932:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } } ], "expression": { @@ -4396,24 +4816,20 @@ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" } ], - "id": 677, + "id": 695, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "914:9:4", + "referencedDeclaration": 3338, + "src": "1020:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 680, + "id": 701, "isConstant": false, "isLValue": false, "isPure": false, @@ -4421,14 +4837,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "914:26:4", + "src": "1020:44:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "891:49:4" + "src": "997:67:4" }, { "expression": { @@ -4440,14 +4856,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 695, + "id": 716, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 686, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, @@ -4455,31 +4871,31 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "958:14:4", + "src": "1082:14:4", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 683, + "id": 704, "name": "isUsed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "959:6:4", + "referencedDeclaration": 645, + "src": "1083:6:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 685, + "id": 706, "indexExpression": { "argumentTypes": null, - "id": 684, + "id": 705, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "966:5:4", + "referencedDeclaration": 666, + "src": "1090:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4490,7 +4906,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "959:13:4", + "src": "1083:13:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4509,7 +4925,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 694, + "id": 715, "isConstant": false, "isLValue": false, "isPure": false, @@ -4519,12 +4935,12 @@ "arguments": [ { "argumentTypes": null, - "id": 688, + "id": 709, "name": "prefixedHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 676, - "src": "986:12:4", + "referencedDeclaration": 694, + "src": "1110:12:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4532,12 +4948,12 @@ }, { "argumentTypes": null, - "id": 689, + "id": 710, "name": "_v", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 655, - "src": "1000:2:4", + "referencedDeclaration": 670, + "src": "1124:2:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -4545,12 +4961,12 @@ }, { "argumentTypes": null, - "id": 690, + "id": 711, "name": "_r", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 657, - "src": "1004:2:4", + "referencedDeclaration": 672, + "src": "1128:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4558,12 +4974,12 @@ }, { "argumentTypes": null, - "id": 691, + "id": 712, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "1008:2:4", + "referencedDeclaration": 674, + "src": "1132:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4589,18 +5005,18 @@ "typeString": "bytes32" } ], - "id": 687, + "id": 708, "name": "ecrecover", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "976:9:4", + "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": 692, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -4608,7 +5024,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "976:35:4", + "src": "1100:35:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4618,24 +5034,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 693, + "id": 714, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1015:5:4", + "referencedDeclaration": 2897, + "src": "1139:5:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "976:44:4", + "src": "1100:44:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "958:62:4", + "src": "1082:62:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4649,21 +5065,21 @@ "typeString": "bool" } ], - "id": 682, + "id": 703, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "950:7:4", + "referencedDeclaration": 3347, + "src": "1074:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 696, + "id": 717, "isConstant": false, "isLValue": false, "isPure": false, @@ -4671,20 +5087,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "950:71:4", + "src": "1074:71:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 697, + "id": 718, "nodeType": "ExpressionStatement", - "src": "950:71:4" + "src": "1074:71:4" }, { "expression": { "argumentTypes": null, - "id": 702, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -4693,26 +5109,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 698, + "id": 719, "name": "isUsed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "1031:6:4", + "referencedDeclaration": 645, + "src": "1155:6:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", "typeString": "mapping(bytes32 => bool)" } }, - "id": 700, + "id": 721, "indexExpression": { "argumentTypes": null, - "id": 699, + "id": 720, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 651, - "src": "1038:5:4", + "referencedDeclaration": 666, + "src": "1162:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4723,7 +5139,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1031:13:4", + "src": "1155:13:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4734,14 +5150,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 701, + "id": 722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1047:4:4", + "src": "1171:4:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4749,43 +5165,43 @@ }, "value": "true" }, - "src": "1031:20:4", + "src": "1155:20:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 703, + "id": 724, "nodeType": "ExpressionStatement", - "src": "1031:20:4" + "src": "1155:20:4" }, { "assignments": [ - 705 + 726 ], "declarations": [ { "constant": false, - "id": 705, + "id": 726, "name": "token", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "1061:18:4", + "scope": 749, + "src": "1185:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" }, "typeName": { "contractScope": null, - "id": 704, + "id": 725, "name": "ParatiiToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "1061:12:4", + "referencedDeclaration": 904, + "src": "1185:12:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -4793,7 +5209,7 @@ "visibility": "internal" } ], - "id": 712, + "id": 733, "initialValue": { "argumentTypes": null, "arguments": [ @@ -4803,14 +5219,14 @@ { "argumentTypes": null, "hexValue": "50617261746969546f6b656e", - "id": 709, + "id": 730, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1116:14:4", + "src": "1240:14:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", @@ -4828,32 +5244,32 @@ ], "expression": { "argumentTypes": null, - "id": 707, + "id": 728, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 602, - "src": "1095:8:4", + "referencedDeclaration": 617, + "src": "1219:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 708, + "id": 729, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1095:20:4", + "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": 710, + "id": 731, "isConstant": false, "isLValue": false, "isPure": false, @@ -4861,7 +5277,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1095:36:4", + "src": "1219:36:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4875,18 +5291,18 @@ "typeString": "address" } ], - "id": 706, + "id": 727, "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "1082:12:4", + "referencedDeclaration": 904, + "src": "1206:12:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", "typeString": "type(contract ParatiiToken)" } }, - "id": 711, + "id": 732, "isConstant": false, "isLValue": false, "isPure": false, @@ -4894,14 +5310,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1082:50:4", + "src": "1206:50:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, "nodeType": "VariableDeclarationStatement", - "src": "1061:71:4" + "src": "1185:71:4" }, { "expression": { @@ -4912,12 +5328,12 @@ "arguments": [ { "argumentTypes": null, - "id": 716, + "id": 737, "name": "_toAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1165:10:4", + "referencedDeclaration": 662, + "src": "1289:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4925,12 +5341,12 @@ }, { "argumentTypes": null, - "id": 717, + "id": 738, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1177:7:4", + "referencedDeclaration": 664, + "src": "1301:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4950,32 +5366,32 @@ ], "expression": { "argumentTypes": null, - "id": 714, + "id": 735, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 705, - "src": "1150:5:4", + "referencedDeclaration": 726, + "src": "1274:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 715, + "id": 736, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "1150:14:4", + "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": 718, + "id": 739, "isConstant": false, "isLValue": false, "isPure": false, @@ -4983,7 +5399,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1150:35:4", + "src": "1274:35:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4997,21 +5413,21 @@ "typeString": "bool" } ], - "id": 713, + "id": 734, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1142:7:4", + "referencedDeclaration": 3347, + "src": "1266:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 719, + "id": 740, "isConstant": false, "isLValue": false, "isPure": false, @@ -5019,15 +5435,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1142:44:4", + "src": "1266:44:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 720, + "id": 741, "nodeType": "ExpressionStatement", - "src": "1142:44:4" + "src": "1266:44:4" }, { "eventCall": { @@ -5035,12 +5451,12 @@ "arguments": [ { "argumentTypes": null, - "id": 722, + "id": 743, "name": "_toAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 647, - "src": "1215:10:4", + "referencedDeclaration": 662, + "src": "1339:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5048,12 +5464,12 @@ }, { "argumentTypes": null, - "id": 723, + "id": 744, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 649, - "src": "1227:7:4", + "referencedDeclaration": 664, + "src": "1351:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5061,12 +5477,12 @@ }, { "argumentTypes": null, - "id": 724, + "id": 745, "name": "_reason", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 653, - "src": "1236:7:4", + "referencedDeclaration": 668, + "src": "1360:7:4", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5088,18 +5504,18 @@ "typeString": "string memory" } ], - "id": 721, + "id": 742, "name": "LogDistribute", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 610, - "src": "1201:13:4", + "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": 725, + "id": 746, "isConstant": false, "isLValue": false, "isPure": false, @@ -5107,20 +5523,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1201:43:4", + "src": "1325:43:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 726, + "id": 747, "nodeType": "EmitStatement", - "src": "1196:48:4" + "src": "1320:48:4" } ] }, "documentation": null, - "id": 728, + "id": 749, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5128,16 +5544,16 @@ "name": "distribute", "nodeType": "FunctionDefinition", "parameters": { - "id": 660, + "id": 675, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 647, + "id": 662, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "632:18:4", + "scope": 749, + "src": "640:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5145,10 +5561,10 @@ "typeString": "address" }, "typeName": { - "id": 646, + "id": 661, "name": "address", "nodeType": "ElementaryTypeName", - "src": "632:7:4", + "src": "640:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5159,11 +5575,11 @@ }, { "constant": false, - "id": 649, + "id": 664, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "652:15:4", + "scope": 749, + "src": "669:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5171,10 +5587,10 @@ "typeString": "uint256" }, "typeName": { - "id": 648, + "id": 663, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "652:7:4", + "src": "669:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5185,11 +5601,11 @@ }, { "constant": false, - "id": 651, + "id": 666, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "669:13:4", + "scope": 749, + "src": "695:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5197,10 +5613,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 650, + "id": 665, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "669:7:4", + "src": "695:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5211,11 +5627,11 @@ }, { "constant": false, - "id": 653, + "id": 668, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "684:14:4", + "scope": 749, + "src": "719:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5223,10 +5639,10 @@ "typeString": "string" }, "typeName": { - "id": 652, + "id": 667, "name": "string", "nodeType": "ElementaryTypeName", - "src": "684:6:4", + "src": "719:6:4", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5237,11 +5653,11 @@ }, { "constant": false, - "id": 655, + "id": 670, "name": "_v", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "700:8:4", + "scope": 749, + "src": "744:8:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5249,10 +5665,10 @@ "typeString": "uint8" }, "typeName": { - "id": 654, + "id": 669, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "700:5:4", + "src": "744:5:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -5263,11 +5679,11 @@ }, { "constant": false, - "id": 657, + "id": 672, "name": "_r", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "710:10:4", + "scope": 749, + "src": "770:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5275,10 +5691,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 656, + "id": 671, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "710:7:4", + "src": "770:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5289,11 +5705,11 @@ }, { "constant": false, - "id": 659, + "id": 674, "name": "_s", "nodeType": "VariableDeclaration", - "scope": 728, - "src": "722:10:4", + "scope": 749, + "src": "791:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5301,10 +5717,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 658, + "id": 673, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "722:7:4", + "src": "791:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5314,39 +5730,39 @@ "visibility": "internal" } ], - "src": "631:102:4" + "src": "630:177:4" }, "payable": false, "returnParameters": { - "id": 661, + "id": 676, "nodeType": "ParameterList", "parameters": [], - "src": "741:0:4" + "src": "829:0:4" }, - "scope": 833, - "src": "612:639:4", + "scope": 866, + "src": "611:764:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 774, + "id": 801, "nodeType": "Block", - "src": "1392:271:4", + "src": "1600:307:4", "statements": [ { "assignments": [ - 746 + 767 ], "declarations": [ { "constant": false, - "id": 746, + "id": 767, "name": "message", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1402:15:4", + "scope": 802, + "src": "1610:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5354,10 +5770,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 745, + "id": 766, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1402:7:4", + "src": "1610:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5367,94 +5783,146 @@ "visibility": "internal" } ], - "id": 753, + "id": 777, "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", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes 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" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 747, + "id": 768, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1420:9:4", + "referencedDeclaration": 3338, + "src": "1628:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 752, + "id": 776, "isConstant": false, "isLValue": false, "isPure": false, @@ -5462,27 +5930,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1420:46:4", + "src": "1628:64:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1402:64:4" + "src": "1610:82:4" }, { "assignments": [ - 755 + 779 ], "declarations": [ { "constant": false, - "id": 755, + "id": 779, "name": "prefix", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1476:19:4", + "scope": 802, + "src": "1702:19:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -5490,10 +5958,10 @@ "typeString": "bytes" }, "typeName": { - "id": 754, + "id": 778, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1476:5:4", + "src": "1702:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -5503,18 +5971,18 @@ "visibility": "internal" } ], - "id": 757, + "id": 781, "initialValue": { "argumentTypes": null, "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 756, + "id": 780, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1498:34:4", + "src": "1724:34:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", @@ -5523,20 +5991,20 @@ "value": "\u0019Ethereum Signed Message:\n32" }, "nodeType": "VariableDeclarationStatement", - "src": "1476:56:4" + "src": "1702:56:4" }, { "assignments": [ - 759 + 783 ], "declarations": [ { "constant": false, - "id": 759, + "id": 783, "name": "prefixedHash", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1542:20:4", + "scope": 802, + "src": "1768:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5544,10 +6012,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 758, + "id": 782, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1542:7:4", + "src": "1768:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5557,35 +6025,91 @@ "visibility": "internal" } ], - "id": 764, + "id": 791, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 761, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "1575:6:4", + "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" } - }, - { - "argumentTypes": null, - "id": 762, - "name": "message", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 746, - "src": "1583:7:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } } ], "expression": { @@ -5593,24 +6117,20 @@ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" } ], - "id": 760, + "id": 784, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1565:9:4", + "referencedDeclaration": 3338, + "src": "1791:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 763, + "id": 790, "isConstant": false, "isLValue": false, "isPure": false, @@ -5618,14 +6138,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1565:26:4", + "src": "1791:44:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1542:49:4" + "src": "1768:67:4" }, { "eventCall": { @@ -5636,12 +6156,12 @@ "arguments": [ { "argumentTypes": null, - "id": 767, + "id": 794, "name": "prefixedHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 759, - "src": "1630:12:4", + "referencedDeclaration": 783, + "src": "1874:12:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5649,12 +6169,12 @@ }, { "argumentTypes": null, - "id": 768, + "id": 795, "name": "_v", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 738, - "src": "1644:2:4", + "referencedDeclaration": 759, + "src": "1888:2:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -5662,12 +6182,12 @@ }, { "argumentTypes": null, - "id": 769, + "id": 796, "name": "_r", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "1648:2:4", + "referencedDeclaration": 761, + "src": "1892:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5675,12 +6195,12 @@ }, { "argumentTypes": null, - "id": 770, + "id": 797, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 742, - "src": "1652:2:4", + "referencedDeclaration": 763, + "src": "1896:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5706,18 +6226,18 @@ "typeString": "bytes32" } ], - "id": 766, + "id": 793, "name": "ecrecover", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1620:9:4", + "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": 771, + "id": 798, "isConstant": false, "isLValue": false, "isPure": false, @@ -5725,7 +6245,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1620:35:4", + "src": "1864:35:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5739,18 +6259,18 @@ "typeString": "address" } ], - "id": 765, + "id": 792, "name": "LogDebugOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 626, - "src": "1606:13:4", + "referencedDeclaration": 641, + "src": "1850:13:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 772, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -5758,20 +6278,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1606:50:4", + "src": "1850:50:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 773, + "id": 800, "nodeType": "EmitStatement", - "src": "1601:55:4" + "src": "1845:55:4" } ] }, "documentation": null, - "id": 775, + "id": 802, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5779,16 +6299,16 @@ "name": "checkOwnerPacked", "nodeType": "FunctionDefinition", "parameters": { - "id": 743, + "id": 764, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 730, + "id": 751, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1283:18:4", + "scope": 802, + "src": "1416:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5796,10 +6316,10 @@ "typeString": "address" }, "typeName": { - "id": 729, + "id": 750, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1283:7:4", + "src": "1416:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5810,11 +6330,11 @@ }, { "constant": false, - "id": 732, + "id": 753, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1303:15:4", + "scope": 802, + "src": "1445:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5822,10 +6342,10 @@ "typeString": "uint256" }, "typeName": { - "id": 731, + "id": 752, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1303:7:4", + "src": "1445:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5836,11 +6356,11 @@ }, { "constant": false, - "id": 734, + "id": 755, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1320:13:4", + "scope": 802, + "src": "1471:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5848,10 +6368,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 733, + "id": 754, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1320:7:4", + "src": "1471:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5862,11 +6382,11 @@ }, { "constant": false, - "id": 736, + "id": 757, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1335:14:4", + "scope": 802, + "src": "1495:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5874,10 +6394,10 @@ "typeString": "string" }, "typeName": { - "id": 735, + "id": 756, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1335:6:4", + "src": "1495:6:4", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5888,11 +6408,11 @@ }, { "constant": false, - "id": 738, + "id": 759, "name": "_v", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1351:8:4", + "scope": 802, + "src": "1520:8:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5900,10 +6420,10 @@ "typeString": "uint8" }, "typeName": { - "id": 737, + "id": 758, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1351:5:4", + "src": "1520:5:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -5914,11 +6434,11 @@ }, { "constant": false, - "id": 740, + "id": 761, "name": "_r", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1361:10:4", + "scope": 802, + "src": "1539:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5926,10 +6446,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 739, + "id": 760, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1361:7:4", + "src": "1539:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5940,11 +6460,11 @@ }, { "constant": false, - "id": 742, + "id": 763, "name": "_s", "nodeType": "VariableDeclaration", - "scope": 775, - "src": "1373:10:4", + "scope": 802, + "src": "1560:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5952,10 +6472,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 741, + "id": 762, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1373:7:4", + "src": "1560:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5965,39 +6485,39 @@ "visibility": "internal" } ], - "src": "1282:102:4" + "src": "1406:174:4" }, "payable": false, "returnParameters": { - "id": 744, + "id": 765, "nodeType": "ParameterList", "parameters": [], - "src": "1392:0:4" + "src": "1600:0:4" }, - "scope": 833, - "src": "1257:406:4", + "scope": 866, + "src": "1381:526:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 806, + "id": 836, "nodeType": "Block", - "src": "1767:182:4", + "src": "2042:200:4", "statements": [ { "assignments": [ - 789 + 816 ], "declarations": [ { "constant": false, - "id": 789, + "id": 816, "name": "prefix", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1777:19:4", + "scope": 837, + "src": "2052:19:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -6005,10 +6525,10 @@ "typeString": "bytes" }, "typeName": { - "id": 788, + "id": 815, "name": "bytes", "nodeType": "ElementaryTypeName", - "src": "1777:5:4", + "src": "2052:5:4", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" @@ -6018,18 +6538,18 @@ "visibility": "internal" } ], - "id": 791, + "id": 818, "initialValue": { "argumentTypes": null, "hexValue": "19457468657265756d205369676e6564204d6573736167653a0a3332", - "id": 790, + "id": 817, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1799:34:4", + "src": "2074:34:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_178a2411ab6fbc1ba11064408972259c558d0e82fd48b0aba3ad81d14f065e73", @@ -6038,20 +6558,20 @@ "value": "\u0019Ethereum Signed Message:\n32" }, "nodeType": "VariableDeclarationStatement", - "src": "1777:56:4" + "src": "2052:56:4" }, { "assignments": [ - 793 + 820 ], "declarations": [ { "constant": false, - "id": 793, + "id": 820, "name": "prefixedHash", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1843:20:4", + "scope": 837, + "src": "2118:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6059,10 +6579,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 792, + "id": 819, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1843:7:4", + "src": "2118:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6072,35 +6592,91 @@ "visibility": "internal" } ], - "id": 798, + "id": 828, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 795, - "name": "prefix", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 789, - "src": "1876:6:4", + "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" } - }, - { - "argumentTypes": null, - "id": 796, - "name": "_hash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "1884:5:4", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } } ], "expression": { @@ -6108,24 +6684,20 @@ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" } ], - "id": 794, + "id": 821, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1866:9:4", + "referencedDeclaration": 3338, + "src": "2141:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 797, + "id": 827, "isConstant": false, "isLValue": false, "isPure": false, @@ -6133,14 +6705,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1866:24:4", + "src": "2141:42:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1843:47:4" + "src": "2118:65:4" }, { "expression": { @@ -6148,12 +6720,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 830, "name": "prefixedHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 793, - "src": "1917:12:4", + "referencedDeclaration": 820, + "src": "2210:12:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6161,12 +6733,12 @@ }, { "argumentTypes": null, - "id": 801, + "id": 831, "name": "_v", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 779, - "src": "1931:2:4", + "referencedDeclaration": 806, + "src": "2224:2:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -6174,12 +6746,12 @@ }, { "argumentTypes": null, - "id": 802, + "id": 832, "name": "_r", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 781, - "src": "1935:2:4", + "referencedDeclaration": 808, + "src": "2228:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6187,12 +6759,12 @@ }, { "argumentTypes": null, - "id": 803, + "id": 833, "name": "_s", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 783, - "src": "1939:2:4", + "referencedDeclaration": 810, + "src": "2232:2:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6218,18 +6790,18 @@ "typeString": "bytes32" } ], - "id": 799, + "id": 829, "name": "ecrecover", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3193, - "src": "1907:9:4", + "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": 804, + "id": 834, "isConstant": false, "isLValue": false, "isPure": false, @@ -6237,21 +6809,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1907:35:4", + "src": "2200:35:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 787, - "id": 805, + "functionReturnParameters": 814, + "id": 835, "nodeType": "Return", - "src": "1900:42:4" + "src": "2193:42:4" } ] }, "documentation": null, - "id": 807, + "id": 837, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -6259,16 +6831,16 @@ "name": "checkOwner", "nodeType": "FunctionDefinition", "parameters": { - "id": 784, + "id": 811, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 777, + "id": 804, "name": "_hash", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1688:13:4", + "scope": 837, + "src": "1933:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6276,10 +6848,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 776, + "id": 803, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1688:7:4", + "src": "1933:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6290,11 +6862,11 @@ }, { "constant": false, - "id": 779, + "id": 806, "name": "_v", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1703:8:4", + "scope": 837, + "src": "1948:8:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6302,10 +6874,10 @@ "typeString": "uint8" }, "typeName": { - "id": 778, + "id": 805, "name": "uint8", "nodeType": "ElementaryTypeName", - "src": "1703:5:4", + "src": "1948:5:4", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" @@ -6316,11 +6888,11 @@ }, { "constant": false, - "id": 781, + "id": 808, "name": "_r", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1713:10:4", + "scope": 837, + "src": "1958:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6328,10 +6900,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 780, + "id": 807, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1713:7:4", + "src": "1958:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6342,11 +6914,11 @@ }, { "constant": false, - "id": 783, + "id": 810, "name": "_s", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1725:10:4", + "scope": 837, + "src": "1970:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6354,10 +6926,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 782, + "id": 809, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1725:7:4", + "src": "1970:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6367,20 +6939,20 @@ "visibility": "internal" } ], - "src": "1687:49:4" + "src": "1932:49:4" }, "payable": false, "returnParameters": { - "id": 787, + "id": 814, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 786, + "id": 813, "name": "", "nodeType": "VariableDeclaration", - "scope": 807, - "src": "1758:7:4", + "scope": 837, + "src": "2028:7:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6388,10 +6960,10 @@ "typeString": "address" }, "typeName": { - "id": 785, + "id": 812, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1758:7:4", + "src": "2028:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6401,32 +6973,32 @@ "visibility": "internal" } ], - "src": "1757:9:4" + "src": "2027:9:4" }, - "scope": 833, - "src": "1668:281:4", - "stateMutability": "view", + "scope": 866, + "src": "1913:329:4", + "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { - "id": 831, + "id": 864, "nodeType": "Block", - "src": "2052:113:4", + "src": "2358:131:4", "statements": [ { "assignments": [ - 819 + 849 ], "declarations": [ { "constant": false, - "id": 819, + "id": 849, "name": "hashing", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2062:15:4", + "scope": 865, + "src": "2368:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6434,10 +7006,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 818, + "id": 848, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2062:7:4", + "src": "2368:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6447,94 +7019,146 @@ "visibility": "internal" } ], - "id": 826, + "id": 859, "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", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes 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" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 820, + "id": 850, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2080:9:4", + "referencedDeclaration": 3338, + "src": "2386:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 825, + "id": 858, "isConstant": false, "isLValue": false, "isPure": false, @@ -6542,14 +7166,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2080:46:4", + "src": "2386:64:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "2062:64:4" + "src": "2368:82:4" }, { "eventCall": { @@ -6557,12 +7181,12 @@ "arguments": [ { "argumentTypes": null, - "id": 828, + "id": 861, "name": "hashing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 819, - "src": "2150:7:4", + "referencedDeclaration": 849, + "src": "2474:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6576,18 +7200,18 @@ "typeString": "bytes32" } ], - "id": 827, + "id": 860, "name": "LogDebug", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 622, - "src": "2141:8:4", + "referencedDeclaration": 637, + "src": "2465:8:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 829, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, @@ -6595,20 +7219,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2141:17:4", + "src": "2465:17:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 830, + "id": 863, "nodeType": "EmitStatement", - "src": "2136:22:4" + "src": "2460:22:4" } ] }, "documentation": null, - "id": 832, + "id": 865, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -6616,16 +7240,16 @@ "name": "checkHashing", "nodeType": "FunctionDefinition", "parameters": { - "id": 816, + "id": 846, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 809, + "id": 839, "name": "_toAddress", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1977:18:4", + "scope": 865, + "src": "2270:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6633,10 +7257,10 @@ "typeString": "address" }, "typeName": { - "id": 808, + "id": 838, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1977:7:4", + "src": "2270:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6647,11 +7271,11 @@ }, { "constant": false, - "id": 811, + "id": 841, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "1997:15:4", + "scope": 865, + "src": "2290:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6659,10 +7283,10 @@ "typeString": "uint256" }, "typeName": { - "id": 810, + "id": 840, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1997:7:4", + "src": "2290:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6673,11 +7297,11 @@ }, { "constant": false, - "id": 813, + "id": 843, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2014:13:4", + "scope": 865, + "src": "2307:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6685,10 +7309,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 812, + "id": 842, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2014:7:4", + "src": "2307:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6699,11 +7323,11 @@ }, { "constant": false, - "id": 815, + "id": 845, "name": "_reason", "nodeType": "VariableDeclaration", - "scope": 832, - "src": "2029:14:4", + "scope": 865, + "src": "2322:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6711,10 +7335,10 @@ "typeString": "string" }, "typeName": { - "id": 814, + "id": 844, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2029:6:4", + "src": "2322:6:4", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6724,27 +7348,27 @@ "visibility": "internal" } ], - "src": "1976:68:4" + "src": "2269:68:4" }, "payable": false, "returnParameters": { - "id": 817, + "id": 847, "nodeType": "ParameterList", "parameters": [], - "src": "2052:0:4" + "src": "2358:0:4" }, - "scope": 833, - "src": "1955:210:4", + "scope": 866, + "src": "2248:241:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 834, - "src": "141:2026:4" + "scope": 867, + "src": "141:2350:4" } ], - "src": "0:2168:4" + "src": "0:2492:4" }, "compiler": { "name": "solc", @@ -6752,5 +7376,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.671Z" + "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 820cfe8..f6ab08b 100644 --- a/build/contracts/ParatiiToken.json +++ b/build/contracts/ParatiiToken.json @@ -283,24 +283,24 @@ "type": "event" } ], - "bytecode": "0x60806040526040805190810160405280600781526020017f5061726174696900000000000000000000000000000000000000000000000000815250600390805190602001906200005192919062000117565b506040805190810160405280600381526020017f5054490000000000000000000000000000000000000000000000000000000000815250600490805190602001906200009f92919062000117565b506012600555600554600a0a6301406f4002600655348015620000c157600080fd5b50600654600081905550600654600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001c6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200015a57805160ff19168380011785556200018b565b828001600101855582156200018b579182015b828111156200018a5782518255916020019190600101906200016d565b5b5090506200019a91906200019e565b5090565b620001c391905b80821115620001bf576000816000905550600101620001a5565b5090565b90565b61120980620001d66000396000f3006080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a72305820916e98a242ec9ef0ec70c02ea47906137218bd8aff59ed9ce8eb697a23ab35d60029", - "deployedBytecode": "0x6080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146100bf578063095ea7b31461014f57806318160ddd146101b457806323b872dd146101df5780632ff2e9dc14610264578063313ce5671461028f57806366188463146102ba57806370a082311461031f57806395d89b4114610376578063a9059cbb14610406578063d73dd6231461046b578063dd62ed3e146104d0575b600080fd5b3480156100cb57600080fd5b506100d4610547565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b5061019a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105e5565b604051808215151515815260200191505060405180910390f35b3480156101c057600080fd5b506101c96106d7565b6040518082815260200191505060405180910390f35b3480156101eb57600080fd5b5061024a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106dd565b604051808215151515815260200191505060405180910390f35b34801561027057600080fd5b506102796109c9565b6040518082815260200191505060405180910390f35b34801561029b57600080fd5b506102a46109cf565b6040518082815260200191505060405180910390f35b3480156102c657600080fd5b50610305600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109d5565b604051808215151515815260200191505060405180910390f35b34801561032b57600080fd5b50610360600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c66565b6040518082815260200191505060405180910390f35b34801561038257600080fd5b5061038b610caf565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103cb5780820151818401526020810190506103b0565b50505050905090810190601f1680156103f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561041257600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d4d565b604051808215151515815260200191505060405180910390f35b34801561047757600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f23565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b50610531600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111f565b6040518082815260200191505060405180910390f35b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561071c57600080fd5b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506107ed83600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061088283600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108d883826111a690919063ffffffff16565b600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b60065481565b60055481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610ae6576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b7a565b610af983826111a690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d455780601f10610d1a57610100808354040283529160200191610d45565b820191906000526020600020905b815481529060010190602001808311610d2857829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d8a57600080fd5b610ddc82600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111a690919063ffffffff16565b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e7182600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610fb482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111bf90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008282111515156111b457fe5b818303905092915050565b60008082840190508381101515156111d357fe5b80915050929150505600a165627a7a72305820916e98a242ec9ef0ec70c02ea47906137218bd8aff59ed9ce8eb697a23ab35d60029", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "exportedSymbols": { "ParatiiToken": [ - 871 + 904 ] }, - "id": 872, + "id": 905, "nodeType": "SourceUnit", "nodes": [ { - "id": 835, + "id": 868, "literals": [ "solidity", "^", @@ -313,10 +313,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", "file": "zeppelin-solidity/contracts/token/StandardToken.sol", - "id": 836, + "id": 869, "nodeType": "ImportDirective", - "scope": 872, - "sourceUnit": 3187, + "scope": 905, + "sourceUnit": 3330, "src": "26:61:5", "symbolAliases": [], "unitAlias": "" @@ -327,47 +327,47 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 837, + "id": 870, "name": "StandardToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3186, + "referencedDeclaration": 3329, "src": "114:13:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_StandardToken_$3186", + "typeIdentifier": "t_contract$_StandardToken_$3329", "typeString": "contract StandardToken" } }, - "id": 838, + "id": 871, "nodeType": "InheritanceSpecifier", "src": "114:13:5" } ], "contractDependencies": [ - 2883, - 2926, - 2955, - 3186 + 3026, + 3069, + 3098, + 3329 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 871, + "id": 904, "linearizedBaseContracts": [ - 871, - 3186, - 2883, - 2926, - 2955 + 904, + 3329, + 3026, + 3069, + 3098 ], "name": "ParatiiToken", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 841, + "id": 874, "name": "name", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "135:30:5", "stateVariable": true, "storageLocation": "default", @@ -376,7 +376,7 @@ "typeString": "string" }, "typeName": { - "id": 839, + "id": 872, "name": "string", "nodeType": "ElementaryTypeName", "src": "135:6:5", @@ -388,7 +388,7 @@ "value": { "argumentTypes": null, "hexValue": "50617261746969", - "id": 840, + "id": 873, "isConstant": false, "isLValue": false, "isPure": true, @@ -407,10 +407,10 @@ }, { "constant": false, - "id": 844, + "id": 877, "name": "symbol", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "171:28:5", "stateVariable": true, "storageLocation": "default", @@ -419,7 +419,7 @@ "typeString": "string" }, "typeName": { - "id": 842, + "id": 875, "name": "string", "nodeType": "ElementaryTypeName", "src": "171:6:5", @@ -431,7 +431,7 @@ "value": { "argumentTypes": null, "hexValue": "505449", - "id": 843, + "id": 876, "isConstant": false, "isLValue": false, "isPure": true, @@ -450,10 +450,10 @@ }, { "constant": false, - "id": 847, + "id": 880, "name": "decimals", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "205:25:5", "stateVariable": true, "storageLocation": "default", @@ -462,7 +462,7 @@ "typeString": "uint256" }, "typeName": { - "id": 845, + "id": 878, "name": "uint", "nodeType": "ElementaryTypeName", "src": "205:4:5", @@ -474,7 +474,7 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 846, + "id": 879, "isConstant": false, "isLValue": false, "isPure": true, @@ -493,10 +493,10 @@ }, { "constant": false, - "id": 855, + "id": 888, "name": "INITIAL_SUPPLY", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "236:54:5", "stateVariable": true, "storageLocation": "default", @@ -505,7 +505,7 @@ "typeString": "uint256" }, "typeName": { - "id": 848, + "id": 881, "name": "uint", "nodeType": "ElementaryTypeName", "src": "236:4:5", @@ -520,7 +520,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 854, + "id": 887, "isConstant": false, "isLValue": false, "isPure": false, @@ -528,7 +528,7 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3231303030303030", - "id": 849, + "id": 882, "isConstant": false, "isLValue": false, "isPure": true, @@ -554,7 +554,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 852, + "id": 885, "isConstant": false, "isLValue": false, "isPure": false, @@ -562,7 +562,7 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 850, + "id": 883, "isConstant": false, "isLValue": false, "isPure": true, @@ -581,11 +581,11 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 851, + "id": 884, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 847, + "referencedDeclaration": 880, "src": "281:8:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -599,7 +599,7 @@ } } ], - "id": 853, + "id": 886, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -622,25 +622,25 @@ }, { "body": { - "id": 869, + "id": 902, "nodeType": "Block", "src": "318:92:5", "statements": [ { "expression": { "argumentTypes": null, - "id": 860, + "id": 893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 858, + "id": 891, "name": "totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2930, + "referencedDeclaration": 3073, "src": "328:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -651,11 +651,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 859, + "id": 892, "name": "INITIAL_SUPPLY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 855, + "referencedDeclaration": 888, "src": "342:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -668,14 +668,14 @@ "typeString": "uint256" } }, - "id": 861, + "id": 894, "nodeType": "ExpressionStatement", "src": "328:28:5" }, { "expression": { "argumentTypes": null, - "id": 867, + "id": 900, "isConstant": false, "isLValue": false, "isPure": false, @@ -684,34 +684,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 862, + "id": 895, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "366:8:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 865, + "id": 898, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 863, + "id": 896, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "375:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 864, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -740,11 +740,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 866, + "id": 899, "name": "INITIAL_SUPPLY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 855, + "referencedDeclaration": 888, "src": "389:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -757,14 +757,14 @@ "typeString": "uint256" } }, - "id": 868, + "id": 901, "nodeType": "ExpressionStatement", "src": "366:37:5" } ] }, "documentation": null, - "id": 870, + "id": 903, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -772,43 +772,43 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 856, + "id": 889, "nodeType": "ParameterList", "parameters": [], "src": "308:2:5" }, "payable": false, "returnParameters": { - "id": 857, + "id": 890, "nodeType": "ParameterList", "parameters": [], "src": "318:0:5" }, - "scope": 871, + "scope": 904, "src": "297:113:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 872, + "scope": 905, "src": "89:323:5" } ], "src": "0:413:5" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "exportedSymbols": { "ParatiiToken": [ - 871 + 904 ] }, - "id": 872, + "id": 905, "nodeType": "SourceUnit", "nodes": [ { - "id": 835, + "id": 868, "literals": [ "solidity", "^", @@ -821,10 +821,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", "file": "zeppelin-solidity/contracts/token/StandardToken.sol", - "id": 836, + "id": 869, "nodeType": "ImportDirective", - "scope": 872, - "sourceUnit": 3187, + "scope": 905, + "sourceUnit": 3330, "src": "26:61:5", "symbolAliases": [], "unitAlias": "" @@ -835,47 +835,47 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 837, + "id": 870, "name": "StandardToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3186, + "referencedDeclaration": 3329, "src": "114:13:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_StandardToken_$3186", + "typeIdentifier": "t_contract$_StandardToken_$3329", "typeString": "contract StandardToken" } }, - "id": 838, + "id": 871, "nodeType": "InheritanceSpecifier", "src": "114:13:5" } ], "contractDependencies": [ - 2883, - 2926, - 2955, - 3186 + 3026, + 3069, + 3098, + 3329 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 871, + "id": 904, "linearizedBaseContracts": [ - 871, - 3186, - 2883, - 2926, - 2955 + 904, + 3329, + 3026, + 3069, + 3098 ], "name": "ParatiiToken", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 841, + "id": 874, "name": "name", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "135:30:5", "stateVariable": true, "storageLocation": "default", @@ -884,7 +884,7 @@ "typeString": "string" }, "typeName": { - "id": 839, + "id": 872, "name": "string", "nodeType": "ElementaryTypeName", "src": "135:6:5", @@ -896,7 +896,7 @@ "value": { "argumentTypes": null, "hexValue": "50617261746969", - "id": 840, + "id": 873, "isConstant": false, "isLValue": false, "isPure": true, @@ -915,10 +915,10 @@ }, { "constant": false, - "id": 844, + "id": 877, "name": "symbol", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "171:28:5", "stateVariable": true, "storageLocation": "default", @@ -927,7 +927,7 @@ "typeString": "string" }, "typeName": { - "id": 842, + "id": 875, "name": "string", "nodeType": "ElementaryTypeName", "src": "171:6:5", @@ -939,7 +939,7 @@ "value": { "argumentTypes": null, "hexValue": "505449", - "id": 843, + "id": 876, "isConstant": false, "isLValue": false, "isPure": true, @@ -958,10 +958,10 @@ }, { "constant": false, - "id": 847, + "id": 880, "name": "decimals", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "205:25:5", "stateVariable": true, "storageLocation": "default", @@ -970,7 +970,7 @@ "typeString": "uint256" }, "typeName": { - "id": 845, + "id": 878, "name": "uint", "nodeType": "ElementaryTypeName", "src": "205:4:5", @@ -982,7 +982,7 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 846, + "id": 879, "isConstant": false, "isLValue": false, "isPure": true, @@ -1001,10 +1001,10 @@ }, { "constant": false, - "id": 855, + "id": 888, "name": "INITIAL_SUPPLY", "nodeType": "VariableDeclaration", - "scope": 871, + "scope": 904, "src": "236:54:5", "stateVariable": true, "storageLocation": "default", @@ -1013,7 +1013,7 @@ "typeString": "uint256" }, "typeName": { - "id": 848, + "id": 881, "name": "uint", "nodeType": "ElementaryTypeName", "src": "236:4:5", @@ -1028,7 +1028,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 854, + "id": 887, "isConstant": false, "isLValue": false, "isPure": false, @@ -1036,7 +1036,7 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3231303030303030", - "id": 849, + "id": 882, "isConstant": false, "isLValue": false, "isPure": true, @@ -1062,7 +1062,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 852, + "id": 885, "isConstant": false, "isLValue": false, "isPure": false, @@ -1070,7 +1070,7 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 850, + "id": 883, "isConstant": false, "isLValue": false, "isPure": true, @@ -1089,11 +1089,11 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 851, + "id": 884, "name": "decimals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 847, + "referencedDeclaration": 880, "src": "281:8:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1107,7 +1107,7 @@ } } ], - "id": 853, + "id": 886, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1130,25 +1130,25 @@ }, { "body": { - "id": 869, + "id": 902, "nodeType": "Block", "src": "318:92:5", "statements": [ { "expression": { "argumentTypes": null, - "id": 860, + "id": 893, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 858, + "id": 891, "name": "totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2930, + "referencedDeclaration": 3073, "src": "328:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1159,11 +1159,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 859, + "id": 892, "name": "INITIAL_SUPPLY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 855, + "referencedDeclaration": 888, "src": "342:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1176,14 +1176,14 @@ "typeString": "uint256" } }, - "id": 861, + "id": 894, "nodeType": "ExpressionStatement", "src": "328:28:5" }, { "expression": { "argumentTypes": null, - "id": 867, + "id": 900, "isConstant": false, "isLValue": false, "isPure": false, @@ -1192,34 +1192,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 862, + "id": 895, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "366:8:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 865, + "id": 898, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 863, + "id": 896, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "375:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 864, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -1248,11 +1248,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 866, + "id": 899, "name": "INITIAL_SUPPLY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 855, + "referencedDeclaration": 888, "src": "389:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1265,14 +1265,14 @@ "typeString": "uint256" } }, - "id": 868, + "id": 901, "nodeType": "ExpressionStatement", "src": "366:37:5" } ] }, "documentation": null, - "id": 870, + "id": 903, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -1280,26 +1280,26 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 856, + "id": 889, "nodeType": "ParameterList", "parameters": [], "src": "308:2:5" }, "payable": false, "returnParameters": { - "id": 857, + "id": 890, "nodeType": "ParameterList", "parameters": [], "src": "318:0:5" }, - "scope": 871, + "scope": 904, "src": "297:113:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 872, + "scope": 905, "src": "89:323:5" } ], @@ -1311,5 +1311,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.675Z" + "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 84eb462..7d7cc64 100644 --- a/build/contracts/Registry.json +++ b/build/contracts/Registry.json @@ -229,22 +229,35 @@ "type": "function" }, { - "constant": true, + "constant": false, "inputs": [ { "name": "_name", "type": "string" + }, + { + "name": "_number", + "type": "uint256" } ], - "name": "getContract", - "outputs": [ + "name": "registerUint", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ { - "name": "", - "type": "address" + "name": "_name", + "type": "string" } ], + "name": "unregisterUint", + "outputs": [], "payable": false, - "stateMutability": "view", + "stateMutability": "nonpayable", "type": "function" }, { @@ -255,11 +268,11 @@ "type": "string" }, { - "name": "_number", - "type": "uint256" + "name": "_string", + "type": "string" } ], - "name": "registerUint", + "name": "registerString", "outputs": [], "payable": false, "stateMutability": "nonpayable", @@ -273,7 +286,7 @@ "type": "string" } ], - "name": "unregisterUint", + "name": "unregisterString", "outputs": [], "payable": false, "stateMutability": "nonpayable", @@ -287,11 +300,11 @@ "type": "string" } ], - "name": "getUint", + "name": "getContract", "outputs": [ { "name": "", - "type": "uint256" + "type": "address" } ], "payable": false, @@ -299,35 +312,22 @@ "type": "function" }, { - "constant": false, + "constant": true, "inputs": [ { "name": "_name", "type": "string" - }, - { - "name": "_string", - "type": "string" } ], - "name": "registerString", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ + "name": "getUint", + "outputs": [ { - "name": "_name", - "type": "string" + "name": "", + "type": "uint256" } ], - "name": "unregisterString", - "outputs": [], "payable": false, - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -350,24 +350,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "exportedSymbols": { "Registry": [ - 1096 + 1156 ] }, - "id": 1097, + "id": 1157, "nodeType": "SourceUnit", "nodes": [ { - "id": 873, + "id": 906, "literals": [ "solidity", "^", @@ -380,10 +380,10 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 874, + "id": 907, "nodeType": "ImportDirective", - "scope": 1097, - "sourceUnit": 2807, + "scope": 1157, + "sourceUnit": 2950, "src": "26:59:6", "symbolAliases": [], "unitAlias": "" @@ -394,41 +394,41 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 875, + "id": 908, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "211:7:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 876, + "id": 909, "nodeType": "InheritanceSpecifier", "src": "211:7:6" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": "@dev the Registry contains settings and addresses of contracts for the Partii Ecosystem\n *", "fullyImplemented": true, - "id": 1096, + "id": 1156, "linearizedBaseContracts": [ - 1096, - 2806 + 1156, + 2949 ], "name": "Registry", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 880, + "id": 913, "name": "contracts", "nodeType": "VariableDeclaration", - "scope": 1096, + "scope": 1156, "src": "227:43:6", "stateVariable": true, "storageLocation": "default", @@ -437,9 +437,9 @@ "typeString": "mapping(bytes32 => address)" }, "typeName": { - "id": 879, + "id": 912, "keyType": { - "id": 877, + "id": 910, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "236:7:6", @@ -455,7 +455,7 @@ "typeString": "mapping(bytes32 => address)" }, "valueType": { - "id": 878, + "id": 911, "name": "address", "nodeType": "ElementaryTypeName", "src": "245:7:6", @@ -470,10 +470,10 @@ }, { "constant": false, - "id": 884, + "id": 917, "name": "numbers", "nodeType": "VariableDeclaration", - "scope": 1096, + "scope": 1156, "src": "276:38:6", "stateVariable": true, "storageLocation": "default", @@ -482,9 +482,9 @@ "typeString": "mapping(bytes32 => uint256)" }, "typeName": { - "id": 883, + "id": 916, "keyType": { - "id": 881, + "id": 914, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "285:7:6", @@ -500,7 +500,7 @@ "typeString": "mapping(bytes32 => uint256)" }, "valueType": { - "id": 882, + "id": 915, "name": "uint", "nodeType": "ElementaryTypeName", "src": "294:4:6", @@ -515,10 +515,10 @@ }, { "constant": false, - "id": 888, + "id": 921, "name": "strings", "nodeType": "VariableDeclaration", - "scope": 1096, + "scope": 1156, "src": "320:40:6", "stateVariable": true, "storageLocation": "default", @@ -527,9 +527,9 @@ "typeString": "mapping(bytes32 => string)" }, "typeName": { - "id": 887, + "id": 920, "keyType": { - "id": 885, + "id": 918, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "329:7:6", @@ -545,7 +545,7 @@ "typeString": "mapping(bytes32 => string)" }, "valueType": { - "id": 886, + "id": 919, "name": "string", "nodeType": "ElementaryTypeName", "src": "338:6:6", @@ -561,20 +561,20 @@ { "anonymous": false, "documentation": null, - "id": 894, + "id": 927, "name": "LogRegisterAddress", "nodeType": "EventDefinition", "parameters": { - "id": 893, + "id": 926, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 890, + "id": 923, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 894, + "scope": 927, "src": "392:12:6", "stateVariable": false, "storageLocation": "default", @@ -583,7 +583,7 @@ "typeString": "string" }, "typeName": { - "id": 889, + "id": 922, "name": "string", "nodeType": "ElementaryTypeName", "src": "392:6:6", @@ -597,11 +597,11 @@ }, { "constant": false, - "id": 892, + "id": 925, "indexed": false, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 894, + "scope": 927, "src": "406:16:6", "stateVariable": false, "storageLocation": "default", @@ -610,7 +610,7 @@ "typeString": "address" }, "typeName": { - "id": 891, + "id": 924, "name": "address", "nodeType": "ElementaryTypeName", "src": "406:7:6", @@ -630,20 +630,20 @@ { "anonymous": false, "documentation": null, - "id": 898, + "id": 931, "name": "LogUnregisterAddress", "nodeType": "EventDefinition", "parameters": { - "id": 897, + "id": 930, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 896, + "id": 929, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 898, + "scope": 931, "src": "456:12:6", "stateVariable": false, "storageLocation": "default", @@ -652,7 +652,7 @@ "typeString": "string" }, "typeName": { - "id": 895, + "id": 928, "name": "string", "nodeType": "ElementaryTypeName", "src": "456:6:6", @@ -672,20 +672,20 @@ { "anonymous": false, "documentation": null, - "id": 904, + "id": 937, "name": "LogRegisterUint", "nodeType": "EventDefinition", "parameters": { - "id": 903, + "id": 936, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 900, + "id": 933, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 904, + "scope": 937, "src": "497:12:6", "stateVariable": false, "storageLocation": "default", @@ -694,7 +694,7 @@ "typeString": "string" }, "typeName": { - "id": 899, + "id": 932, "name": "string", "nodeType": "ElementaryTypeName", "src": "497:6:6", @@ -708,11 +708,11 @@ }, { "constant": false, - "id": 902, + "id": 935, "indexed": false, "name": "_number", "nodeType": "VariableDeclaration", - "scope": 904, + "scope": 937, "src": "511:12:6", "stateVariable": false, "storageLocation": "default", @@ -721,7 +721,7 @@ "typeString": "uint256" }, "typeName": { - "id": 901, + "id": 934, "name": "uint", "nodeType": "ElementaryTypeName", "src": "511:4:6", @@ -741,20 +741,20 @@ { "anonymous": false, "documentation": null, - "id": 908, + "id": 941, "name": "LogUnregisterUint", "nodeType": "EventDefinition", "parameters": { - "id": 907, + "id": 940, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 906, + "id": 939, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 908, + "scope": 941, "src": "554:12:6", "stateVariable": false, "storageLocation": "default", @@ -763,7 +763,7 @@ "typeString": "string" }, "typeName": { - "id": 905, + "id": 938, "name": "string", "nodeType": "ElementaryTypeName", "src": "554:6:6", @@ -783,20 +783,20 @@ { "anonymous": false, "documentation": null, - "id": 914, + "id": 947, "name": "LogRegisterString", "nodeType": "EventDefinition", "parameters": { - "id": 913, + "id": 946, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 910, + "id": 943, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 914, + "scope": 947, "src": "597:12:6", "stateVariable": false, "storageLocation": "default", @@ -805,7 +805,7 @@ "typeString": "string" }, "typeName": { - "id": 909, + "id": 942, "name": "string", "nodeType": "ElementaryTypeName", "src": "597:6:6", @@ -819,11 +819,11 @@ }, { "constant": false, - "id": 912, + "id": 945, "indexed": false, "name": "_string", "nodeType": "VariableDeclaration", - "scope": 914, + "scope": 947, "src": "611:14:6", "stateVariable": false, "storageLocation": "default", @@ -832,7 +832,7 @@ "typeString": "string" }, "typeName": { - "id": 911, + "id": 944, "name": "string", "nodeType": "ElementaryTypeName", "src": "611:6:6", @@ -852,20 +852,20 @@ { "anonymous": false, "documentation": null, - "id": 918, + "id": 951, "name": "LogUnregisterString", "nodeType": "EventDefinition", "parameters": { - "id": 917, + "id": 950, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 916, + "id": 949, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 918, + "scope": 951, "src": "658:12:6", "stateVariable": false, "storageLocation": "default", @@ -874,7 +874,7 @@ "typeString": "string" }, "typeName": { - "id": 915, + "id": 948, "name": "string", "nodeType": "ElementaryTypeName", "src": "658:6:6", @@ -893,25 +893,25 @@ }, { "body": { - "id": 926, + "id": 959, "nodeType": "Block", "src": "699:35:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 924, + "id": 957, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 921, + "id": 954, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "709:5:6", "typeDescriptions": { "typeIdentifier": "t_address", @@ -924,18 +924,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 922, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "717:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 923, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -955,14 +955,14 @@ "typeString": "address" } }, - "id": 925, + "id": 958, "nodeType": "ExpressionStatement", "src": "709:18:6" } ] }, "documentation": null, - "id": 927, + "id": 960, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -970,19 +970,19 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 919, + "id": 952, "nodeType": "ParameterList", "parameters": [], "src": "689:2:6" }, "payable": false, "returnParameters": { - "id": 920, + "id": 953, "nodeType": "ParameterList", "parameters": [], "src": "699:0:6" }, - "scope": 1096, + "scope": 1156, "src": "678:56:6", "stateMutability": "nonpayable", "superFunction": null, @@ -990,14 +990,14 @@ }, { "body": { - "id": 949, + "id": 985, "nodeType": "Block", - "src": "814:105:6", + "src": "814:123:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 942, + "id": 978, "isConstant": false, "isLValue": false, "isPure": false, @@ -1006,54 +1006,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 936, + "id": 969, "name": "contracts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 880, + "referencedDeclaration": 913, "src": "824:9:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", "typeString": "mapping(bytes32 => address)" } }, - "id": 940, + "id": 976, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 938, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "844:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 937, + "id": 970, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "834:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 939, + "id": 975, "isConstant": false, "isLValue": false, "isPure": false, @@ -1061,7 +1113,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "834:16:6", + "src": "834:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1072,7 +1124,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "824:27:6", + "src": "824:45:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1082,26 +1134,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 941, + "id": 977, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "854:8:6", + "referencedDeclaration": 964, + "src": "872:8:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "824:38:6", + "src": "824:56:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 943, + "id": 979, "nodeType": "ExpressionStatement", - "src": "824:38:6" + "src": "824:56:6" }, { "eventCall": { @@ -1109,12 +1161,12 @@ "arguments": [ { "argumentTypes": null, - "id": 945, + "id": 981, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "896:5:6", + "referencedDeclaration": 962, + "src": "914:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1122,12 +1174,12 @@ }, { "argumentTypes": null, - "id": 946, + "id": 982, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "903:8:6", + "referencedDeclaration": 964, + "src": "921:8:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1145,18 +1197,18 @@ "typeString": "address" } ], - "id": 944, + "id": 980, "name": "LogRegisterAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "877:18:6", + "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": 947, + "id": 983, "isConstant": false, "isLValue": false, "isPure": false, @@ -1164,34 +1216,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "877:35:6", + "src": "895:35:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 948, + "id": 984, "nodeType": "EmitStatement", - "src": "872:40:6" + "src": "890:40:6" } ] }, "documentation": null, - "id": 950, + "id": 986, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 934, + "id": 967, "modifierName": { "argumentTypes": null, - "id": 933, + "id": 966, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, + "referencedDeclaration": 2923, "src": "804:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -1205,15 +1257,15 @@ "name": "registerAddress", "nodeType": "FunctionDefinition", "parameters": { - "id": 932, + "id": 965, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 929, + "id": 962, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 950, + "scope": 986, "src": "765:12:6", "stateVariable": false, "storageLocation": "default", @@ -1222,7 +1274,7 @@ "typeString": "string" }, "typeName": { - "id": 928, + "id": 961, "name": "string", "nodeType": "ElementaryTypeName", "src": "765:6:6", @@ -1236,10 +1288,10 @@ }, { "constant": false, - "id": 931, + "id": 964, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 950, + "scope": 986, "src": "779:16:6", "stateVariable": false, "storageLocation": "default", @@ -1248,7 +1300,7 @@ "typeString": "address" }, "typeName": { - "id": 930, + "id": 963, "name": "address", "nodeType": "ElementaryTypeName", "src": "779:7:6", @@ -1265,27 +1317,27 @@ }, "payable": false, "returnParameters": { - "id": 935, + "id": 968, "nodeType": "ParameterList", "parameters": [], "src": "814:0:6" }, - "scope": 1096, - "src": "740:179:6", + "scope": 1156, + "src": "740:197:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 968, + "id": 1007, "nodeType": "Block", - "src": "983:93:6", + "src": "1001:111:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 962, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -1293,59 +1345,111 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "993:34:6", + "src": "1011:52:6", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 957, + "id": 993, "name": "contracts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "1000:9:6", + "referencedDeclaration": 913, + "src": "1018:9:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", "typeString": "mapping(bytes32 => address)" } }, - "id": 961, + "id": 1000, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 959, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1020:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 958, + "id": 994, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1010:9:6", + "referencedDeclaration": 3338, + "src": "1028:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 960, + "id": 999, "isConstant": false, "isLValue": false, "isPure": false, @@ -1353,7 +1457,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1010:16:6", + "src": "1028:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1364,7 +1468,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1000:27:6", + "src": "1018:45:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1375,9 +1479,9 @@ "typeString": "tuple()" } }, - "id": 963, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "993:34:6" + "src": "1011:52:6" }, { "eventCall": { @@ -1385,12 +1489,12 @@ "arguments": [ { "argumentTypes": null, - "id": 965, + "id": 1004, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1063:5:6", + "referencedDeclaration": 988, + "src": "1099:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1404,18 +1508,18 @@ "typeString": "string memory" } ], - "id": 964, + "id": 1003, "name": "LogUnregisterAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 898, - "src": "1042:20:6", + "referencedDeclaration": 931, + "src": "1078:20:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 966, + "id": 1005, "isConstant": false, "isLValue": false, "isPure": false, @@ -1423,57 +1527,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1042:27:6", + "src": "1078:27:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 967, + "id": 1006, "nodeType": "EmitStatement", - "src": "1037:32:6" + "src": "1073:32:6" } ] }, "documentation": null, - "id": 969, + "id": 1008, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 955, + "id": 991, "modifierName": { "argumentTypes": null, - "id": 954, + "id": 990, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "973:9:6", + "referencedDeclaration": 2923, + "src": "991:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "973:9:6" + "src": "991:9:6" } ], "name": "unregisterAddress", "nodeType": "FunctionDefinition", "parameters": { - "id": 953, + "id": 989, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 952, + "id": 988, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 969, - "src": "952:12:6", + "scope": 1008, + "src": "970:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1481,10 +1585,10 @@ "typeString": "string" }, "typeName": { - "id": 951, + "id": 987, "name": "string", "nodeType": "ElementaryTypeName", - "src": "952:6:6", + "src": "970:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1494,202 +1598,31 @@ "visibility": "internal" } ], - "src": "951:14:6" + "src": "969:14:6" }, "payable": false, "returnParameters": { - "id": 956, + "id": 992, "nodeType": "ParameterList", "parameters": [], - "src": "983:0:6" + "src": "1001:0:6" }, - "scope": 1096, - "src": "925:151:6", + "scope": 1156, + "src": "943:169: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, + "id": 1033, "nodeType": "Block", - "src": "1270:98:6", + "src": "1185:116:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 998, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -1698,54 +1631,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 992, + "id": 1017, "name": "numbers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1280:7:6", + "referencedDeclaration": 917, + "src": "1195:7:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 996, + "id": 1024, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 994, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1298:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 993, + "id": 1018, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1288:9:6", + "referencedDeclaration": 3338, + "src": "1203:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 995, + "id": 1023, "isConstant": false, "isLValue": false, "isPure": false, @@ -1753,7 +1738,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1288:16:6", + "src": "1203:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1764,7 +1749,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1280:25:6", + "src": "1195:43:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1774,26 +1759,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 997, + "id": 1025, "name": "_number", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1308:7:6", + "referencedDeclaration": 1012, + "src": "1241:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1280:35:6", + "src": "1195:53:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 999, + "id": 1027, "nodeType": "ExpressionStatement", - "src": "1280:35:6" + "src": "1195:53:6" }, { "eventCall": { @@ -1801,12 +1786,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1001, + "id": 1029, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1346:5:6", + "referencedDeclaration": 1010, + "src": "1279:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1814,12 +1799,12 @@ }, { "argumentTypes": null, - "id": 1002, + "id": 1030, "name": "_number", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1353:7:6", + "referencedDeclaration": 1012, + "src": "1286:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1837,18 +1822,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 1028, "name": "LogRegisterUint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 904, - "src": "1330:15:6", + "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": 1003, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, @@ -1856,57 +1841,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1330:31:6", + "src": "1263:31:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1004, + "id": 1032, "nodeType": "EmitStatement", - "src": "1325:36:6" + "src": "1258:36:6" } ] }, "documentation": null, - "id": 1006, + "id": 1034, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 990, + "id": 1015, "modifierName": { "argumentTypes": null, - "id": 989, + "id": 1014, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1260:9:6", + "referencedDeclaration": 2923, + "src": "1175:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1260:9:6" + "src": "1175:9:6" } ], "name": "registerUint", "nodeType": "FunctionDefinition", "parameters": { - "id": 988, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 985, + "id": 1010, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1225:12:6", + "scope": 1034, + "src": "1140:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1914,10 +1899,10 @@ "typeString": "string" }, "typeName": { - "id": 984, + "id": 1009, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1225:6:6", + "src": "1140:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1928,11 +1913,11 @@ }, { "constant": false, - "id": 987, + "id": 1012, "name": "_number", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1239:12:6", + "scope": 1034, + "src": "1154:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1940,10 +1925,10 @@ "typeString": "uint256" }, "typeName": { - "id": 986, + "id": 1011, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1239:4:6", + "src": "1154:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1953,31 +1938,31 @@ "visibility": "internal" } ], - "src": "1224:28:6" + "src": "1139:28:6" }, "payable": false, "returnParameters": { - "id": 991, + "id": 1016, "nodeType": "ParameterList", "parameters": [], - "src": "1270:0:6" + "src": "1185:0:6" }, - "scope": 1096, - "src": "1203:165:6", + "scope": 1156, + "src": "1118:183:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1024, + "id": 1055, "nodeType": "Block", - "src": "1429:88:6", + "src": "1362:106:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 1018, + "id": 1049, "isConstant": false, "isLValue": false, "isPure": false, @@ -1985,59 +1970,111 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "1439:32:6", + "src": "1372:50:6", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1013, + "id": 1041, "name": "numbers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1446:7:6", + "referencedDeclaration": 917, + "src": "1379:7:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 1017, + "id": 1048, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1015, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1464:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1014, + "id": 1042, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1454:9:6", + "referencedDeclaration": 3338, + "src": "1387:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1016, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, @@ -2045,7 +2082,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1454:16:6", + "src": "1387:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2056,7 +2093,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1446:25:6", + "src": "1379:43:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2067,9 +2104,9 @@ "typeString": "tuple()" } }, - "id": 1019, + "id": 1050, "nodeType": "ExpressionStatement", - "src": "1439:32:6" + "src": "1372:50:6" }, { "eventCall": { @@ -2077,12 +2114,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1021, + "id": 1052, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1504:5:6", + "referencedDeclaration": 1036, + "src": "1455:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2096,18 +2133,18 @@ "typeString": "string memory" } ], - "id": 1020, + "id": 1051, "name": "LogUnregisterUint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 908, - "src": "1486:17:6", + "referencedDeclaration": 941, + "src": "1437:17:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1022, + "id": 1053, "isConstant": false, "isLValue": false, "isPure": false, @@ -2115,57 +2152,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1486:24:6", + "src": "1437:24:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1023, + "id": 1054, "nodeType": "EmitStatement", - "src": "1481:29:6" + "src": "1432:29:6" } ] }, "documentation": null, - "id": 1025, + "id": 1056, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1011, + "id": 1039, "modifierName": { "argumentTypes": null, - "id": 1010, + "id": 1038, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1419:9:6", + "referencedDeclaration": 2923, + "src": "1352:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1419:9:6" + "src": "1352:9:6" } ], "name": "unregisterUint", "nodeType": "FunctionDefinition", "parameters": { - "id": 1009, + "id": 1037, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1008, + "id": 1036, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1025, - "src": "1398:12:6", + "scope": 1056, + "src": "1331:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2173,10 +2210,10 @@ "typeString": "string" }, "typeName": { - "id": 1007, + "id": 1035, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1398:6:6", + "src": "1331:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2186,258 +2223,139 @@ "visibility": "internal" } ], - "src": "1397:14:6" + "src": "1330:14:6" }, "payable": false, "returnParameters": { - "id": 1012, + "id": 1040, "nodeType": "ParameterList", "parameters": [], - "src": "1429:0:6" + "src": "1362:0:6" }, - "scope": 1096, - "src": "1374:143:6", + "scope": 1156, + "src": "1307:161:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1038, + "id": 1081, "nodeType": "Block", - "src": "1580:49:6", + "src": "1545:118: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": { + "id": 1074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1048, + "id": 1065, "name": "strings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "1716:7:6", + "referencedDeclaration": 921, + "src": "1555:7:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", "typeString": "mapping(bytes32 => string storage ref)" } }, - "id": 1052, + "id": 1072, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1050, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1041, - "src": "1734:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1049, + "id": 1066, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1724:9:6", + "referencedDeclaration": 3338, + "src": "1563:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1051, + "id": 1071, "isConstant": false, "isLValue": false, "isPure": false, @@ -2445,7 +2363,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1724:16:6", + "src": "1563:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2456,7 +2374,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1716:25:6", + "src": "1555:43:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -2466,26 +2384,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1053, + "id": 1073, "name": "_string", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1043, - "src": "1744:7:6", + "referencedDeclaration": 1060, + "src": "1601:7:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "1716:35:6", + "src": "1555:53:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 1055, + "id": 1075, "nodeType": "ExpressionStatement", - "src": "1716:35:6" + "src": "1555:53:6" }, { "eventCall": { @@ -2493,12 +2411,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1057, + "id": 1077, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1041, - "src": "1784:5:6", + "referencedDeclaration": 1058, + "src": "1641:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2506,12 +2424,12 @@ }, { "argumentTypes": null, - "id": 1058, + "id": 1078, "name": "_string", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1043, - "src": "1791:7:6", + "referencedDeclaration": 1060, + "src": "1648:7:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2529,18 +2447,18 @@ "typeString": "string memory" } ], - "id": 1056, + "id": 1076, "name": "LogRegisterString", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 914, - "src": "1766:17:6", + "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": 1059, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -2548,57 +2466,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1766:33:6", + "src": "1623:33:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1060, + "id": 1080, "nodeType": "EmitStatement", - "src": "1761:38:6" + "src": "1618:38:6" } ] }, "documentation": null, - "id": 1062, + "id": 1082, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1046, + "id": 1063, "modifierName": { "argumentTypes": null, - "id": 1045, + "id": 1062, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1696:9:6", + "referencedDeclaration": 2923, + "src": "1535:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1696:9:6" + "src": "1535:9:6" } ], "name": "registerString", "nodeType": "FunctionDefinition", "parameters": { - "id": 1044, + "id": 1061, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1041, + "id": 1058, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1659:12:6", + "scope": 1082, + "src": "1498:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2606,10 +2524,10 @@ "typeString": "string" }, "typeName": { - "id": 1040, + "id": 1057, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1659:6:6", + "src": "1498:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2620,11 +2538,11 @@ }, { "constant": false, - "id": 1043, + "id": 1060, "name": "_string", "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1673:14:6", + "scope": 1082, + "src": "1512:14:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2632,10 +2550,10 @@ "typeString": "string" }, "typeName": { - "id": 1042, + "id": 1059, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1673:6:6", + "src": "1512:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2645,31 +2563,31 @@ "visibility": "internal" } ], - "src": "1658:30:6" + "src": "1497:30:6" }, "payable": false, "returnParameters": { - "id": 1047, + "id": 1064, "nodeType": "ParameterList", "parameters": [], - "src": "1706:0:6" + "src": "1545:0:6" }, - "scope": 1096, - "src": "1635:171:6", + "scope": 1156, + "src": "1474:189:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1080, + "id": 1103, "nodeType": "Block", - "src": "1869:90:6", + "src": "1726:108:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, @@ -2677,59 +2595,111 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "1879:32:6", + "src": "1736:50:6", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1069, + "id": 1089, "name": "strings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "1886:7:6", + "referencedDeclaration": 921, + "src": "1743:7:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", "typeString": "mapping(bytes32 => string storage ref)" } }, - "id": 1073, + "id": 1096, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1071, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1064, - "src": "1904:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1070, + "id": 1090, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1894:9:6", + "referencedDeclaration": 3338, + "src": "1751:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1072, + "id": 1095, "isConstant": false, "isLValue": false, "isPure": false, @@ -2737,7 +2707,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1894:16:6", + "src": "1751:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2748,7 +2718,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1886:25:6", + "src": "1743:43:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -2759,9 +2729,9 @@ "typeString": "tuple()" } }, - "id": 1075, + "id": 1098, "nodeType": "ExpressionStatement", - "src": "1879:32:6" + "src": "1736:50:6" }, { "eventCall": { @@ -2769,12 +2739,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1077, + "id": 1100, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1064, - "src": "1946:5:6", + "referencedDeclaration": 1084, + "src": "1821:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2788,18 +2758,18 @@ "typeString": "string memory" } ], - "id": 1076, + "id": 1099, "name": "LogUnregisterString", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "1926:19:6", + "referencedDeclaration": 951, + "src": "1801:19:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1078, + "id": 1101, "isConstant": false, "isLValue": false, "isPure": false, @@ -2807,57 +2777,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1926:26:6", + "src": "1801:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1079, + "id": 1102, "nodeType": "EmitStatement", - "src": "1921:31:6" + "src": "1796:31:6" } ] }, "documentation": null, - "id": 1081, + "id": 1104, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1067, + "id": 1087, "modifierName": { "argumentTypes": null, - "id": 1066, + "id": 1086, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1859:9:6", + "referencedDeclaration": 2923, + "src": "1716:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1859:9:6" + "src": "1716:9:6" } ], "name": "unregisterString", "nodeType": "FunctionDefinition", "parameters": { - "id": 1065, + "id": 1085, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1064, + "id": 1084, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1081, - "src": "1838:12:6", + "scope": 1104, + "src": "1695:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2865,10 +2835,10 @@ "typeString": "string" }, "typeName": { - "id": 1063, + "id": 1083, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1838:6:6", + "src": "1695:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2878,80 +2848,132 @@ "visibility": "internal" } ], - "src": "1837:14:6" + "src": "1694:14:6" }, "payable": false, "returnParameters": { - "id": 1068, + "id": 1088, "nodeType": "ParameterList", "parameters": [], - "src": "1869:0:6" + "src": "1726:0:6" }, - "scope": 1096, - "src": "1812:147:6", + "scope": 1156, + "src": "1669:165:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1094, + "id": 1120, "nodeType": "Block", - "src": "2026:49:6", + "src": "1904:69:6", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1088, - "name": "strings", + "id": 1111, + "name": "contracts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "2043:7:6", + "referencedDeclaration": 913, + "src": "1921:9:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", - "typeString": "mapping(bytes32 => string storage ref)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" } }, - "id": 1092, + "id": 1118, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1090, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1083, - "src": "2061:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1089, + "id": 1112, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2051:9:6", + "referencedDeclaration": 3338, + "src": "1931:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1091, + "id": 1117, "isConstant": false, "isLValue": false, "isPure": false, @@ -2959,7 +2981,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2051:16:6", + "src": "1931:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2970,38 +2992,38 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2043:25:6", + "src": "1921:45:6", "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "functionReturnParameters": 1087, - "id": 1093, + "functionReturnParameters": 1110, + "id": 1119, "nodeType": "Return", - "src": "2036:32:6" + "src": "1914:52:6" } ] }, "documentation": null, - "id": 1095, + "id": 1121, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], - "name": "getString", + "name": "getContract", "nodeType": "FunctionDefinition", "parameters": { - "id": 1084, + "id": 1107, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1083, + "id": 1106, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1984:12:6", + "scope": 1121, + "src": "1861:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3009,10 +3031,10 @@ "typeString": "string" }, "typeName": { - "id": 1082, + "id": 1105, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1984:6:6", + "src": "1861:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3022,275 +3044,209 @@ "visibility": "internal" } ], - "src": "1983:14:6" + "src": "1860:14:6" }, "payable": false, "returnParameters": { - "id": 1087, + "id": 1110, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1086, + "id": 1109, "name": "", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "2018:6:6", + "scope": 1121, + "src": "1895:7:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" }, "typeName": { - "id": 1085, - "name": "string", + "id": 1108, + "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:6:6", + "src": "1895:7:6", "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" } }, "value": null, "visibility": "internal" } ], - "src": "2017:8:6" + "src": "1894:9:6" }, - "scope": 1096, - "src": "1965:110:6", + "scope": 1156, + "src": "1840:133: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" + "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" } - } + ] }, - "value": null, - "visibility": "public" - }, - { - "anonymous": false, "documentation": null, - "id": 894, - "name": "LogRegisterAddress", - "nodeType": "EventDefinition", + "id": 1138, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "getUint", + "nodeType": "FunctionDefinition", "parameters": { - "id": 893, + "id": 1124, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 890, - "indexed": false, + "id": 1123, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 894, - "src": "392:12:6", + "scope": 1138, + "src": "1996:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3298,10 +3254,10 @@ "typeString": "string" }, "typeName": { - "id": 889, + "id": 1122, "name": "string", "nodeType": "ElementaryTypeName", - "src": "392:6:6", + "src": "1996:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3309,168 +3265,245 @@ }, "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": "1995:14:6" }, - "src": "367:57:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 898, - "name": "LogUnregisterAddress", - "nodeType": "EventDefinition", - "parameters": { - "id": 897, + "payable": false, + "returnParameters": { + "id": 1127, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 896, - "indexed": false, - "name": "_name", + "id": 1126, + "name": "", "nodeType": "VariableDeclaration", - "scope": 898, - "src": "456:12:6", + "scope": 1138, + "src": "2030:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, "typeName": { - "id": 895, - "name": "string", + "id": 1125, + "name": "uint", "nodeType": "ElementaryTypeName", - "src": "456:6:6", + "src": "2030:4:6", "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], - "src": "455:14:6" + "src": "2029:6:6" }, - "src": "429:41:6" + "scope": 1156, + "src": "1979:124:6", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" }, { - "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" - }, + "body": { + "id": 1154, + "nodeType": "Block", + "src": "2170:67:6", + "statements": [ { - "constant": false, - "id": 902, - "indexed": false, - "name": "_number", + "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": 904, - "src": "511:12:6", + "scope": 1155, + "src": "2128:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" }, "typeName": { - "id": 901, - "name": "uint", + "id": 1139, + "name": "string", "nodeType": "ElementaryTypeName", - "src": "511:4:6", + "src": "2128:6:6", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" } }, "value": null, "visibility": "internal" } ], - "src": "496:28:6" + "src": "2127:14:6" }, - "src": "475:50:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 908, - "name": "LogUnregisterUint", - "nodeType": "EventDefinition", - "parameters": { - "id": 907, + "payable": false, + "returnParameters": { + "id": 1144, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 906, - "indexed": false, - "name": "_name", + "id": 1143, + "name": "", "nodeType": "VariableDeclaration", - "scope": 908, - "src": "554:12:6", + "scope": 1155, + "src": "2162:6:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3478,10 +3511,10 @@ "typeString": "string" }, "typeName": { - "id": 905, + "id": 1142, "name": "string", "nodeType": "ElementaryTypeName", - "src": "554:6:6", + "src": "2162:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3491,28 +3524,932 @@ "visibility": "internal" } ], - "src": "553:14:6" + "src": "2161:8:6" }, - "src": "530:38: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" }, { - "anonymous": false, - "documentation": null, - "id": 914, - "name": "LogRegisterString", - "nodeType": "EventDefinition", + "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": 913, + "id": 965, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 910, - "indexed": false, + "id": 962, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 914, - "src": "597:12:6", + "scope": 986, + "src": "765:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3520,10 +4457,10 @@ "typeString": "string" }, "typeName": { - "id": 909, + "id": 961, "name": "string", "nodeType": "ElementaryTypeName", - "src": "597:6:6", + "src": "765:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3534,185 +4471,341 @@ }, { "constant": false, - "id": 912, - "indexed": false, - "name": "_string", + "id": 964, + "name": "_address", "nodeType": "VariableDeclaration", - "scope": 914, - "src": "611:14:6", + "scope": 986, + "src": "779:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" }, "typeName": { - "id": 911, - "name": "string", + "id": 963, + "name": "address", "nodeType": "ElementaryTypeName", - "src": "611:6:6", + "src": "779:7:6", "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" } }, "value": null, "visibility": "internal" } ], - "src": "596:30:6" + "src": "764:32:6" }, - "src": "573:54:6" - }, - { - "anonymous": false, - "documentation": null, - "id": 918, - "name": "LogUnregisterString", - "nodeType": "EventDefinition", - "parameters": { - "id": 917, + "payable": false, + "returnParameters": { + "id": 968, "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" + "parameters": [], + "src": "814:0:6" }, - "src": "632:40:6" + "scope": 1156, + "src": "740:197:6", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" }, { "body": { - "id": 926, + "id": 1007, "nodeType": "Block", - "src": "699:35:6", + "src": "1001:111:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 924, + "id": 1001, "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": { + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "1011:52:6", + "subExpression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "id": 922, - "name": "msg", + "id": 993, + "name": "contracts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "717:3:6", + "referencedDeclaration": 913, + "src": "1018:9:6", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "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" } }, - "id": 923, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "717:10:6", + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1018:45:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "709:18:6", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "id": 925, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "709:18:6" + "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": 927, + "id": 1008, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, - "modifiers": [], - "name": "", + "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": 919, + "id": 989, "nodeType": "ParameterList", - "parameters": [], - "src": "689:2:6" + "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": 920, + "id": 992, "nodeType": "ParameterList", "parameters": [], - "src": "699:0:6" + "src": "1001:0:6" }, - "scope": 1096, - "src": "678:56:6", + "scope": 1156, + "src": "943:169:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 949, + "id": 1033, "nodeType": "Block", - "src": "814:105:6", + "src": "1185:116:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 942, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -3721,54 +4814,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 936, - "name": "contracts", + "id": 1017, + "name": "numbers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "824:9:6", + "referencedDeclaration": 917, + "src": "1195:7:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" } }, - "id": 940, + "id": 1024, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 938, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "844:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 937, + "id": 1018, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "834:9:6", + "referencedDeclaration": 3338, + "src": "1203:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 939, + "id": 1023, "isConstant": false, "isLValue": false, "isPure": false, @@ -3776,7 +4921,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "834:16:6", + "src": "1203:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3787,36 +4932,36 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "824:27:6", + "src": "1195:43:6", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 941, - "name": "_address", + "id": 1025, + "name": "_number", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "854:8:6", + "referencedDeclaration": 1012, + "src": "1241:7:6", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "824:38:6", + "src": "1195:53:6", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 943, + "id": 1027, "nodeType": "ExpressionStatement", - "src": "824:38:6" + "src": "1195:53:6" }, { "eventCall": { @@ -3824,12 +4969,12 @@ "arguments": [ { "argumentTypes": null, - "id": 945, + "id": 1029, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 929, - "src": "896:5:6", + "referencedDeclaration": 1010, + "src": "1279:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3837,15 +4982,15 @@ }, { "argumentTypes": null, - "id": 946, - "name": "_address", + "id": 1030, + "name": "_number", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 931, - "src": "903:8:6", + "referencedDeclaration": 1012, + "src": "1286:7:6", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } } ], @@ -3856,22 +5001,22 @@ "typeString": "string memory" }, { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } ], - "id": 944, - "name": "LogRegisterAddress", + "id": 1028, + "name": "LogRegisterUint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "877:18:6", + "referencedDeclaration": 937, + "src": "1263:15:6", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", - "typeString": "function (string memory,address)" + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" } }, - "id": 947, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, @@ -3879,57 +5024,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "877:35:6", + "src": "1263:31:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 948, + "id": 1032, "nodeType": "EmitStatement", - "src": "872:40:6" + "src": "1258:36:6" } ] }, "documentation": null, - "id": 950, + "id": 1034, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 934, + "id": 1015, "modifierName": { "argumentTypes": null, - "id": 933, + "id": 1014, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "804:9:6", + "referencedDeclaration": 2923, + "src": "1175:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "804:9:6" + "src": "1175:9:6" } ], - "name": "registerAddress", + "name": "registerUint", "nodeType": "FunctionDefinition", "parameters": { - "id": 932, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 929, + "id": 1010, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 950, - "src": "765:12:6", + "scope": 1034, + "src": "1140:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3937,10 +5082,10 @@ "typeString": "string" }, "typeName": { - "id": 928, + "id": 1009, "name": "string", "nodeType": "ElementaryTypeName", - "src": "765:6:6", + "src": "1140:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3951,56 +5096,56 @@ }, { "constant": false, - "id": 931, - "name": "_address", + "id": 1012, + "name": "_number", "nodeType": "VariableDeclaration", - "scope": 950, - "src": "779:16:6", + "scope": 1034, + "src": "1154:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, "typeName": { - "id": 930, - "name": "address", + "id": 1011, + "name": "uint", "nodeType": "ElementaryTypeName", - "src": "779:7:6", + "src": "1154:4:6", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], - "src": "764:32:6" + "src": "1139:28:6" }, "payable": false, "returnParameters": { - "id": 935, + "id": 1016, "nodeType": "ParameterList", "parameters": [], - "src": "814:0:6" + "src": "1185:0:6" }, - "scope": 1096, - "src": "740:179:6", + "scope": 1156, + "src": "1118:183:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 968, + "id": 1055, "nodeType": "Block", - "src": "983:93:6", + "src": "1362:106:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 962, + "id": 1049, "isConstant": false, "isLValue": false, "isPure": false, @@ -4008,59 +5153,111 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "993:34:6", + "src": "1372:50:6", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 957, - "name": "contracts", + "id": 1041, + "name": "numbers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "1000:9:6", + "referencedDeclaration": 917, + "src": "1379:7:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", - "typeString": "mapping(bytes32 => address)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" } }, - "id": 961, + "id": 1048, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 959, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1020:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 958, + "id": 1042, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1010:9:6", + "referencedDeclaration": 3338, + "src": "1387:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 960, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, @@ -4068,7 +5265,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1010:16:6", + "src": "1387:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4079,10 +5276,10 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1000:27:6", + "src": "1379:43:6", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "typeDescriptions": { @@ -4090,9 +5287,9 @@ "typeString": "tuple()" } }, - "id": 963, + "id": 1050, "nodeType": "ExpressionStatement", - "src": "993:34:6" + "src": "1372:50:6" }, { "eventCall": { @@ -4100,12 +5297,12 @@ "arguments": [ { "argumentTypes": null, - "id": 965, + "id": 1052, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 952, - "src": "1063:5:6", + "referencedDeclaration": 1036, + "src": "1455:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4119,18 +5316,18 @@ "typeString": "string memory" } ], - "id": 964, - "name": "LogUnregisterAddress", + "id": 1051, + "name": "LogUnregisterUint", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 898, - "src": "1042:20:6", + "referencedDeclaration": 941, + "src": "1437:17:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 966, + "id": 1053, "isConstant": false, "isLValue": false, "isPure": false, @@ -4138,57 +5335,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1042:27:6", + "src": "1437:24:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 967, + "id": 1054, "nodeType": "EmitStatement", - "src": "1037:32:6" + "src": "1432:29:6" } ] }, "documentation": null, - "id": 969, + "id": 1056, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 955, + "id": 1039, "modifierName": { "argumentTypes": null, - "id": 954, + "id": 1038, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "973:9:6", + "referencedDeclaration": 2923, + "src": "1352:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "973:9:6" + "src": "1352:9:6" } ], - "name": "unregisterAddress", + "name": "unregisterUint", "nodeType": "FunctionDefinition", "parameters": { - "id": 953, + "id": 1037, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 952, + "id": 1036, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 969, - "src": "952:12:6", + "scope": 1056, + "src": "1331:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4196,10 +5393,10 @@ "typeString": "string" }, "typeName": { - "id": 951, + "id": 1035, "name": "string", "nodeType": "ElementaryTypeName", - "src": "952:6:6", + "src": "1331:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4209,202 +5406,31 @@ "visibility": "internal" } ], - "src": "951:14:6" + "src": "1330:14:6" }, "payable": false, "returnParameters": { - "id": 956, + "id": 1040, "nodeType": "ParameterList", "parameters": [], - "src": "983:0:6" + "src": "1362:0:6" }, - "scope": 1096, - "src": "925:151:6", + "scope": 1156, + "src": "1307:161: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, + "id": 1081, "nodeType": "Block", - "src": "1270:98:6", + "src": "1545:118:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 998, + "id": 1074, "isConstant": false, "isLValue": false, "isPure": false, @@ -4413,54 +5439,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 992, - "name": "numbers", + "id": 1065, + "name": "strings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1280:7:6", + "referencedDeclaration": 921, + "src": "1555:7:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" } }, - "id": 996, + "id": 1072, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 994, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1298:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 993, + "id": 1066, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1288:9:6", + "referencedDeclaration": 3338, + "src": "1563:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 995, + "id": 1071, "isConstant": false, "isLValue": false, "isPure": false, @@ -4468,7 +5546,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1288:16:6", + "src": "1563:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4479,36 +5557,36 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1280:25:6", + "src": "1555:43:6", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 997, - "name": "_number", + "id": 1073, + "name": "_string", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1308:7:6", + "referencedDeclaration": 1060, + "src": "1601:7:6", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" } }, - "src": "1280:35:6", + "src": "1555:53:6", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" } }, - "id": 999, + "id": 1075, "nodeType": "ExpressionStatement", - "src": "1280:35:6" + "src": "1555:53:6" }, { "eventCall": { @@ -4516,12 +5594,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1001, + "id": 1077, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 985, - "src": "1346:5:6", + "referencedDeclaration": 1058, + "src": "1641:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4529,15 +5607,15 @@ }, { "argumentTypes": null, - "id": 1002, - "name": "_number", + "id": 1078, + "name": "_string", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 987, - "src": "1353:7:6", + "referencedDeclaration": 1060, + "src": "1648:7:6", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" } } ], @@ -4548,22 +5626,22 @@ "typeString": "string memory" }, { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" } ], - "id": 1000, - "name": "LogRegisterUint", + "id": 1076, + "name": "LogRegisterString", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 904, - "src": "1330:15:6", + "referencedDeclaration": 947, + "src": "1623:17:6", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", - "typeString": "function (string memory,uint256)" + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" } }, - "id": 1003, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -4571,57 +5649,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1330:31:6", + "src": "1623:33:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1004, + "id": 1080, "nodeType": "EmitStatement", - "src": "1325:36:6" + "src": "1618:38:6" } ] }, "documentation": null, - "id": 1006, + "id": 1082, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 990, + "id": 1063, "modifierName": { "argumentTypes": null, - "id": 989, + "id": 1062, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1260:9:6", + "referencedDeclaration": 2923, + "src": "1535:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1260:9:6" + "src": "1535:9:6" } ], - "name": "registerUint", + "name": "registerString", "nodeType": "FunctionDefinition", "parameters": { - "id": 988, + "id": 1061, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 985, + "id": 1058, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1225:12:6", + "scope": 1082, + "src": "1498:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4629,10 +5707,10 @@ "typeString": "string" }, "typeName": { - "id": 984, + "id": 1057, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1225:6:6", + "src": "1498:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4643,56 +5721,56 @@ }, { "constant": false, - "id": 987, - "name": "_number", + "id": 1060, + "name": "_string", "nodeType": "VariableDeclaration", - "scope": 1006, - "src": "1239:12:6", + "scope": 1082, + "src": "1512:14:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" }, "typeName": { - "id": 986, - "name": "uint", + "id": 1059, + "name": "string", "nodeType": "ElementaryTypeName", - "src": "1239:4:6", + "src": "1512:6:6", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" } }, "value": null, "visibility": "internal" } ], - "src": "1224:28:6" + "src": "1497:30:6" }, "payable": false, "returnParameters": { - "id": 991, + "id": 1064, "nodeType": "ParameterList", "parameters": [], - "src": "1270:0:6" + "src": "1545:0:6" }, - "scope": 1096, - "src": "1203:165:6", + "scope": 1156, + "src": "1474:189:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1024, + "id": 1103, "nodeType": "Block", - "src": "1429:88:6", + "src": "1726:108:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 1018, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, @@ -4700,59 +5778,111 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "1439:32:6", + "src": "1736:50:6", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1013, - "name": "numbers", + "id": 1089, + "name": "strings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1446:7:6", + "referencedDeclaration": 921, + "src": "1743:7:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", + "typeString": "mapping(bytes32 => string storage ref)" } }, - "id": 1017, + "id": 1096, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1015, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1464:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1014, + "id": 1090, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1454:9:6", + "referencedDeclaration": 3338, + "src": "1751:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1016, + "id": 1095, "isConstant": false, "isLValue": false, "isPure": false, @@ -4760,7 +5890,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1454:16:6", + "src": "1751:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4771,10 +5901,10 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1446:25:6", + "src": "1743:43:6", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" } }, "typeDescriptions": { @@ -4782,9 +5912,9 @@ "typeString": "tuple()" } }, - "id": 1019, + "id": 1098, "nodeType": "ExpressionStatement", - "src": "1439:32:6" + "src": "1736:50:6" }, { "eventCall": { @@ -4792,12 +5922,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1021, + "id": 1100, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1008, - "src": "1504:5:6", + "referencedDeclaration": 1084, + "src": "1821:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4811,18 +5941,18 @@ "typeString": "string memory" } ], - "id": 1020, - "name": "LogUnregisterUint", + "id": 1099, + "name": "LogUnregisterString", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 908, - "src": "1486:17:6", + "referencedDeclaration": 951, + "src": "1801:19:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1022, + "id": 1101, "isConstant": false, "isLValue": false, "isPure": false, @@ -4830,57 +5960,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1486:24:6", + "src": "1801:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1023, + "id": 1102, "nodeType": "EmitStatement", - "src": "1481:29:6" + "src": "1796:31:6" } ] }, "documentation": null, - "id": 1025, + "id": 1104, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1011, + "id": 1087, "modifierName": { "argumentTypes": null, - "id": 1010, + "id": 1086, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "1419:9:6", + "referencedDeclaration": 2923, + "src": "1716:9:6", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1419:9:6" + "src": "1716:9:6" } ], - "name": "unregisterUint", + "name": "unregisterString", "nodeType": "FunctionDefinition", "parameters": { - "id": 1009, + "id": 1085, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1008, + "id": 1084, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1025, - "src": "1398:12:6", + "scope": 1104, + "src": "1695:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4888,10 +6018,10 @@ "typeString": "string" }, "typeName": { - "id": 1007, + "id": 1083, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1398:6:6", + "src": "1695:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4901,80 +6031,132 @@ "visibility": "internal" } ], - "src": "1397:14:6" + "src": "1694:14:6" }, "payable": false, "returnParameters": { - "id": 1012, + "id": 1088, "nodeType": "ParameterList", "parameters": [], - "src": "1429:0:6" + "src": "1726:0:6" }, - "scope": 1096, - "src": "1374:143:6", + "scope": 1156, + "src": "1669:165:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1038, + "id": 1120, "nodeType": "Block", - "src": "1580:49:6", + "src": "1904:69:6", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1032, - "name": "numbers", + "id": 1111, + "name": "contracts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "1597:7:6", + "referencedDeclaration": 913, + "src": "1921:9:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", - "typeString": "mapping(bytes32 => uint256)" + "typeIdentifier": "t_mapping$_t_bytes32_$_t_address_$", + "typeString": "mapping(bytes32 => address)" } }, - "id": 1036, + "id": 1118, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1034, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1027, - "src": "1615:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1033, + "id": 1112, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1605:9:6", + "referencedDeclaration": 3338, + "src": "1931:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1035, + "id": 1117, "isConstant": false, "isLValue": false, "isPure": false, @@ -4982,338 +6164,49 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1605:16:6", + "src": "1931:34: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, + "isLValue": true, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1766:33:6", + "nodeType": "IndexAccess", + "src": "1921:45:6", "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1060, - "nodeType": "EmitStatement", - "src": "1761:38:6" + "functionReturnParameters": 1110, + "id": 1119, + "nodeType": "Return", + "src": "1914:52:6" } ] }, "documentation": null, - "id": 1062, + "id": 1121, "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", + "isDeclaredConst": true, + "modifiers": [], + "name": "getContract", "nodeType": "FunctionDefinition", "parameters": { - "id": 1044, + "id": 1107, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1041, + "id": 1106, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1659:12:6", + "scope": 1121, + "src": "1861:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5321,10 +6214,10 @@ "typeString": "string" }, "typeName": { - "id": 1040, + "id": 1105, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1659:6:6", + "src": "1861:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5332,247 +6225,211 @@ }, "value": null, "visibility": "internal" - }, + } + ], + "src": "1860:14:6" + }, + "payable": false, + "returnParameters": { + "id": 1110, + "nodeType": "ParameterList", + "parameters": [ { "constant": false, - "id": 1043, - "name": "_string", + "id": 1109, + "name": "", "nodeType": "VariableDeclaration", - "scope": 1062, - "src": "1673:14:6", + "scope": 1121, + "src": "1895:7:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" }, "typeName": { - "id": 1042, - "name": "string", + "id": 1108, + "name": "address", "nodeType": "ElementaryTypeName", - "src": "1673:6:6", + "src": "1895:7:6", "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" } }, "value": null, "visibility": "internal" } ], - "src": "1658:30:6" - }, - "payable": false, - "returnParameters": { - "id": 1047, - "nodeType": "ParameterList", - "parameters": [], - "src": "1706:0:6" + "src": "1894:9:6" }, - "scope": 1096, - "src": "1635:171:6", - "stateMutability": "nonpayable", + "scope": 1156, + "src": "1840:133:6", + "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1080, + "id": 1137, "nodeType": "Block", - "src": "1869:90:6", + "src": "2036:67: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": { + "baseExpression": { "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": [ + "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": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "argumentTypes": null, + "id": 1132, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1123, + "src": "2088:5:6", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } } ], - "id": 1070, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1894:9:6", + "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_function_sha3_pure$__$returns$_t_bytes32_$", - "typeString": "function () pure returns (bytes32)" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } - }, - "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", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1129, + "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1064, - "src": "1946:5:6", + "referencedDeclaration": 3338, + "src": "2061:9:6", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", + "typeString": "function () pure returns (bytes32)" } - ], - "id": 1076, - "name": "LogUnregisterString", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 918, - "src": "1926:19:6", + }, + "id": 1134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2061:34:6", "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory)" + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } }, - "id": 1078, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1926:26:6", + "nodeType": "IndexAccess", + "src": "2053:43:6", "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 1079, - "nodeType": "EmitStatement", - "src": "1921:31:6" + "functionReturnParameters": 1127, + "id": 1136, + "nodeType": "Return", + "src": "2046:50:6" } ] }, "documentation": null, - "id": 1081, + "id": 1138, "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", + "isDeclaredConst": true, + "modifiers": [], + "name": "getUint", "nodeType": "FunctionDefinition", "parameters": { - "id": 1065, + "id": 1124, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1064, + "id": 1123, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1081, - "src": "1838:12:6", + "scope": 1138, + "src": "1996:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5580,10 +6437,10 @@ "typeString": "string" }, "typeName": { - "id": 1063, + "id": 1122, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1838:6:6", + "src": "1996:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5593,80 +6450,159 @@ "visibility": "internal" } ], - "src": "1837:14:6" + "src": "1995:14:6" }, "payable": false, "returnParameters": { - "id": 1068, + "id": 1127, "nodeType": "ParameterList", - "parameters": [], - "src": "1869:0:6" + "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": 1096, - "src": "1812:147:6", - "stateMutability": "nonpayable", + "scope": 1156, + "src": "1979:124:6", + "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1094, + "id": 1154, "nodeType": "Block", - "src": "2026:49:6", + "src": "2170:67:6", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1088, + "id": 1145, "name": "strings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "2043:7:6", + "referencedDeclaration": 921, + "src": "2187:7:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_string_storage_$", "typeString": "mapping(bytes32 => string storage ref)" } }, - "id": 1092, + "id": 1152, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1090, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1083, - "src": "2061:5:6", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1089, + "id": 1146, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2051:9:6", + "referencedDeclaration": 3338, + "src": "2195:9:6", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1091, + "id": 1151, "isConstant": false, "isLValue": false, "isPure": false, @@ -5674,7 +6610,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2051:16:6", + "src": "2195:34:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5685,21 +6621,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2043:25:6", + "src": "2187:43:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "functionReturnParameters": 1087, - "id": 1093, + "functionReturnParameters": 1144, + "id": 1153, "nodeType": "Return", - "src": "2036:32:6" + "src": "2180:50:6" } ] }, "documentation": null, - "id": 1095, + "id": 1155, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5707,16 +6643,16 @@ "name": "getString", "nodeType": "FunctionDefinition", "parameters": { - "id": 1084, + "id": 1141, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1083, + "id": 1140, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1984:12:6", + "scope": 1155, + "src": "2128:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5724,10 +6660,10 @@ "typeString": "string" }, "typeName": { - "id": 1082, + "id": 1139, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1984:6:6", + "src": "2128:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5737,20 +6673,20 @@ "visibility": "internal" } ], - "src": "1983:14:6" + "src": "2127:14:6" }, "payable": false, "returnParameters": { - "id": 1087, + "id": 1144, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1086, + "id": 1143, "name": "", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "2018:6:6", + "scope": 1155, + "src": "2162:6:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5758,10 +6694,10 @@ "typeString": "string" }, "typeName": { - "id": 1085, + "id": 1142, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2018:6:6", + "src": "2162:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5771,20 +6707,20 @@ "visibility": "internal" } ], - "src": "2017:8:6" + "src": "2161:8:6" }, - "scope": 1096, - "src": "1965:110:6", + "scope": 1156, + "src": "2109:128:6", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1097, - "src": "190:1887:6" + "scope": 1157, + "src": "190:2049:6" } ], - "src": "0:2078:6" + "src": "0:2240:6" }, "compiler": { "name": "solc", @@ -5792,5 +6728,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.675Z" + "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 0232834..755ba1f 100644 --- a/build/contracts/SafeMath.json +++ b/build/contracts/SafeMath.json @@ -11,14 +11,14 @@ "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "exportedSymbols": { "SafeMath": [ - 2750 + 2893 ] }, - "id": 2751, + "id": 2894, "nodeType": "SourceUnit", "nodes": [ { - "id": 2657, + "id": 2800, "literals": [ "solidity", "^", @@ -34,30 +34,30 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 2750, + "id": 2893, "linearizedBaseContracts": [ - 2750 + 2893 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 2686, + "id": 2829, "nodeType": "Block", "src": "209:76:15", "statements": [ { "assignments": [ - 2667 + 2810 ], "declarations": [ { "constant": false, - "id": 2667, + "id": 2810, "name": "c", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "215:9:15", "stateVariable": false, "storageLocation": "default", @@ -66,7 +66,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2666, + "id": 2809, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "215:7:15", @@ -79,25 +79,25 @@ "visibility": "internal" } ], - "id": 2671, + "id": 2814, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2670, + "id": 2813, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2668, + "id": 2811, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2659, + "referencedDeclaration": 2802, "src": "227:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -108,11 +108,11 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 2669, + "id": 2812, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2661, + "referencedDeclaration": 2804, "src": "231:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -138,7 +138,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2681, + "id": 2824, "isConstant": false, "isLValue": false, "isPure": false, @@ -149,18 +149,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2675, + "id": 2818, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2673, + "id": 2816, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2659, + "referencedDeclaration": 2802, "src": "245:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -172,7 +172,7 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2674, + "id": 2817, "isConstant": false, "isLValue": false, "isPure": true, @@ -201,7 +201,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2680, + "id": 2823, "isConstant": false, "isLValue": false, "isPure": false, @@ -212,18 +212,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2678, + "id": 2821, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2676, + "id": 2819, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2667, + "referencedDeclaration": 2810, "src": "255:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -234,11 +234,11 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 2677, + "id": 2820, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2659, + "referencedDeclaration": 2802, "src": "259:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -255,11 +255,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2679, + "id": 2822, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2661, + "referencedDeclaration": 2804, "src": "264:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -286,18 +286,18 @@ "typeString": "bool" } ], - "id": 2672, + "id": 2815, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3190, + "referencedDeclaration": 3333, "src": "238:6:15", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2682, + "id": 2825, "isConstant": false, "isLValue": false, "isPure": false, @@ -311,33 +311,33 @@ "typeString": "tuple()" } }, - "id": 2683, + "id": 2826, "nodeType": "ExpressionStatement", "src": "238:28:15" }, { "expression": { "argumentTypes": null, - "id": 2684, + "id": 2827, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2667, + "referencedDeclaration": 2810, "src": "279:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2665, - "id": 2685, + "functionReturnParameters": 2808, + "id": 2828, "nodeType": "Return", "src": "272:8:15" } ] }, "documentation": null, - "id": 2687, + "id": 2830, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -345,15 +345,15 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 2662, + "id": 2805, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2659, + "id": 2802, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "151:9:15", "stateVariable": false, "storageLocation": "default", @@ -362,7 +362,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2658, + "id": 2801, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "151:7:15", @@ -376,10 +376,10 @@ }, { "constant": false, - "id": 2661, + "id": 2804, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "162:9:15", "stateVariable": false, "storageLocation": "default", @@ -388,7 +388,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2660, + "id": 2803, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "162:7:15", @@ -405,15 +405,15 @@ }, "payable": false, "returnParameters": { - "id": 2665, + "id": 2808, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2664, + "id": 2807, "name": "", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "200:7:15", "stateVariable": false, "storageLocation": "default", @@ -422,7 +422,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2663, + "id": 2806, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "200:7:15", @@ -437,7 +437,7 @@ ], "src": "199:9:15" }, - "scope": 2750, + "scope": 2893, "src": "138:147:15", "stateMutability": "view", "superFunction": null, @@ -445,21 +445,21 @@ }, { "body": { - "id": 2704, + "id": 2847, "nodeType": "Block", "src": "360:198:15", "statements": [ { "assignments": [ - 2697 + 2840 ], "declarations": [ { "constant": false, - "id": 2697, + "id": 2840, "name": "c", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "440:9:15", "stateVariable": false, "storageLocation": "default", @@ -468,7 +468,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2696, + "id": 2839, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "440:7:15", @@ -481,25 +481,25 @@ "visibility": "internal" } ], - "id": 2701, + "id": 2844, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2700, + "id": 2843, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2698, + "id": 2841, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2689, + "referencedDeclaration": 2832, "src": "452:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -510,11 +510,11 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 2699, + "id": 2842, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2691, + "referencedDeclaration": 2834, "src": "456:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -533,26 +533,26 @@ { "expression": { "argumentTypes": null, - "id": 2702, + "id": 2845, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2697, + "referencedDeclaration": 2840, "src": "552:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2695, - "id": 2703, + "functionReturnParameters": 2838, + "id": 2846, "nodeType": "Return", "src": "545:8:15" } ] }, "documentation": null, - "id": 2705, + "id": 2848, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -560,15 +560,15 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 2692, + "id": 2835, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2689, + "id": 2832, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "302:9:15", "stateVariable": false, "storageLocation": "default", @@ -577,7 +577,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2688, + "id": 2831, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "302:7:15", @@ -591,10 +591,10 @@ }, { "constant": false, - "id": 2691, + "id": 2834, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "313:9:15", "stateVariable": false, "storageLocation": "default", @@ -603,7 +603,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2690, + "id": 2833, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "313:7:15", @@ -620,15 +620,15 @@ }, "payable": false, "returnParameters": { - "id": 2695, + "id": 2838, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2694, + "id": 2837, "name": "", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "351:7:15", "stateVariable": false, "storageLocation": "default", @@ -637,7 +637,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2693, + "id": 2836, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "351:7:15", @@ -652,7 +652,7 @@ ], "src": "350:9:15" }, - "scope": 2750, + "scope": 2893, "src": "289:269:15", "stateMutability": "view", "superFunction": null, @@ -660,7 +660,7 @@ }, { "body": { - "id": 2724, + "id": 2867, "nodeType": "Block", "src": "633:43:15", "statements": [ @@ -674,18 +674,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2717, + "id": 2860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2715, + "id": 2858, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2709, + "referencedDeclaration": 2852, "src": "646:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -696,11 +696,11 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 2716, + "id": 2859, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2707, + "referencedDeclaration": 2850, "src": "651:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -721,18 +721,18 @@ "typeString": "bool" } ], - "id": 2714, + "id": 2857, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3190, + "referencedDeclaration": 3333, "src": "639:6:15", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2718, + "id": 2861, "isConstant": false, "isLValue": false, "isPure": false, @@ -746,7 +746,7 @@ "typeString": "tuple()" } }, - "id": 2719, + "id": 2862, "nodeType": "ExpressionStatement", "src": "639:14:15" }, @@ -757,18 +757,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2722, + "id": 2865, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2720, + "id": 2863, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2707, + "referencedDeclaration": 2850, "src": "666:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -779,11 +779,11 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 2721, + "id": 2864, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2709, + "referencedDeclaration": 2852, "src": "670:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -796,15 +796,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 2713, - "id": 2723, + "functionReturnParameters": 2856, + "id": 2866, "nodeType": "Return", "src": "659:12:15" } ] }, "documentation": null, - "id": 2725, + "id": 2868, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -812,15 +812,15 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 2710, + "id": 2853, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2707, + "id": 2850, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2725, + "scope": 2868, "src": "575:9:15", "stateVariable": false, "storageLocation": "default", @@ -829,7 +829,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2706, + "id": 2849, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "575:7:15", @@ -843,10 +843,10 @@ }, { "constant": false, - "id": 2709, + "id": 2852, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2725, + "scope": 2868, "src": "586:9:15", "stateVariable": false, "storageLocation": "default", @@ -855,7 +855,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2708, + "id": 2851, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "586:7:15", @@ -872,15 +872,15 @@ }, "payable": false, "returnParameters": { - "id": 2713, + "id": 2856, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2712, + "id": 2855, "name": "", "nodeType": "VariableDeclaration", - "scope": 2725, + "scope": 2868, "src": "624:7:15", "stateVariable": false, "storageLocation": "default", @@ -889,7 +889,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2711, + "id": 2854, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "624:7:15", @@ -904,7 +904,7 @@ ], "src": "623:9:15" }, - "scope": 2750, + "scope": 2893, "src": "562:114:15", "stateMutability": "view", "superFunction": null, @@ -912,21 +912,21 @@ }, { "body": { - "id": 2748, + "id": 2891, "nodeType": "Block", "src": "751:62:15", "statements": [ { "assignments": [ - 2735 + 2878 ], "declarations": [ { "constant": false, - "id": 2735, + "id": 2878, "name": "c", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "757:9:15", "stateVariable": false, "storageLocation": "default", @@ -935,7 +935,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2734, + "id": 2877, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "757:7:15", @@ -948,25 +948,25 @@ "visibility": "internal" } ], - "id": 2739, + "id": 2882, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2738, + "id": 2881, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2736, + "id": 2879, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2727, + "referencedDeclaration": 2870, "src": "769:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -977,11 +977,11 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 2737, + "id": 2880, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2729, + "referencedDeclaration": 2872, "src": "773:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1007,18 +1007,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2743, + "id": 2886, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2741, + "id": 2884, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2735, + "referencedDeclaration": 2878, "src": "787:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1029,11 +1029,11 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2742, + "id": 2885, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2727, + "referencedDeclaration": 2870, "src": "792:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1054,18 +1054,18 @@ "typeString": "bool" } ], - "id": 2740, + "id": 2883, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3190, + "referencedDeclaration": 3333, "src": "780:6:15", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2744, + "id": 2887, "isConstant": false, "isLValue": false, "isPure": false, @@ -1079,33 +1079,33 @@ "typeString": "tuple()" } }, - "id": 2745, + "id": 2888, "nodeType": "ExpressionStatement", "src": "780:14:15" }, { "expression": { "argumentTypes": null, - "id": 2746, + "id": 2889, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2735, + "referencedDeclaration": 2878, "src": "807:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2733, - "id": 2747, + "functionReturnParameters": 2876, + "id": 2890, "nodeType": "Return", "src": "800:8:15" } ] }, "documentation": null, - "id": 2749, + "id": 2892, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1113,15 +1113,15 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 2730, + "id": 2873, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2727, + "id": 2870, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "693:9:15", "stateVariable": false, "storageLocation": "default", @@ -1130,7 +1130,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2726, + "id": 2869, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "693:7:15", @@ -1144,10 +1144,10 @@ }, { "constant": false, - "id": 2729, + "id": 2872, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "704:9:15", "stateVariable": false, "storageLocation": "default", @@ -1156,7 +1156,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2728, + "id": 2871, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "704:7:15", @@ -1173,15 +1173,15 @@ }, "payable": false, "returnParameters": { - "id": 2733, + "id": 2876, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2732, + "id": 2875, "name": "", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "742:7:15", "stateVariable": false, "storageLocation": "default", @@ -1190,7 +1190,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2731, + "id": 2874, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "742:7:15", @@ -1205,14 +1205,14 @@ ], "src": "741:9:15" }, - "scope": 2750, + "scope": 2893, "src": "680:133:15", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 2751, + "scope": 2894, "src": "117:698:15" } ], @@ -1222,14 +1222,14 @@ "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "exportedSymbols": { "SafeMath": [ - 2750 + 2893 ] }, - "id": 2751, + "id": 2894, "nodeType": "SourceUnit", "nodes": [ { - "id": 2657, + "id": 2800, "literals": [ "solidity", "^", @@ -1245,30 +1245,30 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 2750, + "id": 2893, "linearizedBaseContracts": [ - 2750 + 2893 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 2686, + "id": 2829, "nodeType": "Block", "src": "209:76:15", "statements": [ { "assignments": [ - 2667 + 2810 ], "declarations": [ { "constant": false, - "id": 2667, + "id": 2810, "name": "c", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "215:9:15", "stateVariable": false, "storageLocation": "default", @@ -1277,7 +1277,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2666, + "id": 2809, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "215:7:15", @@ -1290,25 +1290,25 @@ "visibility": "internal" } ], - "id": 2671, + "id": 2814, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2670, + "id": 2813, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2668, + "id": 2811, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2659, + "referencedDeclaration": 2802, "src": "227:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1319,11 +1319,11 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 2669, + "id": 2812, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2661, + "referencedDeclaration": 2804, "src": "231:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1349,7 +1349,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2681, + "id": 2824, "isConstant": false, "isLValue": false, "isPure": false, @@ -1360,18 +1360,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2675, + "id": 2818, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2673, + "id": 2816, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2659, + "referencedDeclaration": 2802, "src": "245:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1383,7 +1383,7 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2674, + "id": 2817, "isConstant": false, "isLValue": false, "isPure": true, @@ -1412,7 +1412,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2680, + "id": 2823, "isConstant": false, "isLValue": false, "isPure": false, @@ -1423,18 +1423,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2678, + "id": 2821, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2676, + "id": 2819, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2667, + "referencedDeclaration": 2810, "src": "255:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1445,11 +1445,11 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 2677, + "id": 2820, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2659, + "referencedDeclaration": 2802, "src": "259:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1466,11 +1466,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2679, + "id": 2822, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2661, + "referencedDeclaration": 2804, "src": "264:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1497,18 +1497,18 @@ "typeString": "bool" } ], - "id": 2672, + "id": 2815, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3190, + "referencedDeclaration": 3333, "src": "238:6:15", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2682, + "id": 2825, "isConstant": false, "isLValue": false, "isPure": false, @@ -1522,33 +1522,33 @@ "typeString": "tuple()" } }, - "id": 2683, + "id": 2826, "nodeType": "ExpressionStatement", "src": "238:28:15" }, { "expression": { "argumentTypes": null, - "id": 2684, + "id": 2827, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2667, + "referencedDeclaration": 2810, "src": "279:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2665, - "id": 2685, + "functionReturnParameters": 2808, + "id": 2828, "nodeType": "Return", "src": "272:8:15" } ] }, "documentation": null, - "id": 2687, + "id": 2830, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1556,15 +1556,15 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 2662, + "id": 2805, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2659, + "id": 2802, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "151:9:15", "stateVariable": false, "storageLocation": "default", @@ -1573,7 +1573,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2658, + "id": 2801, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "151:7:15", @@ -1587,10 +1587,10 @@ }, { "constant": false, - "id": 2661, + "id": 2804, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "162:9:15", "stateVariable": false, "storageLocation": "default", @@ -1599,7 +1599,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2660, + "id": 2803, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "162:7:15", @@ -1616,15 +1616,15 @@ }, "payable": false, "returnParameters": { - "id": 2665, + "id": 2808, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2664, + "id": 2807, "name": "", "nodeType": "VariableDeclaration", - "scope": 2687, + "scope": 2830, "src": "200:7:15", "stateVariable": false, "storageLocation": "default", @@ -1633,7 +1633,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2663, + "id": 2806, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "200:7:15", @@ -1648,7 +1648,7 @@ ], "src": "199:9:15" }, - "scope": 2750, + "scope": 2893, "src": "138:147:15", "stateMutability": "view", "superFunction": null, @@ -1656,21 +1656,21 @@ }, { "body": { - "id": 2704, + "id": 2847, "nodeType": "Block", "src": "360:198:15", "statements": [ { "assignments": [ - 2697 + 2840 ], "declarations": [ { "constant": false, - "id": 2697, + "id": 2840, "name": "c", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "440:9:15", "stateVariable": false, "storageLocation": "default", @@ -1679,7 +1679,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2696, + "id": 2839, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "440:7:15", @@ -1692,25 +1692,25 @@ "visibility": "internal" } ], - "id": 2701, + "id": 2844, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2700, + "id": 2843, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2698, + "id": 2841, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2689, + "referencedDeclaration": 2832, "src": "452:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1721,11 +1721,11 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 2699, + "id": 2842, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2691, + "referencedDeclaration": 2834, "src": "456:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1744,26 +1744,26 @@ { "expression": { "argumentTypes": null, - "id": 2702, + "id": 2845, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2697, + "referencedDeclaration": 2840, "src": "552:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2695, - "id": 2703, + "functionReturnParameters": 2838, + "id": 2846, "nodeType": "Return", "src": "545:8:15" } ] }, "documentation": null, - "id": 2705, + "id": 2848, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1771,15 +1771,15 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 2692, + "id": 2835, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2689, + "id": 2832, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "302:9:15", "stateVariable": false, "storageLocation": "default", @@ -1788,7 +1788,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2688, + "id": 2831, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "302:7:15", @@ -1802,10 +1802,10 @@ }, { "constant": false, - "id": 2691, + "id": 2834, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "313:9:15", "stateVariable": false, "storageLocation": "default", @@ -1814,7 +1814,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2690, + "id": 2833, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "313:7:15", @@ -1831,15 +1831,15 @@ }, "payable": false, "returnParameters": { - "id": 2695, + "id": 2838, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2694, + "id": 2837, "name": "", "nodeType": "VariableDeclaration", - "scope": 2705, + "scope": 2848, "src": "351:7:15", "stateVariable": false, "storageLocation": "default", @@ -1848,7 +1848,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2693, + "id": 2836, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "351:7:15", @@ -1863,7 +1863,7 @@ ], "src": "350:9:15" }, - "scope": 2750, + "scope": 2893, "src": "289:269:15", "stateMutability": "view", "superFunction": null, @@ -1871,7 +1871,7 @@ }, { "body": { - "id": 2724, + "id": 2867, "nodeType": "Block", "src": "633:43:15", "statements": [ @@ -1885,18 +1885,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2717, + "id": 2860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2715, + "id": 2858, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2709, + "referencedDeclaration": 2852, "src": "646:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1907,11 +1907,11 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 2716, + "id": 2859, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2707, + "referencedDeclaration": 2850, "src": "651:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1932,18 +1932,18 @@ "typeString": "bool" } ], - "id": 2714, + "id": 2857, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3190, + "referencedDeclaration": 3333, "src": "639:6:15", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2718, + "id": 2861, "isConstant": false, "isLValue": false, "isPure": false, @@ -1957,7 +1957,7 @@ "typeString": "tuple()" } }, - "id": 2719, + "id": 2862, "nodeType": "ExpressionStatement", "src": "639:14:15" }, @@ -1968,18 +1968,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2722, + "id": 2865, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2720, + "id": 2863, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2707, + "referencedDeclaration": 2850, "src": "666:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1990,11 +1990,11 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 2721, + "id": 2864, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2709, + "referencedDeclaration": 2852, "src": "670:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2007,15 +2007,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 2713, - "id": 2723, + "functionReturnParameters": 2856, + "id": 2866, "nodeType": "Return", "src": "659:12:15" } ] }, "documentation": null, - "id": 2725, + "id": 2868, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2023,15 +2023,15 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 2710, + "id": 2853, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2707, + "id": 2850, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2725, + "scope": 2868, "src": "575:9:15", "stateVariable": false, "storageLocation": "default", @@ -2040,7 +2040,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2706, + "id": 2849, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "575:7:15", @@ -2054,10 +2054,10 @@ }, { "constant": false, - "id": 2709, + "id": 2852, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2725, + "scope": 2868, "src": "586:9:15", "stateVariable": false, "storageLocation": "default", @@ -2066,7 +2066,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2708, + "id": 2851, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "586:7:15", @@ -2083,15 +2083,15 @@ }, "payable": false, "returnParameters": { - "id": 2713, + "id": 2856, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2712, + "id": 2855, "name": "", "nodeType": "VariableDeclaration", - "scope": 2725, + "scope": 2868, "src": "624:7:15", "stateVariable": false, "storageLocation": "default", @@ -2100,7 +2100,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2711, + "id": 2854, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "624:7:15", @@ -2115,7 +2115,7 @@ ], "src": "623:9:15" }, - "scope": 2750, + "scope": 2893, "src": "562:114:15", "stateMutability": "view", "superFunction": null, @@ -2123,21 +2123,21 @@ }, { "body": { - "id": 2748, + "id": 2891, "nodeType": "Block", "src": "751:62:15", "statements": [ { "assignments": [ - 2735 + 2878 ], "declarations": [ { "constant": false, - "id": 2735, + "id": 2878, "name": "c", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "757:9:15", "stateVariable": false, "storageLocation": "default", @@ -2146,7 +2146,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2734, + "id": 2877, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "757:7:15", @@ -2159,25 +2159,25 @@ "visibility": "internal" } ], - "id": 2739, + "id": 2882, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2738, + "id": 2881, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2736, + "id": 2879, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2727, + "referencedDeclaration": 2870, "src": "769:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2188,11 +2188,11 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 2737, + "id": 2880, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2729, + "referencedDeclaration": 2872, "src": "773:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2218,18 +2218,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2743, + "id": 2886, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2741, + "id": 2884, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2735, + "referencedDeclaration": 2878, "src": "787:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2240,11 +2240,11 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2742, + "id": 2885, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2727, + "referencedDeclaration": 2870, "src": "792:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2265,18 +2265,18 @@ "typeString": "bool" } ], - "id": 2740, + "id": 2883, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3190, + "referencedDeclaration": 3333, "src": "780:6:15", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2744, + "id": 2887, "isConstant": false, "isLValue": false, "isPure": false, @@ -2290,33 +2290,33 @@ "typeString": "tuple()" } }, - "id": 2745, + "id": 2888, "nodeType": "ExpressionStatement", "src": "780:14:15" }, { "expression": { "argumentTypes": null, - "id": 2746, + "id": 2889, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2735, + "referencedDeclaration": 2878, "src": "807:1:15", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2733, - "id": 2747, + "functionReturnParameters": 2876, + "id": 2890, "nodeType": "Return", "src": "800:8:15" } ] }, "documentation": null, - "id": 2749, + "id": 2892, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2324,15 +2324,15 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 2730, + "id": 2873, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2727, + "id": 2870, "name": "a", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "693:9:15", "stateVariable": false, "storageLocation": "default", @@ -2341,7 +2341,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2726, + "id": 2869, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "693:7:15", @@ -2355,10 +2355,10 @@ }, { "constant": false, - "id": 2729, + "id": 2872, "name": "b", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "704:9:15", "stateVariable": false, "storageLocation": "default", @@ -2367,7 +2367,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2728, + "id": 2871, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "704:7:15", @@ -2384,15 +2384,15 @@ }, "payable": false, "returnParameters": { - "id": 2733, + "id": 2876, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2732, + "id": 2875, "name": "", "nodeType": "VariableDeclaration", - "scope": 2749, + "scope": 2892, "src": "742:7:15", "stateVariable": false, "storageLocation": "default", @@ -2401,7 +2401,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2731, + "id": 2874, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "742:7:15", @@ -2416,14 +2416,14 @@ ], "src": "741:9:15" }, - "scope": 2750, + "scope": 2893, "src": "680:133:15", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 2751, + "scope": 2894, "src": "117:698:15" } ], @@ -2435,5 +2435,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.687Z" + "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 ea8a407..df027c6 100644 --- a/build/contracts/Sales.json +++ b/build/contracts/Sales.json @@ -210,24 +210,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", "exportedSymbols": { "Sales": [ - 1277 + 1349 ] }, - "id": 1278, + "id": 1350, "nodeType": "SourceUnit", "nodes": [ { - "id": 1098, + "id": 1158, "literals": [ "solidity", "^", @@ -240,10 +240,10 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1099, + "id": 1159, "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2807, + "scope": 1350, + "sourceUnit": 2950, "src": "26:59:7", "symbolAliases": [], "unitAlias": "" @@ -251,21 +251,21 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1100, + "id": 1160, "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2751, + "scope": 1350, + "sourceUnit": 2894, "src": "86:55:7", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1101, + "id": 1161, "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 1097, + "scope": 1350, + "sourceUnit": 1157, "src": "142:24:7", "symbolAliases": [], "unitAlias": "" @@ -276,57 +276,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1102, + "id": 1162, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "186:7:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1103, + "id": 1163, "nodeType": "InheritanceSpecifier", "src": "186:7:7" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1277, + "id": 1349, "linearizedBaseContracts": [ - 1277, - 2806 + 1349, + 2949 ], "name": "Sales", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1105, + "id": 1165, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1277, + "scope": 1349, "src": "201:24:7", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1104, + "id": 1164, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "201:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -335,14 +335,14 @@ }, { "canonicalName": "Sales.Data", - "id": 1112, + "id": 1172, "members": [ { "constant": false, - "id": 1107, + "id": 1167, "name": "_isRegistered", "nodeType": "VariableDeclaration", - "scope": 1112, + "scope": 1172, "src": "254:18:7", "stateVariable": false, "storageLocation": "default", @@ -351,7 +351,7 @@ "typeString": "bool" }, "typeName": { - "id": 1106, + "id": 1166, "name": "bool", "nodeType": "ElementaryTypeName", "src": "254:4:7", @@ -365,10 +365,10 @@ }, { "constant": false, - "id": 1109, + "id": 1169, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1112, + "scope": 1172, "src": "282:11:7", "stateVariable": false, "storageLocation": "default", @@ -377,7 +377,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1108, + "id": 1168, "name": "uint", "nodeType": "ElementaryTypeName", "src": "282:4:7", @@ -391,10 +391,10 @@ }, { "constant": false, - "id": 1111, + "id": 1171, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1112, + "scope": 1172, "src": "303:16:7", "stateVariable": false, "storageLocation": "default", @@ -403,7 +403,7 @@ "typeString": "string" }, "typeName": { - "id": 1110, + "id": 1170, "name": "string", "nodeType": "ElementaryTypeName", "src": "303:6:7", @@ -418,68 +418,68 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 1277, + "scope": 1349, "src": "232:94:7", "visibility": "public" }, { "constant": false, - "id": 1118, + "id": 1178, "name": "_sales", "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "393:60:7", + "scope": 1349, + "src": "392:60:7", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" }, "typeName": { - "id": 1117, + "id": 1177, "keyType": { - "id": 1113, + "id": 1173, "name": "address", "nodeType": "ElementaryTypeName", - "src": "402:7:7", + "src": "401:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "393:45:7", + "src": "392:45:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" }, "valueType": { - "id": 1116, + "id": 1176, "keyType": { - "id": 1114, + "id": 1174, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "421:7:7", + "src": "420:7:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "412:25:7", + "src": "411:25:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data)" }, "valueType": { "contractScope": null, - "id": 1115, + "id": 1175, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "432:4:7", + "referencedDeclaration": 1172, + "src": "431:4:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data" } } @@ -491,21 +491,21 @@ { "anonymous": false, "documentation": null, - "id": 1128, + "id": 1188, "name": "LogCreateSale", "nodeType": "EventDefinition", "parameters": { - "id": 1127, + "id": 1187, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1180, "indexed": false, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "480:14:7", + "scope": 1188, + "src": "479:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -513,10 +513,10 @@ "typeString": "address" }, "typeName": { - "id": 1119, + "id": 1179, "name": "address", "nodeType": "ElementaryTypeName", - "src": "480:7:7", + "src": "479:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -527,12 +527,12 @@ }, { "constant": false, - "id": 1122, + "id": 1182, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "496:15:7", + "scope": 1188, + "src": "495:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -540,10 +540,10 @@ "typeString": "string" }, "typeName": { - "id": 1121, + "id": 1181, "name": "string", "nodeType": "ElementaryTypeName", - "src": "496:6:7", + "src": "495:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -554,12 +554,12 @@ }, { "constant": false, - "id": 1124, + "id": 1184, "indexed": false, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "513:11:7", + "scope": 1188, + "src": "512:11:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -567,10 +567,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1123, + "id": 1183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "513:4:7", + "src": "512:4:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -581,12 +581,12 @@ }, { "constant": false, - "id": 1126, + "id": 1186, "indexed": false, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "526:16:7", + "scope": 1188, + "src": "525:16:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -594,10 +594,10 @@ "typeString": "string" }, "typeName": { - "id": 1125, + "id": 1185, "name": "string", "nodeType": "ElementaryTypeName", - "src": "526:6:7", + "src": "525:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -607,28 +607,28 @@ "visibility": "internal" } ], - "src": "479:64:7" + "src": "478:64:7" }, - "src": "460:84:7" + "src": "459:84:7" }, { "anonymous": false, "documentation": null, - "id": 1134, + "id": 1194, "name": "LogRemoveSale", "nodeType": "EventDefinition", "parameters": { - "id": 1133, + "id": 1193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1130, + "id": 1190, "indexed": false, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "569:14:7", + "scope": 1194, + "src": "568:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -636,10 +636,10 @@ "typeString": "address" }, "typeName": { - "id": 1129, + "id": 1189, "name": "address", "nodeType": "ElementaryTypeName", - "src": "569:7:7", + "src": "568:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -650,12 +650,12 @@ }, { "constant": false, - "id": 1132, + "id": 1192, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "585:15:7", + "scope": 1194, + "src": "584:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -663,10 +663,10 @@ "typeString": "string" }, "typeName": { - "id": 1131, + "id": 1191, "name": "string", "nodeType": "ElementaryTypeName", - "src": "585:6:7", + "src": "584:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -676,15 +676,15 @@ "visibility": "internal" } ], - "src": "568:33:7" + "src": "567:33:7" }, - "src": "549:53:7" + "src": "548:53:7" }, { "body": { - "id": 1154, + "id": 1214, "nodeType": "Block", - "src": "636:107:7", + "src": "635:107:7", "statements": [ { "expression": { @@ -696,7 +696,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1150, + "id": 1210, "isConstant": false, "isLValue": false, "isPure": false, @@ -710,7 +710,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1140, + "id": 1200, "isConstant": false, "isLValue": false, "isPure": false, @@ -719,18 +719,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1137, + "id": 1197, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "655:3:7", + "referencedDeclaration": 3344, + "src": "654:3:7", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1138, + "id": 1198, "isConstant": false, "isLValue": false, "isPure": false, @@ -738,7 +738,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "655:10:7", + "src": "654:10:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -748,32 +748,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1139, + "id": 1199, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "669:5:7", + "referencedDeclaration": 2897, + "src": "668:5:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "655:19:7", + "src": "654:19:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1141, + "id": 1201, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "654:21:7", + "src": "653:21:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -790,7 +790,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1148, + "id": 1208, "isConstant": false, "isLValue": false, "isPure": false, @@ -799,18 +799,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1142, + "id": 1202, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "680:3:7", + "referencedDeclaration": 3344, + "src": "679:3:7", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1143, + "id": 1203, "isConstant": false, "isLValue": false, "isPure": false, @@ -818,7 +818,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "680:10:7", + "src": "679:10:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -832,14 +832,14 @@ { "argumentTypes": null, "hexValue": "53746f7265", - "id": 1146, + "id": 1206, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "715:7:7", + "src": "714:7:7", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", @@ -857,32 +857,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1204, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "694:8:7", + "referencedDeclaration": 1165, + "src": "693:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1145, + "id": 1205, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "694:20:7", + "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": 1147, + "id": 1207, "isConstant": false, "isLValue": false, "isPure": false, @@ -890,33 +890,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "694:29:7", + "src": "693:29:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "680:43:7", + "src": "679:43:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1149, + "id": 1209, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "679:45:7", + "src": "678:45:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "654:70:7", + "src": "653:70:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -930,21 +930,21 @@ "typeString": "bool" } ], - "id": 1136, + "id": 1196, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "646:7:7", + "referencedDeclaration": 3347, + "src": "645:7:7", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1151, + "id": 1211, "isConstant": false, "isLValue": false, "isPure": false, @@ -952,58 +952,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "646:79:7", + "src": "645:79:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1152, + "id": 1212, "nodeType": "ExpressionStatement", - "src": "646:79:7" + "src": "645:79:7" }, { - "id": 1153, + "id": 1213, "nodeType": "PlaceholderStatement", - "src": "735:1:7" + "src": "734:1:7" } ] }, "documentation": null, - "id": 1155, + "id": 1215, "name": "onlyOwnerOrStore", "nodeType": "ModifierDefinition", "parameters": { - "id": 1135, + "id": 1195, "nodeType": "ParameterList", "parameters": [], - "src": "633:2:7" + "src": "632:2:7" }, - "src": "608:135:7", + "src": "607:135:7", "visibility": "internal" }, { "body": { - "id": 1169, + "id": 1229, "nodeType": "Block", - "src": "788:65:7", + "src": "787:65:7", "statements": [ { "expression": { "argumentTypes": null, - "id": 1163, + "id": 1223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1160, + "id": 1220, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "798:5:7", + "referencedDeclaration": 2897, + "src": "797:5:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1015,18 +1015,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1161, + "id": 1221, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "806:3:7", + "referencedDeclaration": 3344, + "src": "805:3:7", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1162, + "id": 1222, "isConstant": false, "isLValue": false, "isPure": false, @@ -1034,40 +1034,40 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "806:10:7", + "src": "805:10:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "798:18:7", + "src": "797:18:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1164, + "id": 1224, "nodeType": "ExpressionStatement", - "src": "798:18:7" + "src": "797:18:7" }, { "expression": { "argumentTypes": null, - "id": 1167, + "id": 1227, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1165, + "id": 1225, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "826:8:7", + "referencedDeclaration": 1165, + "src": "825:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1075,31 +1075,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1166, + "id": 1226, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1157, - "src": "837:9:7", + "referencedDeclaration": 1217, + "src": "836:9:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "src": "826:20:7", + "src": "825:20:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1168, + "id": 1228, "nodeType": "ExpressionStatement", - "src": "826:20:7" + "src": "825:20:7" } ] }, "documentation": null, - "id": 1170, + "id": 1230, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -1107,31 +1107,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1158, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1157, + "id": 1217, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1170, - "src": "761:18:7", + "scope": 1230, + "src": "760:18:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1156, + "id": 1216, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "761:8:7", + "referencedDeclaration": 1156, + "src": "760:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1139,31 +1139,31 @@ "visibility": "internal" } ], - "src": "760:20:7" + "src": "759:20:7" }, "payable": false, "returnParameters": { - "id": 1159, + "id": 1219, "nodeType": "ParameterList", "parameters": [], - "src": "788:0:7" + "src": "787:0:7" }, - "scope": 1277, - "src": "749:104:7", + "scope": 1349, + "src": "748:104:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1204, + "id": 1267, "nodeType": "Block", - "src": "1406:149:7", + "src": "1419:167:7", "statements": [ { "expression": { "argumentTypes": null, - "id": 1195, + "id": 1258, "isConstant": false, "isLValue": false, "isPure": false, @@ -1174,26 +1174,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1183, + "id": 1243, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1416:6:7", + "referencedDeclaration": 1178, + "src": "1429:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1188, + "id": 1251, "indexExpression": { "argumentTypes": null, - "id": 1184, + "id": 1244, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1423:6:7", + "referencedDeclaration": 1232, + "src": "1436:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1204,49 +1204,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1416:14:7", + "src": "1429:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1189, + "id": 1252, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1186, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1441:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1185, + "id": 1245, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1431:9:7", + "referencedDeclaration": 3338, + "src": "1444:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1187, + "id": 1250, "isConstant": false, "isLValue": false, "isPure": false, @@ -1254,7 +1306,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1431:19:7", + "src": "1444:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1265,9 +1317,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1416:35:7", + "src": "1429:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, @@ -1279,14 +1331,14 @@ { "argumentTypes": null, "hexValue": "74727565", - "id": 1191, + "id": 1254, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1459:4:7", + "src": "1490:4:7", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1296,12 +1348,12 @@ }, { "argumentTypes": null, - "id": 1192, + "id": 1255, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1465:6:7", + "referencedDeclaration": 1236, + "src": "1496:6:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1309,12 +1361,12 @@ }, { "argumentTypes": null, - "id": 1193, + "id": 1256, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1473:9:7", + "referencedDeclaration": 1238, + "src": "1504:9:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1336,18 +1388,18 @@ "typeString": "string memory" } ], - "id": 1190, + "id": 1253, "name": "Data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1112, - "src": "1454:4:7", + "referencedDeclaration": 1172, + "src": "1485:4:7", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$1112_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Data_$1172_storage_ptr_$", "typeString": "type(struct Sales.Data storage pointer)" } }, - "id": 1194, + "id": 1257, "isConstant": false, "isLValue": false, "isPure": false, @@ -1355,21 +1407,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1454:29:7", + "src": "1485:29:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_memory", + "typeIdentifier": "t_struct$_Data_$1172_memory", "typeString": "struct Sales.Data memory" } }, - "src": "1416:67:7", + "src": "1429:85:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, - "id": 1196, + "id": 1259, "nodeType": "ExpressionStatement", - "src": "1416:67:7" + "src": "1429:85:7" }, { "eventCall": { @@ -1377,12 +1429,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1198, + "id": 1261, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1512:6:7", + "referencedDeclaration": 1232, + "src": "1543:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1390,12 +1442,12 @@ }, { "argumentTypes": null, - "id": 1199, + "id": 1262, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1520:8:7", + "referencedDeclaration": 1234, + "src": "1551:8:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1403,12 +1455,12 @@ }, { "argumentTypes": null, - "id": 1200, + "id": 1263, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1530:6:7", + "referencedDeclaration": 1236, + "src": "1561:6:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1416,12 +1468,12 @@ }, { "argumentTypes": null, - "id": 1201, + "id": 1264, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1538:9:7", + "referencedDeclaration": 1238, + "src": "1569:9:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1447,18 +1499,18 @@ "typeString": "string memory" } ], - "id": 1197, + "id": 1260, "name": "LogCreateSale", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "1498:13:7", + "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": 1202, + "id": 1265, "isConstant": false, "isLValue": false, "isPure": false, @@ -1466,57 +1518,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1498:50:7", + "src": "1529:50:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1203, + "id": 1266, "nodeType": "EmitStatement", - "src": "1493:55:7" + "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": 1205, + "id": 1268, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1181, + "id": 1241, "modifierName": { "argumentTypes": null, - "id": 1180, + "id": 1240, "name": "onlyOwnerOrStore", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1389:16:7", + "referencedDeclaration": 1215, + "src": "1397:16:7", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1389:16:7" + "src": "1397:16:7" } ], "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 1179, + "id": 1239, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1172, + "id": 1232, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1310:14:7", + "scope": 1268, + "src": "1309:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1524,10 +1576,10 @@ "typeString": "address" }, "typeName": { - "id": 1171, + "id": 1231, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1310:7:7", + "src": "1309:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1538,11 +1590,11 @@ }, { "constant": false, - "id": 1174, + "id": 1234, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1326:15:7", + "scope": 1268, + "src": "1325:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1550,10 +1602,10 @@ "typeString": "string" }, "typeName": { - "id": 1173, + "id": 1233, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1326:6:7", + "src": "1325:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1564,11 +1616,11 @@ }, { "constant": false, - "id": 1176, + "id": 1236, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1343:11:7", + "scope": 1268, + "src": "1342:11:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1576,10 +1628,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1175, + "id": 1235, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1343:4:7", + "src": "1342:4:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1590,11 +1642,11 @@ }, { "constant": false, - "id": 1178, + "id": 1238, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1356:16:7", + "scope": 1268, + "src": "1355:16:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1602,10 +1654,10 @@ "typeString": "string" }, "typeName": { - "id": 1177, + "id": 1237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1356:6:7", + "src": "1355:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1615,31 +1667,31 @@ "visibility": "internal" } ], - "src": "1309:64:7" + "src": "1308:64:7" }, "payable": false, "returnParameters": { - "id": 1182, + "id": 1242, "nodeType": "ParameterList", "parameters": [], - "src": "1406:0:7" + "src": "1419:0:7" }, - "scope": 1277, - "src": "1294:261:7", + "scope": 1349, + "src": "1293:293:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1228, + "id": 1294, "nodeType": "Block", - "src": "1766:105:7", + "src": "1789:123:7", "statements": [ { "expression": { "argumentTypes": null, - "id": 1221, + "id": 1287, "isConstant": false, "isLValue": false, "isPure": false, @@ -1647,33 +1699,33 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "1776:42:7", + "src": "1799:60:7", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1214, + "id": 1277, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1783:6:7", + "referencedDeclaration": 1178, + "src": "1806:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1216, + "id": 1279, "indexExpression": { "argumentTypes": null, - "id": 1215, + "id": 1278, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1790:6:7", + "referencedDeclaration": 1270, + "src": "1813:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1684,49 +1736,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1783:14:7", + "src": "1806:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1220, + "id": 1286, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1218, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1808:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1217, + "id": 1280, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1798:9:7", + "referencedDeclaration": 3338, + "src": "1821:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1219, + "id": 1285, "isConstant": false, "isLValue": false, "isPure": false, @@ -1734,7 +1838,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1798:19:7", + "src": "1821:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1745,9 +1849,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1783:35:7", + "src": "1806:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, @@ -1756,9 +1860,9 @@ "typeString": "tuple()" } }, - "id": 1222, + "id": 1288, "nodeType": "ExpressionStatement", - "src": "1776:42:7" + "src": "1799:60:7" }, { "eventCall": { @@ -1766,12 +1870,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1224, + "id": 1290, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1847:6:7", + "referencedDeclaration": 1270, + "src": "1888:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1779,12 +1883,12 @@ }, { "argumentTypes": null, - "id": 1225, + "id": 1291, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1855:8:7", + "referencedDeclaration": 1272, + "src": "1896:8:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1802,18 +1906,18 @@ "typeString": "string memory" } ], - "id": 1223, + "id": 1289, "name": "LogRemoveSale", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1134, - "src": "1833:13:7", + "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": 1226, + "id": 1292, "isConstant": false, "isLValue": false, "isPure": false, @@ -1821,57 +1925,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1833:31:7", + "src": "1874:31:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1227, + "id": 1293, "nodeType": "EmitStatement", - "src": "1828:36:7" + "src": "1869:36:7" } ] }, "documentation": "@dev Remove the sale from the registry\nOnly the Store contract or the owner can remove a sale", - "id": 1229, + "id": 1295, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1212, + "id": 1275, "modifierName": { "argumentTypes": null, - "id": 1211, + "id": 1274, "name": "onlyOwnerOrStore", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1749:16:7", + "referencedDeclaration": 1215, + "src": "1772:16:7", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1749:16:7" + "src": "1772:16:7" } ], "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 1210, + "id": 1273, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1207, + "id": 1270, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1701:14:7", + "scope": 1295, + "src": "1732:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1879,10 +1983,10 @@ "typeString": "address" }, "typeName": { - "id": 1206, + "id": 1269, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1701:7:7", + "src": "1732:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1893,11 +1997,11 @@ }, { "constant": false, - "id": 1209, + "id": 1272, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1717:15:7", + "scope": 1295, + "src": "1748:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1905,10 +2009,10 @@ "typeString": "string" }, "typeName": { - "id": 1208, + "id": 1271, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1717:6:7", + "src": "1748:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1918,54 +2022,54 @@ "visibility": "internal" } ], - "src": "1700:33:7" + "src": "1731:33:7" }, "payable": false, "returnParameters": { - "id": 1213, + "id": 1276, "nodeType": "ParameterList", "parameters": [], - "src": "1766:0:7" + "src": "1789:0:7" }, - "scope": 1277, - "src": "1685:186:7", + "scope": 1349, + "src": "1716:196:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1256, + "id": 1325, "nodeType": "Block", - "src": "2131:155:7", + "src": "2172:173:7", "statements": [ { "assignments": [ - 1241 + 1307 ], "declarations": [ { "constant": false, - "id": 1241, + "id": 1307, "name": "_data", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2141:18:7", + "scope": 1326, + "src": "2182:18:7", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data" }, "typeName": { "contractScope": null, - "id": 1240, + "id": 1306, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "2141:4:7", + "referencedDeclaration": 1172, + "src": "2182:4:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data" } }, @@ -1973,33 +2077,33 @@ "visibility": "internal" } ], - "id": 1249, + "id": 1318, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1242, + "id": 1308, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2162:6:7", + "referencedDeclaration": 1178, + "src": "2203:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1244, + "id": 1310, "indexExpression": { "argumentTypes": null, - "id": 1243, + "id": 1309, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1231, - "src": "2169:6:7", + "referencedDeclaration": 1297, + "src": "2210:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2010,49 +2114,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2162:14:7", + "src": "2203:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1248, + "id": 1317, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1246, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1233, - "src": "2187:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1245, + "id": 1311, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2177:9:7", + "referencedDeclaration": 3338, + "src": "2218:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1247, + "id": 1316, "isConstant": false, "isLValue": false, "isPure": false, @@ -2060,7 +2216,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2177:19:7", + "src": "2218:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2071,14 +2227,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2162:35:7", + "src": "2203:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "2141:56:7" + "src": "2182:74:7" }, { "expression": { @@ -2088,26 +2244,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1250, + "id": 1319, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2228:5:7", + "referencedDeclaration": 1307, + "src": "2287:5:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data storage pointer" } }, - "id": 1251, + "id": 1320, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_price", "nodeType": "MemberAccess", - "referencedDeclaration": 1109, - "src": "2228:12:7", + "referencedDeclaration": 1169, + "src": "2287:12:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2117,54 +2273,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1252, + "id": 1321, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2254:5:7", + "referencedDeclaration": 1307, + "src": "2313:5:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data storage pointer" } }, - "id": 1253, + "id": 1322, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 1111, - "src": "2254:15:7", + "referencedDeclaration": 1171, + "src": "2313:15:7", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } } ], - "id": 1254, + "id": 1323, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "2214:65:7", + "src": "2273:65:7", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_string_storage_$", "typeString": "tuple(uint256,string storage ref)" } }, - "functionReturnParameters": 1239, - "id": 1255, + "functionReturnParameters": 1305, + "id": 1324, "nodeType": "Return", - "src": "2207:72:7" + "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": 1257, + "id": 1326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2172,16 +2328,16 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 1234, + "id": 1300, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1231, + "id": 1297, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2063:14:7", + "scope": 1326, + "src": "2104:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2189,10 +2345,10 @@ "typeString": "address" }, "typeName": { - "id": 1230, + "id": 1296, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2063:7:7", + "src": "2104:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2203,11 +2359,11 @@ }, { "constant": false, - "id": 1233, + "id": 1299, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2079:15:7", + "scope": 1326, + "src": "2120:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2215,10 +2371,10 @@ "typeString": "string" }, "typeName": { - "id": 1232, + "id": 1298, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2079:6:7", + "src": "2120:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2228,20 +2384,20 @@ "visibility": "internal" } ], - "src": "2062:33:7" + "src": "2103:33:7" }, "payable": false, "returnParameters": { - "id": 1239, + "id": 1305, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1236, + "id": 1302, "name": "", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2117:4:7", + "scope": 1326, + "src": "2158:4:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2249,10 +2405,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1235, + "id": 1301, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2117:4:7", + "src": "2158:4:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2263,11 +2419,11 @@ }, { "constant": false, - "id": 1238, + "id": 1304, "name": "", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2123:6:7", + "scope": 1326, + "src": "2164:6:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2275,10 +2431,10 @@ "typeString": "string" }, "typeName": { - "id": 1237, + "id": 1303, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2123:6:7", + "src": "2164:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2288,19 +2444,19 @@ "visibility": "internal" } ], - "src": "2116:14:7" + "src": "2157:14:7" }, - "scope": 1277, - "src": "2050:236:7", + "scope": 1349, + "src": "2091:254:7", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1275, + "id": 1347, "nodeType": "Block", - "src": "2376:73:7", + "src": "2435:91:7", "statements": [ { "expression": { @@ -2311,26 +2467,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1266, + "id": 1335, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2393:6:7", + "referencedDeclaration": 1178, + "src": "2452:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1268, + "id": 1337, "indexExpression": { "argumentTypes": null, - "id": 1267, + "id": 1336, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1259, - "src": "2400:6:7", + "referencedDeclaration": 1328, + "src": "2459:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2341,49 +2497,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2393:14:7", + "src": "2452:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1272, + "id": 1344, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1270, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "2418:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1269, + "id": 1338, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2408:9:7", + "referencedDeclaration": 3338, + "src": "2467:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1271, + "id": 1343, "isConstant": false, "isLValue": false, "isPure": false, @@ -2391,7 +2599,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2408:19:7", + "src": "2467:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2402,35 +2610,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2393:35:7", + "src": "2452:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, - "id": 1273, + "id": 1345, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_isRegistered", "nodeType": "MemberAccess", - "referencedDeclaration": 1107, - "src": "2393:49:7", + "referencedDeclaration": 1167, + "src": "2452:67:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1265, - "id": 1274, + "functionReturnParameters": 1334, + "id": 1346, "nodeType": "Return", - "src": "2386:56:7" + "src": "2445:74:7" } ] }, "documentation": null, - "id": 1276, + "id": 1348, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2438,16 +2646,16 @@ "name": "userBoughtVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 1262, + "id": 1331, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1259, + "id": 1328, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2317:14:7", + "scope": 1348, + "src": "2376:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2455,10 +2663,10 @@ "typeString": "address" }, "typeName": { - "id": 1258, + "id": 1327, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2317:7:7", + "src": "2376:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2469,11 +2677,11 @@ }, { "constant": false, - "id": 1261, + "id": 1330, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2333:15:7", + "scope": 1348, + "src": "2392:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2481,10 +2689,10 @@ "typeString": "string" }, "typeName": { - "id": 1260, + "id": 1329, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2333:6:7", + "src": "2392:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2494,20 +2702,20 @@ "visibility": "internal" } ], - "src": "2316:33:7" + "src": "2375:33:7" }, "payable": false, "returnParameters": { - "id": 1265, + "id": 1334, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1264, + "id": 1333, "name": "", "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2370:4:7", + "scope": 1348, + "src": "2429:4:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2515,10 +2723,10 @@ "typeString": "bool" }, "typeName": { - "id": 1263, + "id": 1332, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2370:4:7", + "src": "2429:4:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2528,33 +2736,33 @@ "visibility": "internal" } ], - "src": "2369:6:7" + "src": "2428:6:7" }, - "scope": 1277, - "src": "2292:157:7", + "scope": 1349, + "src": "2351:175:7", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1278, - "src": "168:2283:7" + "scope": 1350, + "src": "168:2360:7" } ], - "src": "0:2452:7" + "src": "0:2529:7" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", "exportedSymbols": { "Sales": [ - 1277 + 1349 ] }, - "id": 1278, + "id": 1350, "nodeType": "SourceUnit", "nodes": [ { - "id": 1098, + "id": 1158, "literals": [ "solidity", "^", @@ -2567,10 +2775,10 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1099, + "id": 1159, "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2807, + "scope": 1350, + "sourceUnit": 2950, "src": "26:59:7", "symbolAliases": [], "unitAlias": "" @@ -2578,21 +2786,21 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1100, + "id": 1160, "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 2751, + "scope": 1350, + "sourceUnit": 2894, "src": "86:55:7", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1101, + "id": 1161, "nodeType": "ImportDirective", - "scope": 1278, - "sourceUnit": 1097, + "scope": 1350, + "sourceUnit": 1157, "src": "142:24:7", "symbolAliases": [], "unitAlias": "" @@ -2603,57 +2811,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1102, + "id": 1162, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "186:7:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1103, + "id": 1163, "nodeType": "InheritanceSpecifier", "src": "186:7:7" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1277, + "id": 1349, "linearizedBaseContracts": [ - 1277, - 2806 + 1349, + 2949 ], "name": "Sales", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1105, + "id": 1165, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1277, + "scope": 1349, "src": "201:24:7", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1104, + "id": 1164, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "201:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2662,14 +2870,14 @@ }, { "canonicalName": "Sales.Data", - "id": 1112, + "id": 1172, "members": [ { "constant": false, - "id": 1107, + "id": 1167, "name": "_isRegistered", "nodeType": "VariableDeclaration", - "scope": 1112, + "scope": 1172, "src": "254:18:7", "stateVariable": false, "storageLocation": "default", @@ -2678,7 +2886,7 @@ "typeString": "bool" }, "typeName": { - "id": 1106, + "id": 1166, "name": "bool", "nodeType": "ElementaryTypeName", "src": "254:4:7", @@ -2692,10 +2900,10 @@ }, { "constant": false, - "id": 1109, + "id": 1169, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1112, + "scope": 1172, "src": "282:11:7", "stateVariable": false, "storageLocation": "default", @@ -2704,7 +2912,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1108, + "id": 1168, "name": "uint", "nodeType": "ElementaryTypeName", "src": "282:4:7", @@ -2718,10 +2926,10 @@ }, { "constant": false, - "id": 1111, + "id": 1171, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1112, + "scope": 1172, "src": "303:16:7", "stateVariable": false, "storageLocation": "default", @@ -2730,7 +2938,7 @@ "typeString": "string" }, "typeName": { - "id": 1110, + "id": 1170, "name": "string", "nodeType": "ElementaryTypeName", "src": "303:6:7", @@ -2745,68 +2953,68 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 1277, + "scope": 1349, "src": "232:94:7", "visibility": "public" }, { "constant": false, - "id": 1118, + "id": 1178, "name": "_sales", "nodeType": "VariableDeclaration", - "scope": 1277, - "src": "393:60:7", + "scope": 1349, + "src": "392:60:7", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" }, "typeName": { - "id": 1117, + "id": 1177, "keyType": { - "id": 1113, + "id": 1173, "name": "address", "nodeType": "ElementaryTypeName", - "src": "402:7:7", + "src": "401:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "393:45:7", + "src": "392:45:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Sales.Data))" }, "valueType": { - "id": 1116, + "id": 1176, "keyType": { - "id": 1114, + "id": 1174, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "421:7:7", + "src": "420:7:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "412:25:7", + "src": "411:25:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data)" }, "valueType": { "contractScope": null, - "id": 1115, + "id": 1175, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "432:4:7", + "referencedDeclaration": 1172, + "src": "431:4:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data" } } @@ -2818,21 +3026,21 @@ { "anonymous": false, "documentation": null, - "id": 1128, + "id": 1188, "name": "LogCreateSale", "nodeType": "EventDefinition", "parameters": { - "id": 1127, + "id": 1187, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1180, "indexed": false, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "480:14:7", + "scope": 1188, + "src": "479:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2840,10 +3048,10 @@ "typeString": "address" }, "typeName": { - "id": 1119, + "id": 1179, "name": "address", "nodeType": "ElementaryTypeName", - "src": "480:7:7", + "src": "479:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2854,12 +3062,12 @@ }, { "constant": false, - "id": 1122, + "id": 1182, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "496:15:7", + "scope": 1188, + "src": "495:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2867,10 +3075,10 @@ "typeString": "string" }, "typeName": { - "id": 1121, + "id": 1181, "name": "string", "nodeType": "ElementaryTypeName", - "src": "496:6:7", + "src": "495:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2881,12 +3089,12 @@ }, { "constant": false, - "id": 1124, + "id": 1184, "indexed": false, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "513:11:7", + "scope": 1188, + "src": "512:11:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2894,10 +3102,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1123, + "id": 1183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "513:4:7", + "src": "512:4:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2908,12 +3116,12 @@ }, { "constant": false, - "id": 1126, + "id": 1186, "indexed": false, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1128, - "src": "526:16:7", + "scope": 1188, + "src": "525:16:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2921,10 +3129,10 @@ "typeString": "string" }, "typeName": { - "id": 1125, + "id": 1185, "name": "string", "nodeType": "ElementaryTypeName", - "src": "526:6:7", + "src": "525:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2934,28 +3142,28 @@ "visibility": "internal" } ], - "src": "479:64:7" + "src": "478:64:7" }, - "src": "460:84:7" + "src": "459:84:7" }, { "anonymous": false, "documentation": null, - "id": 1134, + "id": 1194, "name": "LogRemoveSale", "nodeType": "EventDefinition", "parameters": { - "id": 1133, + "id": 1193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1130, + "id": 1190, "indexed": false, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "569:14:7", + "scope": 1194, + "src": "568:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2963,10 +3171,10 @@ "typeString": "address" }, "typeName": { - "id": 1129, + "id": 1189, "name": "address", "nodeType": "ElementaryTypeName", - "src": "569:7:7", + "src": "568:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2977,12 +3185,12 @@ }, { "constant": false, - "id": 1132, + "id": 1192, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1134, - "src": "585:15:7", + "scope": 1194, + "src": "584:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2990,10 +3198,10 @@ "typeString": "string" }, "typeName": { - "id": 1131, + "id": 1191, "name": "string", "nodeType": "ElementaryTypeName", - "src": "585:6:7", + "src": "584:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3003,15 +3211,15 @@ "visibility": "internal" } ], - "src": "568:33:7" + "src": "567:33:7" }, - "src": "549:53:7" + "src": "548:53:7" }, { "body": { - "id": 1154, + "id": 1214, "nodeType": "Block", - "src": "636:107:7", + "src": "635:107:7", "statements": [ { "expression": { @@ -3023,7 +3231,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1150, + "id": 1210, "isConstant": false, "isLValue": false, "isPure": false, @@ -3037,7 +3245,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1140, + "id": 1200, "isConstant": false, "isLValue": false, "isPure": false, @@ -3046,18 +3254,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1137, + "id": 1197, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "655:3:7", + "referencedDeclaration": 3344, + "src": "654:3:7", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1138, + "id": 1198, "isConstant": false, "isLValue": false, "isPure": false, @@ -3065,7 +3273,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "655:10:7", + "src": "654:10:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3075,32 +3283,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1139, + "id": 1199, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "669:5:7", + "referencedDeclaration": 2897, + "src": "668:5:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "655:19:7", + "src": "654:19:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1141, + "id": 1201, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "654:21:7", + "src": "653:21:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3117,7 +3325,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1148, + "id": 1208, "isConstant": false, "isLValue": false, "isPure": false, @@ -3126,18 +3334,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1142, + "id": 1202, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "680:3:7", + "referencedDeclaration": 3344, + "src": "679:3:7", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1143, + "id": 1203, "isConstant": false, "isLValue": false, "isPure": false, @@ -3145,7 +3353,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "680:10:7", + "src": "679:10:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3159,14 +3367,14 @@ { "argumentTypes": null, "hexValue": "53746f7265", - "id": 1146, + "id": 1206, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "715:7:7", + "src": "714:7:7", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_f9742a6ab27efbeed38a3a36aac403fe0810a4cdb9e8328d15bdcd1c87e76672", @@ -3184,32 +3392,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1204, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "694:8:7", + "referencedDeclaration": 1165, + "src": "693:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1145, + "id": 1205, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "694:20:7", + "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": 1147, + "id": 1207, "isConstant": false, "isLValue": false, "isPure": false, @@ -3217,33 +3425,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "694:29:7", + "src": "693:29:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "680:43:7", + "src": "679:43:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1149, + "id": 1209, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "679:45:7", + "src": "678:45:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "654:70:7", + "src": "653:70:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3257,21 +3465,21 @@ "typeString": "bool" } ], - "id": 1136, + "id": 1196, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "646:7:7", + "referencedDeclaration": 3347, + "src": "645:7:7", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1151, + "id": 1211, "isConstant": false, "isLValue": false, "isPure": false, @@ -3279,58 +3487,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "646:79:7", + "src": "645:79:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1152, + "id": 1212, "nodeType": "ExpressionStatement", - "src": "646:79:7" + "src": "645:79:7" }, { - "id": 1153, + "id": 1213, "nodeType": "PlaceholderStatement", - "src": "735:1:7" + "src": "734:1:7" } ] }, "documentation": null, - "id": 1155, + "id": 1215, "name": "onlyOwnerOrStore", "nodeType": "ModifierDefinition", "parameters": { - "id": 1135, + "id": 1195, "nodeType": "ParameterList", "parameters": [], - "src": "633:2:7" + "src": "632:2:7" }, - "src": "608:135:7", + "src": "607:135:7", "visibility": "internal" }, { "body": { - "id": 1169, + "id": 1229, "nodeType": "Block", - "src": "788:65:7", + "src": "787:65:7", "statements": [ { "expression": { "argumentTypes": null, - "id": 1163, + "id": 1223, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1160, + "id": 1220, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "798:5:7", + "referencedDeclaration": 2897, + "src": "797:5:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3342,18 +3550,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1161, + "id": 1221, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "806:3:7", + "referencedDeclaration": 3344, + "src": "805:3:7", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1162, + "id": 1222, "isConstant": false, "isLValue": false, "isPure": false, @@ -3361,40 +3569,40 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "806:10:7", + "src": "805:10:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "798:18:7", + "src": "797:18:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1164, + "id": 1224, "nodeType": "ExpressionStatement", - "src": "798:18:7" + "src": "797:18:7" }, { "expression": { "argumentTypes": null, - "id": 1167, + "id": 1227, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1165, + "id": 1225, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "826:8:7", + "referencedDeclaration": 1165, + "src": "825:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3402,31 +3610,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1166, + "id": 1226, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1157, - "src": "837:9:7", + "referencedDeclaration": 1217, + "src": "836:9:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "src": "826:20:7", + "src": "825:20:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1168, + "id": 1228, "nodeType": "ExpressionStatement", - "src": "826:20:7" + "src": "825:20:7" } ] }, "documentation": null, - "id": 1170, + "id": 1230, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -3434,31 +3642,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1158, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1157, + "id": 1217, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1170, - "src": "761:18:7", + "scope": 1230, + "src": "760:18:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1156, + "id": 1216, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "761:8:7", + "referencedDeclaration": 1156, + "src": "760:8:7", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3466,31 +3674,31 @@ "visibility": "internal" } ], - "src": "760:20:7" + "src": "759:20:7" }, "payable": false, "returnParameters": { - "id": 1159, + "id": 1219, "nodeType": "ParameterList", "parameters": [], - "src": "788:0:7" + "src": "787:0:7" }, - "scope": 1277, - "src": "749:104:7", + "scope": 1349, + "src": "748:104:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1204, + "id": 1267, "nodeType": "Block", - "src": "1406:149:7", + "src": "1419:167:7", "statements": [ { "expression": { "argumentTypes": null, - "id": 1195, + "id": 1258, "isConstant": false, "isLValue": false, "isPure": false, @@ -3501,26 +3709,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1183, + "id": 1243, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1416:6:7", + "referencedDeclaration": 1178, + "src": "1429:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1188, + "id": 1251, "indexExpression": { "argumentTypes": null, - "id": 1184, + "id": 1244, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1423:6:7", + "referencedDeclaration": 1232, + "src": "1436:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3531,49 +3739,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1416:14:7", + "src": "1429:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1189, + "id": 1252, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1186, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1441:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1185, + "id": 1245, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1431:9:7", + "referencedDeclaration": 3338, + "src": "1444:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1187, + "id": 1250, "isConstant": false, "isLValue": false, "isPure": false, @@ -3581,7 +3841,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1431:19:7", + "src": "1444:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3592,9 +3852,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1416:35:7", + "src": "1429:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, @@ -3606,14 +3866,14 @@ { "argumentTypes": null, "hexValue": "74727565", - "id": 1191, + "id": 1254, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1459:4:7", + "src": "1490:4:7", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3623,12 +3883,12 @@ }, { "argumentTypes": null, - "id": 1192, + "id": 1255, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1465:6:7", + "referencedDeclaration": 1236, + "src": "1496:6:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3636,12 +3896,12 @@ }, { "argumentTypes": null, - "id": 1193, + "id": 1256, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1473:9:7", + "referencedDeclaration": 1238, + "src": "1504:9:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3663,18 +3923,18 @@ "typeString": "string memory" } ], - "id": 1190, + "id": 1253, "name": "Data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1112, - "src": "1454:4:7", + "referencedDeclaration": 1172, + "src": "1485:4:7", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$1112_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Data_$1172_storage_ptr_$", "typeString": "type(struct Sales.Data storage pointer)" } }, - "id": 1194, + "id": 1257, "isConstant": false, "isLValue": false, "isPure": false, @@ -3682,21 +3942,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1454:29:7", + "src": "1485:29:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_memory", + "typeIdentifier": "t_struct$_Data_$1172_memory", "typeString": "struct Sales.Data memory" } }, - "src": "1416:67:7", + "src": "1429:85:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, - "id": 1196, + "id": 1259, "nodeType": "ExpressionStatement", - "src": "1416:67:7" + "src": "1429:85:7" }, { "eventCall": { @@ -3704,12 +3964,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1198, + "id": 1261, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "1512:6:7", + "referencedDeclaration": 1232, + "src": "1543:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3717,12 +3977,12 @@ }, { "argumentTypes": null, - "id": 1199, + "id": 1262, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1174, - "src": "1520:8:7", + "referencedDeclaration": 1234, + "src": "1551:8:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3730,12 +3990,12 @@ }, { "argumentTypes": null, - "id": 1200, + "id": 1263, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1176, - "src": "1530:6:7", + "referencedDeclaration": 1236, + "src": "1561:6:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3743,12 +4003,12 @@ }, { "argumentTypes": null, - "id": 1201, + "id": 1264, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1178, - "src": "1538:9:7", + "referencedDeclaration": 1238, + "src": "1569:9:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3774,18 +4034,18 @@ "typeString": "string memory" } ], - "id": 1197, + "id": 1260, "name": "LogCreateSale", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1128, - "src": "1498:13:7", + "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": 1202, + "id": 1265, "isConstant": false, "isLValue": false, "isPure": false, @@ -3793,57 +4053,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1498:50:7", + "src": "1529:50:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1203, + "id": 1266, "nodeType": "EmitStatement", - "src": "1493:55:7" + "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": 1205, + "id": 1268, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1181, + "id": 1241, "modifierName": { "argumentTypes": null, - "id": 1180, + "id": 1240, "name": "onlyOwnerOrStore", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1389:16:7", + "referencedDeclaration": 1215, + "src": "1397:16:7", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1389:16:7" + "src": "1397:16:7" } ], "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 1179, + "id": 1239, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1172, + "id": 1232, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1310:14:7", + "scope": 1268, + "src": "1309:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3851,10 +4111,10 @@ "typeString": "address" }, "typeName": { - "id": 1171, + "id": 1231, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1310:7:7", + "src": "1309:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3865,11 +4125,11 @@ }, { "constant": false, - "id": 1174, + "id": 1234, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1326:15:7", + "scope": 1268, + "src": "1325:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3877,10 +4137,10 @@ "typeString": "string" }, "typeName": { - "id": 1173, + "id": 1233, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1326:6:7", + "src": "1325:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3891,11 +4151,11 @@ }, { "constant": false, - "id": 1176, + "id": 1236, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1343:11:7", + "scope": 1268, + "src": "1342:11:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3903,10 +4163,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1175, + "id": 1235, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1343:4:7", + "src": "1342:4:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3917,11 +4177,11 @@ }, { "constant": false, - "id": 1178, + "id": 1238, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "1356:16:7", + "scope": 1268, + "src": "1355:16:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3929,10 +4189,10 @@ "typeString": "string" }, "typeName": { - "id": 1177, + "id": 1237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1356:6:7", + "src": "1355:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3942,31 +4202,31 @@ "visibility": "internal" } ], - "src": "1309:64:7" + "src": "1308:64:7" }, "payable": false, "returnParameters": { - "id": 1182, + "id": 1242, "nodeType": "ParameterList", "parameters": [], - "src": "1406:0:7" + "src": "1419:0:7" }, - "scope": 1277, - "src": "1294:261:7", + "scope": 1349, + "src": "1293:293:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1228, + "id": 1294, "nodeType": "Block", - "src": "1766:105:7", + "src": "1789:123:7", "statements": [ { "expression": { "argumentTypes": null, - "id": 1221, + "id": 1287, "isConstant": false, "isLValue": false, "isPure": false, @@ -3974,33 +4234,33 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "1776:42:7", + "src": "1799:60:7", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1214, + "id": 1277, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "1783:6:7", + "referencedDeclaration": 1178, + "src": "1806:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1216, + "id": 1279, "indexExpression": { "argumentTypes": null, - "id": 1215, + "id": 1278, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1790:6:7", + "referencedDeclaration": 1270, + "src": "1813:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4011,49 +4271,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1783:14:7", + "src": "1806:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1220, + "id": 1286, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1218, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1808:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1217, + "id": 1280, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1798:9:7", + "referencedDeclaration": 3338, + "src": "1821:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1219, + "id": 1285, "isConstant": false, "isLValue": false, "isPure": false, @@ -4061,7 +4373,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1798:19:7", + "src": "1821:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4072,9 +4384,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1783:35:7", + "src": "1806:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, @@ -4083,9 +4395,9 @@ "typeString": "tuple()" } }, - "id": 1222, + "id": 1288, "nodeType": "ExpressionStatement", - "src": "1776:42:7" + "src": "1799:60:7" }, { "eventCall": { @@ -4093,12 +4405,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1224, + "id": 1290, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1207, - "src": "1847:6:7", + "referencedDeclaration": 1270, + "src": "1888:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4106,12 +4418,12 @@ }, { "argumentTypes": null, - "id": 1225, + "id": 1291, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "1855:8:7", + "referencedDeclaration": 1272, + "src": "1896:8:7", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4129,18 +4441,18 @@ "typeString": "string memory" } ], - "id": 1223, + "id": 1289, "name": "LogRemoveSale", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1134, - "src": "1833:13:7", + "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": 1226, + "id": 1292, "isConstant": false, "isLValue": false, "isPure": false, @@ -4148,57 +4460,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1833:31:7", + "src": "1874:31:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1227, + "id": 1293, "nodeType": "EmitStatement", - "src": "1828:36:7" + "src": "1869:36:7" } ] }, "documentation": "@dev Remove the sale from the registry\nOnly the Store contract or the owner can remove a sale", - "id": 1229, + "id": 1295, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1212, + "id": 1275, "modifierName": { "argumentTypes": null, - "id": 1211, + "id": 1274, "name": "onlyOwnerOrStore", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1155, - "src": "1749:16:7", + "referencedDeclaration": 1215, + "src": "1772:16:7", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1749:16:7" + "src": "1772:16:7" } ], "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 1210, + "id": 1273, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1207, + "id": 1270, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1701:14:7", + "scope": 1295, + "src": "1732:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4206,10 +4518,10 @@ "typeString": "address" }, "typeName": { - "id": 1206, + "id": 1269, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1701:7:7", + "src": "1732:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4220,11 +4532,11 @@ }, { "constant": false, - "id": 1209, + "id": 1272, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1229, - "src": "1717:15:7", + "scope": 1295, + "src": "1748:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4232,10 +4544,10 @@ "typeString": "string" }, "typeName": { - "id": 1208, + "id": 1271, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1717:6:7", + "src": "1748:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4245,54 +4557,54 @@ "visibility": "internal" } ], - "src": "1700:33:7" + "src": "1731:33:7" }, "payable": false, "returnParameters": { - "id": 1213, + "id": 1276, "nodeType": "ParameterList", "parameters": [], - "src": "1766:0:7" + "src": "1789:0:7" }, - "scope": 1277, - "src": "1685:186:7", + "scope": 1349, + "src": "1716:196:7", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1256, + "id": 1325, "nodeType": "Block", - "src": "2131:155:7", + "src": "2172:173:7", "statements": [ { "assignments": [ - 1241 + 1307 ], "declarations": [ { "constant": false, - "id": 1241, + "id": 1307, "name": "_data", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2141:18:7", + "scope": 1326, + "src": "2182:18:7", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data" }, "typeName": { "contractScope": null, - "id": 1240, + "id": 1306, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1112, - "src": "2141:4:7", + "referencedDeclaration": 1172, + "src": "2182:4:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data" } }, @@ -4300,33 +4612,33 @@ "visibility": "internal" } ], - "id": 1249, + "id": 1318, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1242, + "id": 1308, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2162:6:7", + "referencedDeclaration": 1178, + "src": "2203:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1244, + "id": 1310, "indexExpression": { "argumentTypes": null, - "id": 1243, + "id": 1309, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1231, - "src": "2169:6:7", + "referencedDeclaration": 1297, + "src": "2210:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4337,49 +4649,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2162:14:7", + "src": "2203:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1248, + "id": 1317, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1246, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1233, - "src": "2187:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1245, + "id": 1311, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2177:9:7", + "referencedDeclaration": 3338, + "src": "2218:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1247, + "id": 1316, "isConstant": false, "isLValue": false, "isPure": false, @@ -4387,7 +4751,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2177:19:7", + "src": "2218:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4398,14 +4762,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2162:35:7", + "src": "2203:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "2141:56:7" + "src": "2182:74:7" }, { "expression": { @@ -4415,26 +4779,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1250, + "id": 1319, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2228:5:7", + "referencedDeclaration": 1307, + "src": "2287:5:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data storage pointer" } }, - "id": 1251, + "id": 1320, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_price", "nodeType": "MemberAccess", - "referencedDeclaration": 1109, - "src": "2228:12:7", + "referencedDeclaration": 1169, + "src": "2287:12:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4444,54 +4808,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1252, + "id": 1321, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1241, - "src": "2254:5:7", + "referencedDeclaration": 1307, + "src": "2313:5:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage_ptr", + "typeIdentifier": "t_struct$_Data_$1172_storage_ptr", "typeString": "struct Sales.Data storage pointer" } }, - "id": 1253, + "id": 1322, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 1111, - "src": "2254:15:7", + "referencedDeclaration": 1171, + "src": "2313:15:7", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } } ], - "id": 1254, + "id": 1323, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "2214:65:7", + "src": "2273:65:7", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_string_storage_$", "typeString": "tuple(uint256,string storage ref)" } }, - "functionReturnParameters": 1239, - "id": 1255, + "functionReturnParameters": 1305, + "id": 1324, "nodeType": "Return", - "src": "2207:72:7" + "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": 1257, + "id": 1326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4499,16 +4863,16 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 1234, + "id": 1300, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1231, + "id": 1297, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2063:14:7", + "scope": 1326, + "src": "2104:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4516,10 +4880,10 @@ "typeString": "address" }, "typeName": { - "id": 1230, + "id": 1296, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2063:7:7", + "src": "2104:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4530,11 +4894,11 @@ }, { "constant": false, - "id": 1233, + "id": 1299, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2079:15:7", + "scope": 1326, + "src": "2120:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4542,10 +4906,10 @@ "typeString": "string" }, "typeName": { - "id": 1232, + "id": 1298, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2079:6:7", + "src": "2120:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4555,20 +4919,20 @@ "visibility": "internal" } ], - "src": "2062:33:7" + "src": "2103:33:7" }, "payable": false, "returnParameters": { - "id": 1239, + "id": 1305, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1236, + "id": 1302, "name": "", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2117:4:7", + "scope": 1326, + "src": "2158:4:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4576,10 +4940,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1235, + "id": 1301, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2117:4:7", + "src": "2158:4:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4590,11 +4954,11 @@ }, { "constant": false, - "id": 1238, + "id": 1304, "name": "", "nodeType": "VariableDeclaration", - "scope": 1257, - "src": "2123:6:7", + "scope": 1326, + "src": "2164:6:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4602,10 +4966,10 @@ "typeString": "string" }, "typeName": { - "id": 1237, + "id": 1303, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2123:6:7", + "src": "2164:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4615,19 +4979,19 @@ "visibility": "internal" } ], - "src": "2116:14:7" + "src": "2157:14:7" }, - "scope": 1277, - "src": "2050:236:7", + "scope": 1349, + "src": "2091:254:7", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1275, + "id": 1347, "nodeType": "Block", - "src": "2376:73:7", + "src": "2435:91:7", "statements": [ { "expression": { @@ -4638,26 +5002,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1266, + "id": 1335, "name": "_sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1118, - "src": "2393:6:7", + "referencedDeclaration": 1178, + "src": "2452:6:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$_$", + "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": 1268, + "id": 1337, "indexExpression": { "argumentTypes": null, - "id": 1267, + "id": 1336, "name": "_buyer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1259, - "src": "2400:6:7", + "referencedDeclaration": 1328, + "src": "2459:6:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4668,49 +5032,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2393:14:7", + "src": "2452:14:7", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1112_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$1172_storage_$", "typeString": "mapping(bytes32 => struct Sales.Data storage ref)" } }, - "id": 1272, + "id": 1344, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1270, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "2418:8:7", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1269, + "id": 1338, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2408:9:7", + "referencedDeclaration": 3338, + "src": "2467:9:7", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1271, + "id": 1343, "isConstant": false, "isLValue": false, "isPure": false, @@ -4718,7 +5134,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2408:19:7", + "src": "2467:37:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4729,35 +5145,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2393:35:7", + "src": "2452:53:7", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$1112_storage", + "typeIdentifier": "t_struct$_Data_$1172_storage", "typeString": "struct Sales.Data storage ref" } }, - "id": 1273, + "id": 1345, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_isRegistered", "nodeType": "MemberAccess", - "referencedDeclaration": 1107, - "src": "2393:49:7", + "referencedDeclaration": 1167, + "src": "2452:67:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1265, - "id": 1274, + "functionReturnParameters": 1334, + "id": 1346, "nodeType": "Return", - "src": "2386:56:7" + "src": "2445:74:7" } ] }, "documentation": null, - "id": 1276, + "id": 1348, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4765,16 +5181,16 @@ "name": "userBoughtVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 1262, + "id": 1331, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1259, + "id": 1328, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2317:14:7", + "scope": 1348, + "src": "2376:14:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4782,10 +5198,10 @@ "typeString": "address" }, "typeName": { - "id": 1258, + "id": 1327, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2317:7:7", + "src": "2376:7:7", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4796,11 +5212,11 @@ }, { "constant": false, - "id": 1261, + "id": 1330, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2333:15:7", + "scope": 1348, + "src": "2392:15:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4808,10 +5224,10 @@ "typeString": "string" }, "typeName": { - "id": 1260, + "id": 1329, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2333:6:7", + "src": "2392:6:7", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4821,20 +5237,20 @@ "visibility": "internal" } ], - "src": "2316:33:7" + "src": "2375:33:7" }, "payable": false, "returnParameters": { - "id": 1265, + "id": 1334, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1264, + "id": 1333, "name": "", "nodeType": "VariableDeclaration", - "scope": 1276, - "src": "2370:4:7", + "scope": 1348, + "src": "2429:4:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4842,10 +5258,10 @@ "typeString": "bool" }, "typeName": { - "id": 1263, + "id": 1332, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2370:4:7", + "src": "2429:4:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4855,20 +5271,20 @@ "visibility": "internal" } ], - "src": "2369:6:7" + "src": "2428:6:7" }, - "scope": 1277, - "src": "2292:157:7", + "scope": 1349, + "src": "2351:175:7", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1278, - "src": "168:2283:7" + "scope": 1350, + "src": "168:2360:7" } ], - "src": "0:2452:7" + "src": "0:2529:7" }, "compiler": { "name": "solc", @@ -4876,5 +5292,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.676Z" + "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 1b18e45..ec33c3f 100644 --- a/build/contracts/SendEther.json +++ b/build/contracts/SendEther.json @@ -57,24 +57,24 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50610272806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a723058204fc2e97784d8979adaf76927420bff954e5a201667fd259b4c9d7b615c2500f70029", - "deployedBytecode": "0x608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630988664914610053575b34801561004d57600080fd5b50600080fd5b6100cd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506100e7565b604051808215151515815260200191505060405180910390f35b60008273ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012f573d6000803e3d6000fd5b507fa8da2a10447235381d4a8921c260b89c83b471b8aff2127abc1d434348812e7133843485604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156101ff5780820151818401526020810190506101e4565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a160019050929150505600a165627a7a723058204fc2e97784d8979adaf76927420bff954e5a201667fd259b4c9d7b615c2500f70029", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/SendEther.sol", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/SendEther.sol", "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/SendEther.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/SendEther.sol", "exportedSymbols": { "SendEther": [ - 1325 + 1397 ] }, - "id": 1326, + "id": 1398, "nodeType": "SourceUnit", "nodes": [ { - "id": 1279, + "id": 1351, "literals": [ "solidity", "^", @@ -90,9 +90,9 @@ "contractKind": "contract", "documentation": "@title SendEther\n@dev A Contract that wraps the native transfer function and logs an event.", "fullyImplemented": true, - "id": 1325, + "id": 1397, "linearizedBaseContracts": [ - 1325 + 1397 ], "name": "SendEther", "nodeType": "ContractDefinition", @@ -100,20 +100,20 @@ { "anonymous": false, "documentation": null, - "id": 1289, + "id": 1361, "name": "LogSendEther", "nodeType": "EventDefinition", "parameters": { - "id": 1288, + "id": 1360, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1281, + "id": 1353, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "187:12:8", "stateVariable": false, "storageLocation": "default", @@ -122,7 +122,7 @@ "typeString": "address" }, "typeName": { - "id": 1280, + "id": 1352, "name": "address", "nodeType": "ElementaryTypeName", "src": "187:7:8", @@ -136,11 +136,11 @@ }, { "constant": false, - "id": 1283, + "id": 1355, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "209:10:8", "stateVariable": false, "storageLocation": "default", @@ -149,7 +149,7 @@ "typeString": "address" }, "typeName": { - "id": 1282, + "id": 1354, "name": "address", "nodeType": "ElementaryTypeName", "src": "209:7:8", @@ -163,11 +163,11 @@ }, { "constant": false, - "id": 1285, + "id": 1357, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "229:10:8", "stateVariable": false, "storageLocation": "default", @@ -176,7 +176,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1284, + "id": 1356, "name": "uint", "nodeType": "ElementaryTypeName", "src": "229:4:8", @@ -190,11 +190,11 @@ }, { "constant": false, - "id": 1287, + "id": 1359, "indexed": false, "name": "description", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "249:18:8", "stateVariable": false, "storageLocation": "default", @@ -203,7 +203,7 @@ "typeString": "string" }, "typeName": { - "id": 1286, + "id": 1358, "name": "string", "nodeType": "ElementaryTypeName", "src": "249:6:8", @@ -222,7 +222,7 @@ }, { "body": { - "id": 1295, + "id": 1367, "nodeType": "Block", "src": "368:25:8", "statements": [ @@ -232,21 +232,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1292, + "id": 1364, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3206, - 3207 + 3349, + 3350 ], - "referencedDeclaration": 3206, + "referencedDeclaration": 3349, "src": "378:6:8", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1293, + "id": 1365, "isConstant": false, "isLValue": false, "isPure": false, @@ -260,14 +260,14 @@ "typeString": "tuple()" } }, - "id": 1294, + "id": 1366, "nodeType": "ExpressionStatement", "src": "378:8:8" } ] }, "documentation": null, - "id": 1296, + "id": 1368, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -275,19 +275,19 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1290, + "id": 1362, "nodeType": "ParameterList", "parameters": [], "src": "358:2:8" }, "payable": false, "returnParameters": { - "id": 1291, + "id": 1363, "nodeType": "ParameterList", "parameters": [], "src": "368:0:8" }, - "scope": 1325, + "scope": 1397, "src": "349:44:8", "stateMutability": "nonpayable", "superFunction": null, @@ -295,7 +295,7 @@ }, { "body": { - "id": 1323, + "id": 1395, "nodeType": "Block", "src": "734:130:8", "statements": [ @@ -307,18 +307,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1308, + "id": 1380, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "757:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1309, + "id": 1381, "isConstant": false, "isLValue": false, "isPure": false, @@ -342,18 +342,18 @@ ], "expression": { "argumentTypes": null, - "id": 1305, + "id": 1377, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, + "referencedDeclaration": 1370, "src": "744:3:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1307, + "id": 1379, "isConstant": false, "isLValue": false, "isPure": false, @@ -367,7 +367,7 @@ "typeString": "function (uint256)" } }, - "id": 1310, + "id": 1382, "isConstant": false, "isLValue": false, "isPure": false, @@ -381,7 +381,7 @@ "typeString": "tuple()" } }, - "id": 1311, + "id": 1383, "nodeType": "ExpressionStatement", "src": "744:23:8" }, @@ -393,18 +393,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1313, + "id": 1385, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "795:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1314, + "id": 1386, "isConstant": false, "isLValue": false, "isPure": false, @@ -420,11 +420,11 @@ }, { "argumentTypes": null, - "id": 1315, + "id": 1387, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, + "referencedDeclaration": 1370, "src": "807:3:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -435,18 +435,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1316, + "id": 1388, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "812:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1317, + "id": 1389, "isConstant": false, "isLValue": false, "isPure": false, @@ -462,11 +462,11 @@ }, { "argumentTypes": null, - "id": 1318, + "id": 1390, "name": "_description", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1300, + "referencedDeclaration": 1372, "src": "823:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -493,18 +493,18 @@ "typeString": "string memory" } ], - "id": 1312, + "id": 1384, "name": "LogSendEther", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1289, + "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": 1319, + "id": 1391, "isConstant": false, "isLValue": false, "isPure": false, @@ -518,7 +518,7 @@ "typeString": "tuple()" } }, - "id": 1320, + "id": 1392, "nodeType": "EmitStatement", "src": "777:59:8" }, @@ -526,7 +526,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1321, + "id": 1393, "isConstant": false, "isLValue": false, "isPure": true, @@ -541,15 +541,15 @@ }, "value": "true" }, - "functionReturnParameters": 1304, - "id": 1322, + "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": 1324, + "id": 1396, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -557,15 +557,15 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1301, + "id": 1373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1370, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1324, + "scope": 1396, "src": "670:11:8", "stateVariable": false, "storageLocation": "default", @@ -574,7 +574,7 @@ "typeString": "address" }, "typeName": { - "id": 1297, + "id": 1369, "name": "address", "nodeType": "ElementaryTypeName", "src": "670:7:8", @@ -588,10 +588,10 @@ }, { "constant": false, - "id": 1300, + "id": 1372, "name": "_description", "nodeType": "VariableDeclaration", - "scope": 1324, + "scope": 1396, "src": "683:19:8", "stateVariable": false, "storageLocation": "default", @@ -600,7 +600,7 @@ "typeString": "string" }, "typeName": { - "id": 1299, + "id": 1371, "name": "string", "nodeType": "ElementaryTypeName", "src": "683:6:8", @@ -617,15 +617,15 @@ }, "payable": true, "returnParameters": { - "id": 1304, + "id": 1376, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1303, + "id": 1375, "name": "", "nodeType": "VariableDeclaration", - "scope": 1324, + "scope": 1396, "src": "727:4:8", "stateVariable": false, "storageLocation": "default", @@ -634,7 +634,7 @@ "typeString": "bool" }, "typeName": { - "id": 1302, + "id": 1374, "name": "bool", "nodeType": "ElementaryTypeName", "src": "727:4:8", @@ -649,31 +649,31 @@ ], "src": "726:6:8" }, - "scope": 1325, + "scope": 1397, "src": "652:212:8", "stateMutability": "payable", "superFunction": null, "visibility": "public" } ], - "scope": 1326, + "scope": 1398, "src": "133:734:8" } ], "src": "0:868:8" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/SendEther.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/SendEther.sol", "exportedSymbols": { "SendEther": [ - 1325 + 1397 ] }, - "id": 1326, + "id": 1398, "nodeType": "SourceUnit", "nodes": [ { - "id": 1279, + "id": 1351, "literals": [ "solidity", "^", @@ -689,9 +689,9 @@ "contractKind": "contract", "documentation": "@title SendEther\n@dev A Contract that wraps the native transfer function and logs an event.", "fullyImplemented": true, - "id": 1325, + "id": 1397, "linearizedBaseContracts": [ - 1325 + 1397 ], "name": "SendEther", "nodeType": "ContractDefinition", @@ -699,20 +699,20 @@ { "anonymous": false, "documentation": null, - "id": 1289, + "id": 1361, "name": "LogSendEther", "nodeType": "EventDefinition", "parameters": { - "id": 1288, + "id": 1360, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1281, + "id": 1353, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "187:12:8", "stateVariable": false, "storageLocation": "default", @@ -721,7 +721,7 @@ "typeString": "address" }, "typeName": { - "id": 1280, + "id": 1352, "name": "address", "nodeType": "ElementaryTypeName", "src": "187:7:8", @@ -735,11 +735,11 @@ }, { "constant": false, - "id": 1283, + "id": 1355, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "209:10:8", "stateVariable": false, "storageLocation": "default", @@ -748,7 +748,7 @@ "typeString": "address" }, "typeName": { - "id": 1282, + "id": 1354, "name": "address", "nodeType": "ElementaryTypeName", "src": "209:7:8", @@ -762,11 +762,11 @@ }, { "constant": false, - "id": 1285, + "id": 1357, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "229:10:8", "stateVariable": false, "storageLocation": "default", @@ -775,7 +775,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1284, + "id": 1356, "name": "uint", "nodeType": "ElementaryTypeName", "src": "229:4:8", @@ -789,11 +789,11 @@ }, { "constant": false, - "id": 1287, + "id": 1359, "indexed": false, "name": "description", "nodeType": "VariableDeclaration", - "scope": 1289, + "scope": 1361, "src": "249:18:8", "stateVariable": false, "storageLocation": "default", @@ -802,7 +802,7 @@ "typeString": "string" }, "typeName": { - "id": 1286, + "id": 1358, "name": "string", "nodeType": "ElementaryTypeName", "src": "249:6:8", @@ -821,7 +821,7 @@ }, { "body": { - "id": 1295, + "id": 1367, "nodeType": "Block", "src": "368:25:8", "statements": [ @@ -831,21 +831,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1292, + "id": 1364, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3206, - 3207 + 3349, + 3350 ], - "referencedDeclaration": 3206, + "referencedDeclaration": 3349, "src": "378:6:8", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1293, + "id": 1365, "isConstant": false, "isLValue": false, "isPure": false, @@ -859,14 +859,14 @@ "typeString": "tuple()" } }, - "id": 1294, + "id": 1366, "nodeType": "ExpressionStatement", "src": "378:8:8" } ] }, "documentation": null, - "id": 1296, + "id": 1368, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -874,19 +874,19 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1290, + "id": 1362, "nodeType": "ParameterList", "parameters": [], "src": "358:2:8" }, "payable": false, "returnParameters": { - "id": 1291, + "id": 1363, "nodeType": "ParameterList", "parameters": [], "src": "368:0:8" }, - "scope": 1325, + "scope": 1397, "src": "349:44:8", "stateMutability": "nonpayable", "superFunction": null, @@ -894,7 +894,7 @@ }, { "body": { - "id": 1323, + "id": 1395, "nodeType": "Block", "src": "734:130:8", "statements": [ @@ -906,18 +906,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1308, + "id": 1380, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "757:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1309, + "id": 1381, "isConstant": false, "isLValue": false, "isPure": false, @@ -941,18 +941,18 @@ ], "expression": { "argumentTypes": null, - "id": 1305, + "id": 1377, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, + "referencedDeclaration": 1370, "src": "744:3:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1307, + "id": 1379, "isConstant": false, "isLValue": false, "isPure": false, @@ -966,7 +966,7 @@ "typeString": "function (uint256)" } }, - "id": 1310, + "id": 1382, "isConstant": false, "isLValue": false, "isPure": false, @@ -980,7 +980,7 @@ "typeString": "tuple()" } }, - "id": 1311, + "id": 1383, "nodeType": "ExpressionStatement", "src": "744:23:8" }, @@ -992,18 +992,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1313, + "id": 1385, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "795:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1314, + "id": 1386, "isConstant": false, "isLValue": false, "isPure": false, @@ -1019,11 +1019,11 @@ }, { "argumentTypes": null, - "id": 1315, + "id": 1387, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1298, + "referencedDeclaration": 1370, "src": "807:3:8", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1034,18 +1034,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1316, + "id": 1388, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "812:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1317, + "id": 1389, "isConstant": false, "isLValue": false, "isPure": false, @@ -1061,11 +1061,11 @@ }, { "argumentTypes": null, - "id": 1318, + "id": 1390, "name": "_description", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1300, + "referencedDeclaration": 1372, "src": "823:12:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1092,18 +1092,18 @@ "typeString": "string memory" } ], - "id": 1312, + "id": 1384, "name": "LogSendEther", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1289, + "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": 1319, + "id": 1391, "isConstant": false, "isLValue": false, "isPure": false, @@ -1117,7 +1117,7 @@ "typeString": "tuple()" } }, - "id": 1320, + "id": 1392, "nodeType": "EmitStatement", "src": "777:59:8" }, @@ -1125,7 +1125,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1321, + "id": 1393, "isConstant": false, "isLValue": false, "isPure": true, @@ -1140,15 +1140,15 @@ }, "value": "true" }, - "functionReturnParameters": 1304, - "id": 1322, + "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": 1324, + "id": 1396, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1156,15 +1156,15 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1301, + "id": 1373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1370, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 1324, + "scope": 1396, "src": "670:11:8", "stateVariable": false, "storageLocation": "default", @@ -1173,7 +1173,7 @@ "typeString": "address" }, "typeName": { - "id": 1297, + "id": 1369, "name": "address", "nodeType": "ElementaryTypeName", "src": "670:7:8", @@ -1187,10 +1187,10 @@ }, { "constant": false, - "id": 1300, + "id": 1372, "name": "_description", "nodeType": "VariableDeclaration", - "scope": 1324, + "scope": 1396, "src": "683:19:8", "stateVariable": false, "storageLocation": "default", @@ -1199,7 +1199,7 @@ "typeString": "string" }, "typeName": { - "id": 1299, + "id": 1371, "name": "string", "nodeType": "ElementaryTypeName", "src": "683:6:8", @@ -1216,15 +1216,15 @@ }, "payable": true, "returnParameters": { - "id": 1304, + "id": 1376, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1303, + "id": 1375, "name": "", "nodeType": "VariableDeclaration", - "scope": 1324, + "scope": 1396, "src": "727:4:8", "stateVariable": false, "storageLocation": "default", @@ -1233,7 +1233,7 @@ "typeString": "bool" }, "typeName": { - "id": 1302, + "id": 1374, "name": "bool", "nodeType": "ElementaryTypeName", "src": "727:4:8", @@ -1248,14 +1248,14 @@ ], "src": "726:6:8" }, - "scope": 1325, + "scope": 1397, "src": "652:212:8", "stateMutability": "payable", "superFunction": null, "visibility": "public" } ], - "scope": 1326, + "scope": 1398, "src": "133:734:8" } ], @@ -1267,5 +1267,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.677Z" + "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 caca7cc..b121e50 100644 --- a/build/contracts/StandardToken.json +++ b/build/contracts/StandardToken.json @@ -231,14 +231,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", "exportedSymbols": { "StandardToken": [ - 3186 + 3329 ] }, - "id": 3187, + "id": 3330, "nodeType": "SourceUnit", "nodes": [ { - "id": 2957, + "id": 3100, "literals": [ "solidity", "^", @@ -251,10 +251,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", "file": "./BasicToken.sol", - "id": 2958, + "id": 3101, "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2884, + "scope": 3330, + "sourceUnit": 3027, "src": "27:26:20", "symbolAliases": [], "unitAlias": "" @@ -262,10 +262,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", "file": "./ERC20.sol", - "id": 2959, + "id": 3102, "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2927, + "scope": 3330, + "sourceUnit": 3070, "src": "54:21:20", "symbolAliases": [], "unitAlias": "" @@ -276,17 +276,17 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2960, + "id": 3103, "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2926, + "referencedDeclaration": 3069, "src": "371:5:20", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$2926", + "typeIdentifier": "t_contract$_ERC20_$3069", "typeString": "contract ERC20" } }, - "id": 2961, + "id": 3104, "nodeType": "InheritanceSpecifier", "src": "371:5:20" }, @@ -294,45 +294,45 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2962, + "id": 3105, "name": "BasicToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2883, + "referencedDeclaration": 3026, "src": "378:10:20", "typeDescriptions": { - "typeIdentifier": "t_contract$_BasicToken_$2883", + "typeIdentifier": "t_contract$_BasicToken_$3026", "typeString": "contract BasicToken" } }, - "id": 2963, + "id": 3106, "nodeType": "InheritanceSpecifier", "src": "378:10:20" } ], "contractDependencies": [ - 2883, - 2926, - 2955 + 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": 3186, + "id": 3329, "linearizedBaseContracts": [ - 3186, - 2883, - 2926, - 2955 + 3329, + 3026, + 3069, + 3098 ], "name": "StandardToken", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2969, + "id": 3112, "name": "allowed", "nodeType": "VariableDeclaration", - "scope": 3186, + "scope": 3329, "src": "394:57:20", "stateVariable": true, "storageLocation": "default", @@ -341,9 +341,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 2968, + "id": 3111, "keyType": { - "id": 2964, + "id": 3107, "name": "address", "nodeType": "ElementaryTypeName", "src": "403:7:20", @@ -359,9 +359,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "valueType": { - "id": 2967, + "id": 3110, "keyType": { - "id": 2965, + "id": 3108, "name": "address", "nodeType": "ElementaryTypeName", "src": "423:7:20", @@ -377,7 +377,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 2966, + "id": 3109, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "434:7:20", @@ -393,7 +393,7 @@ }, { "body": { - "id": 3039, + "id": 3182, "nodeType": "Block", "src": "816:445:20", "statements": [ @@ -407,18 +407,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2985, + "id": 3128, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2981, + "id": 3124, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "830:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -433,7 +433,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2983, + "id": 3126, "isConstant": false, "isLValue": false, "isPure": true, @@ -456,7 +456,7 @@ "typeString": "int_const 0" } ], - "id": 2982, + "id": 3125, "isConstant": false, "isLValue": false, "isPure": true, @@ -469,7 +469,7 @@ }, "typeName": "address" }, - "id": 2984, + "id": 3127, "isConstant": false, "isLValue": false, "isPure": true, @@ -497,21 +497,21 @@ "typeString": "bool" } ], - "id": 2980, + "id": 3123, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "822:7:20", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2986, + "id": 3129, "isConstant": false, "isLValue": false, "isPure": false, @@ -525,21 +525,21 @@ "typeString": "tuple()" } }, - "id": 2987, + "id": 3130, "nodeType": "ExpressionStatement", "src": "822:26:20" }, { "assignments": [ - 2989 + 3132 ], "declarations": [ { "constant": false, - "id": 2989, + "id": 3132, "name": "_allowance", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "855:18:20", "stateVariable": false, "storageLocation": "default", @@ -548,7 +548,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2988, + "id": 3131, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "855:7:20", @@ -561,32 +561,32 @@ "visibility": "internal" } ], - "id": 2996, + "id": 3139, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2990, + "id": 3133, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 2992, + "id": 3135, "indexExpression": { "argumentTypes": null, - "id": 2991, + "id": 3134, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "884:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -604,23 +604,23 @@ "typeString": "mapping(address => uint256)" } }, - "id": 2995, + "id": 3138, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2993, + "id": 3136, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "891:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2994, + "id": 3137, "isConstant": false, "isLValue": false, "isPure": false, @@ -651,7 +651,7 @@ { "expression": { "argumentTypes": null, - "id": 3006, + "id": 3149, "isConstant": false, "isLValue": false, "isPure": false, @@ -660,25 +660,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2997, + "id": 3140, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1056:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2999, + "id": 3142, "indexExpression": { "argumentTypes": null, - "id": 2998, + "id": 3141, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1065:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -703,11 +703,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3004, + "id": 3147, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1094:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -726,25 +726,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3000, + "id": 3143, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1074:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 3002, + "id": 3145, "indexExpression": { "argumentTypes": null, - "id": 3001, + "id": 3144, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1083:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -762,21 +762,21 @@ "typeString": "uint256" } }, - "id": 3003, + "id": 3146, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 3005, + "id": 3148, "isConstant": false, "isLValue": false, "isPure": false, @@ -796,14 +796,14 @@ "typeString": "uint256" } }, - "id": 3007, + "id": 3150, "nodeType": "ExpressionStatement", "src": "1056:45:20" }, { "expression": { "argumentTypes": null, - "id": 3017, + "id": 3160, "isConstant": false, "isLValue": false, "isPure": false, @@ -812,25 +812,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3008, + "id": 3151, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1107:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 3010, + "id": 3153, "indexExpression": { "argumentTypes": null, - "id": 3009, + "id": 3152, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "1116:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -855,11 +855,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3015, + "id": 3158, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1141:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -878,25 +878,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3011, + "id": 3154, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1123:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 3013, + "id": 3156, "indexExpression": { "argumentTypes": null, - "id": 3012, + "id": 3155, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "1132:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -914,21 +914,21 @@ "typeString": "uint256" } }, - "id": 3014, + "id": 3157, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 2749, + "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": 3016, + "id": 3159, "isConstant": false, "isLValue": false, "isPure": false, @@ -948,14 +948,14 @@ "typeString": "uint256" } }, - "id": 3018, + "id": 3161, "nodeType": "ExpressionStatement", "src": "1107:41:20" }, { "expression": { "argumentTypes": null, - "id": 3029, + "id": 3172, "isConstant": false, "isLValue": false, "isPure": false, @@ -966,25 +966,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3019, + "id": 3162, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3023, + "id": 3166, "indexExpression": { "argumentTypes": null, - "id": 3020, + "id": 3163, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1162:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1002,23 +1002,23 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3024, + "id": 3167, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3021, + "id": 3164, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1169:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3022, + "id": 3165, "isConstant": false, "isLValue": false, "isPure": false, @@ -1050,11 +1050,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3027, + "id": 3170, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1198:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1071,32 +1071,32 @@ ], "expression": { "argumentTypes": null, - "id": 3025, + "id": 3168, "name": "_allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2989, + "referencedDeclaration": 3132, "src": "1183:10:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3026, + "id": 3169, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 3028, + "id": 3171, "isConstant": false, "isLValue": false, "isPure": false, @@ -1116,7 +1116,7 @@ "typeString": "uint256" } }, - "id": 3030, + "id": 3173, "nodeType": "ExpressionStatement", "src": "1154:51:20" }, @@ -1126,11 +1126,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3032, + "id": 3175, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1220:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1139,11 +1139,11 @@ }, { "argumentTypes": null, - "id": 3033, + "id": 3176, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "1227:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1152,11 +1152,11 @@ }, { "argumentTypes": null, - "id": 3034, + "id": 3177, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1232:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1179,18 +1179,18 @@ "typeString": "uint256" } ], - "id": 3031, + "id": 3174, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2954, + "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": 3035, + "id": 3178, "isConstant": false, "isLValue": false, "isPure": false, @@ -1204,7 +1204,7 @@ "typeString": "tuple()" } }, - "id": 3036, + "id": 3179, "nodeType": "ExpressionStatement", "src": "1211:28:20" }, @@ -1212,7 +1212,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3037, + "id": 3180, "isConstant": false, "isLValue": false, "isPure": true, @@ -1227,15 +1227,15 @@ }, "value": "true" }, - "functionReturnParameters": 2979, - "id": 3038, + "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": 3040, + "id": 3183, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1243,15 +1243,15 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 2976, + "id": 3119, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2971, + "id": 3114, "name": "_from", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "750:13:20", "stateVariable": false, "storageLocation": "default", @@ -1260,7 +1260,7 @@ "typeString": "address" }, "typeName": { - "id": 2970, + "id": 3113, "name": "address", "nodeType": "ElementaryTypeName", "src": "750:7:20", @@ -1274,10 +1274,10 @@ }, { "constant": false, - "id": 2973, + "id": 3116, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "765:11:20", "stateVariable": false, "storageLocation": "default", @@ -1286,7 +1286,7 @@ "typeString": "address" }, "typeName": { - "id": 2972, + "id": 3115, "name": "address", "nodeType": "ElementaryTypeName", "src": "765:7:20", @@ -1300,10 +1300,10 @@ }, { "constant": false, - "id": 2975, + "id": 3118, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "778:14:20", "stateVariable": false, "storageLocation": "default", @@ -1312,7 +1312,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2974, + "id": 3117, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "778:7:20", @@ -1329,15 +1329,15 @@ }, "payable": false, "returnParameters": { - "id": 2979, + "id": 3122, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2978, + "id": 3121, "name": "", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "810:4:20", "stateVariable": false, "storageLocation": "default", @@ -1346,7 +1346,7 @@ "typeString": "bool" }, "typeName": { - "id": 2977, + "id": 3120, "name": "bool", "nodeType": "ElementaryTypeName", "src": "810:4:20", @@ -1361,22 +1361,22 @@ ], "src": "809:6:20" }, - "scope": 3186, + "scope": 3329, "src": "728:533:20", "stateMutability": "nonpayable", - "superFunction": 2908, + "superFunction": 3051, "visibility": "public" }, { "body": { - "id": 3067, + "id": 3210, "nodeType": "Block", "src": "1957:110:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3056, + "id": 3199, "isConstant": false, "isLValue": false, "isPure": false, @@ -1387,34 +1387,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3049, + "id": 3192, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3053, + "id": 3196, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3050, + "id": 3193, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1971:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3051, + "id": 3194, "isConstant": false, "isLValue": false, "isPure": false, @@ -1439,14 +1439,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3054, + "id": 3197, "indexExpression": { "argumentTypes": null, - "id": 3052, + "id": 3195, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3042, + "referencedDeclaration": 3185, "src": "1983:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1468,11 +1468,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 3055, + "id": 3198, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3044, + "referencedDeclaration": 3187, "src": "1995:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1485,7 +1485,7 @@ "typeString": "uint256" } }, - "id": 3057, + "id": 3200, "nodeType": "ExpressionStatement", "src": "1963:38:20" }, @@ -1497,18 +1497,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3059, + "id": 3202, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2016:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3060, + "id": 3203, "isConstant": false, "isLValue": false, "isPure": false, @@ -1524,11 +1524,11 @@ }, { "argumentTypes": null, - "id": 3061, + "id": 3204, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3042, + "referencedDeclaration": 3185, "src": "2028:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1537,11 +1537,11 @@ }, { "argumentTypes": null, - "id": 3062, + "id": 3205, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3044, + "referencedDeclaration": 3187, "src": "2038:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1564,18 +1564,18 @@ "typeString": "uint256" } ], - "id": 3058, + "id": 3201, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2925, + "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": 3063, + "id": 3206, "isConstant": false, "isLValue": false, "isPure": false, @@ -1589,7 +1589,7 @@ "typeString": "tuple()" } }, - "id": 3064, + "id": 3207, "nodeType": "ExpressionStatement", "src": "2007:38:20" }, @@ -1597,7 +1597,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3065, + "id": 3208, "isConstant": false, "isLValue": false, "isPure": true, @@ -1612,15 +1612,15 @@ }, "value": "true" }, - "functionReturnParameters": 3048, - "id": 3066, + "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": 3068, + "id": 3211, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1628,15 +1628,15 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 3045, + "id": 3188, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3042, + "id": 3185, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3068, + "scope": 3211, "src": "1901:16:20", "stateVariable": false, "storageLocation": "default", @@ -1645,7 +1645,7 @@ "typeString": "address" }, "typeName": { - "id": 3041, + "id": 3184, "name": "address", "nodeType": "ElementaryTypeName", "src": "1901:7:20", @@ -1659,10 +1659,10 @@ }, { "constant": false, - "id": 3044, + "id": 3187, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 3068, + "scope": 3211, "src": "1919:14:20", "stateVariable": false, "storageLocation": "default", @@ -1671,7 +1671,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3043, + "id": 3186, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1919:7:20", @@ -1688,15 +1688,15 @@ }, "payable": false, "returnParameters": { - "id": 3048, + "id": 3191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3047, + "id": 3190, "name": "", "nodeType": "VariableDeclaration", - "scope": 3068, + "scope": 3211, "src": "1951:4:20", "stateVariable": false, "storageLocation": "default", @@ -1705,7 +1705,7 @@ "typeString": "bool" }, "typeName": { - "id": 3046, + "id": 3189, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1951:4:20", @@ -1720,15 +1720,15 @@ ], "src": "1950:6:20" }, - "scope": 3186, + "scope": 3329, "src": "1884:183:20", "stateMutability": "nonpayable", - "superFunction": 2917, + "superFunction": 3060, "visibility": "public" }, { "body": { - "id": 3083, + "id": 3226, "nodeType": "Block", "src": "2483:43:20", "statements": [ @@ -1739,25 +1739,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3077, + "id": 3220, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3079, + "id": 3222, "indexExpression": { "argumentTypes": null, - "id": 3078, + "id": 3221, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3070, + "referencedDeclaration": 3213, "src": "2504:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1775,14 +1775,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3081, + "id": 3224, "indexExpression": { "argumentTypes": null, - "id": 3080, + "id": 3223, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3072, + "referencedDeclaration": 3215, "src": "2512:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1800,15 +1800,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 3076, - "id": 3082, + "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": 3084, + "id": 3227, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1816,15 +1816,15 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 3073, + "id": 3216, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3070, + "id": 3213, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 3084, + "scope": 3227, "src": "2405:14:20", "stateVariable": false, "storageLocation": "default", @@ -1833,7 +1833,7 @@ "typeString": "address" }, "typeName": { - "id": 3069, + "id": 3212, "name": "address", "nodeType": "ElementaryTypeName", "src": "2405:7:20", @@ -1847,10 +1847,10 @@ }, { "constant": false, - "id": 3072, + "id": 3215, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3084, + "scope": 3227, "src": "2421:16:20", "stateVariable": false, "storageLocation": "default", @@ -1859,7 +1859,7 @@ "typeString": "address" }, "typeName": { - "id": 3071, + "id": 3214, "name": "address", "nodeType": "ElementaryTypeName", "src": "2421:7:20", @@ -1876,15 +1876,15 @@ }, "payable": false, "returnParameters": { - "id": 3076, + "id": 3219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3075, + "id": 3218, "name": "remaining", "nodeType": "VariableDeclaration", - "scope": 3084, + "scope": 3227, "src": "2464:17:20", "stateVariable": false, "storageLocation": "default", @@ -1893,7 +1893,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3074, + "id": 3217, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2464:7:20", @@ -1908,22 +1908,22 @@ ], "src": "2463:19:20" }, - "scope": 3186, + "scope": 3329, "src": "2386:140:20", "stateMutability": "view", - "superFunction": 2897, + "superFunction": 3040, "visibility": "public" }, { "body": { - "id": 3124, + "id": 3267, "nodeType": "Block", "src": "2856:173:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3108, + "id": 3251, "isConstant": false, "isLValue": false, "isPure": false, @@ -1934,34 +1934,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3093, + "id": 3236, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3097, + "id": 3240, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3094, + "id": 3237, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2870:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3095, + "id": 3238, "isConstant": false, "isLValue": false, "isPure": false, @@ -1986,14 +1986,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3098, + "id": 3241, "indexExpression": { "argumentTypes": null, - "id": 3096, + "id": 3239, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2882:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2018,11 +2018,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3106, + "id": 3249, "name": "_addedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3088, + "referencedDeclaration": 3231, "src": "2928:11:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2043,34 +2043,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3099, + "id": 3242, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3102, + "id": 3245, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3100, + "id": 3243, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2902:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3101, + "id": 3244, "isConstant": false, "isLValue": false, "isPure": false, @@ -2095,14 +2095,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3104, + "id": 3247, "indexExpression": { "argumentTypes": null, - "id": 3103, + "id": 3246, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2914:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2120,21 +2120,21 @@ "typeString": "uint256" } }, - "id": 3105, + "id": 3248, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 2749, + "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": 3107, + "id": 3250, "isConstant": false, "isLValue": false, "isPure": false, @@ -2154,7 +2154,7 @@ "typeString": "uint256" } }, - "id": 3109, + "id": 3252, "nodeType": "ExpressionStatement", "src": "2862:78:20" }, @@ -2166,18 +2166,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3111, + "id": 3254, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2955:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3112, + "id": 3255, "isConstant": false, "isLValue": false, "isPure": false, @@ -2193,11 +2193,11 @@ }, { "argumentTypes": null, - "id": 3113, + "id": 3256, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2967:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2210,34 +2210,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3114, + "id": 3257, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3117, + "id": 3260, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3115, + "id": 3258, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2985:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3116, + "id": 3259, "isConstant": false, "isLValue": false, "isPure": false, @@ -2262,14 +2262,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3119, + "id": 3262, "indexExpression": { "argumentTypes": null, - "id": 3118, + "id": 3261, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2997:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2303,18 +2303,18 @@ "typeString": "uint256" } ], - "id": 3110, + "id": 3253, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2925, + "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": 3120, + "id": 3263, "isConstant": false, "isLValue": false, "isPure": false, @@ -2328,7 +2328,7 @@ "typeString": "tuple()" } }, - "id": 3121, + "id": 3264, "nodeType": "ExpressionStatement", "src": "2946:61:20" }, @@ -2336,7 +2336,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3122, + "id": 3265, "isConstant": false, "isLValue": false, "isPure": true, @@ -2351,15 +2351,15 @@ }, "value": "true" }, - "functionReturnParameters": 3092, - "id": 3123, + "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": 3125, + "id": 3268, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2367,15 +2367,15 @@ "name": "increaseApproval", "nodeType": "FunctionDefinition", "parameters": { - "id": 3089, + "id": 3232, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3086, + "id": 3229, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3125, + "scope": 3268, "src": "2793:16:20", "stateVariable": false, "storageLocation": "default", @@ -2384,7 +2384,7 @@ "typeString": "address" }, "typeName": { - "id": 3085, + "id": 3228, "name": "address", "nodeType": "ElementaryTypeName", "src": "2793:7:20", @@ -2398,10 +2398,10 @@ }, { "constant": false, - "id": 3088, + "id": 3231, "name": "_addedValue", "nodeType": "VariableDeclaration", - "scope": 3125, + "scope": 3268, "src": "2811:16:20", "stateVariable": false, "storageLocation": "default", @@ -2410,7 +2410,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3087, + "id": 3230, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2811:4:20", @@ -2427,15 +2427,15 @@ }, "payable": false, "returnParameters": { - "id": 3092, + "id": 3235, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3091, + "id": 3234, "name": "success", "nodeType": "VariableDeclaration", - "scope": 3125, + "scope": 3268, "src": "2842:12:20", "stateVariable": false, "storageLocation": "default", @@ -2444,7 +2444,7 @@ "typeString": "bool" }, "typeName": { - "id": 3090, + "id": 3233, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2842:4:20", @@ -2459,7 +2459,7 @@ ], "src": "2841:14:20" }, - "scope": 3186, + "scope": 3329, "src": "2766:263:20", "stateMutability": "nonpayable", "superFunction": null, @@ -2467,21 +2467,21 @@ }, { "body": { - "id": 3184, + "id": 3327, "nodeType": "Block", "src": "3128:309:20", "statements": [ { "assignments": [ - 3135 + 3278 ], "declarations": [ { "constant": false, - "id": 3135, + "id": 3278, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3134:13:20", "stateVariable": false, "storageLocation": "default", @@ -2490,7 +2490,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3134, + "id": 3277, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3134:4:20", @@ -2503,41 +2503,41 @@ "visibility": "internal" } ], - "id": 3142, + "id": 3285, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3136, + "id": 3279, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3139, + "id": 3282, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3137, + "id": 3280, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3158:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3138, + "id": 3281, "isConstant": false, "isLValue": false, "isPure": false, @@ -2562,14 +2562,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3141, + "id": 3284, "indexExpression": { "argumentTypes": null, - "id": 3140, + "id": 3283, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3170:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2597,18 +2597,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3145, + "id": 3288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3143, + "id": 3286, "name": "_subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3129, + "referencedDeclaration": 3272, "src": "3189:16:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2619,11 +2619,11 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 3144, + "id": 3287, "name": "oldValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, + "referencedDeclaration": 3278, "src": "3208:8:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2637,14 +2637,14 @@ } }, "falseBody": { - "id": 3168, + "id": 3311, "nodeType": "Block", "src": "3272:77:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3166, + "id": 3309, "isConstant": false, "isLValue": false, "isPure": false, @@ -2655,34 +2655,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3156, + "id": 3299, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3160, + "id": 3303, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3157, + "id": 3300, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3288:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3158, + "id": 3301, "isConstant": false, "isLValue": false, "isPure": false, @@ -2707,14 +2707,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3161, + "id": 3304, "indexExpression": { "argumentTypes": null, - "id": 3159, + "id": 3302, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3300:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2739,11 +2739,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3164, + "id": 3307, "name": "_subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3129, + "referencedDeclaration": 3272, "src": "3325:16:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -2760,32 +2760,32 @@ ], "expression": { "argumentTypes": null, - "id": 3162, + "id": 3305, "name": "oldValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, + "referencedDeclaration": 3278, "src": "3312:8:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3163, + "id": 3306, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 3165, + "id": 3308, "isConstant": false, "isLValue": false, "isPure": false, @@ -2805,24 +2805,24 @@ "typeString": "uint256" } }, - "id": 3167, + "id": 3310, "nodeType": "ExpressionStatement", "src": "3280:62:20" } ] }, - "id": 3169, + "id": 3312, "nodeType": "IfStatement", "src": "3185:164:20", "trueBody": { - "id": 3155, + "id": 3298, "nodeType": "Block", "src": "3218:48:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3153, + "id": 3296, "isConstant": false, "isLValue": false, "isPure": false, @@ -2833,34 +2833,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3146, + "id": 3289, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3150, + "id": 3293, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3147, + "id": 3290, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3234:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3148, + "id": 3291, "isConstant": false, "isLValue": false, "isPure": false, @@ -2885,14 +2885,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3151, + "id": 3294, "indexExpression": { "argumentTypes": null, - "id": 3149, + "id": 3292, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3246:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2915,7 +2915,7 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "30", - "id": 3152, + "id": 3295, "isConstant": false, "isLValue": false, "isPure": true, @@ -2936,7 +2936,7 @@ "typeString": "uint256" } }, - "id": 3154, + "id": 3297, "nodeType": "ExpressionStatement", "src": "3226:33:20" } @@ -2951,18 +2951,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3171, + "id": 3314, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3363:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3172, + "id": 3315, "isConstant": false, "isLValue": false, "isPure": false, @@ -2978,11 +2978,11 @@ }, { "argumentTypes": null, - "id": 3173, + "id": 3316, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3375:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2995,34 +2995,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3174, + "id": 3317, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3177, + "id": 3320, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3175, + "id": 3318, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3393:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3176, + "id": 3319, "isConstant": false, "isLValue": false, "isPure": false, @@ -3047,14 +3047,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3179, + "id": 3322, "indexExpression": { "argumentTypes": null, - "id": 3178, + "id": 3321, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3405:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3088,18 +3088,18 @@ "typeString": "uint256" } ], - "id": 3170, + "id": 3313, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2925, + "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": 3180, + "id": 3323, "isConstant": false, "isLValue": false, "isPure": false, @@ -3113,7 +3113,7 @@ "typeString": "tuple()" } }, - "id": 3181, + "id": 3324, "nodeType": "ExpressionStatement", "src": "3354:61:20" }, @@ -3121,7 +3121,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3182, + "id": 3325, "isConstant": false, "isLValue": false, "isPure": true, @@ -3136,15 +3136,15 @@ }, "value": "true" }, - "functionReturnParameters": 3133, - "id": 3183, + "functionReturnParameters": 3276, + "id": 3326, "nodeType": "Return", "src": "3421:11:20" } ] }, "documentation": null, - "id": 3185, + "id": 3328, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3152,15 +3152,15 @@ "name": "decreaseApproval", "nodeType": "FunctionDefinition", "parameters": { - "id": 3130, + "id": 3273, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3127, + "id": 3270, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3060:16:20", "stateVariable": false, "storageLocation": "default", @@ -3169,7 +3169,7 @@ "typeString": "address" }, "typeName": { - "id": 3126, + "id": 3269, "name": "address", "nodeType": "ElementaryTypeName", "src": "3060:7:20", @@ -3183,10 +3183,10 @@ }, { "constant": false, - "id": 3129, + "id": 3272, "name": "_subtractedValue", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3078:21:20", "stateVariable": false, "storageLocation": "default", @@ -3195,7 +3195,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3128, + "id": 3271, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3078:4:20", @@ -3212,15 +3212,15 @@ }, "payable": false, "returnParameters": { - "id": 3133, + "id": 3276, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3132, + "id": 3275, "name": "success", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3114:12:20", "stateVariable": false, "storageLocation": "default", @@ -3229,7 +3229,7 @@ "typeString": "bool" }, "typeName": { - "id": 3131, + "id": 3274, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3114:4:20", @@ -3244,14 +3244,14 @@ ], "src": "3113:14:20" }, - "scope": 3186, + "scope": 3329, "src": "3033:404:20", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 3187, + "scope": 3330, "src": "345:3095:20" } ], @@ -3261,14 +3261,14 @@ "absolutePath": "zeppelin-solidity/contracts/token/StandardToken.sol", "exportedSymbols": { "StandardToken": [ - 3186 + 3329 ] }, - "id": 3187, + "id": 3330, "nodeType": "SourceUnit", "nodes": [ { - "id": 2957, + "id": 3100, "literals": [ "solidity", "^", @@ -3281,10 +3281,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/BasicToken.sol", "file": "./BasicToken.sol", - "id": 2958, + "id": 3101, "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2884, + "scope": 3330, + "sourceUnit": 3027, "src": "27:26:20", "symbolAliases": [], "unitAlias": "" @@ -3292,10 +3292,10 @@ { "absolutePath": "zeppelin-solidity/contracts/token/ERC20.sol", "file": "./ERC20.sol", - "id": 2959, + "id": 3102, "nodeType": "ImportDirective", - "scope": 3187, - "sourceUnit": 2927, + "scope": 3330, + "sourceUnit": 3070, "src": "54:21:20", "symbolAliases": [], "unitAlias": "" @@ -3306,17 +3306,17 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2960, + "id": 3103, "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2926, + "referencedDeclaration": 3069, "src": "371:5:20", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$2926", + "typeIdentifier": "t_contract$_ERC20_$3069", "typeString": "contract ERC20" } }, - "id": 2961, + "id": 3104, "nodeType": "InheritanceSpecifier", "src": "371:5:20" }, @@ -3324,45 +3324,45 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2962, + "id": 3105, "name": "BasicToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2883, + "referencedDeclaration": 3026, "src": "378:10:20", "typeDescriptions": { - "typeIdentifier": "t_contract$_BasicToken_$2883", + "typeIdentifier": "t_contract$_BasicToken_$3026", "typeString": "contract BasicToken" } }, - "id": 2963, + "id": 3106, "nodeType": "InheritanceSpecifier", "src": "378:10:20" } ], "contractDependencies": [ - 2883, - 2926, - 2955 + 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": 3186, + "id": 3329, "linearizedBaseContracts": [ - 3186, - 2883, - 2926, - 2955 + 3329, + 3026, + 3069, + 3098 ], "name": "StandardToken", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2969, + "id": 3112, "name": "allowed", "nodeType": "VariableDeclaration", - "scope": 3186, + "scope": 3329, "src": "394:57:20", "stateVariable": true, "storageLocation": "default", @@ -3371,9 +3371,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "typeName": { - "id": 2968, + "id": 3111, "keyType": { - "id": 2964, + "id": 3107, "name": "address", "nodeType": "ElementaryTypeName", "src": "403:7:20", @@ -3389,9 +3389,9 @@ "typeString": "mapping(address => mapping(address => uint256))" }, "valueType": { - "id": 2967, + "id": 3110, "keyType": { - "id": 2965, + "id": 3108, "name": "address", "nodeType": "ElementaryTypeName", "src": "423:7:20", @@ -3407,7 +3407,7 @@ "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 2966, + "id": 3109, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "434:7:20", @@ -3423,7 +3423,7 @@ }, { "body": { - "id": 3039, + "id": 3182, "nodeType": "Block", "src": "816:445:20", "statements": [ @@ -3437,18 +3437,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2985, + "id": 3128, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2981, + "id": 3124, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "830:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3463,7 +3463,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2983, + "id": 3126, "isConstant": false, "isLValue": false, "isPure": true, @@ -3486,7 +3486,7 @@ "typeString": "int_const 0" } ], - "id": 2982, + "id": 3125, "isConstant": false, "isLValue": false, "isPure": true, @@ -3499,7 +3499,7 @@ }, "typeName": "address" }, - "id": 2984, + "id": 3127, "isConstant": false, "isLValue": false, "isPure": true, @@ -3527,21 +3527,21 @@ "typeString": "bool" } ], - "id": 2980, + "id": 3123, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "822:7:20", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2986, + "id": 3129, "isConstant": false, "isLValue": false, "isPure": false, @@ -3555,21 +3555,21 @@ "typeString": "tuple()" } }, - "id": 2987, + "id": 3130, "nodeType": "ExpressionStatement", "src": "822:26:20" }, { "assignments": [ - 2989 + 3132 ], "declarations": [ { "constant": false, - "id": 2989, + "id": 3132, "name": "_allowance", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "855:18:20", "stateVariable": false, "storageLocation": "default", @@ -3578,7 +3578,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2988, + "id": 3131, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "855:7:20", @@ -3591,32 +3591,32 @@ "visibility": "internal" } ], - "id": 2996, + "id": 3139, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2990, + "id": 3133, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 2992, + "id": 3135, "indexExpression": { "argumentTypes": null, - "id": 2991, + "id": 3134, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "884:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3634,23 +3634,23 @@ "typeString": "mapping(address => uint256)" } }, - "id": 2995, + "id": 3138, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2993, + "id": 3136, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "891:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2994, + "id": 3137, "isConstant": false, "isLValue": false, "isPure": false, @@ -3681,7 +3681,7 @@ { "expression": { "argumentTypes": null, - "id": 3006, + "id": 3149, "isConstant": false, "isLValue": false, "isPure": false, @@ -3690,25 +3690,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2997, + "id": 3140, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1056:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2999, + "id": 3142, "indexExpression": { "argumentTypes": null, - "id": 2998, + "id": 3141, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1065:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3733,11 +3733,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3004, + "id": 3147, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1094:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3756,25 +3756,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3000, + "id": 3143, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1074:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 3002, + "id": 3145, "indexExpression": { "argumentTypes": null, - "id": 3001, + "id": 3144, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1083:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3792,21 +3792,21 @@ "typeString": "uint256" } }, - "id": 3003, + "id": 3146, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 3005, + "id": 3148, "isConstant": false, "isLValue": false, "isPure": false, @@ -3826,14 +3826,14 @@ "typeString": "uint256" } }, - "id": 3007, + "id": 3150, "nodeType": "ExpressionStatement", "src": "1056:45:20" }, { "expression": { "argumentTypes": null, - "id": 3017, + "id": 3160, "isConstant": false, "isLValue": false, "isPure": false, @@ -3842,25 +3842,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3008, + "id": 3151, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1107:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 3010, + "id": 3153, "indexExpression": { "argumentTypes": null, - "id": 3009, + "id": 3152, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "1116:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3885,11 +3885,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3015, + "id": 3158, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1141:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -3908,25 +3908,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3011, + "id": 3154, "name": "balances", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2819, + "referencedDeclaration": 2962, "src": "1123:8:20", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 3013, + "id": 3156, "indexExpression": { "argumentTypes": null, - "id": 3012, + "id": 3155, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "1132:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3944,21 +3944,21 @@ "typeString": "uint256" } }, - "id": 3014, + "id": 3157, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 2749, + "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": 3016, + "id": 3159, "isConstant": false, "isLValue": false, "isPure": false, @@ -3978,14 +3978,14 @@ "typeString": "uint256" } }, - "id": 3018, + "id": 3161, "nodeType": "ExpressionStatement", "src": "1107:41:20" }, { "expression": { "argumentTypes": null, - "id": 3029, + "id": 3172, "isConstant": false, "isLValue": false, "isPure": false, @@ -3996,25 +3996,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3019, + "id": 3162, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3023, + "id": 3166, "indexExpression": { "argumentTypes": null, - "id": 3020, + "id": 3163, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1162:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4032,23 +4032,23 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3024, + "id": 3167, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3021, + "id": 3164, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1169:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3022, + "id": 3165, "isConstant": false, "isLValue": false, "isPure": false, @@ -4080,11 +4080,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3027, + "id": 3170, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1198:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4101,32 +4101,32 @@ ], "expression": { "argumentTypes": null, - "id": 3025, + "id": 3168, "name": "_allowance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2989, + "referencedDeclaration": 3132, "src": "1183:10:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3026, + "id": 3169, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 3028, + "id": 3171, "isConstant": false, "isLValue": false, "isPure": false, @@ -4146,7 +4146,7 @@ "typeString": "uint256" } }, - "id": 3030, + "id": 3173, "nodeType": "ExpressionStatement", "src": "1154:51:20" }, @@ -4156,11 +4156,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3032, + "id": 3175, "name": "_from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2971, + "referencedDeclaration": 3114, "src": "1220:5:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4169,11 +4169,11 @@ }, { "argumentTypes": null, - "id": 3033, + "id": 3176, "name": "_to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2973, + "referencedDeclaration": 3116, "src": "1227:3:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4182,11 +4182,11 @@ }, { "argumentTypes": null, - "id": 3034, + "id": 3177, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2975, + "referencedDeclaration": 3118, "src": "1232:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4209,18 +4209,18 @@ "typeString": "uint256" } ], - "id": 3031, + "id": 3174, "name": "Transfer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2954, + "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": 3035, + "id": 3178, "isConstant": false, "isLValue": false, "isPure": false, @@ -4234,7 +4234,7 @@ "typeString": "tuple()" } }, - "id": 3036, + "id": 3179, "nodeType": "ExpressionStatement", "src": "1211:28:20" }, @@ -4242,7 +4242,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3037, + "id": 3180, "isConstant": false, "isLValue": false, "isPure": true, @@ -4257,15 +4257,15 @@ }, "value": "true" }, - "functionReturnParameters": 2979, - "id": 3038, + "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": 3040, + "id": 3183, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4273,15 +4273,15 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 2976, + "id": 3119, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2971, + "id": 3114, "name": "_from", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "750:13:20", "stateVariable": false, "storageLocation": "default", @@ -4290,7 +4290,7 @@ "typeString": "address" }, "typeName": { - "id": 2970, + "id": 3113, "name": "address", "nodeType": "ElementaryTypeName", "src": "750:7:20", @@ -4304,10 +4304,10 @@ }, { "constant": false, - "id": 2973, + "id": 3116, "name": "_to", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "765:11:20", "stateVariable": false, "storageLocation": "default", @@ -4316,7 +4316,7 @@ "typeString": "address" }, "typeName": { - "id": 2972, + "id": 3115, "name": "address", "nodeType": "ElementaryTypeName", "src": "765:7:20", @@ -4330,10 +4330,10 @@ }, { "constant": false, - "id": 2975, + "id": 3118, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "778:14:20", "stateVariable": false, "storageLocation": "default", @@ -4342,7 +4342,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2974, + "id": 3117, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "778:7:20", @@ -4359,15 +4359,15 @@ }, "payable": false, "returnParameters": { - "id": 2979, + "id": 3122, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2978, + "id": 3121, "name": "", "nodeType": "VariableDeclaration", - "scope": 3040, + "scope": 3183, "src": "810:4:20", "stateVariable": false, "storageLocation": "default", @@ -4376,7 +4376,7 @@ "typeString": "bool" }, "typeName": { - "id": 2977, + "id": 3120, "name": "bool", "nodeType": "ElementaryTypeName", "src": "810:4:20", @@ -4391,22 +4391,22 @@ ], "src": "809:6:20" }, - "scope": 3186, + "scope": 3329, "src": "728:533:20", "stateMutability": "nonpayable", - "superFunction": 2908, + "superFunction": 3051, "visibility": "public" }, { "body": { - "id": 3067, + "id": 3210, "nodeType": "Block", "src": "1957:110:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3056, + "id": 3199, "isConstant": false, "isLValue": false, "isPure": false, @@ -4417,34 +4417,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3049, + "id": 3192, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3053, + "id": 3196, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3050, + "id": 3193, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1971:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3051, + "id": 3194, "isConstant": false, "isLValue": false, "isPure": false, @@ -4469,14 +4469,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3054, + "id": 3197, "indexExpression": { "argumentTypes": null, - "id": 3052, + "id": 3195, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3042, + "referencedDeclaration": 3185, "src": "1983:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4498,11 +4498,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 3055, + "id": 3198, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3044, + "referencedDeclaration": 3187, "src": "1995:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4515,7 +4515,7 @@ "typeString": "uint256" } }, - "id": 3057, + "id": 3200, "nodeType": "ExpressionStatement", "src": "1963:38:20" }, @@ -4527,18 +4527,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3059, + "id": 3202, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2016:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3060, + "id": 3203, "isConstant": false, "isLValue": false, "isPure": false, @@ -4554,11 +4554,11 @@ }, { "argumentTypes": null, - "id": 3061, + "id": 3204, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3042, + "referencedDeclaration": 3185, "src": "2028:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4567,11 +4567,11 @@ }, { "argumentTypes": null, - "id": 3062, + "id": 3205, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3044, + "referencedDeclaration": 3187, "src": "2038:6:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4594,18 +4594,18 @@ "typeString": "uint256" } ], - "id": 3058, + "id": 3201, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2925, + "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": 3063, + "id": 3206, "isConstant": false, "isLValue": false, "isPure": false, @@ -4619,7 +4619,7 @@ "typeString": "tuple()" } }, - "id": 3064, + "id": 3207, "nodeType": "ExpressionStatement", "src": "2007:38:20" }, @@ -4627,7 +4627,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3065, + "id": 3208, "isConstant": false, "isLValue": false, "isPure": true, @@ -4642,15 +4642,15 @@ }, "value": "true" }, - "functionReturnParameters": 3048, - "id": 3066, + "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": 3068, + "id": 3211, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4658,15 +4658,15 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 3045, + "id": 3188, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3042, + "id": 3185, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3068, + "scope": 3211, "src": "1901:16:20", "stateVariable": false, "storageLocation": "default", @@ -4675,7 +4675,7 @@ "typeString": "address" }, "typeName": { - "id": 3041, + "id": 3184, "name": "address", "nodeType": "ElementaryTypeName", "src": "1901:7:20", @@ -4689,10 +4689,10 @@ }, { "constant": false, - "id": 3044, + "id": 3187, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 3068, + "scope": 3211, "src": "1919:14:20", "stateVariable": false, "storageLocation": "default", @@ -4701,7 +4701,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3043, + "id": 3186, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1919:7:20", @@ -4718,15 +4718,15 @@ }, "payable": false, "returnParameters": { - "id": 3048, + "id": 3191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3047, + "id": 3190, "name": "", "nodeType": "VariableDeclaration", - "scope": 3068, + "scope": 3211, "src": "1951:4:20", "stateVariable": false, "storageLocation": "default", @@ -4735,7 +4735,7 @@ "typeString": "bool" }, "typeName": { - "id": 3046, + "id": 3189, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1951:4:20", @@ -4750,15 +4750,15 @@ ], "src": "1950:6:20" }, - "scope": 3186, + "scope": 3329, "src": "1884:183:20", "stateMutability": "nonpayable", - "superFunction": 2917, + "superFunction": 3060, "visibility": "public" }, { "body": { - "id": 3083, + "id": 3226, "nodeType": "Block", "src": "2483:43:20", "statements": [ @@ -4769,25 +4769,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3077, + "id": 3220, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3079, + "id": 3222, "indexExpression": { "argumentTypes": null, - "id": 3078, + "id": 3221, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3070, + "referencedDeclaration": 3213, "src": "2504:6:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4805,14 +4805,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3081, + "id": 3224, "indexExpression": { "argumentTypes": null, - "id": 3080, + "id": 3223, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3072, + "referencedDeclaration": 3215, "src": "2512:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -4830,15 +4830,15 @@ "typeString": "uint256" } }, - "functionReturnParameters": 3076, - "id": 3082, + "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": 3084, + "id": 3227, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4846,15 +4846,15 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 3073, + "id": 3216, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3070, + "id": 3213, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 3084, + "scope": 3227, "src": "2405:14:20", "stateVariable": false, "storageLocation": "default", @@ -4863,7 +4863,7 @@ "typeString": "address" }, "typeName": { - "id": 3069, + "id": 3212, "name": "address", "nodeType": "ElementaryTypeName", "src": "2405:7:20", @@ -4877,10 +4877,10 @@ }, { "constant": false, - "id": 3072, + "id": 3215, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3084, + "scope": 3227, "src": "2421:16:20", "stateVariable": false, "storageLocation": "default", @@ -4889,7 +4889,7 @@ "typeString": "address" }, "typeName": { - "id": 3071, + "id": 3214, "name": "address", "nodeType": "ElementaryTypeName", "src": "2421:7:20", @@ -4906,15 +4906,15 @@ }, "payable": false, "returnParameters": { - "id": 3076, + "id": 3219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3075, + "id": 3218, "name": "remaining", "nodeType": "VariableDeclaration", - "scope": 3084, + "scope": 3227, "src": "2464:17:20", "stateVariable": false, "storageLocation": "default", @@ -4923,7 +4923,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3074, + "id": 3217, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2464:7:20", @@ -4938,22 +4938,22 @@ ], "src": "2463:19:20" }, - "scope": 3186, + "scope": 3329, "src": "2386:140:20", "stateMutability": "view", - "superFunction": 2897, + "superFunction": 3040, "visibility": "public" }, { "body": { - "id": 3124, + "id": 3267, "nodeType": "Block", "src": "2856:173:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3108, + "id": 3251, "isConstant": false, "isLValue": false, "isPure": false, @@ -4964,34 +4964,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3093, + "id": 3236, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3097, + "id": 3240, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3094, + "id": 3237, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2870:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3095, + "id": 3238, "isConstant": false, "isLValue": false, "isPure": false, @@ -5016,14 +5016,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3098, + "id": 3241, "indexExpression": { "argumentTypes": null, - "id": 3096, + "id": 3239, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2882:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5048,11 +5048,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3106, + "id": 3249, "name": "_addedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3088, + "referencedDeclaration": 3231, "src": "2928:11:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5073,34 +5073,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3099, + "id": 3242, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3102, + "id": 3245, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3100, + "id": 3243, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2902:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3101, + "id": 3244, "isConstant": false, "isLValue": false, "isPure": false, @@ -5125,14 +5125,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3104, + "id": 3247, "indexExpression": { "argumentTypes": null, - "id": 3103, + "id": 3246, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2914:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5150,21 +5150,21 @@ "typeString": "uint256" } }, - "id": 3105, + "id": 3248, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 2749, + "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": 3107, + "id": 3250, "isConstant": false, "isLValue": false, "isPure": false, @@ -5184,7 +5184,7 @@ "typeString": "uint256" } }, - "id": 3109, + "id": 3252, "nodeType": "ExpressionStatement", "src": "2862:78:20" }, @@ -5196,18 +5196,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3111, + "id": 3254, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2955:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3112, + "id": 3255, "isConstant": false, "isLValue": false, "isPure": false, @@ -5223,11 +5223,11 @@ }, { "argumentTypes": null, - "id": 3113, + "id": 3256, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2967:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5240,34 +5240,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3114, + "id": 3257, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3117, + "id": 3260, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3115, + "id": 3258, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "2985:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3116, + "id": 3259, "isConstant": false, "isLValue": false, "isPure": false, @@ -5292,14 +5292,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3119, + "id": 3262, "indexExpression": { "argumentTypes": null, - "id": 3118, + "id": 3261, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3086, + "referencedDeclaration": 3229, "src": "2997:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5333,18 +5333,18 @@ "typeString": "uint256" } ], - "id": 3110, + "id": 3253, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2925, + "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": 3120, + "id": 3263, "isConstant": false, "isLValue": false, "isPure": false, @@ -5358,7 +5358,7 @@ "typeString": "tuple()" } }, - "id": 3121, + "id": 3264, "nodeType": "ExpressionStatement", "src": "2946:61:20" }, @@ -5366,7 +5366,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3122, + "id": 3265, "isConstant": false, "isLValue": false, "isPure": true, @@ -5381,15 +5381,15 @@ }, "value": "true" }, - "functionReturnParameters": 3092, - "id": 3123, + "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": 3125, + "id": 3268, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5397,15 +5397,15 @@ "name": "increaseApproval", "nodeType": "FunctionDefinition", "parameters": { - "id": 3089, + "id": 3232, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3086, + "id": 3229, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3125, + "scope": 3268, "src": "2793:16:20", "stateVariable": false, "storageLocation": "default", @@ -5414,7 +5414,7 @@ "typeString": "address" }, "typeName": { - "id": 3085, + "id": 3228, "name": "address", "nodeType": "ElementaryTypeName", "src": "2793:7:20", @@ -5428,10 +5428,10 @@ }, { "constant": false, - "id": 3088, + "id": 3231, "name": "_addedValue", "nodeType": "VariableDeclaration", - "scope": 3125, + "scope": 3268, "src": "2811:16:20", "stateVariable": false, "storageLocation": "default", @@ -5440,7 +5440,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3087, + "id": 3230, "name": "uint", "nodeType": "ElementaryTypeName", "src": "2811:4:20", @@ -5457,15 +5457,15 @@ }, "payable": false, "returnParameters": { - "id": 3092, + "id": 3235, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3091, + "id": 3234, "name": "success", "nodeType": "VariableDeclaration", - "scope": 3125, + "scope": 3268, "src": "2842:12:20", "stateVariable": false, "storageLocation": "default", @@ -5474,7 +5474,7 @@ "typeString": "bool" }, "typeName": { - "id": 3090, + "id": 3233, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2842:4:20", @@ -5489,7 +5489,7 @@ ], "src": "2841:14:20" }, - "scope": 3186, + "scope": 3329, "src": "2766:263:20", "stateMutability": "nonpayable", "superFunction": null, @@ -5497,21 +5497,21 @@ }, { "body": { - "id": 3184, + "id": 3327, "nodeType": "Block", "src": "3128:309:20", "statements": [ { "assignments": [ - 3135 + 3278 ], "declarations": [ { "constant": false, - "id": 3135, + "id": 3278, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3134:13:20", "stateVariable": false, "storageLocation": "default", @@ -5520,7 +5520,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3134, + "id": 3277, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3134:4:20", @@ -5533,41 +5533,41 @@ "visibility": "internal" } ], - "id": 3142, + "id": 3285, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3136, + "id": 3279, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3139, + "id": 3282, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3137, + "id": 3280, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3158:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3138, + "id": 3281, "isConstant": false, "isLValue": false, "isPure": false, @@ -5592,14 +5592,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3141, + "id": 3284, "indexExpression": { "argumentTypes": null, - "id": 3140, + "id": 3283, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3170:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5627,18 +5627,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3145, + "id": 3288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3143, + "id": 3286, "name": "_subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3129, + "referencedDeclaration": 3272, "src": "3189:16:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5649,11 +5649,11 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 3144, + "id": 3287, "name": "oldValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, + "referencedDeclaration": 3278, "src": "3208:8:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5667,14 +5667,14 @@ } }, "falseBody": { - "id": 3168, + "id": 3311, "nodeType": "Block", "src": "3272:77:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3166, + "id": 3309, "isConstant": false, "isLValue": false, "isPure": false, @@ -5685,34 +5685,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3156, + "id": 3299, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3160, + "id": 3303, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3157, + "id": 3300, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3288:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3158, + "id": 3301, "isConstant": false, "isLValue": false, "isPure": false, @@ -5737,14 +5737,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3161, + "id": 3304, "indexExpression": { "argumentTypes": null, - "id": 3159, + "id": 3302, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3300:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5769,11 +5769,11 @@ "arguments": [ { "argumentTypes": null, - "id": 3164, + "id": 3307, "name": "_subtractedValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3129, + "referencedDeclaration": 3272, "src": "3325:16:20", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5790,32 +5790,32 @@ ], "expression": { "argumentTypes": null, - "id": 3162, + "id": 3305, "name": "oldValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, + "referencedDeclaration": 3278, "src": "3312:8:20", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3163, + "id": 3306, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, + "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": 3165, + "id": 3308, "isConstant": false, "isLValue": false, "isPure": false, @@ -5835,24 +5835,24 @@ "typeString": "uint256" } }, - "id": 3167, + "id": 3310, "nodeType": "ExpressionStatement", "src": "3280:62:20" } ] }, - "id": 3169, + "id": 3312, "nodeType": "IfStatement", "src": "3185:164:20", "trueBody": { - "id": 3155, + "id": 3298, "nodeType": "Block", "src": "3218:48:20", "statements": [ { "expression": { "argumentTypes": null, - "id": 3153, + "id": 3296, "isConstant": false, "isLValue": false, "isPure": false, @@ -5863,34 +5863,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3146, + "id": 3289, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3150, + "id": 3293, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3147, + "id": 3290, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3234:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3148, + "id": 3291, "isConstant": false, "isLValue": false, "isPure": false, @@ -5915,14 +5915,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3151, + "id": 3294, "indexExpression": { "argumentTypes": null, - "id": 3149, + "id": 3292, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3246:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5945,7 +5945,7 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "30", - "id": 3152, + "id": 3295, "isConstant": false, "isLValue": false, "isPure": true, @@ -5966,7 +5966,7 @@ "typeString": "uint256" } }, - "id": 3154, + "id": 3297, "nodeType": "ExpressionStatement", "src": "3226:33:20" } @@ -5981,18 +5981,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3171, + "id": 3314, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3363:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3172, + "id": 3315, "isConstant": false, "isLValue": false, "isPure": false, @@ -6008,11 +6008,11 @@ }, { "argumentTypes": null, - "id": 3173, + "id": 3316, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3375:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6025,34 +6025,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3174, + "id": 3317, "name": "allowed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2969, + "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": 3177, + "id": 3320, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3175, + "id": 3318, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "3393:3:20", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3176, + "id": 3319, "isConstant": false, "isLValue": false, "isPure": false, @@ -6077,14 +6077,14 @@ "typeString": "mapping(address => uint256)" } }, - "id": 3179, + "id": 3322, "indexExpression": { "argumentTypes": null, - "id": 3178, + "id": 3321, "name": "_spender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3127, + "referencedDeclaration": 3270, "src": "3405:8:20", "typeDescriptions": { "typeIdentifier": "t_address", @@ -6118,18 +6118,18 @@ "typeString": "uint256" } ], - "id": 3170, + "id": 3313, "name": "Approval", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2925, + "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": 3180, + "id": 3323, "isConstant": false, "isLValue": false, "isPure": false, @@ -6143,7 +6143,7 @@ "typeString": "tuple()" } }, - "id": 3181, + "id": 3324, "nodeType": "ExpressionStatement", "src": "3354:61:20" }, @@ -6151,7 +6151,7 @@ "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 3182, + "id": 3325, "isConstant": false, "isLValue": false, "isPure": true, @@ -6166,15 +6166,15 @@ }, "value": "true" }, - "functionReturnParameters": 3133, - "id": 3183, + "functionReturnParameters": 3276, + "id": 3326, "nodeType": "Return", "src": "3421:11:20" } ] }, "documentation": null, - "id": 3185, + "id": 3328, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -6182,15 +6182,15 @@ "name": "decreaseApproval", "nodeType": "FunctionDefinition", "parameters": { - "id": 3130, + "id": 3273, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3127, + "id": 3270, "name": "_spender", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3060:16:20", "stateVariable": false, "storageLocation": "default", @@ -6199,7 +6199,7 @@ "typeString": "address" }, "typeName": { - "id": 3126, + "id": 3269, "name": "address", "nodeType": "ElementaryTypeName", "src": "3060:7:20", @@ -6213,10 +6213,10 @@ }, { "constant": false, - "id": 3129, + "id": 3272, "name": "_subtractedValue", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3078:21:20", "stateVariable": false, "storageLocation": "default", @@ -6225,7 +6225,7 @@ "typeString": "uint256" }, "typeName": { - "id": 3128, + "id": 3271, "name": "uint", "nodeType": "ElementaryTypeName", "src": "3078:4:20", @@ -6242,15 +6242,15 @@ }, "payable": false, "returnParameters": { - "id": 3133, + "id": 3276, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3132, + "id": 3275, "name": "success", "nodeType": "VariableDeclaration", - "scope": 3185, + "scope": 3328, "src": "3114:12:20", "stateVariable": false, "storageLocation": "default", @@ -6259,7 +6259,7 @@ "typeString": "bool" }, "typeName": { - "id": 3131, + "id": 3274, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3114:4:20", @@ -6274,14 +6274,14 @@ ], "src": "3113:14:20" }, - "scope": 3186, + "scope": 3329, "src": "3033:404:20", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 3187, + "scope": 3330, "src": "345:3095:20" } ], @@ -6293,5 +6293,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.691Z" + "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 d7928cc..d825254 100644 --- a/build/contracts/Store.json +++ b/build/contracts/Store.json @@ -220,24 +220,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Store.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Store.sol", "exportedSymbols": { "Store": [ - 1481 + 1573 ] }, - "id": 1482, + "id": 1574, "nodeType": "SourceUnit", "nodes": [ { - "id": 1327, + "id": 1399, "literals": [ "solidity", "^", @@ -250,86 +250,86 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1328, + "id": 1400, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2751, + "scope": 1574, + "sourceUnit": 2894, "src": "26:55:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", "file": "./Avatar.sol", - "id": 1329, + "id": 1401, "nodeType": "ImportDirective", - "scope": 1482, + "scope": 1574, "sourceUnit": 288, "src": "82:22:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 1330, + "id": 1402, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 872, + "scope": 1574, + "sourceUnit": 905, "src": "105:28:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1331, + "id": 1403, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1097, + "scope": 1574, + "sourceUnit": 1157, "src": "134:24:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", "file": "./Sales.sol", - "id": 1332, + "id": 1404, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1278, + "scope": 1574, + "sourceUnit": 1350, "src": "159:21:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", "file": "./Users.sol", - "id": 1333, + "id": 1405, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1998, + "scope": 1574, + "sourceUnit": 2111, "src": "181:21:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", "file": "./Videos.sol", - "id": 1334, + "id": 1406, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2271, + "scope": 1574, + "sourceUnit": 2399, "src": "203:22:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", "file": "../debug/Debug.sol", - "id": 1335, + "id": 1407, "nodeType": "ImportDirective", - "scope": 1482, + "scope": 1574, "sourceUnit": 88, "src": "226:28:9", "symbolAliases": [], @@ -341,17 +341,17 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1336, + "id": 1408, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "378:7:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1337, + "id": 1409, "nodeType": "InheritanceSpecifier", "src": "378:7:9" }, @@ -359,7 +359,7 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1338, + "id": 1410, "name": "Debug", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 87, @@ -369,45 +369,45 @@ "typeString": "contract Debug" } }, - "id": 1339, + "id": 1411, "nodeType": "InheritanceSpecifier", "src": "387:5:9" } ], "contractDependencies": [ 87, - 2806 + 2949 ], "contractKind": "contract", "documentation": "@title Store\n@dev A Contract that wraps the native transfer function and logs an event.", "fullyImplemented": true, - "id": 1481, + "id": 1573, "linearizedBaseContracts": [ - 1481, + 1573, 87, - 2806 + 2949 ], "name": "Store", "nodeType": "ContractDefinition", "nodes": [ { - "id": 1342, + "id": 1414, "libraryName": { "contractScope": null, - "id": 1340, + "id": 1412, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, + "referencedDeclaration": 2893, "src": "406:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", + "typeIdentifier": "t_contract$_SafeMath_$2893", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", "src": "400:27:9", "typeName": { - "id": 1341, + "id": 1413, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "419:7:9", @@ -419,26 +419,26 @@ }, { "constant": false, - "id": 1344, + "id": 1416, "name": "sales", "nodeType": "VariableDeclaration", - "scope": 1481, + "scope": 1573, "src": "433:18:9", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", + "typeIdentifier": "t_contract$_Sales_$1349", "typeString": "contract Sales" }, "typeName": { "contractScope": null, - "id": 1343, + "id": 1415, "name": "Sales", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1277, + "referencedDeclaration": 1349, "src": "433:5:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", + "typeIdentifier": "t_contract$_Sales_$1349", "typeString": "contract Sales" } }, @@ -447,26 +447,26 @@ }, { "constant": false, - "id": 1346, + "id": 1418, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1481, + "scope": 1573, "src": "457:24:9", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1345, + "id": 1417, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "457:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -476,20 +476,20 @@ { "anonymous": false, "documentation": null, - "id": 1354, + "id": 1426, "name": "LogBuyVideo", "nodeType": "EventDefinition", "parameters": { - "id": 1353, + "id": 1425, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1348, + "id": 1420, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1354, + "scope": 1426, "src": "506:15:9", "stateVariable": false, "storageLocation": "default", @@ -498,7 +498,7 @@ "typeString": "string" }, "typeName": { - "id": 1347, + "id": 1419, "name": "string", "nodeType": "ElementaryTypeName", "src": "506:6:9", @@ -512,11 +512,11 @@ }, { "constant": false, - "id": 1350, + "id": 1422, "indexed": false, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1354, + "scope": 1426, "src": "523:14:9", "stateVariable": false, "storageLocation": "default", @@ -525,7 +525,7 @@ "typeString": "address" }, "typeName": { - "id": 1349, + "id": 1421, "name": "address", "nodeType": "ElementaryTypeName", "src": "523:7:9", @@ -539,11 +539,11 @@ }, { "constant": false, - "id": 1352, + "id": 1424, "indexed": false, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1354, + "scope": 1426, "src": "539:11:9", "stateVariable": false, "storageLocation": "default", @@ -552,7 +552,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1351, + "id": 1423, "name": "uint", "nodeType": "ElementaryTypeName", "src": "539:4:9", @@ -571,28 +571,28 @@ }, { "body": { - "id": 1363, + "id": 1435, "nodeType": "Block", "src": "597:37:9", "statements": [ { "expression": { "argumentTypes": null, - "id": 1361, + "id": 1433, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1359, + "id": 1431, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, + "referencedDeclaration": 1418, "src": "607:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -600,31 +600,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1360, + "id": 1432, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1356, + "referencedDeclaration": 1428, "src": "618:9:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "607:20:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1362, + "id": 1434, "nodeType": "ExpressionStatement", "src": "607:20:9" } ] }, "documentation": null, - "id": 1364, + "id": 1436, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -632,31 +632,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1357, + "id": 1429, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1356, + "id": 1428, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1364, + "scope": 1436, "src": "570:18:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1355, + "id": 1427, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "570:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -668,12 +668,12 @@ }, "payable": false, "returnParameters": { - "id": 1358, + "id": 1430, "nodeType": "ParameterList", "parameters": [], "src": "597:0:9" }, - "scope": 1481, + "scope": 1573, "src": "558:76:9", "stateMutability": "nonpayable", "superFunction": null, @@ -681,7 +681,7 @@ }, { "body": { - "id": 1370, + "id": 1442, "nodeType": "Block", "src": "728:25:9", "statements": [ @@ -691,21 +691,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1367, + "id": 1439, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3206, - 3207 + 3349, + 3350 ], - "referencedDeclaration": 3206, + "referencedDeclaration": 3349, "src": "738:6:9", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1368, + "id": 1440, "isConstant": false, "isLValue": false, "isPure": false, @@ -719,14 +719,14 @@ "typeString": "tuple()" } }, - "id": 1369, + "id": 1441, "nodeType": "ExpressionStatement", "src": "738:8:9" } ] }, "documentation": null, - "id": 1371, + "id": 1443, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -734,19 +734,19 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1365, + "id": 1437, "nodeType": "ParameterList", "parameters": [], "src": "718:2:9" }, "payable": false, "returnParameters": { - "id": 1366, + "id": 1438, "nodeType": "ParameterList", "parameters": [], "src": "728:0:9" }, - "scope": 1481, + "scope": 1573, "src": "709:44:9", "stateMutability": "nonpayable", "superFunction": null, @@ -754,21 +754,21 @@ }, { "body": { - "id": 1468, + "id": 1560, "nodeType": "Block", - "src": "1087:708:9", + "src": "1087:858:9", "statements": [ { "assignments": [ - 1381 + 1453 ], "declarations": [ { "constant": false, - "id": 1381, + "id": 1453, "name": "avatar", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1137:13:9", "stateVariable": false, "storageLocation": "default", @@ -778,7 +778,7 @@ }, "typeName": { "contractScope": null, - "id": 1380, + "id": 1452, "name": "Avatar", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 287, @@ -792,7 +792,7 @@ "visibility": "internal" } ], - "id": 1388, + "id": 1460, "initialValue": { "argumentTypes": null, "arguments": [ @@ -802,7 +802,7 @@ { "argumentTypes": null, "hexValue": "417661746172", - "id": 1385, + "id": 1457, "isConstant": false, "isLValue": false, "isPure": true, @@ -827,32 +827,32 @@ ], "expression": { "argumentTypes": null, - "id": 1383, + "id": 1455, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, + "referencedDeclaration": 1418, "src": "1160:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1384, + "id": 1456, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 1386, + "id": 1458, "isConstant": false, "isLValue": false, "isPure": false, @@ -874,7 +874,7 @@ "typeString": "address" } ], - "id": 1382, + "id": 1454, "name": "Avatar", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -885,7 +885,7 @@ "typeString": "type(contract Avatar)" } }, - "id": 1387, + "id": 1459, "isConstant": false, "isLValue": false, "isPure": false, @@ -903,292 +903,500 @@ "src": "1137:54:9" }, { - "assignments": [ - 1389, - 1390, - 1391, - 1392, - 1393, - 1394 - ], + "assignments": [], "declarations": [ { "constant": false, - "id": 1389, + "id": 1462, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1274:5:9", + "scope": 1561, + "src": "1278:13:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, - "typeName": null, + "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": 1390, + "id": 1465, "name": "price", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1281:5:9", + "scope": 1561, + "src": "1301:13:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "typeName": null, + "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": 1391, + "id": 1468, "name": "_3", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1288:2:9", + "scope": 1561, + "src": "1324:16:9", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, - "typeName": null, + "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": 1392, - "name": "_4_", + "id": 1471, + "name": "_4", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1292:3:9", + "scope": 1561, + "src": "1350:16:9", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, - "typeName": null, + "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": 1393, + "id": 1474, "name": "_5", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1297:2:9", + "scope": 1561, + "src": "1376:16:9", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, - "typeName": null, + "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": 1394, + "id": 1477, "name": "_6", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1301:2:9", + "scope": 1561, + "src": "1402:10:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, - "typeName": null, + "typeName": { + "id": 1476, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1402:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, "value": null, "visibility": "internal" } ], - "id": 1404, - "initialValue": { + "id": 1478, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1402:10:9" + }, + { + "expression": { "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" + "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)" } - ], - "expression": { - "argumentTypes": [ + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "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": null, - "arguments": [ + "argumentTypes": [ { - "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_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ { - "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", - "typeString": "literal_string \"Videos\"" + "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": null, - "id": 1396, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1314:8:9", + "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_contract$_Registry_$1096", - "typeString": "contract Registry" + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" } }, - "id": 1397, + "id": 1490, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1314:20:9", + "names": [], + "nodeType": "FunctionCall", + "src": "1463:30:9", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" + "typeIdentifier": "t_address", + "typeString": "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", + "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_type$_t_contract$_Videos_$2270_$", - "typeString": "type(contract Videos)" + "typeIdentifier": "t_contract$_Videos_$2398", + "typeString": "contract Videos" } }, - "id": 1400, + "id": 1492, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "typeConversion", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:38:9", + "memberName": "get", + "nodeType": "MemberAccess", + "referencedDeclaration": 2397, + "src": "1456:42:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Videos_$2270", - "typeString": "contract Videos" + "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": 1401, + "id": 1494, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "get", - "nodeType": "MemberAccess", - "referencedDeclaration": 2269, - "src": "1307:42:9", + "names": [], + "nodeType": "FunctionCall", + "src": "1456:51: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)" + "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)" } }, - "id": 1403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:51:9", + "src": "1423:84: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)" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "VariableDeclarationStatement", - "src": "1269:89:9" + "id": 1496, + "nodeType": "ExpressionStatement", + "src": "1423:84:9" }, { "assignments": [ - 1406 + 1498 ], "declarations": [ { "constant": false, - "id": 1406, + "id": 1498, "name": "paratiiPart", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1368:19:9", + "scope": 1561, + "src": "1518:19:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1196,10 +1404,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1405, + "id": 1497, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1368:7:9", + "src": "1518:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1209,7 +1417,7 @@ "visibility": "internal" } ], - "id": 1417, + "id": 1509, "initialValue": { "argumentTypes": null, "arguments": [ @@ -1219,7 +1427,7 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 1415, + "id": 1507, "isConstant": false, "isLValue": false, "isPure": true, @@ -1227,14 +1435,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1413, + "id": 1505, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1431:2:9", + "src": "1581:2:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -1247,14 +1455,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3138", - "id": 1414, + "id": 1506, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1437:2:9", + "src": "1587:2:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -1262,7 +1470,7 @@ }, "value": "18" }, - "src": "1431:8:9", + "src": "1581:8:9", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" @@ -1284,18 +1492,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1409, + "id": 1501, "name": "redistributionPoolShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "1400:23:9", + "referencedDeclaration": 1572, + "src": "1550:23:9", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1410, + "id": 1502, "isConstant": false, "isLValue": false, "isPure": false, @@ -1303,7 +1511,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1400:25:9", + "src": "1550:25:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1319,32 +1527,32 @@ ], "expression": { "argumentTypes": null, - "id": 1407, + "id": 1499, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1390:5:9", + "referencedDeclaration": 1465, + "src": "1540:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1408, + "id": 1500, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 2687, - "src": "1390:9:9", + "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": 1411, + "id": 1503, "isConstant": false, "isLValue": false, "isPure": false, @@ -1352,27 +1560,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1390:36:9", + "src": "1540:36:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1412, + "id": 1504, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 2705, - "src": "1390:40:9", + "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": 1416, + "id": 1508, "isConstant": false, "isLValue": false, "isPure": false, @@ -1380,14 +1588,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1390:50:9", + "src": "1540:50:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "1368:72:9" + "src": "1518:72:9" }, { "expression": { @@ -1397,18 +1605,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1421, + "id": 1513, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1470:3:9", + "referencedDeclaration": 3344, + "src": "1620:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1422, + "id": 1514, "isConstant": false, "isLValue": false, "isPure": false, @@ -1416,7 +1624,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1470:10:9", + "src": "1620:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1427,12 +1635,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1424, + "id": 1516, "name": "avatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1490:6:9", + "referencedDeclaration": 1453, + "src": "1640:6:9", "typeDescriptions": { "typeIdentifier": "t_contract$_Avatar_$287", "typeString": "contract Avatar" @@ -1446,20 +1654,20 @@ "typeString": "contract Avatar" } ], - "id": 1423, + "id": 1515, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1482:7:9", + "src": "1632:7:9", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 1425, + "id": 1517, "isConstant": false, "isLValue": false, "isPure": false, @@ -1467,7 +1675,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1482:15:9", + "src": "1632:15:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1475,12 +1683,12 @@ }, { "argumentTypes": null, - "id": 1426, + "id": 1518, "name": "paratiiPart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1499:11:9", + "referencedDeclaration": 1498, + "src": "1649:11:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1504,32 +1712,32 @@ ], "expression": { "argumentTypes": null, - "id": 1418, + "id": 1510, "name": "avatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1450:6:9", + "referencedDeclaration": 1453, + "src": "1600:6:9", "typeDescriptions": { "typeIdentifier": "t_contract$_Avatar_$287", "typeString": "contract Avatar" } }, - "id": 1420, + "id": 1512, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1450:19:9", + "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": 1427, + "id": 1519, "isConstant": false, "isLValue": false, "isPure": false, @@ -1537,28 +1745,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1450:61:9", + "src": "1600:61:9", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1428, + "id": 1520, "nodeType": "ExpressionStatement", - "src": "1450:61:9" + "src": "1600:61:9" }, { "assignments": [ - 1430 + 1522 ], "declarations": [ { "constant": false, - "id": 1430, + "id": 1522, "name": "ownerPart", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1521:17:9", + "scope": 1561, + "src": "1671:17:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1566,10 +1774,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1429, + "id": 1521, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1521:7:9", + "src": "1671:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1579,18 +1787,18 @@ "visibility": "internal" } ], - "id": 1435, + "id": 1527, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1433, + "id": 1525, "name": "paratiiPart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1551:11:9", + "referencedDeclaration": 1498, + "src": "1701:11:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1606,32 +1814,32 @@ ], "expression": { "argumentTypes": null, - "id": 1431, + "id": 1523, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1541:5:9", + "referencedDeclaration": 1465, + "src": "1691:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1432, + "id": 1524, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1541:9:9", + "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": 1434, + "id": 1526, "isConstant": false, "isLValue": false, "isPure": false, @@ -1639,14 +1847,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1541:22:9", + "src": "1691:22:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "1521:42:9" + "src": "1671:42:9" }, { "expression": { @@ -1656,18 +1864,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1439, + "id": 1531, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1593:3:9", + "referencedDeclaration": 3344, + "src": "1743:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1440, + "id": 1532, "isConstant": false, "isLValue": false, "isPure": false, @@ -1675,7 +1883,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1593:10:9", + "src": "1743:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1683,12 +1891,12 @@ }, { "argumentTypes": null, - "id": 1441, + "id": 1533, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1389, - "src": "1605:5:9", + "referencedDeclaration": 1462, + "src": "1755:5:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1696,12 +1904,12 @@ }, { "argumentTypes": null, - "id": 1442, + "id": 1534, "name": "ownerPart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1430, - "src": "1612:9:9", + "referencedDeclaration": 1522, + "src": "1762:9:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1725,32 +1933,32 @@ ], "expression": { "argumentTypes": null, - "id": 1436, + "id": 1528, "name": "avatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1573:6:9", + "referencedDeclaration": 1453, + "src": "1723:6:9", "typeDescriptions": { "typeIdentifier": "t_contract$_Avatar_$287", "typeString": "contract Avatar" } }, - "id": 1438, + "id": 1530, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1573:19:9", + "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": 1443, + "id": 1535, "isConstant": false, "isLValue": false, "isPure": false, @@ -1758,15 +1966,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1573:49:9", + "src": "1723:49:9", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1444, + "id": 1536, "nodeType": "ExpressionStatement", - "src": "1573:49:9" + "src": "1723:49:9" }, { "expression": { @@ -1776,18 +1984,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1452, + "id": 1544, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1676:3:9", + "referencedDeclaration": 3344, + "src": "1826:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1453, + "id": 1545, "isConstant": false, "isLValue": false, "isPure": false, @@ -1795,7 +2003,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1676:10:9", + "src": "1826:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1803,12 +2011,12 @@ }, { "argumentTypes": null, - "id": 1454, + "id": 1546, "name": "videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1688:7:9", + "referencedDeclaration": 1445, + "src": "1838:7:9", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1816,12 +2024,12 @@ }, { "argumentTypes": null, - "id": 1455, + "id": 1547, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1697:5:9", + "referencedDeclaration": 1465, + "src": "1847:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1829,12 +2037,12 @@ }, { "argumentTypes": null, - "id": 1456, + "id": 1548, "name": "ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1375, - "src": "1704:8:9", + "referencedDeclaration": 1447, + "src": "1854:8:9", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1869,14 +2077,14 @@ { "argumentTypes": null, "hexValue": "53616c6573", - "id": 1448, + "id": 1540, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1659:7:9", + "src": "1809:7:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", @@ -1894,32 +2102,32 @@ ], "expression": { "argumentTypes": null, - "id": 1446, + "id": 1538, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1638:8:9", + "referencedDeclaration": 1418, + "src": "1788:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1447, + "id": 1539, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1638:20:9", + "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": 1449, + "id": 1541, "isConstant": false, "isLValue": false, "isPure": false, @@ -1927,7 +2135,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1638:29:9", + "src": "1788:29:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1941,18 +2149,18 @@ "typeString": "address" } ], - "id": 1445, + "id": 1537, "name": "Sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1277, - "src": "1632:5:9", + "referencedDeclaration": 1349, + "src": "1782:5:9", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Sales_$1277_$", + "typeIdentifier": "t_type$_t_contract$_Sales_$1349_$", "typeString": "type(contract Sales)" } }, - "id": 1450, + "id": 1542, "isConstant": false, "isLValue": false, "isPure": false, @@ -1960,27 +2168,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1632:36:9", + "src": "1782:36:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", + "typeIdentifier": "t_contract$_Sales_$1349", "typeString": "contract Sales" } }, - "id": 1451, + "id": 1543, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "create", "nodeType": "MemberAccess", - "referencedDeclaration": 1205, - "src": "1632:43:9", + "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": 1457, + "id": 1549, "isConstant": false, "isLValue": false, "isPure": false, @@ -1988,15 +2196,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1632:81:9", + "src": "1782:81:9", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1458, + "id": 1550, "nodeType": "ExpressionStatement", - "src": "1632:81:9" + "src": "1782:81:9" }, { "eventCall": { @@ -2004,12 +2212,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1460, + "id": 1552, "name": "videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1740:7:9", + "referencedDeclaration": 1445, + "src": "1890:7:9", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2019,18 +2227,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1461, + "id": 1553, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1749:3:9", + "referencedDeclaration": 3344, + "src": "1899:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1462, + "id": 1554, "isConstant": false, "isLValue": false, "isPure": false, @@ -2038,7 +2246,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1749:10:9", + "src": "1899:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2046,12 +2254,12 @@ }, { "argumentTypes": null, - "id": 1463, + "id": 1555, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1761:5:9", + "referencedDeclaration": 1465, + "src": "1911:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2073,18 +2281,18 @@ "typeString": "uint256" } ], - "id": 1459, + "id": 1551, "name": "LogBuyVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "1728:11:9", + "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": 1464, + "id": 1556, "isConstant": false, "isLValue": false, "isPure": false, @@ -2092,28 +2300,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1728:39:9", + "src": "1878:39:9", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1465, + "id": 1557, "nodeType": "EmitStatement", - "src": "1723:44:9" + "src": "1873:44:9" }, { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1466, + "id": 1558, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1784:4:9", + "src": "1934:4:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2121,15 +2329,15 @@ }, "value": "true" }, - "functionReturnParameters": 1379, - "id": 1467, + "functionReturnParameters": 1451, + "id": 1559, "nodeType": "Return", - "src": "1777:11:9" + "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": 1469, + "id": 1561, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2137,15 +2345,15 @@ "name": "buyVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 1376, + "id": 1448, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1373, + "id": 1445, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1032:14:9", "stateVariable": false, "storageLocation": "default", @@ -2154,7 +2362,7 @@ "typeString": "string" }, "typeName": { - "id": 1372, + "id": 1444, "name": "string", "nodeType": "ElementaryTypeName", "src": "1032:6:9", @@ -2168,10 +2376,10 @@ }, { "constant": false, - "id": 1375, + "id": 1447, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1048:15:9", "stateVariable": false, "storageLocation": "default", @@ -2180,7 +2388,7 @@ "typeString": "string" }, "typeName": { - "id": 1374, + "id": 1446, "name": "string", "nodeType": "ElementaryTypeName", "src": "1048:6:9", @@ -2197,15 +2405,15 @@ }, "payable": false, "returnParameters": { - "id": 1379, + "id": 1451, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1378, + "id": 1450, "name": "", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1080:4:9", "stateVariable": false, "storageLocation": "default", @@ -2214,7 +2422,7 @@ "typeString": "bool" }, "typeName": { - "id": 1377, + "id": 1449, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1080:4:9", @@ -2229,17 +2437,17 @@ ], "src": "1079:6:9" }, - "scope": 1481, - "src": "1014:781:9", + "scope": 1573, + "src": "1014:931:9", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1479, + "id": 1571, "nodeType": "Block", - "src": "1871:120:9", + "src": "2017:120:9", "statements": [ { "expression": { @@ -2248,14 +2456,14 @@ { "argumentTypes": null, "hexValue": "566964656f5265646973747269627574696f6e506f6f6c5368617265", - "id": 1476, + "id": 1568, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1953:30:9", + "src": "2099:30:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", @@ -2273,32 +2481,32 @@ ], "expression": { "argumentTypes": null, - "id": 1474, + "id": 1566, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1936:8:9", + "referencedDeclaration": 1418, + "src": "2082:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1475, + "id": 1567, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getUint", "nodeType": "MemberAccess", - "referencedDeclaration": 1039, - "src": "1936:16:9", + "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": 1477, + "id": 1569, "isConstant": false, "isLValue": false, "isPure": false, @@ -2306,21 +2514,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1936:48:9", + "src": "2082:48:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1473, - "id": 1478, + "functionReturnParameters": 1565, + "id": 1570, "nodeType": "Return", - "src": "1929:55:9" + "src": "2075:55:9" } ] }, "documentation": null, - "id": 1480, + "id": 1572, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2328,23 +2536,23 @@ "name": "redistributionPoolShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 1470, + "id": 1562, "nodeType": "ParameterList", "parameters": [], - "src": "1833:2:9" + "src": "1983:2:9" }, "payable": false, "returnParameters": { - "id": 1473, + "id": 1565, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1472, + "id": 1564, "name": "", "nodeType": "VariableDeclaration", - "scope": 1480, - "src": "1862:7:9", + "scope": 1572, + "src": "2008:7:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2352,10 +2560,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1471, + "id": 1563, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1862:7:9", + "src": "2008:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2365,33 +2573,33 @@ "visibility": "internal" } ], - "src": "1861:9:9" + "src": "2007:9:9" }, - "scope": 1481, - "src": "1801:190:9", + "scope": 1573, + "src": "1951:186:9", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1482, - "src": "360:1633:9" + "scope": 1574, + "src": "360:1779:9" } ], - "src": "0:1994:9" + "src": "0:2140:9" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Store.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Store.sol", "exportedSymbols": { "Store": [ - 1481 + 1573 ] }, - "id": 1482, + "id": 1574, "nodeType": "SourceUnit", "nodes": [ { - "id": 1327, + "id": 1399, "literals": [ "solidity", "^", @@ -2404,86 +2612,86 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 1328, + "id": 1400, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2751, + "scope": 1574, + "sourceUnit": 2894, "src": "26:55:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Avatar.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Avatar.sol", "file": "./Avatar.sol", - "id": 1329, + "id": 1401, "nodeType": "ImportDirective", - "scope": 1482, + "scope": 1574, "sourceUnit": 288, "src": "82:22:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 1330, + "id": 1402, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 872, + "scope": 1574, + "sourceUnit": 905, "src": "105:28:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1331, + "id": 1403, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1097, + "scope": 1574, + "sourceUnit": 1157, "src": "134:24:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Sales.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Sales.sol", "file": "./Sales.sol", - "id": 1332, + "id": 1404, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1278, + "scope": 1574, + "sourceUnit": 1350, "src": "159:21:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", "file": "./Users.sol", - "id": 1333, + "id": 1405, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 1998, + "scope": 1574, + "sourceUnit": 2111, "src": "181:21:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", "file": "./Videos.sol", - "id": 1334, + "id": 1406, "nodeType": "ImportDirective", - "scope": 1482, - "sourceUnit": 2271, + "scope": 1574, + "sourceUnit": 2399, "src": "203:22:9", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/debug/Debug.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/debug/Debug.sol", "file": "../debug/Debug.sol", - "id": 1335, + "id": 1407, "nodeType": "ImportDirective", - "scope": 1482, + "scope": 1574, "sourceUnit": 88, "src": "226:28:9", "symbolAliases": [], @@ -2495,17 +2703,17 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1336, + "id": 1408, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "378:7:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1337, + "id": 1409, "nodeType": "InheritanceSpecifier", "src": "378:7:9" }, @@ -2513,7 +2721,7 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1338, + "id": 1410, "name": "Debug", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 87, @@ -2523,45 +2731,45 @@ "typeString": "contract Debug" } }, - "id": 1339, + "id": 1411, "nodeType": "InheritanceSpecifier", "src": "387:5:9" } ], "contractDependencies": [ 87, - 2806 + 2949 ], "contractKind": "contract", "documentation": "@title Store\n@dev A Contract that wraps the native transfer function and logs an event.", "fullyImplemented": true, - "id": 1481, + "id": 1573, "linearizedBaseContracts": [ - 1481, + 1573, 87, - 2806 + 2949 ], "name": "Store", "nodeType": "ContractDefinition", "nodes": [ { - "id": 1342, + "id": 1414, "libraryName": { "contractScope": null, - "id": 1340, + "id": 1412, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2750, + "referencedDeclaration": 2893, "src": "406:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$2750", + "typeIdentifier": "t_contract$_SafeMath_$2893", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", "src": "400:27:9", "typeName": { - "id": 1341, + "id": 1413, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "419:7:9", @@ -2573,26 +2781,26 @@ }, { "constant": false, - "id": 1344, + "id": 1416, "name": "sales", "nodeType": "VariableDeclaration", - "scope": 1481, + "scope": 1573, "src": "433:18:9", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", + "typeIdentifier": "t_contract$_Sales_$1349", "typeString": "contract Sales" }, "typeName": { "contractScope": null, - "id": 1343, + "id": 1415, "name": "Sales", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1277, + "referencedDeclaration": 1349, "src": "433:5:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", + "typeIdentifier": "t_contract$_Sales_$1349", "typeString": "contract Sales" } }, @@ -2601,26 +2809,26 @@ }, { "constant": false, - "id": 1346, + "id": 1418, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1481, + "scope": 1573, "src": "457:24:9", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1345, + "id": 1417, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "457:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2630,20 +2838,20 @@ { "anonymous": false, "documentation": null, - "id": 1354, + "id": 1426, "name": "LogBuyVideo", "nodeType": "EventDefinition", "parameters": { - "id": 1353, + "id": 1425, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1348, + "id": 1420, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1354, + "scope": 1426, "src": "506:15:9", "stateVariable": false, "storageLocation": "default", @@ -2652,7 +2860,7 @@ "typeString": "string" }, "typeName": { - "id": 1347, + "id": 1419, "name": "string", "nodeType": "ElementaryTypeName", "src": "506:6:9", @@ -2666,11 +2874,11 @@ }, { "constant": false, - "id": 1350, + "id": 1422, "indexed": false, "name": "_buyer", "nodeType": "VariableDeclaration", - "scope": 1354, + "scope": 1426, "src": "523:14:9", "stateVariable": false, "storageLocation": "default", @@ -2679,7 +2887,7 @@ "typeString": "address" }, "typeName": { - "id": 1349, + "id": 1421, "name": "address", "nodeType": "ElementaryTypeName", "src": "523:7:9", @@ -2693,11 +2901,11 @@ }, { "constant": false, - "id": 1352, + "id": 1424, "indexed": false, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 1354, + "scope": 1426, "src": "539:11:9", "stateVariable": false, "storageLocation": "default", @@ -2706,7 +2914,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1351, + "id": 1423, "name": "uint", "nodeType": "ElementaryTypeName", "src": "539:4:9", @@ -2725,28 +2933,28 @@ }, { "body": { - "id": 1363, + "id": 1435, "nodeType": "Block", "src": "597:37:9", "statements": [ { "expression": { "argumentTypes": null, - "id": 1361, + "id": 1433, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1359, + "id": 1431, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, + "referencedDeclaration": 1418, "src": "607:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2754,31 +2962,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1360, + "id": 1432, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1356, + "referencedDeclaration": 1428, "src": "618:9:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "607:20:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1362, + "id": 1434, "nodeType": "ExpressionStatement", "src": "607:20:9" } ] }, "documentation": null, - "id": 1364, + "id": 1436, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -2786,31 +2994,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1357, + "id": 1429, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1356, + "id": 1428, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1364, + "scope": 1436, "src": "570:18:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1355, + "id": 1427, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "570:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2822,12 +3030,12 @@ }, "payable": false, "returnParameters": { - "id": 1358, + "id": 1430, "nodeType": "ParameterList", "parameters": [], "src": "597:0:9" }, - "scope": 1481, + "scope": 1573, "src": "558:76:9", "stateMutability": "nonpayable", "superFunction": null, @@ -2835,7 +3043,7 @@ }, { "body": { - "id": 1370, + "id": 1442, "nodeType": "Block", "src": "728:25:9", "statements": [ @@ -2845,21 +3053,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1367, + "id": 1439, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3206, - 3207 + 3349, + 3350 ], - "referencedDeclaration": 3206, + "referencedDeclaration": 3349, "src": "738:6:9", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1368, + "id": 1440, "isConstant": false, "isLValue": false, "isPure": false, @@ -2873,14 +3081,14 @@ "typeString": "tuple()" } }, - "id": 1369, + "id": 1441, "nodeType": "ExpressionStatement", "src": "738:8:9" } ] }, "documentation": null, - "id": 1371, + "id": 1443, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2888,19 +3096,19 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1365, + "id": 1437, "nodeType": "ParameterList", "parameters": [], "src": "718:2:9" }, "payable": false, "returnParameters": { - "id": 1366, + "id": 1438, "nodeType": "ParameterList", "parameters": [], "src": "728:0:9" }, - "scope": 1481, + "scope": 1573, "src": "709:44:9", "stateMutability": "nonpayable", "superFunction": null, @@ -2908,21 +3116,21 @@ }, { "body": { - "id": 1468, + "id": 1560, "nodeType": "Block", - "src": "1087:708:9", + "src": "1087:858:9", "statements": [ { "assignments": [ - 1381 + 1453 ], "declarations": [ { "constant": false, - "id": 1381, + "id": 1453, "name": "avatar", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1137:13:9", "stateVariable": false, "storageLocation": "default", @@ -2932,7 +3140,7 @@ }, "typeName": { "contractScope": null, - "id": 1380, + "id": 1452, "name": "Avatar", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 287, @@ -2946,7 +3154,7 @@ "visibility": "internal" } ], - "id": 1388, + "id": 1460, "initialValue": { "argumentTypes": null, "arguments": [ @@ -2956,7 +3164,7 @@ { "argumentTypes": null, "hexValue": "417661746172", - "id": 1385, + "id": 1457, "isConstant": false, "isLValue": false, "isPure": true, @@ -2981,32 +3189,32 @@ ], "expression": { "argumentTypes": null, - "id": 1383, + "id": 1455, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, + "referencedDeclaration": 1418, "src": "1160:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1384, + "id": 1456, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 1386, + "id": 1458, "isConstant": false, "isLValue": false, "isPure": false, @@ -3028,7 +3236,7 @@ "typeString": "address" } ], - "id": 1382, + "id": 1454, "name": "Avatar", "nodeType": "Identifier", "overloadedDeclarations": [], @@ -3039,7 +3247,7 @@ "typeString": "type(contract Avatar)" } }, - "id": 1387, + "id": 1459, "isConstant": false, "isLValue": false, "isPure": false, @@ -3057,292 +3265,500 @@ "src": "1137:54:9" }, { - "assignments": [ - 1389, - 1390, - 1391, - 1392, - 1393, - 1394 - ], + "assignments": [], "declarations": [ { "constant": false, - "id": 1389, + "id": 1462, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1274:5:9", + "scope": 1561, + "src": "1278:13:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, - "typeName": null, + "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": 1390, + "id": 1465, "name": "price", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1281:5:9", + "scope": 1561, + "src": "1301:13:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "typeName": null, + "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": 1391, + "id": 1468, "name": "_3", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1288:2:9", + "scope": 1561, + "src": "1324:16:9", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, - "typeName": null, + "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": 1392, - "name": "_4_", + "id": 1471, + "name": "_4", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1292:3:9", + "scope": 1561, + "src": "1350:16:9", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, - "typeName": null, + "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": 1393, + "id": 1474, "name": "_5", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1297:2:9", + "scope": 1561, + "src": "1376:16:9", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, - "typeName": null, + "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": 1394, + "id": 1477, "name": "_6", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1301:2:9", + "scope": 1561, + "src": "1402:10:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, - "typeName": null, + "typeName": { + "id": 1476, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1402:7:9", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, "value": null, "visibility": "internal" } ], - "id": 1404, - "initialValue": { + "id": 1478, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "1402:10:9" + }, + { + "expression": { "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" + "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)" } - ], - "expression": { - "argumentTypes": [ + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "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": null, - "arguments": [ + "argumentTypes": [ { - "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_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ { - "typeIdentifier": "t_stringliteral_ed4194c3d3576d84bc54d69a2c6f144769eb2c84e2a06099db4e77e6baf2b598", - "typeString": "literal_string \"Videos\"" + "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": null, - "id": 1396, - "name": "registry", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1314:8:9", + "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_contract$_Registry_$1096", - "typeString": "contract Registry" + "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", + "typeString": "function (string memory) view external returns (address)" } }, - "id": 1397, + "id": 1490, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "getContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1314:20:9", + "names": [], + "nodeType": "FunctionCall", + "src": "1463:30:9", "typeDescriptions": { - "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$", - "typeString": "function (string memory) view external returns (address)" + "typeIdentifier": "t_address", + "typeString": "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", + "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_type$_t_contract$_Videos_$2270_$", - "typeString": "type(contract Videos)" + "typeIdentifier": "t_contract$_Videos_$2398", + "typeString": "contract Videos" } }, - "id": 1400, + "id": 1492, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "typeConversion", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:38:9", + "memberName": "get", + "nodeType": "MemberAccess", + "referencedDeclaration": 2397, + "src": "1456:42:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Videos_$2270", - "typeString": "contract Videos" + "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": 1401, + "id": 1494, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "get", - "nodeType": "MemberAccess", - "referencedDeclaration": 2269, - "src": "1307:42:9", + "names": [], + "nodeType": "FunctionCall", + "src": "1456:51: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)" + "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)" } }, - "id": 1403, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1307:51:9", + "src": "1423:84: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)" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "nodeType": "VariableDeclarationStatement", - "src": "1269:89:9" + "id": 1496, + "nodeType": "ExpressionStatement", + "src": "1423:84:9" }, { "assignments": [ - 1406 + 1498 ], "declarations": [ { "constant": false, - "id": 1406, + "id": 1498, "name": "paratiiPart", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1368:19:9", + "scope": 1561, + "src": "1518:19:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3350,10 +3766,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1405, + "id": 1497, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1368:7:9", + "src": "1518:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3363,7 +3779,7 @@ "visibility": "internal" } ], - "id": 1417, + "id": 1509, "initialValue": { "argumentTypes": null, "arguments": [ @@ -3373,7 +3789,7 @@ "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" }, - "id": 1415, + "id": 1507, "isConstant": false, "isLValue": false, "isPure": true, @@ -3381,14 +3797,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1413, + "id": 1505, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1431:2:9", + "src": "1581:2:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -3401,14 +3817,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3138", - "id": 1414, + "id": 1506, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1437:2:9", + "src": "1587:2:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -3416,7 +3832,7 @@ }, "value": "18" }, - "src": "1431:8:9", + "src": "1581:8:9", "typeDescriptions": { "typeIdentifier": "t_rational_1000000000000000000_by_1", "typeString": "int_const 1000000000000000000" @@ -3438,18 +3854,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1409, + "id": 1501, "name": "redistributionPoolShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "1400:23:9", + "referencedDeclaration": 1572, + "src": "1550:23:9", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1410, + "id": 1502, "isConstant": false, "isLValue": false, "isPure": false, @@ -3457,7 +3873,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1400:25:9", + "src": "1550:25:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3473,32 +3889,32 @@ ], "expression": { "argumentTypes": null, - "id": 1407, + "id": 1499, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1390:5:9", + "referencedDeclaration": 1465, + "src": "1540:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1408, + "id": 1500, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 2687, - "src": "1390:9:9", + "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": 1411, + "id": 1503, "isConstant": false, "isLValue": false, "isPure": false, @@ -3506,27 +3922,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1390:36:9", + "src": "1540:36:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1412, + "id": 1504, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 2705, - "src": "1390:40:9", + "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": 1416, + "id": 1508, "isConstant": false, "isLValue": false, "isPure": false, @@ -3534,14 +3950,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1390:50:9", + "src": "1540:50:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "1368:72:9" + "src": "1518:72:9" }, { "expression": { @@ -3551,18 +3967,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1421, + "id": 1513, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1470:3:9", + "referencedDeclaration": 3344, + "src": "1620:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1422, + "id": 1514, "isConstant": false, "isLValue": false, "isPure": false, @@ -3570,7 +3986,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1470:10:9", + "src": "1620:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3581,12 +3997,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1424, + "id": 1516, "name": "avatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1490:6:9", + "referencedDeclaration": 1453, + "src": "1640:6:9", "typeDescriptions": { "typeIdentifier": "t_contract$_Avatar_$287", "typeString": "contract Avatar" @@ -3600,20 +4016,20 @@ "typeString": "contract Avatar" } ], - "id": 1423, + "id": 1515, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1482:7:9", + "src": "1632:7:9", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 1425, + "id": 1517, "isConstant": false, "isLValue": false, "isPure": false, @@ -3621,7 +4037,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1482:15:9", + "src": "1632:15:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3629,12 +4045,12 @@ }, { "argumentTypes": null, - "id": 1426, + "id": 1518, "name": "paratiiPart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1499:11:9", + "referencedDeclaration": 1498, + "src": "1649:11:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3658,32 +4074,32 @@ ], "expression": { "argumentTypes": null, - "id": 1418, + "id": 1510, "name": "avatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1450:6:9", + "referencedDeclaration": 1453, + "src": "1600:6:9", "typeDescriptions": { "typeIdentifier": "t_contract$_Avatar_$287", "typeString": "contract Avatar" } }, - "id": 1420, + "id": 1512, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1450:19:9", + "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": 1427, + "id": 1519, "isConstant": false, "isLValue": false, "isPure": false, @@ -3691,28 +4107,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1450:61:9", + "src": "1600:61:9", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1428, + "id": 1520, "nodeType": "ExpressionStatement", - "src": "1450:61:9" + "src": "1600:61:9" }, { "assignments": [ - 1430 + 1522 ], "declarations": [ { "constant": false, - "id": 1430, + "id": 1522, "name": "ownerPart", "nodeType": "VariableDeclaration", - "scope": 1469, - "src": "1521:17:9", + "scope": 1561, + "src": "1671:17:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3720,10 +4136,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1429, + "id": 1521, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1521:7:9", + "src": "1671:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3733,18 +4149,18 @@ "visibility": "internal" } ], - "id": 1435, + "id": 1527, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1433, + "id": 1525, "name": "paratiiPart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1406, - "src": "1551:11:9", + "referencedDeclaration": 1498, + "src": "1701:11:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3760,32 +4176,32 @@ ], "expression": { "argumentTypes": null, - "id": 1431, + "id": 1523, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1541:5:9", + "referencedDeclaration": 1465, + "src": "1691:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1432, + "id": 1524, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 2725, - "src": "1541:9:9", + "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": 1434, + "id": 1526, "isConstant": false, "isLValue": false, "isPure": false, @@ -3793,14 +4209,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1541:22:9", + "src": "1691:22:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "1521:42:9" + "src": "1671:42:9" }, { "expression": { @@ -3810,18 +4226,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1439, + "id": 1531, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1593:3:9", + "referencedDeclaration": 3344, + "src": "1743:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1440, + "id": 1532, "isConstant": false, "isLValue": false, "isPure": false, @@ -3829,7 +4245,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1593:10:9", + "src": "1743:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3837,12 +4253,12 @@ }, { "argumentTypes": null, - "id": 1441, + "id": 1533, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1389, - "src": "1605:5:9", + "referencedDeclaration": 1462, + "src": "1755:5:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3850,12 +4266,12 @@ }, { "argumentTypes": null, - "id": 1442, + "id": 1534, "name": "ownerPart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1430, - "src": "1612:9:9", + "referencedDeclaration": 1522, + "src": "1762:9:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3879,32 +4295,32 @@ ], "expression": { "argumentTypes": null, - "id": 1436, + "id": 1528, "name": "avatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "1573:6:9", + "referencedDeclaration": 1453, + "src": "1723:6:9", "typeDescriptions": { "typeIdentifier": "t_contract$_Avatar_$287", "typeString": "contract Avatar" } }, - "id": 1438, + "id": 1530, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 286, - "src": "1573:19:9", + "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": 1443, + "id": 1535, "isConstant": false, "isLValue": false, "isPure": false, @@ -3912,15 +4328,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1573:49:9", + "src": "1723:49:9", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1444, + "id": 1536, "nodeType": "ExpressionStatement", - "src": "1573:49:9" + "src": "1723:49:9" }, { "expression": { @@ -3930,18 +4346,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1452, + "id": 1544, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1676:3:9", + "referencedDeclaration": 3344, + "src": "1826:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1453, + "id": 1545, "isConstant": false, "isLValue": false, "isPure": false, @@ -3949,7 +4365,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1676:10:9", + "src": "1826:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3957,12 +4373,12 @@ }, { "argumentTypes": null, - "id": 1454, + "id": 1546, "name": "videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1688:7:9", + "referencedDeclaration": 1445, + "src": "1838:7:9", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3970,12 +4386,12 @@ }, { "argumentTypes": null, - "id": 1455, + "id": 1547, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1697:5:9", + "referencedDeclaration": 1465, + "src": "1847:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3983,12 +4399,12 @@ }, { "argumentTypes": null, - "id": 1456, + "id": 1548, "name": "ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1375, - "src": "1704:8:9", + "referencedDeclaration": 1447, + "src": "1854:8:9", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4023,14 +4439,14 @@ { "argumentTypes": null, "hexValue": "53616c6573", - "id": 1448, + "id": 1540, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1659:7:9", + "src": "1809:7:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9fb5e9aeb2c8d6aa28d534c68969570c65173eca6ace3f0748a830d3b58d1253", @@ -4048,32 +4464,32 @@ ], "expression": { "argumentTypes": null, - "id": 1446, + "id": 1538, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1638:8:9", + "referencedDeclaration": 1418, + "src": "1788:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1447, + "id": 1539, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "1638:20:9", + "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": 1449, + "id": 1541, "isConstant": false, "isLValue": false, "isPure": false, @@ -4081,7 +4497,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1638:29:9", + "src": "1788:29:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4095,18 +4511,18 @@ "typeString": "address" } ], - "id": 1445, + "id": 1537, "name": "Sales", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1277, - "src": "1632:5:9", + "referencedDeclaration": 1349, + "src": "1782:5:9", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Sales_$1277_$", + "typeIdentifier": "t_type$_t_contract$_Sales_$1349_$", "typeString": "type(contract Sales)" } }, - "id": 1450, + "id": 1542, "isConstant": false, "isLValue": false, "isPure": false, @@ -4114,27 +4530,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1632:36:9", + "src": "1782:36:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Sales_$1277", + "typeIdentifier": "t_contract$_Sales_$1349", "typeString": "contract Sales" } }, - "id": 1451, + "id": 1543, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "create", "nodeType": "MemberAccess", - "referencedDeclaration": 1205, - "src": "1632:43:9", + "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": 1457, + "id": 1549, "isConstant": false, "isLValue": false, "isPure": false, @@ -4142,15 +4558,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1632:81:9", + "src": "1782:81:9", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1458, + "id": 1550, "nodeType": "ExpressionStatement", - "src": "1632:81:9" + "src": "1782:81:9" }, { "eventCall": { @@ -4158,12 +4574,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1460, + "id": 1552, "name": "videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1373, - "src": "1740:7:9", + "referencedDeclaration": 1445, + "src": "1890:7:9", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4173,18 +4589,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1461, + "id": 1553, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1749:3:9", + "referencedDeclaration": 3344, + "src": "1899:3:9", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1462, + "id": 1554, "isConstant": false, "isLValue": false, "isPure": false, @@ -4192,7 +4608,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1749:10:9", + "src": "1899:10:9", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4200,12 +4616,12 @@ }, { "argumentTypes": null, - "id": 1463, + "id": 1555, "name": "price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1390, - "src": "1761:5:9", + "referencedDeclaration": 1465, + "src": "1911:5:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4227,18 +4643,18 @@ "typeString": "uint256" } ], - "id": 1459, + "id": 1551, "name": "LogBuyVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1354, - "src": "1728:11:9", + "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": 1464, + "id": 1556, "isConstant": false, "isLValue": false, "isPure": false, @@ -4246,28 +4662,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1728:39:9", + "src": "1878:39:9", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1465, + "id": 1557, "nodeType": "EmitStatement", - "src": "1723:44:9" + "src": "1873:44:9" }, { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1466, + "id": 1558, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "1784:4:9", + "src": "1934:4:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4275,15 +4691,15 @@ }, "value": "true" }, - "functionReturnParameters": 1379, - "id": 1467, + "functionReturnParameters": 1451, + "id": 1559, "nodeType": "Return", - "src": "1777:11:9" + "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": 1469, + "id": 1561, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4291,15 +4707,15 @@ "name": "buyVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 1376, + "id": 1448, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1373, + "id": 1445, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1032:14:9", "stateVariable": false, "storageLocation": "default", @@ -4308,7 +4724,7 @@ "typeString": "string" }, "typeName": { - "id": 1372, + "id": 1444, "name": "string", "nodeType": "ElementaryTypeName", "src": "1032:6:9", @@ -4322,10 +4738,10 @@ }, { "constant": false, - "id": 1375, + "id": 1447, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1048:15:9", "stateVariable": false, "storageLocation": "default", @@ -4334,7 +4750,7 @@ "typeString": "string" }, "typeName": { - "id": 1374, + "id": 1446, "name": "string", "nodeType": "ElementaryTypeName", "src": "1048:6:9", @@ -4351,15 +4767,15 @@ }, "payable": false, "returnParameters": { - "id": 1379, + "id": 1451, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1378, + "id": 1450, "name": "", "nodeType": "VariableDeclaration", - "scope": 1469, + "scope": 1561, "src": "1080:4:9", "stateVariable": false, "storageLocation": "default", @@ -4368,7 +4784,7 @@ "typeString": "bool" }, "typeName": { - "id": 1377, + "id": 1449, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1080:4:9", @@ -4383,17 +4799,17 @@ ], "src": "1079:6:9" }, - "scope": 1481, - "src": "1014:781:9", + "scope": 1573, + "src": "1014:931:9", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1479, + "id": 1571, "nodeType": "Block", - "src": "1871:120:9", + "src": "2017:120:9", "statements": [ { "expression": { @@ -4402,14 +4818,14 @@ { "argumentTypes": null, "hexValue": "566964656f5265646973747269627574696f6e506f6f6c5368617265", - "id": 1476, + "id": 1568, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1953:30:9", + "src": "2099:30:9", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_3c910653081477075993249719a0455a01128c4f6e3381bd692d78afd4bbdac3", @@ -4427,32 +4843,32 @@ ], "expression": { "argumentTypes": null, - "id": 1474, + "id": 1566, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1346, - "src": "1936:8:9", + "referencedDeclaration": 1418, + "src": "2082:8:9", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1475, + "id": 1567, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getUint", "nodeType": "MemberAccess", - "referencedDeclaration": 1039, - "src": "1936:16:9", + "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": 1477, + "id": 1569, "isConstant": false, "isLValue": false, "isPure": false, @@ -4460,21 +4876,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1936:48:9", + "src": "2082:48:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1473, - "id": 1478, + "functionReturnParameters": 1565, + "id": 1570, "nodeType": "Return", - "src": "1929:55:9" + "src": "2075:55:9" } ] }, "documentation": null, - "id": 1480, + "id": 1572, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4482,23 +4898,23 @@ "name": "redistributionPoolShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 1470, + "id": 1562, "nodeType": "ParameterList", "parameters": [], - "src": "1833:2:9" + "src": "1983:2:9" }, "payable": false, "returnParameters": { - "id": 1473, + "id": 1565, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1472, + "id": 1564, "name": "", "nodeType": "VariableDeclaration", - "scope": 1480, - "src": "1862:7:9", + "scope": 1572, + "src": "2008:7:9", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4506,10 +4922,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1471, + "id": 1563, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1862:7:9", + "src": "2008:7:9", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4519,20 +4935,20 @@ "visibility": "internal" } ], - "src": "1861:9:9" + "src": "2007:9:9" }, - "scope": 1481, - "src": "1801:190:9", + "scope": 1573, + "src": "1951:186:9", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1482, - "src": "360:1633:9" + "scope": 1574, + "src": "360:1779:9" } ], - "src": "0:1994:9" + "src": "0:2140:9" }, "compiler": { "name": "solc", @@ -4540,5 +4956,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.678Z" + "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 37c25ce..66ca2ff 100644 --- a/build/contracts/TcrPlaceholder.json +++ b/build/contracts/TcrPlaceholder.json @@ -368,24 +368,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/TcrPlaceholder.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/TcrPlaceholder.sol", "exportedSymbols": { "TcrPlaceholder": [ - 1854 + 1967 ] }, - "id": 1855, + "id": 1968, "nodeType": "SourceUnit", "nodes": [ { - "id": 1483, + "id": 1575, "literals": [ "solidity", "^", @@ -398,32 +398,32 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1484, + "id": 1576, "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 2807, + "scope": 1968, + "sourceUnit": 2950, "src": "26:59:10", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 1485, + "id": 1577, "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 872, + "scope": 1968, + "sourceUnit": 905, "src": "86:28:10", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1486, + "id": 1578, "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 1097, + "scope": 1968, + "sourceUnit": 1157, "src": "115:24:10", "symbolAliases": [], "unitAlias": "" @@ -434,31 +434,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1487, + "id": 1579, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "264:7:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1488, + "id": 1580, "nodeType": "InheritanceSpecifier", "src": "264:7:10" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": "WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n THIS IS JUST A PLACEHOLDER..", "fullyImplemented": true, - "id": 1854, + "id": 1967, "linearizedBaseContracts": [ - 1854, - 2806 + 1967, + 2949 ], "name": "TcrPlaceholder", "nodeType": "ContractDefinition", @@ -466,20 +466,20 @@ { "anonymous": false, "documentation": null, - "id": 1494, + "id": 1586, "name": "_Application", "nodeType": "EventDefinition", "parameters": { - "id": 1493, + "id": 1585, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1490, + "id": 1582, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 1494, + "scope": 1586, "src": "330:14:10", "stateVariable": false, "storageLocation": "default", @@ -488,7 +488,7 @@ "typeString": "string" }, "typeName": { - "id": 1489, + "id": 1581, "name": "string", "nodeType": "ElementaryTypeName", "src": "330:6:10", @@ -502,11 +502,11 @@ }, { "constant": false, - "id": 1492, + "id": 1584, "indexed": false, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 1494, + "scope": 1586, "src": "346:12:10", "stateVariable": false, "storageLocation": "default", @@ -515,7 +515,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1491, + "id": 1583, "name": "uint", "nodeType": "ElementaryTypeName", "src": "346:4:10", @@ -535,20 +535,20 @@ { "anonymous": false, "documentation": null, - "id": 1498, + "id": 1590, "name": "_NewVideoWhitelisted", "nodeType": "EventDefinition", "parameters": { - "id": 1497, + "id": 1589, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1496, + "id": 1588, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 1498, + "scope": 1590, "src": "392:14:10", "stateVariable": false, "storageLocation": "default", @@ -557,7 +557,7 @@ "typeString": "string" }, "typeName": { - "id": 1495, + "id": 1587, "name": "string", "nodeType": "ElementaryTypeName", "src": "392:6:10", @@ -576,14 +576,14 @@ }, { "canonicalName": "TcrPlaceholder.Listing", - "id": 1509, + "id": 1601, "members": [ { "constant": false, - "id": 1500, + "id": 1592, "name": "applicationExpiry", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "439:22:10", "stateVariable": false, "storageLocation": "default", @@ -592,7 +592,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1499, + "id": 1591, "name": "uint", "nodeType": "ElementaryTypeName", "src": "439:4:10", @@ -606,10 +606,10 @@ }, { "constant": false, - "id": 1502, + "id": 1594, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "505:16:10", "stateVariable": false, "storageLocation": "default", @@ -618,7 +618,7 @@ "typeString": "bool" }, "typeName": { - "id": 1501, + "id": 1593, "name": "bool", "nodeType": "ElementaryTypeName", "src": "505:4:10", @@ -632,10 +632,10 @@ }, { "constant": false, - "id": 1504, + "id": 1596, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "560:13:10", "stateVariable": false, "storageLocation": "default", @@ -644,7 +644,7 @@ "typeString": "address" }, "typeName": { - "id": 1503, + "id": 1595, "name": "address", "nodeType": "ElementaryTypeName", "src": "560:7:10", @@ -658,10 +658,10 @@ }, { "constant": false, - "id": 1506, + "id": 1598, "name": "unstakedDeposit", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "615:20:10", "stateVariable": false, "storageLocation": "default", @@ -670,7 +670,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1505, + "id": 1597, "name": "uint", "nodeType": "ElementaryTypeName", "src": "615:4:10", @@ -684,10 +684,10 @@ }, { "constant": false, - "id": 1508, + "id": 1600, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "708:16:10", "stateVariable": false, "storageLocation": "default", @@ -696,7 +696,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1507, + "id": 1599, "name": "uint", "nodeType": "ElementaryTypeName", "src": "708:4:10", @@ -711,27 +711,27 @@ ], "name": "Listing", "nodeType": "StructDefinition", - "scope": 1854, + "scope": 1967, "src": "414:352:10", "visibility": "public" }, { "constant": false, - "id": 1513, + "id": 1605, "name": "listings", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "819:43:10", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" }, "typeName": { - "id": 1512, + "id": 1604, "keyType": { - "id": 1510, + "id": 1602, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "827:7:10", @@ -743,18 +743,18 @@ "nodeType": "Mapping", "src": "819:27:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" }, "valueType": { "contractScope": null, - "id": 1511, + "id": 1603, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, + "referencedDeclaration": 1601, "src": "838:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } } @@ -764,26 +764,26 @@ }, { "constant": false, - "id": 1515, + "id": 1607, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "869:25:10", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" }, "typeName": { "contractScope": null, - "id": 1514, + "id": 1606, "name": "ParatiiToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, + "referencedDeclaration": 904, "src": "869:12:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -792,10 +792,10 @@ }, { "constant": false, - "id": 1517, + "id": 1609, "name": "minDeposit", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "900:22:10", "stateVariable": true, "storageLocation": "default", @@ -804,7 +804,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1516, + "id": 1608, "name": "uint", "nodeType": "ElementaryTypeName", "src": "900:4:10", @@ -818,10 +818,10 @@ }, { "constant": false, - "id": 1519, + "id": 1611, "name": "applyStageLen", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "928:25:10", "stateVariable": true, "storageLocation": "default", @@ -830,7 +830,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1518, + "id": 1610, "name": "uint", "nodeType": "ElementaryTypeName", "src": "928:4:10", @@ -844,26 +844,26 @@ }, { "constant": false, - "id": 1521, + "id": 1613, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "959:24:10", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1520, + "id": 1612, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "959:8:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -872,25 +872,25 @@ }, { "body": { - "id": 1555, + "id": 1647, "nodeType": "Block", "src": "1255:196:10", "statements": [ { "expression": { "argumentTypes": null, - "id": 1535, + "id": 1627, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1532, + "id": 1624, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "1265:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -903,18 +903,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1533, + "id": 1625, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1273:3:10", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1534, + "id": 1626, "isConstant": false, "isLValue": false, "isPure": false, @@ -934,28 +934,28 @@ "typeString": "address" } }, - "id": 1536, + "id": 1628, "nodeType": "ExpressionStatement", "src": "1265:18:10" }, { "expression": { "argumentTypes": null, - "id": 1539, + "id": 1631, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1537, + "id": 1629, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, + "referencedDeclaration": 1613, "src": "1293:8:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -963,45 +963,45 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1538, + "id": 1630, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, + "referencedDeclaration": 1615, "src": "1304:9:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "1293:20:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1540, + "id": 1632, "nodeType": "ExpressionStatement", "src": "1293:20:10" }, { "expression": { "argumentTypes": null, - "id": 1545, + "id": 1637, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1541, + "id": 1633, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1515, + "referencedDeclaration": 1607, "src": "1323:5:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -1012,11 +1012,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1543, + "id": 1635, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1525, + "referencedDeclaration": 1617, "src": "1344:10:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1031,18 +1031,18 @@ "typeString": "address" } ], - "id": 1542, + "id": 1634, "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 871, + "referencedDeclaration": 904, "src": "1331:12:10", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", "typeString": "type(contract ParatiiToken)" } }, - "id": 1544, + "id": 1636, "isConstant": false, "isLValue": false, "isPure": false, @@ -1052,35 +1052,35 @@ "nodeType": "FunctionCall", "src": "1331:24:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, "src": "1323:32:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 1546, + "id": 1638, "nodeType": "ExpressionStatement", "src": "1323:32:10" }, { "expression": { "argumentTypes": null, - "id": 1549, + "id": 1641, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1547, + "id": 1639, "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, + "referencedDeclaration": 1609, "src": "1365:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1091,11 +1091,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1548, + "id": 1640, "name": "_minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1527, + "referencedDeclaration": 1619, "src": "1378:11:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1108,25 +1108,25 @@ "typeString": "uint256" } }, - "id": 1550, + "id": 1642, "nodeType": "ExpressionStatement", "src": "1365:24:10" }, { "expression": { "argumentTypes": null, - "id": 1553, + "id": 1645, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1551, + "id": 1643, "name": "applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1519, + "referencedDeclaration": 1611, "src": "1399:13:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1137,11 +1137,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1552, + "id": 1644, "name": "_applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1529, + "referencedDeclaration": 1621, "src": "1415:14:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1154,14 +1154,14 @@ "typeString": "uint256" } }, - "id": 1554, + "id": 1646, "nodeType": "ExpressionStatement", "src": "1399:30:10" } ] }, "documentation": null, - "id": 1556, + "id": 1648, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -1169,31 +1169,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1530, + "id": 1622, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1523, + "id": 1615, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1140:18:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1522, + "id": 1614, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "1140:8:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1202,10 +1202,10 @@ }, { "constant": false, - "id": 1525, + "id": 1617, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1168:18:10", "stateVariable": false, "storageLocation": "default", @@ -1214,7 +1214,7 @@ "typeString": "address" }, "typeName": { - "id": 1524, + "id": 1616, "name": "address", "nodeType": "ElementaryTypeName", "src": "1168:7:10", @@ -1228,10 +1228,10 @@ }, { "constant": false, - "id": 1527, + "id": 1619, "name": "_minDeposit", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1196:16:10", "stateVariable": false, "storageLocation": "default", @@ -1240,7 +1240,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1526, + "id": 1618, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1196:4:10", @@ -1254,10 +1254,10 @@ }, { "constant": false, - "id": 1529, + "id": 1621, "name": "_applyStageLen", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1222:19:10", "stateVariable": false, "storageLocation": "default", @@ -1266,7 +1266,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1528, + "id": 1620, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1222:4:10", @@ -1283,12 +1283,12 @@ }, "payable": false, "returnParameters": { - "id": 1531, + "id": 1623, "nodeType": "ParameterList", "parameters": [], "src": "1255:0:10" }, - "scope": 1854, + "scope": 1967, "src": "1119:332:10", "stateMutability": "nonpayable", "superFunction": null, @@ -1296,9 +1296,9 @@ }, { "body": { - "id": 1628, + "id": 1723, "nodeType": "Block", - "src": "1818:584:10", + "src": "1818:602:10", "statements": [ { "expression": { @@ -1306,7 +1306,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1567, + "id": 1659, "isConstant": false, "isLValue": false, "isPure": false, @@ -1320,11 +1320,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1565, + "id": 1657, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1558, + "referencedDeclaration": 1650, "src": "1851:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", @@ -1339,18 +1339,18 @@ "typeString": "string calldata" } ], - "id": 1564, + "id": 1656, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1742, + "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": 1566, + "id": 1658, "isConstant": false, "isLValue": false, "isPure": false, @@ -1377,21 +1377,21 @@ "typeString": "bool" } ], - "id": 1563, + "id": 1655, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1828:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1568, + "id": 1660, "isConstant": false, "isLValue": false, "isPure": false, @@ -1405,7 +1405,7 @@ "typeString": "tuple()" } }, - "id": 1569, + "id": 1661, "nodeType": "ExpressionStatement", "src": "1828:33:10" }, @@ -1415,7 +1415,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1574, + "id": 1666, "isConstant": false, "isLValue": false, "isPure": false, @@ -1429,11 +1429,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1572, + "id": 1664, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1558, + "referencedDeclaration": 1650, "src": "1891:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", @@ -1448,18 +1448,18 @@ "typeString": "string calldata" } ], - "id": 1571, + "id": 1663, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1759, + "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": 1573, + "id": 1665, "isConstant": false, "isLValue": false, "isPure": false, @@ -1486,21 +1486,21 @@ "typeString": "bool" } ], - "id": 1570, + "id": 1662, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1871:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1575, + "id": 1667, "isConstant": false, "isLValue": false, "isPure": false, @@ -1514,7 +1514,7 @@ "typeString": "tuple()" } }, - "id": 1576, + "id": 1668, "nodeType": "ExpressionStatement", "src": "1871:30:10" }, @@ -1528,18 +1528,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1580, + "id": 1672, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1578, + "id": 1670, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, + "referencedDeclaration": 1652, "src": "1919:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1550,11 +1550,11 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1579, + "id": 1671, "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, + "referencedDeclaration": 1609, "src": "1930:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1575,21 +1575,21 @@ "typeString": "bool" } ], - "id": 1577, + "id": 1669, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1911:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1581, + "id": 1673, "isConstant": false, "isLValue": false, "isPure": false, @@ -1603,37 +1603,37 @@ "typeString": "tuple()" } }, - "id": 1582, + "id": 1674, "nodeType": "ExpressionStatement", "src": "1911:30:10" }, { "assignments": [ - 1584 + 1676 ], "declarations": [ { "constant": false, - "id": 1584, + "id": 1676, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1629, + "scope": 1724, "src": "1973:23:10", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" }, "typeName": { "contractScope": null, - "id": 1583, + "id": 1675, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, + "referencedDeclaration": 1601, "src": "1973:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } }, @@ -1641,59 +1641,111 @@ "visibility": "internal" } ], - "id": 1590, + "id": 1685, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1585, + "id": 1677, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, + "referencedDeclaration": 1605, "src": "1999:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1589, + "id": 1684, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2018:8:10", + "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_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1586, + "id": 1678, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "2008:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1588, + "id": 1683, "isConstant": false, "isLValue": false, "isPure": false, @@ -1701,7 +1753,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2008:19:10", + "src": "2008:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1712,19 +1764,19 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1999:29:10", + "src": "1999:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1973:55:10" + "src": "1973:73:10" }, { "expression": { "argumentTypes": null, - "id": 1596, + "id": 1691, "isConstant": false, "isLValue": false, "isPure": false, @@ -1733,26 +1785,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1591, + "id": 1686, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2038:7:10", + "referencedDeclaration": 1676, + "src": "2056:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1593, + "id": 1688, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2038:13:10", + "referencedDeclaration": 1596, + "src": "2056:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1764,18 +1816,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1594, + "id": 1689, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2054:3:10", + "referencedDeclaration": 3344, + "src": "2072:3:10", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1595, + "id": 1690, "isConstant": false, "isLValue": false, "isPure": false, @@ -1783,21 +1835,21 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2054:10:10", + "src": "2072:10:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2038:26:10", + "src": "2056:26:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1597, + "id": 1692, "nodeType": "ExpressionStatement", - "src": "2038:26:10" + "src": "2056:26:10" }, { "expression": { @@ -1810,26 +1862,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1601, + "id": 1696, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2166:7:10", + "referencedDeclaration": 1676, + "src": "2184:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1602, + "id": 1697, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2166:13:10", + "referencedDeclaration": 1596, + "src": "2184:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1837,25 +1889,25 @@ }, { "argumentTypes": null, - "id": 1603, + "id": 1698, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3250, - "src": "2181:4:10", + "referencedDeclaration": 3393, + "src": "2199:4:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", "typeString": "contract TcrPlaceholder" } }, { "argumentTypes": null, - "id": 1604, + "id": 1699, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2187:7:10", + "referencedDeclaration": 1652, + "src": "2205:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1869,7 +1921,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", "typeString": "contract TcrPlaceholder" }, { @@ -1879,32 +1931,32 @@ ], "expression": { "argumentTypes": null, - "id": 1599, + "id": 1694, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "2147:5:10", + "referencedDeclaration": 1607, + "src": "2165:5:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 1600, + "id": 1695, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3040, - "src": "2147:18:10", + "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": 1605, + "id": 1700, "isConstant": false, "isLValue": false, "isPure": false, @@ -1912,7 +1964,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2147:48:10", + "src": "2165:48:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1926,21 +1978,21 @@ "typeString": "bool" } ], - "id": 1598, + "id": 1693, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "2139:7:10", + "referencedDeclaration": 3347, + "src": "2157:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1606, + "id": 1701, "isConstant": false, "isLValue": false, "isPure": false, @@ -1948,20 +2000,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2139:57:10", + "src": "2157:57:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1607, + "id": 1702, "nodeType": "ExpressionStatement", - "src": "2139:57:10" + "src": "2157:57:10" }, { "expression": { "argumentTypes": null, - "id": 1615, + "id": 1710, "isConstant": false, "isLValue": false, "isPure": false, @@ -1970,26 +2022,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1608, + "id": 1703, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2249:7:10", + "referencedDeclaration": 1676, + "src": "2267:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1610, + "id": 1705, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "2249:25:10", + "referencedDeclaration": 1592, + "src": "2267:25:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2003,7 +2055,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1614, + "id": 1709, "isConstant": false, "isLValue": false, "isPure": false, @@ -2012,18 +2064,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1611, + "id": 1706, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "2277:5:10", + "referencedDeclaration": 3334, + "src": "2295:5:10", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 1612, + "id": 1707, "isConstant": false, "isLValue": false, "isPure": false, @@ -2031,7 +2083,7 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2277:12:10", + "src": "2295:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2041,37 +2093,37 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1613, + "id": 1708, "name": "applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "2292:13:10", + "referencedDeclaration": 1611, + "src": "2310:13:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2277:28:10", + "src": "2295:28:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2249:56:10", + "src": "2267:56:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1616, + "id": 1711, "nodeType": "ExpressionStatement", - "src": "2249:56:10" + "src": "2267:56:10" }, { "expression": { "argumentTypes": null, - "id": 1621, + "id": 1716, "isConstant": false, "isLValue": false, "isPure": false, @@ -2080,26 +2132,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1617, + "id": 1712, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2315:7:10", + "referencedDeclaration": 1676, + "src": "2333:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1619, + "id": 1714, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "2315:23:10", + "referencedDeclaration": 1598, + "src": "2333:23:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2109,26 +2161,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1620, + "id": 1715, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2341:7:10", + "referencedDeclaration": 1652, + "src": "2359:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2315:33:10", + "src": "2333:33:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1622, + "id": 1717, "nodeType": "ExpressionStatement", - "src": "2315:33:10" + "src": "2333:33:10" }, { "eventCall": { @@ -2136,12 +2188,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1624, + "id": 1719, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2377:8:10", + "referencedDeclaration": 1650, + "src": "2395:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -2149,12 +2201,12 @@ }, { "argumentTypes": null, - "id": 1625, + "id": 1720, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2387:7:10", + "referencedDeclaration": 1652, + "src": "2405:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2172,18 +2224,18 @@ "typeString": "uint256" } ], - "id": 1623, + "id": 1718, "name": "_Application", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1494, - "src": "2364:12:10", + "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": 1626, + "id": 1721, "isConstant": false, "isLValue": false, "isPure": false, @@ -2191,20 +2243,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2364:31:10", + "src": "2382:31:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1627, + "id": 1722, "nodeType": "EmitStatement", - "src": "2359:36:10" + "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": 1629, + "id": 1724, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2212,15 +2264,15 @@ "name": "apply", "nodeType": "FunctionDefinition", "parameters": { - "id": 1561, + "id": 1653, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1558, + "id": 1650, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1629, + "scope": 1724, "src": "1778:15:10", "stateVariable": false, "storageLocation": "default", @@ -2229,7 +2281,7 @@ "typeString": "string" }, "typeName": { - "id": 1557, + "id": 1649, "name": "string", "nodeType": "ElementaryTypeName", "src": "1778:6:10", @@ -2243,10 +2295,10 @@ }, { "constant": false, - "id": 1560, + "id": 1652, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1629, + "scope": 1724, "src": "1795:12:10", "stateVariable": false, "storageLocation": "default", @@ -2255,7 +2307,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1559, + "id": 1651, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1795:4:10", @@ -2272,26 +2324,26 @@ }, "payable": false, "returnParameters": { - "id": 1562, + "id": 1654, "nodeType": "ParameterList", "parameters": [], "src": "1818:0:10" }, - "scope": 1854, - "src": "1763:639:10", + "scope": 1967, + "src": "1763:657:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1634, + "id": 1729, "nodeType": "Block", - "src": "2614:8:10", + "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": 1635, + "id": 1730, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2299,16 +2351,16 @@ "name": "deposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1632, + "id": 1727, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1631, + "id": 1726, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "2592:11:10", + "scope": 1730, + "src": "2610:11:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2316,10 +2368,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1630, + "id": 1725, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2592:4:10", + "src": "2610:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2329,30 +2381,30 @@ "visibility": "internal" } ], - "src": "2591:13:10" + "src": "2609:13:10" }, "payable": false, "returnParameters": { - "id": 1633, + "id": 1728, "nodeType": "ParameterList", "parameters": [], - "src": "2614:0:10" + "src": "2632:0:10" }, - "scope": 1854, - "src": "2575:47:10", + "scope": 1967, + "src": "2593:47:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1640, + "id": 1735, "nodeType": "Block", - "src": "2788:8:10", + "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": 1641, + "id": 1736, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2360,16 +2412,16 @@ "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 1638, + "id": 1733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1637, + "id": 1732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1641, - "src": "2766:11:10", + "scope": 1736, + "src": "2784:11:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2377,10 +2429,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1636, + "id": 1731, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2766:4:10", + "src": "2784:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2390,54 +2442,54 @@ "visibility": "internal" } ], - "src": "2765:13:10" + "src": "2783:13:10" }, "payable": false, "returnParameters": { - "id": 1639, + "id": 1734, "nodeType": "ParameterList", "parameters": [], - "src": "2788:0:10" + "src": "2806:0:10" }, - "scope": 1854, - "src": "2748:48:10", + "scope": 1967, + "src": "2766:48:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1672, + "id": 1770, "nodeType": "Block", - "src": "2978:421:10", + "src": "2996:439:10", "statements": [ { "assignments": [ - 1647 + 1742 ], "declarations": [ { "constant": false, - "id": 1647, + "id": 1742, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2988:23:10", + "scope": 1771, + "src": "3006:23:10", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" }, "typeName": { "contractScope": null, - "id": 1646, + "id": 1741, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "2988:7:10", + "referencedDeclaration": 1601, + "src": "3006:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } }, @@ -2445,59 +2497,111 @@ "visibility": "internal" } ], - "id": 1653, + "id": 1751, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1648, + "id": 1743, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "3014:8:10", + "referencedDeclaration": 1605, + "src": "3032:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1652, + "id": 1750, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1650, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3033:8:10", + "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_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1649, + "id": 1744, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3023:9:10", + "referencedDeclaration": 3338, + "src": "3041:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1651, + "id": 1749, "isConstant": false, "isLValue": false, "isPure": false, @@ -2505,7 +2609,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3023:19:10", + "src": "3041:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2516,14 +2620,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3014:29:10", + "src": "3032:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "2988:55:10" + "src": "3006:73:10" }, { "expression": { @@ -2535,7 +2639,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1659, + "id": 1757, "isConstant": false, "isLValue": false, "isPure": false, @@ -2544,18 +2648,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1655, + "id": 1753, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3062:3:10", + "referencedDeclaration": 3344, + "src": "3098:3:10", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1656, + "id": 1754, "isConstant": false, "isLValue": false, "isPure": false, @@ -2563,7 +2667,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3062:10:10", + "src": "3098:10:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2575,32 +2679,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1657, + "id": 1755, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1647, - "src": "3076:7:10", + "referencedDeclaration": 1742, + "src": "3112:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1658, + "id": 1756, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "3076:13:10", + "referencedDeclaration": 1596, + "src": "3112:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3062:27:10", + "src": "3098:27:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2614,21 +2718,21 @@ "typeString": "bool" } ], - "id": 1654, + "id": 1752, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "3054:7:10", + "referencedDeclaration": 3347, + "src": "3090:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1660, + "id": 1758, "isConstant": false, "isLValue": false, "isPure": false, @@ -2636,15 +2740,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3054:36:10", + "src": "3090:36:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1661, + "id": 1759, "nodeType": "ExpressionStatement", - "src": "3054:36:10" + "src": "3090:36:10" }, { "expression": { @@ -2655,12 +2759,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1664, + "id": 1762, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3122:8:10", + "referencedDeclaration": 1738, + "src": "3158:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -2674,18 +2778,18 @@ "typeString": "string calldata" } ], - "id": 1663, + "id": 1761, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "3108:13:10", + "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": 1665, + "id": 1763, "isConstant": false, "isLValue": false, "isPure": false, @@ -2693,7 +2797,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3108:23:10", + "src": "3144:23:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2707,21 +2811,21 @@ "typeString": "bool" } ], - "id": 1662, + "id": 1760, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "3100:7:10", + "referencedDeclaration": 3347, + "src": "3136:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1666, + "id": 1764, "isConstant": false, "isLValue": false, "isPure": false, @@ -2729,15 +2833,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3100:32:10", + "src": "3136:32:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1667, + "id": 1765, "nodeType": "ExpressionStatement", - "src": "3100:32:10" + "src": "3136:32:10" }, { "expression": { @@ -2745,12 +2849,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1669, + "id": 1767, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3383:8:10", + "referencedDeclaration": 1738, + "src": "3419:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -2764,18 +2868,18 @@ "typeString": "string calldata" } ], - "id": 1668, + "id": 1766, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3370:12:10", + "referencedDeclaration": 1966, + "src": "3406:12:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1670, + "id": 1768, "isConstant": false, "isLValue": false, "isPure": false, @@ -2783,20 +2887,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3370:22:10", + "src": "3406:22:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1671, + "id": 1769, "nodeType": "ExpressionStatement", - "src": "3370:22:10" + "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": 1673, + "id": 1771, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2804,16 +2908,16 @@ "name": "exit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1644, + "id": 1739, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1643, + "id": 1738, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2952:15:10", + "scope": 1771, + "src": "2970:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2821,10 +2925,10 @@ "typeString": "string" }, "typeName": { - "id": 1642, + "id": 1737, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2952:6:10", + "src": "2970:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2834,26 +2938,26 @@ "visibility": "internal" } ], - "src": "2951:17:10" + "src": "2969:17:10" }, "payable": false, "returnParameters": { - "id": 1645, + "id": 1740, "nodeType": "ParameterList", "parameters": [], - "src": "2978:0:10" + "src": "2996:0:10" }, - "scope": 1854, - "src": "2938:461:10", + "scope": 1967, + "src": "2956:479:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1684, + "id": 1782, "nodeType": "Block", - "src": "3582:39:10", + "src": "3618:39:10", "statements": [ { "expression": { @@ -2861,12 +2965,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1681, + "id": 1779, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1675, - "src": "3605:8:10", + "referencedDeclaration": 1773, + "src": "3641:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2880,18 +2984,18 @@ "typeString": "string memory" } ], - "id": 1680, + "id": 1778, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3592:12:10", + "referencedDeclaration": 1966, + "src": "3628:12:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1682, + "id": 1780, "isConstant": false, "isLValue": false, "isPure": false, @@ -2899,57 +3003,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3592:22:10", + "src": "3628:22:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1683, + "id": 1781, "nodeType": "ExpressionStatement", - "src": "3592:22:10" + "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": 1685, + "id": 1783, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1678, + "id": 1776, "modifierName": { "argumentTypes": null, - "id": 1677, + "id": 1775, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "3572:9:10", + "referencedDeclaration": 2923, + "src": "3608:9:10", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "3572:9:10" + "src": "3608:9:10" } ], "name": "removeListing", "nodeType": "FunctionDefinition", "parameters": { - "id": 1676, + "id": 1774, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1675, + "id": 1773, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1685, - "src": "3548:15:10", + "scope": 1783, + "src": "3584:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2957,10 +3061,10 @@ "typeString": "string" }, "typeName": { - "id": 1674, + "id": 1772, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3548:6:10", + "src": "3584:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2970,26 +3074,26 @@ "visibility": "internal" } ], - "src": "3547:17:10" + "src": "3583:17:10" }, "payable": false, "returnParameters": { - "id": 1679, + "id": 1777, "nodeType": "ParameterList", "parameters": [], - "src": "3582:0:10" + "src": "3618:0:10" }, - "scope": 1854, - "src": "3525:96:10", + "scope": 1967, + "src": "3561:96:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1707, + "id": 1805, "nodeType": "Block", - "src": "3900:191:10", + "src": "3936:191:10", "statements": [ { "condition": { @@ -2997,12 +3101,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1691, + "id": 1789, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3931:8:10", + "referencedDeclaration": 1785, + "src": "3967:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3016,18 +3120,18 @@ "typeString": "string memory" } ], - "id": 1690, + "id": 1788, "name": "canBeWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1815, - "src": "3914:16:10", + "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": 1692, + "id": 1790, "isConstant": false, "isLValue": false, "isPure": false, @@ -3035,16 +3139,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3914:26:10", + "src": "3950:26:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 1705, + "id": 1803, "nodeType": "Block", - "src": "4052:33:10", + "src": "4088:33:10", "statements": [ { "expression": { @@ -3052,21 +3156,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1702, + "id": 1800, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3206, - 3207 + 3349, + 3350 ], - "referencedDeclaration": 3206, - "src": "4066:6:10", + "referencedDeclaration": 3349, + "src": "4102:6:10", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1703, + "id": 1801, "isConstant": false, "isLValue": false, "isPure": false, @@ -3074,25 +3178,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4066:8:10", + "src": "4102:8:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1704, + "id": 1802, "nodeType": "ExpressionStatement", - "src": "4066:8:10" + "src": "4102:8:10" } ] }, - "id": 1706, + "id": 1804, "nodeType": "IfStatement", - "src": "3910:175:10", + "src": "3946:175:10", "trueBody": { - "id": 1701, + "id": 1799, "nodeType": "Block", - "src": "3942:104:10", + "src": "3978:104:10", "statements": [ { "expression": { @@ -3100,12 +3204,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1694, + "id": 1792, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3977:8:10", + "referencedDeclaration": 1785, + "src": "4013:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3119,18 +3223,18 @@ "typeString": "string memory" } ], - "id": 1693, + "id": 1791, "name": "whitelistApplication", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1727, - "src": "3956:20:10", + "referencedDeclaration": 1828, + "src": "3992:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1695, + "id": 1793, "isConstant": false, "isLValue": false, "isPure": false, @@ -3138,15 +3242,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3956:30:10", + "src": "3992:30:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1696, + "id": 1794, "nodeType": "ExpressionStatement", - "src": "3956:30:10" + "src": "3992:30:10" }, { "eventCall": { @@ -3154,12 +3258,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1698, + "id": 1796, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "4026:8:10", + "referencedDeclaration": 1785, + "src": "4062:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3173,18 +3277,18 @@ "typeString": "string memory" } ], - "id": 1697, + "id": 1795, "name": "_NewVideoWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1498, - "src": "4005:20:10", + "referencedDeclaration": 1590, + "src": "4041:20:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1699, + "id": 1797, "isConstant": false, "isLValue": false, "isPure": false, @@ -3192,15 +3296,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4005:30:10", + "src": "4041:30:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1700, + "id": 1798, "nodeType": "EmitStatement", - "src": "4000:35:10" + "src": "4036:35:10" } ] } @@ -3208,7 +3312,7 @@ ] }, "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, + "id": 1806, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3216,16 +3320,16 @@ "name": "updateStatus", "nodeType": "FunctionDefinition", "parameters": { - "id": 1688, + "id": 1786, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1687, + "id": 1785, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1708, - "src": "3876:15:10", + "scope": 1806, + "src": "3912:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3233,10 +3337,10 @@ "typeString": "string" }, "typeName": { - "id": 1686, + "id": 1784, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3876:6:10", + "src": "3912:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3246,39 +3350,39 @@ "visibility": "internal" } ], - "src": "3875:17:10" + "src": "3911:17:10" }, "payable": false, "returnParameters": { - "id": 1689, + "id": 1787, "nodeType": "ParameterList", "parameters": [], - "src": "3900:0:10" + "src": "3936:0:10" }, - "scope": 1854, - "src": "3854:237:10", + "scope": 1967, + "src": "3890:237:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1726, + "id": 1827, "nodeType": "Block", - "src": "4432:105:10", + "src": "4468:123:10", "statements": [ { "assignments": [ - 1714 + 1812 ], "declarations": [ { "constant": false, - "id": 1714, + "id": 1812, "name": "videoHash", "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4442:17:10", + "scope": 1828, + "src": "4478:17:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3286,10 +3390,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1713, + "id": 1811, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4442:7:10", + "src": "4478:7:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3299,43 +3403,95 @@ "visibility": "internal" } ], - "id": 1718, + "id": 1819, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1716, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1710, - "src": "4472:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1715, + "id": 1813, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4462:9:10", + "referencedDeclaration": 3338, + "src": "4498:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1717, + "id": 1818, "isConstant": false, "isLValue": false, "isPure": false, @@ -3343,19 +3499,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4462:19:10", + "src": "4498:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "4442:39:10" + "src": "4478:57:10" }, { "expression": { "argumentTypes": null, - "id": 1724, + "id": 1825, "isConstant": false, "isLValue": false, "isPure": false, @@ -3366,26 +3522,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1719, + "id": 1820, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4492:8:10", + "referencedDeclaration": 1605, + "src": "4546:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1721, + "id": 1822, "indexExpression": { "argumentTypes": null, - "id": 1720, + "id": 1821, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1714, - "src": "4501:9:10", + "referencedDeclaration": 1812, + "src": "4555:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3396,21 +3552,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4492:19:10", + "src": "4546:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1722, + "id": 1823, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4492:31:10", + "referencedDeclaration": 1594, + "src": "4546:31:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3421,14 +3577,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 1723, + "id": 1824, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "4526:4:10", + "src": "4580:4:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3436,20 +3592,20 @@ }, "value": "true" }, - "src": "4492:38:10", + "src": "4546:38:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1725, + "id": 1826, "nodeType": "ExpressionStatement", - "src": "4492:38:10" + "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": 1727, + "id": 1828, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3457,16 +3613,16 @@ "name": "whitelistApplication", "nodeType": "FunctionDefinition", "parameters": { - "id": 1711, + "id": 1809, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1710, + "id": 1808, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4407:15:10", + "scope": 1828, + "src": "4443:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3474,10 +3630,10 @@ "typeString": "string" }, "typeName": { - "id": 1709, + "id": 1807, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4407:6:10", + "src": "4443:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3487,26 +3643,26 @@ "visibility": "internal" } ], - "src": "4406:17:10" + "src": "4442:17:10" }, "payable": false, "returnParameters": { - "id": 1712, + "id": 1810, "nodeType": "ParameterList", "parameters": [], - "src": "4432:0:10" + "src": "4468:0:10" }, - "scope": 1854, - "src": "4377:160:10", + "scope": 1967, + "src": "4413:178:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 1741, + "id": 1845, "nodeType": "Block", - "src": "4952:65:10", + "src": "5006:83:10", "statements": [ { "expression": { @@ -3515,54 +3671,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1734, + "id": 1835, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4969:8:10", + "referencedDeclaration": 1605, + "src": "5023:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1738, + "id": 1842, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1736, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1729, - "src": "4988:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1735, + "id": 1836, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4978:9:10", + "referencedDeclaration": 3338, + "src": "5032:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1737, + "id": 1841, "isConstant": false, "isLValue": false, "isPure": false, @@ -3570,7 +3778,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4978:19:10", + "src": "5032:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3581,35 +3789,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4969:29:10", + "src": "5023:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1739, + "id": 1843, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4969:41:10", + "referencedDeclaration": 1594, + "src": "5023:59:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1733, - "id": 1740, + "functionReturnParameters": 1834, + "id": 1844, "nodeType": "Return", - "src": "4962:48:10" + "src": "5016:66:10" } ] }, "documentation": "@dev returns true if video is whitelisted", - "id": 1742, + "id": 1846, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3617,16 +3825,16 @@ "name": "isWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1730, + "id": 1831, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1729, + "id": 1830, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4896:15:10", + "scope": 1846, + "src": "4950:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3634,10 +3842,10 @@ "typeString": "string" }, "typeName": { - "id": 1728, + "id": 1829, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4896:6:10", + "src": "4950:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3647,20 +3855,20 @@ "visibility": "internal" } ], - "src": "4895:17:10" + "src": "4949:17:10" }, "payable": false, "returnParameters": { - "id": 1733, + "id": 1834, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1732, + "id": 1833, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4934:16:10", + "scope": 1846, + "src": "4988:16:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3668,10 +3876,10 @@ "typeString": "bool" }, "typeName": { - "id": 1731, + "id": 1832, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4934:4:10", + "src": "4988:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3681,19 +3889,19 @@ "visibility": "internal" } ], - "src": "4933:18:10" + "src": "4987:18:10" }, - "scope": 1854, - "src": "4873:144:10", + "scope": 1967, + "src": "4927:162:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1758, + "id": 1865, "nodeType": "Block", - "src": "5154:75:10", + "src": "5226:93:10", "statements": [ { "expression": { @@ -3702,7 +3910,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1756, + "id": 1863, "isConstant": false, "isLValue": false, "isPure": false, @@ -3713,54 +3921,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1749, + "id": 1853, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "5171:8:10", + "referencedDeclaration": 1605, + "src": "5243:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1753, + "id": 1860, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1751, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "5190:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1750, + "id": 1854, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "5180:9:10", + "referencedDeclaration": 3338, + "src": "5252:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1752, + "id": 1859, "isConstant": false, "isLValue": false, "isPure": false, @@ -3768,7 +4028,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5180:19:10", + "src": "5252:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3779,21 +4039,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5171:29:10", + "src": "5243:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1754, + "id": 1861, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "5171:47:10", + "referencedDeclaration": 1592, + "src": "5243:65:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3804,14 +4064,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1755, + "id": 1862, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5221:1:10", + "src": "5311:1:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -3819,21 +4079,21 @@ }, "value": "0" }, - "src": "5171:51:10", + "src": "5243:69:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1748, - "id": 1757, + "functionReturnParameters": 1852, + "id": 1864, "nodeType": "Return", - "src": "5164:58:10" + "src": "5236:76:10" } ] }, "documentation": null, - "id": 1759, + "id": 1866, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3841,16 +4101,16 @@ "name": "appWasMade", "nodeType": "FunctionDefinition", "parameters": { - "id": 1745, + "id": 1849, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1744, + "id": 1848, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5103:15:10", + "scope": 1866, + "src": "5175:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3858,10 +4118,10 @@ "typeString": "string" }, "typeName": { - "id": 1743, + "id": 1847, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5103:6:10", + "src": "5175:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3871,20 +4131,20 @@ "visibility": "internal" } ], - "src": "5102:17:10" + "src": "5174:17:10" }, "payable": false, "returnParameters": { - "id": 1748, + "id": 1852, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1747, + "id": 1851, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5141:11:10", + "scope": 1866, + "src": "5213:11:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3892,10 +4152,10 @@ "typeString": "bool" }, "typeName": { - "id": 1746, + "id": 1850, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5141:4:10", + "src": "5213:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3905,19 +4165,19 @@ "visibility": "internal" } ], - "src": "5140:13:10" + "src": "5212:13:10" }, - "scope": 1854, - "src": "5083:146:10", + "scope": 1967, + "src": "5155:164:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1771, + "id": 1878, "nodeType": "Block", - "src": "5367:48:10", + "src": "5457:48:10", "statements": [ { "expression": { @@ -3926,19 +4186,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1769, + "id": 1876, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1766, + "id": 1873, "name": "_termDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1761, - "src": "5384:9:10", + "referencedDeclaration": 1868, + "src": "5474:9:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3950,18 +4210,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1767, + "id": 1874, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "5396:5:10", + "referencedDeclaration": 3334, + "src": "5486:5:10", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 1768, + "id": 1875, "isConstant": false, "isLValue": false, "isPure": false, @@ -3969,27 +4229,27 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5396:12:10", + "src": "5486:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5384:24:10", + "src": "5474:24:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1765, - "id": 1770, + "functionReturnParameters": 1872, + "id": 1877, "nodeType": "Return", - "src": "5377:31:10" + "src": "5467:31:10" } ] }, "documentation": "@dev returns true if the provided termDate has passed", - "id": 1772, + "id": 1879, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3997,16 +4257,16 @@ "name": "isExpired", "nodeType": "FunctionDefinition", "parameters": { - "id": 1762, + "id": 1869, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1761, + "id": 1868, "name": "_termDate", "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5316:14:10", + "scope": 1879, + "src": "5406:14:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4014,10 +4274,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1760, + "id": 1867, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5316:4:10", + "src": "5406:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4027,20 +4287,20 @@ "visibility": "internal" } ], - "src": "5315:16:10" + "src": "5405:16:10" }, "payable": false, "returnParameters": { - "id": 1765, + "id": 1872, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1764, + "id": 1871, "name": "expired", "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5353:12:10", + "scope": 1879, + "src": "5443:12:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4048,10 +4308,10 @@ "typeString": "bool" }, "typeName": { - "id": 1763, + "id": 1870, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5353:4:10", + "src": "5443:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4061,43 +4321,43 @@ "visibility": "internal" } ], - "src": "5352:14:10" + "src": "5442:14:10" }, - "scope": 1854, - "src": "5297:118:10", + "scope": 1967, + "src": "5387:118:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1779, + "id": 1886, "nodeType": "Block", - "src": "5473:34:10", + "src": "5563:34:10", "statements": [ { "expression": { "argumentTypes": null, - "id": 1777, + "id": 1884, "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "5490:10:10", + "referencedDeclaration": 1609, + "src": "5580:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1776, - "id": 1778, + "functionReturnParameters": 1883, + "id": 1885, "nodeType": "Return", - "src": "5483:17:10" + "src": "5573:17:10" } ] }, "documentation": null, - "id": 1780, + "id": 1887, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4105,23 +4365,23 @@ "name": "getMinDeposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1773, + "id": 1880, "nodeType": "ParameterList", "parameters": [], - "src": "5443:2:10" + "src": "5533:2:10" }, "payable": false, "returnParameters": { - "id": 1776, + "id": 1883, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1775, + "id": 1882, "name": "", "nodeType": "VariableDeclaration", - "scope": 1780, - "src": "5467:4:10", + "scope": 1887, + "src": "5557:4:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4129,10 +4389,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1774, + "id": 1881, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5467:4:10", + "src": "5557:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4142,32 +4402,32 @@ "visibility": "internal" } ], - "src": "5466:6:10" + "src": "5556:6:10" }, - "scope": 1854, - "src": "5421:86:10", + "scope": 1967, + "src": "5511:86:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1814, + "id": 1924, "nodeType": "Block", - "src": "5758:393:10", + "src": "5848:411:10", "statements": [ { "assignments": [ - 1788 + 1895 ], "declarations": [ { "constant": false, - "id": 1788, + "id": 1895, "name": "videoHash", "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5768:17:10", + "scope": 1925, + "src": "5858:17:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4175,10 +4435,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1787, + "id": 1894, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5768:7:10", + "src": "5858:7:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4188,43 +4448,95 @@ "visibility": "internal" } ], - "id": 1792, + "id": 1902, "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, + "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": 3195, - "src": "5788:9:10", + "referencedDeclaration": 3338, + "src": "5878:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1791, + "id": 1901, "isConstant": false, "isLValue": false, "isPure": false, @@ -4232,14 +4544,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5788:19:10", + "src": "5878:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "5768:39:10" + "src": "5858:57:10" }, { "condition": { @@ -4248,7 +4560,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1807, + "id": 1917, "isConstant": false, "isLValue": false, "isPure": false, @@ -4259,7 +4571,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1802, + "id": 1912, "isConstant": false, "isLValue": false, "isPure": false, @@ -4269,12 +4581,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1794, + "id": 1904, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "5982:8:10", + "referencedDeclaration": 1889, + "src": "6090:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4288,18 +4600,18 @@ "typeString": "string memory" } ], - "id": 1793, + "id": 1903, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1759, - "src": "5971:10:10", + "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": 1795, + "id": 1905, "isConstant": false, "isLValue": false, "isPure": false, @@ -4307,7 +4619,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5971:20:10", + "src": "6079:20:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4324,26 +4636,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1797, + "id": 1907, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6017:8:10", + "referencedDeclaration": 1605, + "src": "6125:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1799, + "id": 1909, "indexExpression": { "argumentTypes": null, - "id": 1798, + "id": 1908, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1788, - "src": "6026:9:10", + "referencedDeclaration": 1895, + "src": "6134:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4354,21 +4666,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6017:19:10", + "src": "6125:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1800, + "id": 1910, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "6017:37:10", + "referencedDeclaration": 1592, + "src": "6125:37:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4382,18 +4694,18 @@ "typeString": "uint256" } ], - "id": 1796, + "id": 1906, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6007:9:10", + "referencedDeclaration": 1879, + "src": "6115:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 1801, + "id": 1911, "isConstant": false, "isLValue": false, "isPure": false, @@ -4401,13 +4713,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6007:48:10", + "src": "6115:48:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5971:84:10", + "src": "6079:84:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4417,7 +4729,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 1806, + "id": 1916, "isConstant": false, "isLValue": false, "isPure": false, @@ -4425,18 +4737,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6071:24:10", + "src": "6179:24:10", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1804, + "id": 1914, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "6086:8:10", + "referencedDeclaration": 1889, + "src": "6194:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4450,18 +4762,18 @@ "typeString": "string memory" } ], - "id": 1803, + "id": 1913, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "6072:13:10", + "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": 1805, + "id": 1915, "isConstant": false, "isLValue": false, "isPure": false, @@ -4469,7 +4781,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6072:23:10", + "src": "6180:23:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4480,33 +4792,33 @@ "typeString": "bool" } }, - "src": "5971:124:10", + "src": "6079:124:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1811, + "id": 1921, "nodeType": "IfStatement", - "src": "5954:168:10", + "src": "6062:168:10", "trueBody": { - "id": 1810, + "id": 1920, "nodeType": "Block", - "src": "6106:16:10", + "src": "6214:16:10", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1808, + "id": 1918, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6115:4:10", + "src": "6223:4:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4514,10 +4826,10 @@ }, "value": "true" }, - "functionReturnParameters": 1786, - "id": 1809, + "functionReturnParameters": 1893, + "id": 1919, "nodeType": "Return", - "src": "6108:11:10" + "src": "6216:11:10" } ] } @@ -4526,14 +4838,14 @@ "expression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1812, + "id": 1922, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6139:5:10", + "src": "6247:5:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4541,15 +4853,15 @@ }, "value": "false" }, - "functionReturnParameters": 1786, - "id": 1813, + "functionReturnParameters": 1893, + "id": 1923, "nodeType": "Return", - "src": "6132:12:10" + "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": 1815, + "id": 1925, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4557,16 +4869,16 @@ "name": "canBeWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1783, + "id": 1890, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1782, + "id": 1889, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5714:15:10", + "scope": 1925, + "src": "5804:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4574,10 +4886,10 @@ "typeString": "string" }, "typeName": { - "id": 1781, + "id": 1888, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5714:6:10", + "src": "5804:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4587,20 +4899,20 @@ "visibility": "internal" } ], - "src": "5713:17:10" + "src": "5803:17:10" }, "payable": false, "returnParameters": { - "id": 1786, + "id": 1893, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1785, + "id": 1892, "name": "", "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5752:4:10", + "scope": 1925, + "src": "5842:4:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4608,10 +4920,10 @@ "typeString": "bool" }, "typeName": { - "id": 1784, + "id": 1891, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5752:4:10", + "src": "5842:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4621,32 +4933,32 @@ "visibility": "internal" } ], - "src": "5751:6:10" + "src": "5841:6:10" }, - "scope": 1854, - "src": "5688:463:10", + "scope": 1967, + "src": "5778:481:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1852, + "id": 1965, "nodeType": "Block", - "src": "6346:328:10", + "src": "6454:346:10", "statements": [ { "assignments": [ - 1821 + 1931 ], "declarations": [ { "constant": false, - "id": 1821, + "id": 1931, "name": "videoHash", "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6356:17:10", + "scope": 1966, + "src": "6464:17:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4654,10 +4966,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1820, + "id": 1930, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "6356:7:10", + "src": "6464:7:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4667,43 +4979,95 @@ "visibility": "internal" } ], - "id": 1825, + "id": 1938, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1823, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1817, - "src": "6386:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1822, + "id": 1932, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "6376:9:10", + "referencedDeclaration": 3338, + "src": "6484:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1824, + "id": 1937, "isConstant": false, "isLValue": false, "isPure": false, @@ -4711,42 +5075,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6376:19:10", + "src": "6484:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "6356:39:10" + "src": "6464:57:10" }, { "assignments": [ - 1827 + 1940 ], "declarations": [ { "constant": false, - "id": 1827, + "id": 1940, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6405:23:10", + "scope": 1966, + "src": "6531:23:10", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" }, "typeName": { "contractScope": null, - "id": 1826, + "id": 1939, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "6405:7:10", + "referencedDeclaration": 1601, + "src": "6531:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } }, @@ -4754,31 +5118,31 @@ "visibility": "internal" } ], - "id": 1831, + "id": 1944, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1828, + "id": 1941, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6431:8:10", + "referencedDeclaration": 1605, + "src": "6557:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1830, + "id": 1943, "indexExpression": { "argumentTypes": null, - "id": 1829, + "id": 1942, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6440:9:10", + "referencedDeclaration": 1931, + "src": "6566:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4789,14 +5153,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6431:19:10", + "src": "6557:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6405:45:10" + "src": "6531:45:10" }, { "condition": { @@ -4805,7 +5169,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1835, + "id": 1948, "isConstant": false, "isLValue": false, "isPure": false, @@ -4814,26 +5178,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1832, + "id": 1945, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6526:7:10", + "referencedDeclaration": 1940, + "src": "6652:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1833, + "id": 1946, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6526:23:10", + "referencedDeclaration": 1598, + "src": "6652:23:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4844,14 +5208,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1834, + "id": 1947, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6552:1:10", + "src": "6678:1:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -4859,16 +5223,16 @@ }, "value": "0" }, - "src": "6526:27:10", + "src": "6652:27:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1846, + "id": 1959, "nodeType": "IfStatement", - "src": "6522:108:10", + "src": "6648:108:10", "trueBody": { "expression": { "argumentTypes": null, @@ -4880,26 +5244,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1839, + "id": 1952, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6590:7:10", + "referencedDeclaration": 1940, + "src": "6716:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1840, + "id": 1953, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "6590:13:10", + "referencedDeclaration": 1596, + "src": "6716:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4909,26 +5273,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1841, + "id": 1954, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6605:7:10", + "referencedDeclaration": 1940, + "src": "6731:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1842, + "id": 1955, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6605:23:10", + "referencedDeclaration": 1598, + "src": "6731:23:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4948,32 +5312,32 @@ ], "expression": { "argumentTypes": null, - "id": 1837, + "id": 1950, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "6575:5:10", + "referencedDeclaration": 1607, + "src": "6701:5:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 1838, + "id": 1951, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "6575:14:10", + "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": 1843, + "id": 1956, "isConstant": false, "isLValue": false, "isPure": false, @@ -4981,7 +5345,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6575:54:10", + "src": "6701:54:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4995,21 +5359,21 @@ "typeString": "bool" } ], - "id": 1836, + "id": 1949, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "6567:7:10", + "referencedDeclaration": 3347, + "src": "6693:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1844, + "id": 1957, "isConstant": false, "isLValue": false, "isPure": false, @@ -5017,21 +5381,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6567:63:10", + "src": "6693:63:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1845, + "id": 1958, "nodeType": "ExpressionStatement", - "src": "6567:63:10" + "src": "6693:63:10" } }, { "expression": { "argumentTypes": null, - "id": 1850, + "id": 1963, "isConstant": false, "isLValue": false, "isPure": false, @@ -5039,31 +5403,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "6641:26:10", + "src": "6767:26:10", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1847, + "id": 1960, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6648:8:10", + "referencedDeclaration": 1605, + "src": "6774:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1849, + "id": 1962, "indexExpression": { "argumentTypes": null, - "id": 1848, + "id": 1961, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6657:9:10", + "referencedDeclaration": 1931, + "src": "6783:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5074,9 +5438,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6648:19:10", + "src": "6774:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, @@ -5085,14 +5449,14 @@ "typeString": "tuple()" } }, - "id": 1851, + "id": 1964, "nodeType": "ExpressionStatement", - "src": "6641:26:10" + "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": 1853, + "id": 1966, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5100,16 +5464,16 @@ "name": "resetListing", "nodeType": "FunctionDefinition", "parameters": { - "id": 1818, + "id": 1928, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1817, + "id": 1927, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6321:15:10", + "scope": 1966, + "src": "6429:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5117,10 +5481,10 @@ "typeString": "string" }, "typeName": { - "id": 1816, + "id": 1926, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6321:6:10", + "src": "6429:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5130,40 +5494,40 @@ "visibility": "internal" } ], - "src": "6320:17:10" + "src": "6428:17:10" }, "payable": false, "returnParameters": { - "id": 1819, + "id": 1929, "nodeType": "ParameterList", "parameters": [], - "src": "6346:0:10" + "src": "6454:0:10" }, - "scope": 1854, - "src": "6299:375:10", + "scope": 1967, + "src": "6407:393:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" } ], - "scope": 1855, - "src": "237:6440:10" + "scope": 1968, + "src": "237:6566:10" } ], - "src": "0:6678:10" + "src": "0:6804:10" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/TcrPlaceholder.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/TcrPlaceholder.sol", "exportedSymbols": { "TcrPlaceholder": [ - 1854 + 1967 ] }, - "id": 1855, + "id": 1968, "nodeType": "SourceUnit", "nodes": [ { - "id": 1483, + "id": 1575, "literals": [ "solidity", "^", @@ -5176,32 +5540,32 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1484, + "id": 1576, "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 2807, + "scope": 1968, + "sourceUnit": 2950, "src": "26:59:10", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 1485, + "id": 1577, "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 872, + "scope": 1968, + "sourceUnit": 905, "src": "86:28:10", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1486, + "id": 1578, "nodeType": "ImportDirective", - "scope": 1855, - "sourceUnit": 1097, + "scope": 1968, + "sourceUnit": 1157, "src": "115:24:10", "symbolAliases": [], "unitAlias": "" @@ -5212,31 +5576,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1487, + "id": 1579, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "264:7:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1488, + "id": 1580, "nodeType": "InheritanceSpecifier", "src": "264:7:10" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": "WARNING , NOT PRODUCTION READY, based on ADCHAIN Registry.\n THIS IS JUST A PLACEHOLDER..", "fullyImplemented": true, - "id": 1854, + "id": 1967, "linearizedBaseContracts": [ - 1854, - 2806 + 1967, + 2949 ], "name": "TcrPlaceholder", "nodeType": "ContractDefinition", @@ -5244,20 +5608,20 @@ { "anonymous": false, "documentation": null, - "id": 1494, + "id": 1586, "name": "_Application", "nodeType": "EventDefinition", "parameters": { - "id": 1493, + "id": 1585, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1490, + "id": 1582, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 1494, + "scope": 1586, "src": "330:14:10", "stateVariable": false, "storageLocation": "default", @@ -5266,7 +5630,7 @@ "typeString": "string" }, "typeName": { - "id": 1489, + "id": 1581, "name": "string", "nodeType": "ElementaryTypeName", "src": "330:6:10", @@ -5280,11 +5644,11 @@ }, { "constant": false, - "id": 1492, + "id": 1584, "indexed": false, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 1494, + "scope": 1586, "src": "346:12:10", "stateVariable": false, "storageLocation": "default", @@ -5293,7 +5657,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1491, + "id": 1583, "name": "uint", "nodeType": "ElementaryTypeName", "src": "346:4:10", @@ -5313,20 +5677,20 @@ { "anonymous": false, "documentation": null, - "id": 1498, + "id": 1590, "name": "_NewVideoWhitelisted", "nodeType": "EventDefinition", "parameters": { - "id": 1497, + "id": 1589, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1496, + "id": 1588, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 1498, + "scope": 1590, "src": "392:14:10", "stateVariable": false, "storageLocation": "default", @@ -5335,7 +5699,7 @@ "typeString": "string" }, "typeName": { - "id": 1495, + "id": 1587, "name": "string", "nodeType": "ElementaryTypeName", "src": "392:6:10", @@ -5354,14 +5718,14 @@ }, { "canonicalName": "TcrPlaceholder.Listing", - "id": 1509, + "id": 1601, "members": [ { "constant": false, - "id": 1500, + "id": 1592, "name": "applicationExpiry", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "439:22:10", "stateVariable": false, "storageLocation": "default", @@ -5370,7 +5734,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1499, + "id": 1591, "name": "uint", "nodeType": "ElementaryTypeName", "src": "439:4:10", @@ -5384,10 +5748,10 @@ }, { "constant": false, - "id": 1502, + "id": 1594, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "505:16:10", "stateVariable": false, "storageLocation": "default", @@ -5396,7 +5760,7 @@ "typeString": "bool" }, "typeName": { - "id": 1501, + "id": 1593, "name": "bool", "nodeType": "ElementaryTypeName", "src": "505:4:10", @@ -5410,10 +5774,10 @@ }, { "constant": false, - "id": 1504, + "id": 1596, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "560:13:10", "stateVariable": false, "storageLocation": "default", @@ -5422,7 +5786,7 @@ "typeString": "address" }, "typeName": { - "id": 1503, + "id": 1595, "name": "address", "nodeType": "ElementaryTypeName", "src": "560:7:10", @@ -5436,10 +5800,10 @@ }, { "constant": false, - "id": 1506, + "id": 1598, "name": "unstakedDeposit", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "615:20:10", "stateVariable": false, "storageLocation": "default", @@ -5448,7 +5812,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1505, + "id": 1597, "name": "uint", "nodeType": "ElementaryTypeName", "src": "615:4:10", @@ -5462,10 +5826,10 @@ }, { "constant": false, - "id": 1508, + "id": 1600, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1509, + "scope": 1601, "src": "708:16:10", "stateVariable": false, "storageLocation": "default", @@ -5474,7 +5838,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1507, + "id": 1599, "name": "uint", "nodeType": "ElementaryTypeName", "src": "708:4:10", @@ -5489,27 +5853,27 @@ ], "name": "Listing", "nodeType": "StructDefinition", - "scope": 1854, + "scope": 1967, "src": "414:352:10", "visibility": "public" }, { "constant": false, - "id": 1513, + "id": 1605, "name": "listings", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "819:43:10", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" }, "typeName": { - "id": 1512, + "id": 1604, "keyType": { - "id": 1510, + "id": 1602, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "827:7:10", @@ -5521,18 +5885,18 @@ "nodeType": "Mapping", "src": "819:27:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing)" }, "valueType": { "contractScope": null, - "id": 1511, + "id": 1603, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, + "referencedDeclaration": 1601, "src": "838:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } } @@ -5542,26 +5906,26 @@ }, { "constant": false, - "id": 1515, + "id": 1607, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "869:25:10", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" }, "typeName": { "contractScope": null, - "id": 1514, + "id": 1606, "name": "ParatiiToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, + "referencedDeclaration": 904, "src": "869:12:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -5570,10 +5934,10 @@ }, { "constant": false, - "id": 1517, + "id": 1609, "name": "minDeposit", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "900:22:10", "stateVariable": true, "storageLocation": "default", @@ -5582,7 +5946,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1516, + "id": 1608, "name": "uint", "nodeType": "ElementaryTypeName", "src": "900:4:10", @@ -5596,10 +5960,10 @@ }, { "constant": false, - "id": 1519, + "id": 1611, "name": "applyStageLen", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "928:25:10", "stateVariable": true, "storageLocation": "default", @@ -5608,7 +5972,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1518, + "id": 1610, "name": "uint", "nodeType": "ElementaryTypeName", "src": "928:4:10", @@ -5622,26 +5986,26 @@ }, { "constant": false, - "id": 1521, + "id": 1613, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1854, + "scope": 1967, "src": "959:24:10", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1520, + "id": 1612, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "959:8:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -5650,25 +6014,25 @@ }, { "body": { - "id": 1555, + "id": 1647, "nodeType": "Block", "src": "1255:196:10", "statements": [ { "expression": { "argumentTypes": null, - "id": 1535, + "id": 1627, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1532, + "id": 1624, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "1265:5:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5681,18 +6045,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1533, + "id": 1625, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1273:3:10", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1534, + "id": 1626, "isConstant": false, "isLValue": false, "isPure": false, @@ -5712,28 +6076,28 @@ "typeString": "address" } }, - "id": 1536, + "id": 1628, "nodeType": "ExpressionStatement", "src": "1265:18:10" }, { "expression": { "argumentTypes": null, - "id": 1539, + "id": 1631, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1537, + "id": 1629, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, + "referencedDeclaration": 1613, "src": "1293:8:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -5741,45 +6105,45 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1538, + "id": 1630, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, + "referencedDeclaration": 1615, "src": "1304:9:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "1293:20:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1540, + "id": 1632, "nodeType": "ExpressionStatement", "src": "1293:20:10" }, { "expression": { "argumentTypes": null, - "id": 1545, + "id": 1637, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1541, + "id": 1633, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1515, + "referencedDeclaration": 1607, "src": "1323:5:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -5790,11 +6154,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1543, + "id": 1635, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1525, + "referencedDeclaration": 1617, "src": "1344:10:10", "typeDescriptions": { "typeIdentifier": "t_address", @@ -5809,18 +6173,18 @@ "typeString": "address" } ], - "id": 1542, + "id": 1634, "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 871, + "referencedDeclaration": 904, "src": "1331:12:10", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", "typeString": "type(contract ParatiiToken)" } }, - "id": 1544, + "id": 1636, "isConstant": false, "isLValue": false, "isPure": false, @@ -5830,35 +6194,35 @@ "nodeType": "FunctionCall", "src": "1331:24:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, "src": "1323:32:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 1546, + "id": 1638, "nodeType": "ExpressionStatement", "src": "1323:32:10" }, { "expression": { "argumentTypes": null, - "id": 1549, + "id": 1641, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1547, + "id": 1639, "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, + "referencedDeclaration": 1609, "src": "1365:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5869,11 +6233,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1548, + "id": 1640, "name": "_minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1527, + "referencedDeclaration": 1619, "src": "1378:11:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5886,25 +6250,25 @@ "typeString": "uint256" } }, - "id": 1550, + "id": 1642, "nodeType": "ExpressionStatement", "src": "1365:24:10" }, { "expression": { "argumentTypes": null, - "id": 1553, + "id": 1645, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1551, + "id": 1643, "name": "applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1519, + "referencedDeclaration": 1611, "src": "1399:13:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5915,11 +6279,11 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1552, + "id": 1644, "name": "_applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1529, + "referencedDeclaration": 1621, "src": "1415:14:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -5932,14 +6296,14 @@ "typeString": "uint256" } }, - "id": 1554, + "id": 1646, "nodeType": "ExpressionStatement", "src": "1399:30:10" } ] }, "documentation": null, - "id": 1556, + "id": 1648, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -5947,31 +6311,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1530, + "id": 1622, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1523, + "id": 1615, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1140:18:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1522, + "id": 1614, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "1140:8:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -5980,10 +6344,10 @@ }, { "constant": false, - "id": 1525, + "id": 1617, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1168:18:10", "stateVariable": false, "storageLocation": "default", @@ -5992,7 +6356,7 @@ "typeString": "address" }, "typeName": { - "id": 1524, + "id": 1616, "name": "address", "nodeType": "ElementaryTypeName", "src": "1168:7:10", @@ -6006,10 +6370,10 @@ }, { "constant": false, - "id": 1527, + "id": 1619, "name": "_minDeposit", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1196:16:10", "stateVariable": false, "storageLocation": "default", @@ -6018,7 +6382,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1526, + "id": 1618, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1196:4:10", @@ -6032,10 +6396,10 @@ }, { "constant": false, - "id": 1529, + "id": 1621, "name": "_applyStageLen", "nodeType": "VariableDeclaration", - "scope": 1556, + "scope": 1648, "src": "1222:19:10", "stateVariable": false, "storageLocation": "default", @@ -6044,7 +6408,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1528, + "id": 1620, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1222:4:10", @@ -6061,12 +6425,12 @@ }, "payable": false, "returnParameters": { - "id": 1531, + "id": 1623, "nodeType": "ParameterList", "parameters": [], "src": "1255:0:10" }, - "scope": 1854, + "scope": 1967, "src": "1119:332:10", "stateMutability": "nonpayable", "superFunction": null, @@ -6074,9 +6438,9 @@ }, { "body": { - "id": 1628, + "id": 1723, "nodeType": "Block", - "src": "1818:584:10", + "src": "1818:602:10", "statements": [ { "expression": { @@ -6084,7 +6448,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1567, + "id": 1659, "isConstant": false, "isLValue": false, "isPure": false, @@ -6098,11 +6462,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1565, + "id": 1657, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1558, + "referencedDeclaration": 1650, "src": "1851:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", @@ -6117,18 +6481,18 @@ "typeString": "string calldata" } ], - "id": 1564, + "id": 1656, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1742, + "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": 1566, + "id": 1658, "isConstant": false, "isLValue": false, "isPure": false, @@ -6155,21 +6519,21 @@ "typeString": "bool" } ], - "id": 1563, + "id": 1655, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1828:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1568, + "id": 1660, "isConstant": false, "isLValue": false, "isPure": false, @@ -6183,7 +6547,7 @@ "typeString": "tuple()" } }, - "id": 1569, + "id": 1661, "nodeType": "ExpressionStatement", "src": "1828:33:10" }, @@ -6193,7 +6557,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1574, + "id": 1666, "isConstant": false, "isLValue": false, "isPure": false, @@ -6207,11 +6571,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1572, + "id": 1664, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1558, + "referencedDeclaration": 1650, "src": "1891:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", @@ -6226,18 +6590,18 @@ "typeString": "string calldata" } ], - "id": 1571, + "id": 1663, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1759, + "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": 1573, + "id": 1665, "isConstant": false, "isLValue": false, "isPure": false, @@ -6264,21 +6628,21 @@ "typeString": "bool" } ], - "id": 1570, + "id": 1662, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1871:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1575, + "id": 1667, "isConstant": false, "isLValue": false, "isPure": false, @@ -6292,7 +6656,7 @@ "typeString": "tuple()" } }, - "id": 1576, + "id": 1668, "nodeType": "ExpressionStatement", "src": "1871:30:10" }, @@ -6306,18 +6670,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1580, + "id": 1672, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1578, + "id": 1670, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, + "referencedDeclaration": 1652, "src": "1919:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6328,11 +6692,11 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1579, + "id": 1671, "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, + "referencedDeclaration": 1609, "src": "1930:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -6353,21 +6717,21 @@ "typeString": "bool" } ], - "id": 1577, + "id": 1669, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1911:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1581, + "id": 1673, "isConstant": false, "isLValue": false, "isPure": false, @@ -6381,37 +6745,37 @@ "typeString": "tuple()" } }, - "id": 1582, + "id": 1674, "nodeType": "ExpressionStatement", "src": "1911:30:10" }, { "assignments": [ - 1584 + 1676 ], "declarations": [ { "constant": false, - "id": 1584, + "id": 1676, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1629, + "scope": 1724, "src": "1973:23:10", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" }, "typeName": { "contractScope": null, - "id": 1583, + "id": 1675, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, + "referencedDeclaration": 1601, "src": "1973:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } }, @@ -6419,59 +6783,111 @@ "visibility": "internal" } ], - "id": 1590, + "id": 1685, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1585, + "id": 1677, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, + "referencedDeclaration": 1605, "src": "1999:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1589, + "id": 1684, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1587, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2018:8:10", + "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_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1586, + "id": 1678, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "2008:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1588, + "id": 1683, "isConstant": false, "isLValue": false, "isPure": false, @@ -6479,7 +6895,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2008:19:10", + "src": "2008:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6490,19 +6906,19 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1999:29:10", + "src": "1999:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1973:55:10" + "src": "1973:73:10" }, { "expression": { "argumentTypes": null, - "id": 1596, + "id": 1691, "isConstant": false, "isLValue": false, "isPure": false, @@ -6511,26 +6927,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1591, + "id": 1686, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2038:7:10", + "referencedDeclaration": 1676, + "src": "2056:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1593, + "id": 1688, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2038:13:10", + "referencedDeclaration": 1596, + "src": "2056:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6542,18 +6958,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1594, + "id": 1689, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2054:3:10", + "referencedDeclaration": 3344, + "src": "2072:3:10", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1595, + "id": 1690, "isConstant": false, "isLValue": false, "isPure": false, @@ -6561,21 +6977,21 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2054:10:10", + "src": "2072:10:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2038:26:10", + "src": "2056:26:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1597, + "id": 1692, "nodeType": "ExpressionStatement", - "src": "2038:26:10" + "src": "2056:26:10" }, { "expression": { @@ -6588,26 +7004,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1601, + "id": 1696, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2166:7:10", + "referencedDeclaration": 1676, + "src": "2184:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1602, + "id": 1697, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "2166:13:10", + "referencedDeclaration": 1596, + "src": "2184:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6615,25 +7031,25 @@ }, { "argumentTypes": null, - "id": 1603, + "id": 1698, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3250, - "src": "2181:4:10", + "referencedDeclaration": 3393, + "src": "2199:4:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", "typeString": "contract TcrPlaceholder" } }, { "argumentTypes": null, - "id": 1604, + "id": 1699, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2187:7:10", + "referencedDeclaration": 1652, + "src": "2205:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6647,7 +7063,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_TcrPlaceholder_$1854", + "typeIdentifier": "t_contract$_TcrPlaceholder_$1967", "typeString": "contract TcrPlaceholder" }, { @@ -6657,32 +7073,32 @@ ], "expression": { "argumentTypes": null, - "id": 1599, + "id": 1694, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "2147:5:10", + "referencedDeclaration": 1607, + "src": "2165:5:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 1600, + "id": 1695, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3040, - "src": "2147:18:10", + "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": 1605, + "id": 1700, "isConstant": false, "isLValue": false, "isPure": false, @@ -6690,7 +7106,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2147:48:10", + "src": "2165:48:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6704,21 +7120,21 @@ "typeString": "bool" } ], - "id": 1598, + "id": 1693, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "2139:7:10", + "referencedDeclaration": 3347, + "src": "2157:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1606, + "id": 1701, "isConstant": false, "isLValue": false, "isPure": false, @@ -6726,20 +7142,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2139:57:10", + "src": "2157:57:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1607, + "id": 1702, "nodeType": "ExpressionStatement", - "src": "2139:57:10" + "src": "2157:57:10" }, { "expression": { "argumentTypes": null, - "id": 1615, + "id": 1710, "isConstant": false, "isLValue": false, "isPure": false, @@ -6748,26 +7164,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1608, + "id": 1703, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2249:7:10", + "referencedDeclaration": 1676, + "src": "2267:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1610, + "id": 1705, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "2249:25:10", + "referencedDeclaration": 1592, + "src": "2267:25:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6781,7 +7197,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1614, + "id": 1709, "isConstant": false, "isLValue": false, "isPure": false, @@ -6790,18 +7206,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1611, + "id": 1706, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "2277:5:10", + "referencedDeclaration": 3334, + "src": "2295:5:10", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 1612, + "id": 1707, "isConstant": false, "isLValue": false, "isPure": false, @@ -6809,7 +7225,7 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2277:12:10", + "src": "2295:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6819,37 +7235,37 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1613, + "id": 1708, "name": "applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1519, - "src": "2292:13:10", + "referencedDeclaration": 1611, + "src": "2310:13:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2277:28:10", + "src": "2295:28:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2249:56:10", + "src": "2267:56:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1616, + "id": 1711, "nodeType": "ExpressionStatement", - "src": "2249:56:10" + "src": "2267:56:10" }, { "expression": { "argumentTypes": null, - "id": 1621, + "id": 1716, "isConstant": false, "isLValue": false, "isPure": false, @@ -6858,26 +7274,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1617, + "id": 1712, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1584, - "src": "2315:7:10", + "referencedDeclaration": 1676, + "src": "2333:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1619, + "id": 1714, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "2315:23:10", + "referencedDeclaration": 1598, + "src": "2333:23:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6887,26 +7303,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1620, + "id": 1715, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2341:7:10", + "referencedDeclaration": 1652, + "src": "2359:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2315:33:10", + "src": "2333:33:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1622, + "id": 1717, "nodeType": "ExpressionStatement", - "src": "2315:33:10" + "src": "2333:33:10" }, { "eventCall": { @@ -6914,12 +7330,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1624, + "id": 1719, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1558, - "src": "2377:8:10", + "referencedDeclaration": 1650, + "src": "2395:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -6927,12 +7343,12 @@ }, { "argumentTypes": null, - "id": 1625, + "id": 1720, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1560, - "src": "2387:7:10", + "referencedDeclaration": 1652, + "src": "2405:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6950,18 +7366,18 @@ "typeString": "uint256" } ], - "id": 1623, + "id": 1718, "name": "_Application", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1494, - "src": "2364:12:10", + "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": 1626, + "id": 1721, "isConstant": false, "isLValue": false, "isPure": false, @@ -6969,20 +7385,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2364:31:10", + "src": "2382:31:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1627, + "id": 1722, "nodeType": "EmitStatement", - "src": "2359:36:10" + "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": 1629, + "id": 1724, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -6990,15 +7406,15 @@ "name": "apply", "nodeType": "FunctionDefinition", "parameters": { - "id": 1561, + "id": 1653, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1558, + "id": 1650, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1629, + "scope": 1724, "src": "1778:15:10", "stateVariable": false, "storageLocation": "default", @@ -7007,7 +7423,7 @@ "typeString": "string" }, "typeName": { - "id": 1557, + "id": 1649, "name": "string", "nodeType": "ElementaryTypeName", "src": "1778:6:10", @@ -7021,10 +7437,10 @@ }, { "constant": false, - "id": 1560, + "id": 1652, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1629, + "scope": 1724, "src": "1795:12:10", "stateVariable": false, "storageLocation": "default", @@ -7033,7 +7449,7 @@ "typeString": "uint256" }, "typeName": { - "id": 1559, + "id": 1651, "name": "uint", "nodeType": "ElementaryTypeName", "src": "1795:4:10", @@ -7050,26 +7466,26 @@ }, "payable": false, "returnParameters": { - "id": 1562, + "id": 1654, "nodeType": "ParameterList", "parameters": [], "src": "1818:0:10" }, - "scope": 1854, - "src": "1763:639:10", + "scope": 1967, + "src": "1763:657:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1634, + "id": 1729, "nodeType": "Block", - "src": "2614:8:10", + "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": 1635, + "id": 1730, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -7077,16 +7493,16 @@ "name": "deposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1632, + "id": 1727, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1631, + "id": 1726, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1635, - "src": "2592:11:10", + "scope": 1730, + "src": "2610:11:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7094,10 +7510,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1630, + "id": 1725, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2592:4:10", + "src": "2610:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7107,30 +7523,30 @@ "visibility": "internal" } ], - "src": "2591:13:10" + "src": "2609:13:10" }, "payable": false, "returnParameters": { - "id": 1633, + "id": 1728, "nodeType": "ParameterList", "parameters": [], - "src": "2614:0:10" + "src": "2632:0:10" }, - "scope": 1854, - "src": "2575:47:10", + "scope": 1967, + "src": "2593:47:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1640, + "id": 1735, "nodeType": "Block", - "src": "2788:8:10", + "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": 1641, + "id": 1736, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -7138,16 +7554,16 @@ "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 1638, + "id": 1733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1637, + "id": 1732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1641, - "src": "2766:11:10", + "scope": 1736, + "src": "2784:11:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7155,10 +7571,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1636, + "id": 1731, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2766:4:10", + "src": "2784:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7168,54 +7584,54 @@ "visibility": "internal" } ], - "src": "2765:13:10" + "src": "2783:13:10" }, "payable": false, "returnParameters": { - "id": 1639, + "id": 1734, "nodeType": "ParameterList", "parameters": [], - "src": "2788:0:10" + "src": "2806:0:10" }, - "scope": 1854, - "src": "2748:48:10", + "scope": 1967, + "src": "2766:48:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1672, + "id": 1770, "nodeType": "Block", - "src": "2978:421:10", + "src": "2996:439:10", "statements": [ { "assignments": [ - 1647 + 1742 ], "declarations": [ { "constant": false, - "id": 1647, + "id": 1742, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2988:23:10", + "scope": 1771, + "src": "3006:23:10", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" }, "typeName": { "contractScope": null, - "id": 1646, + "id": 1741, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "2988:7:10", + "referencedDeclaration": 1601, + "src": "3006:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } }, @@ -7223,59 +7639,111 @@ "visibility": "internal" } ], - "id": 1653, + "id": 1751, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1648, + "id": 1743, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "3014:8:10", + "referencedDeclaration": 1605, + "src": "3032:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1652, + "id": 1750, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1650, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3033:8:10", + "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_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_calldata_ptr", - "typeString": "string calldata" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1649, + "id": 1744, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3023:9:10", + "referencedDeclaration": 3338, + "src": "3041:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1651, + "id": 1749, "isConstant": false, "isLValue": false, "isPure": false, @@ -7283,7 +7751,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3023:19:10", + "src": "3041:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7294,14 +7762,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3014:29:10", + "src": "3032:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "2988:55:10" + "src": "3006:73:10" }, { "expression": { @@ -7313,7 +7781,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1659, + "id": 1757, "isConstant": false, "isLValue": false, "isPure": false, @@ -7322,18 +7790,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1655, + "id": 1753, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "3062:3:10", + "referencedDeclaration": 3344, + "src": "3098:3:10", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1656, + "id": 1754, "isConstant": false, "isLValue": false, "isPure": false, @@ -7341,7 +7809,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3062:10:10", + "src": "3098:10:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7353,32 +7821,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1657, + "id": 1755, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1647, - "src": "3076:7:10", + "referencedDeclaration": 1742, + "src": "3112:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1658, + "id": 1756, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "3076:13:10", + "referencedDeclaration": 1596, + "src": "3112:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3062:27:10", + "src": "3098:27:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7392,21 +7860,21 @@ "typeString": "bool" } ], - "id": 1654, + "id": 1752, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "3054:7:10", + "referencedDeclaration": 3347, + "src": "3090:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1660, + "id": 1758, "isConstant": false, "isLValue": false, "isPure": false, @@ -7414,15 +7882,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3054:36:10", + "src": "3090:36:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1661, + "id": 1759, "nodeType": "ExpressionStatement", - "src": "3054:36:10" + "src": "3090:36:10" }, { "expression": { @@ -7433,12 +7901,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1664, + "id": 1762, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3122:8:10", + "referencedDeclaration": 1738, + "src": "3158:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -7452,18 +7920,18 @@ "typeString": "string calldata" } ], - "id": 1663, + "id": 1761, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "3108:13:10", + "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": 1665, + "id": 1763, "isConstant": false, "isLValue": false, "isPure": false, @@ -7471,7 +7939,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3108:23:10", + "src": "3144:23:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7485,21 +7953,21 @@ "typeString": "bool" } ], - "id": 1662, + "id": 1760, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "3100:7:10", + "referencedDeclaration": 3347, + "src": "3136:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1666, + "id": 1764, "isConstant": false, "isLValue": false, "isPure": false, @@ -7507,15 +7975,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3100:32:10", + "src": "3136:32:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1667, + "id": 1765, "nodeType": "ExpressionStatement", - "src": "3100:32:10" + "src": "3136:32:10" }, { "expression": { @@ -7523,12 +7991,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1669, + "id": 1767, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1643, - "src": "3383:8:10", + "referencedDeclaration": 1738, + "src": "3419:8:10", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -7542,18 +8010,18 @@ "typeString": "string calldata" } ], - "id": 1668, + "id": 1766, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3370:12:10", + "referencedDeclaration": 1966, + "src": "3406:12:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1670, + "id": 1768, "isConstant": false, "isLValue": false, "isPure": false, @@ -7561,20 +8029,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3370:22:10", + "src": "3406:22:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1671, + "id": 1769, "nodeType": "ExpressionStatement", - "src": "3370:22:10" + "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": 1673, + "id": 1771, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -7582,16 +8050,16 @@ "name": "exit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1644, + "id": 1739, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1643, + "id": 1738, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1673, - "src": "2952:15:10", + "scope": 1771, + "src": "2970:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7599,10 +8067,10 @@ "typeString": "string" }, "typeName": { - "id": 1642, + "id": 1737, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2952:6:10", + "src": "2970:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7612,26 +8080,26 @@ "visibility": "internal" } ], - "src": "2951:17:10" + "src": "2969:17:10" }, "payable": false, "returnParameters": { - "id": 1645, + "id": 1740, "nodeType": "ParameterList", "parameters": [], - "src": "2978:0:10" + "src": "2996:0:10" }, - "scope": 1854, - "src": "2938:461:10", + "scope": 1967, + "src": "2956:479:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1684, + "id": 1782, "nodeType": "Block", - "src": "3582:39:10", + "src": "3618:39:10", "statements": [ { "expression": { @@ -7639,12 +8107,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1681, + "id": 1779, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1675, - "src": "3605:8:10", + "referencedDeclaration": 1773, + "src": "3641:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7658,18 +8126,18 @@ "typeString": "string memory" } ], - "id": 1680, + "id": 1778, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1853, - "src": "3592:12:10", + "referencedDeclaration": 1966, + "src": "3628:12:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1682, + "id": 1780, "isConstant": false, "isLValue": false, "isPure": false, @@ -7677,57 +8145,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3592:22:10", + "src": "3628:22:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1683, + "id": 1781, "nodeType": "ExpressionStatement", - "src": "3592:22:10" + "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": 1685, + "id": 1783, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 1678, + "id": 1776, "modifierName": { "argumentTypes": null, - "id": 1677, + "id": 1775, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2780, - "src": "3572:9:10", + "referencedDeclaration": 2923, + "src": "3608:9:10", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "3572:9:10" + "src": "3608:9:10" } ], "name": "removeListing", "nodeType": "FunctionDefinition", "parameters": { - "id": 1676, + "id": 1774, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1675, + "id": 1773, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1685, - "src": "3548:15:10", + "scope": 1783, + "src": "3584:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7735,10 +8203,10 @@ "typeString": "string" }, "typeName": { - "id": 1674, + "id": 1772, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3548:6:10", + "src": "3584:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7748,26 +8216,26 @@ "visibility": "internal" } ], - "src": "3547:17:10" + "src": "3583:17:10" }, "payable": false, "returnParameters": { - "id": 1679, + "id": 1777, "nodeType": "ParameterList", "parameters": [], - "src": "3582:0:10" + "src": "3618:0:10" }, - "scope": 1854, - "src": "3525:96:10", + "scope": 1967, + "src": "3561:96:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1707, + "id": 1805, "nodeType": "Block", - "src": "3900:191:10", + "src": "3936:191:10", "statements": [ { "condition": { @@ -7775,12 +8243,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1691, + "id": 1789, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3931:8:10", + "referencedDeclaration": 1785, + "src": "3967:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7794,18 +8262,18 @@ "typeString": "string memory" } ], - "id": 1690, + "id": 1788, "name": "canBeWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1815, - "src": "3914:16:10", + "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": 1692, + "id": 1790, "isConstant": false, "isLValue": false, "isPure": false, @@ -7813,16 +8281,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3914:26:10", + "src": "3950:26:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 1705, + "id": 1803, "nodeType": "Block", - "src": "4052:33:10", + "src": "4088:33:10", "statements": [ { "expression": { @@ -7830,21 +8298,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1702, + "id": 1800, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3206, - 3207 + 3349, + 3350 ], - "referencedDeclaration": 3206, - "src": "4066:6:10", + "referencedDeclaration": 3349, + "src": "4102:6:10", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1703, + "id": 1801, "isConstant": false, "isLValue": false, "isPure": false, @@ -7852,25 +8320,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4066:8:10", + "src": "4102:8:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1704, + "id": 1802, "nodeType": "ExpressionStatement", - "src": "4066:8:10" + "src": "4102:8:10" } ] }, - "id": 1706, + "id": 1804, "nodeType": "IfStatement", - "src": "3910:175:10", + "src": "3946:175:10", "trueBody": { - "id": 1701, + "id": 1799, "nodeType": "Block", - "src": "3942:104:10", + "src": "3978:104:10", "statements": [ { "expression": { @@ -7878,12 +8346,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1694, + "id": 1792, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "3977:8:10", + "referencedDeclaration": 1785, + "src": "4013:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7897,18 +8365,18 @@ "typeString": "string memory" } ], - "id": 1693, + "id": 1791, "name": "whitelistApplication", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1727, - "src": "3956:20:10", + "referencedDeclaration": 1828, + "src": "3992:20:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1695, + "id": 1793, "isConstant": false, "isLValue": false, "isPure": false, @@ -7916,15 +8384,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3956:30:10", + "src": "3992:30:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1696, + "id": 1794, "nodeType": "ExpressionStatement", - "src": "3956:30:10" + "src": "3992:30:10" }, { "eventCall": { @@ -7932,12 +8400,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1698, + "id": 1796, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1687, - "src": "4026:8:10", + "referencedDeclaration": 1785, + "src": "4062:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7951,18 +8419,18 @@ "typeString": "string memory" } ], - "id": 1697, + "id": 1795, "name": "_NewVideoWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1498, - "src": "4005:20:10", + "referencedDeclaration": 1590, + "src": "4041:20:10", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 1699, + "id": 1797, "isConstant": false, "isLValue": false, "isPure": false, @@ -7970,15 +8438,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4005:30:10", + "src": "4041:30:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1700, + "id": 1798, "nodeType": "EmitStatement", - "src": "4000:35:10" + "src": "4036:35:10" } ] } @@ -7986,7 +8454,7 @@ ] }, "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, + "id": 1806, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -7994,16 +8462,16 @@ "name": "updateStatus", "nodeType": "FunctionDefinition", "parameters": { - "id": 1688, + "id": 1786, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1687, + "id": 1785, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1708, - "src": "3876:15:10", + "scope": 1806, + "src": "3912:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8011,10 +8479,10 @@ "typeString": "string" }, "typeName": { - "id": 1686, + "id": 1784, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3876:6:10", + "src": "3912:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8024,39 +8492,39 @@ "visibility": "internal" } ], - "src": "3875:17:10" + "src": "3911:17:10" }, "payable": false, "returnParameters": { - "id": 1689, + "id": 1787, "nodeType": "ParameterList", "parameters": [], - "src": "3900:0:10" + "src": "3936:0:10" }, - "scope": 1854, - "src": "3854:237:10", + "scope": 1967, + "src": "3890:237:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1726, + "id": 1827, "nodeType": "Block", - "src": "4432:105:10", + "src": "4468:123:10", "statements": [ { "assignments": [ - 1714 + 1812 ], "declarations": [ { "constant": false, - "id": 1714, + "id": 1812, "name": "videoHash", "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4442:17:10", + "scope": 1828, + "src": "4478:17:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8064,10 +8532,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1713, + "id": 1811, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4442:7:10", + "src": "4478:7:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8077,43 +8545,95 @@ "visibility": "internal" } ], - "id": 1718, + "id": 1819, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1716, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1710, - "src": "4472:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1715, + "id": 1813, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4462:9:10", + "referencedDeclaration": 3338, + "src": "4498:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1717, + "id": 1818, "isConstant": false, "isLValue": false, "isPure": false, @@ -8121,19 +8641,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4462:19:10", + "src": "4498:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "4442:39:10" + "src": "4478:57:10" }, { "expression": { "argumentTypes": null, - "id": 1724, + "id": 1825, "isConstant": false, "isLValue": false, "isPure": false, @@ -8144,26 +8664,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1719, + "id": 1820, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4492:8:10", + "referencedDeclaration": 1605, + "src": "4546:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1721, + "id": 1822, "indexExpression": { "argumentTypes": null, - "id": 1720, + "id": 1821, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1714, - "src": "4501:9:10", + "referencedDeclaration": 1812, + "src": "4555:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8174,21 +8694,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4492:19:10", + "src": "4546:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1722, + "id": 1823, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4492:31:10", + "referencedDeclaration": 1594, + "src": "4546:31:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8199,14 +8719,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 1723, + "id": 1824, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "4526:4:10", + "src": "4580:4:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -8214,20 +8734,20 @@ }, "value": "true" }, - "src": "4492:38:10", + "src": "4546:38:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1725, + "id": 1826, "nodeType": "ExpressionStatement", - "src": "4492:38:10" + "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": 1727, + "id": 1828, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8235,16 +8755,16 @@ "name": "whitelistApplication", "nodeType": "FunctionDefinition", "parameters": { - "id": 1711, + "id": 1809, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1710, + "id": 1808, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1727, - "src": "4407:15:10", + "scope": 1828, + "src": "4443:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8252,10 +8772,10 @@ "typeString": "string" }, "typeName": { - "id": 1709, + "id": 1807, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4407:6:10", + "src": "4443:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8265,26 +8785,26 @@ "visibility": "internal" } ], - "src": "4406:17:10" + "src": "4442:17:10" }, "payable": false, "returnParameters": { - "id": 1712, + "id": 1810, "nodeType": "ParameterList", "parameters": [], - "src": "4432:0:10" + "src": "4468:0:10" }, - "scope": 1854, - "src": "4377:160:10", + "scope": 1967, + "src": "4413:178:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 1741, + "id": 1845, "nodeType": "Block", - "src": "4952:65:10", + "src": "5006:83:10", "statements": [ { "expression": { @@ -8293,54 +8813,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1734, + "id": 1835, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "4969:8:10", + "referencedDeclaration": 1605, + "src": "5023:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1738, + "id": 1842, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1736, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1729, - "src": "4988:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1735, + "id": 1836, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "4978:9:10", + "referencedDeclaration": 3338, + "src": "5032:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1737, + "id": 1841, "isConstant": false, "isLValue": false, "isPure": false, @@ -8348,7 +8920,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4978:19:10", + "src": "5032:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8359,35 +8931,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4969:29:10", + "src": "5023:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1739, + "id": 1843, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1502, - "src": "4969:41:10", + "referencedDeclaration": 1594, + "src": "5023:59:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1733, - "id": 1740, + "functionReturnParameters": 1834, + "id": 1844, "nodeType": "Return", - "src": "4962:48:10" + "src": "5016:66:10" } ] }, "documentation": "@dev returns true if video is whitelisted", - "id": 1742, + "id": 1846, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -8395,16 +8967,16 @@ "name": "isWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1730, + "id": 1831, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1729, + "id": 1830, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4896:15:10", + "scope": 1846, + "src": "4950:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8412,10 +8984,10 @@ "typeString": "string" }, "typeName": { - "id": 1728, + "id": 1829, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4896:6:10", + "src": "4950:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8425,20 +8997,20 @@ "visibility": "internal" } ], - "src": "4895:17:10" + "src": "4949:17:10" }, "payable": false, "returnParameters": { - "id": 1733, + "id": 1834, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1732, + "id": 1833, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1742, - "src": "4934:16:10", + "scope": 1846, + "src": "4988:16:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8446,10 +9018,10 @@ "typeString": "bool" }, "typeName": { - "id": 1731, + "id": 1832, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "4934:4:10", + "src": "4988:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8459,19 +9031,19 @@ "visibility": "internal" } ], - "src": "4933:18:10" + "src": "4987:18:10" }, - "scope": 1854, - "src": "4873:144:10", + "scope": 1967, + "src": "4927:162:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1758, + "id": 1865, "nodeType": "Block", - "src": "5154:75:10", + "src": "5226:93:10", "statements": [ { "expression": { @@ -8480,7 +9052,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1756, + "id": 1863, "isConstant": false, "isLValue": false, "isPure": false, @@ -8491,54 +9063,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1749, + "id": 1853, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "5171:8:10", + "referencedDeclaration": 1605, + "src": "5243:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1753, + "id": 1860, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1751, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "5190:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1750, + "id": 1854, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "5180:9:10", + "referencedDeclaration": 3338, + "src": "5252:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1752, + "id": 1859, "isConstant": false, "isLValue": false, "isPure": false, @@ -8546,7 +9170,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5180:19:10", + "src": "5252:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8557,21 +9181,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5171:29:10", + "src": "5243:47:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1754, + "id": 1861, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "5171:47:10", + "referencedDeclaration": 1592, + "src": "5243:65:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8582,14 +9206,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1755, + "id": 1862, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5221:1:10", + "src": "5311:1:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -8597,21 +9221,21 @@ }, "value": "0" }, - "src": "5171:51:10", + "src": "5243:69:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1748, - "id": 1757, + "functionReturnParameters": 1852, + "id": 1864, "nodeType": "Return", - "src": "5164:58:10" + "src": "5236:76:10" } ] }, "documentation": null, - "id": 1759, + "id": 1866, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -8619,16 +9243,16 @@ "name": "appWasMade", "nodeType": "FunctionDefinition", "parameters": { - "id": 1745, + "id": 1849, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1744, + "id": 1848, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5103:15:10", + "scope": 1866, + "src": "5175:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8636,10 +9260,10 @@ "typeString": "string" }, "typeName": { - "id": 1743, + "id": 1847, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5103:6:10", + "src": "5175:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8649,20 +9273,20 @@ "visibility": "internal" } ], - "src": "5102:17:10" + "src": "5174:17:10" }, "payable": false, "returnParameters": { - "id": 1748, + "id": 1852, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1747, + "id": 1851, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 1759, - "src": "5141:11:10", + "scope": 1866, + "src": "5213:11:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8670,10 +9294,10 @@ "typeString": "bool" }, "typeName": { - "id": 1746, + "id": 1850, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5141:4:10", + "src": "5213:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8683,19 +9307,19 @@ "visibility": "internal" } ], - "src": "5140:13:10" + "src": "5212:13:10" }, - "scope": 1854, - "src": "5083:146:10", + "scope": 1967, + "src": "5155:164:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1771, + "id": 1878, "nodeType": "Block", - "src": "5367:48:10", + "src": "5457:48:10", "statements": [ { "expression": { @@ -8704,19 +9328,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1769, + "id": 1876, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1766, + "id": 1873, "name": "_termDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1761, - "src": "5384:9:10", + "referencedDeclaration": 1868, + "src": "5474:9:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8728,18 +9352,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1767, + "id": 1874, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3191, - "src": "5396:5:10", + "referencedDeclaration": 3334, + "src": "5486:5:10", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 1768, + "id": 1875, "isConstant": false, "isLValue": false, "isPure": false, @@ -8747,27 +9371,27 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5396:12:10", + "src": "5486:12:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5384:24:10", + "src": "5474:24:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1765, - "id": 1770, + "functionReturnParameters": 1872, + "id": 1877, "nodeType": "Return", - "src": "5377:31:10" + "src": "5467:31:10" } ] }, "documentation": "@dev returns true if the provided termDate has passed", - "id": 1772, + "id": 1879, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -8775,16 +9399,16 @@ "name": "isExpired", "nodeType": "FunctionDefinition", "parameters": { - "id": 1762, + "id": 1869, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1761, + "id": 1868, "name": "_termDate", "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5316:14:10", + "scope": 1879, + "src": "5406:14:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8792,10 +9416,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1760, + "id": 1867, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5316:4:10", + "src": "5406:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8805,20 +9429,20 @@ "visibility": "internal" } ], - "src": "5315:16:10" + "src": "5405:16:10" }, "payable": false, "returnParameters": { - "id": 1765, + "id": 1872, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1764, + "id": 1871, "name": "expired", "nodeType": "VariableDeclaration", - "scope": 1772, - "src": "5353:12:10", + "scope": 1879, + "src": "5443:12:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8826,10 +9450,10 @@ "typeString": "bool" }, "typeName": { - "id": 1763, + "id": 1870, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5353:4:10", + "src": "5443:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8839,43 +9463,43 @@ "visibility": "internal" } ], - "src": "5352:14:10" + "src": "5442:14:10" }, - "scope": 1854, - "src": "5297:118:10", + "scope": 1967, + "src": "5387:118:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1779, + "id": 1886, "nodeType": "Block", - "src": "5473:34:10", + "src": "5563:34:10", "statements": [ { "expression": { "argumentTypes": null, - "id": 1777, + "id": 1884, "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1517, - "src": "5490:10:10", + "referencedDeclaration": 1609, + "src": "5580:10:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1776, - "id": 1778, + "functionReturnParameters": 1883, + "id": 1885, "nodeType": "Return", - "src": "5483:17:10" + "src": "5573:17:10" } ] }, "documentation": null, - "id": 1780, + "id": 1887, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -8883,23 +9507,23 @@ "name": "getMinDeposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1773, + "id": 1880, "nodeType": "ParameterList", "parameters": [], - "src": "5443:2:10" + "src": "5533:2:10" }, "payable": false, "returnParameters": { - "id": 1776, + "id": 1883, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1775, + "id": 1882, "name": "", "nodeType": "VariableDeclaration", - "scope": 1780, - "src": "5467:4:10", + "scope": 1887, + "src": "5557:4:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8907,10 +9531,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1774, + "id": 1881, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5467:4:10", + "src": "5557:4:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8920,32 +9544,32 @@ "visibility": "internal" } ], - "src": "5466:6:10" + "src": "5556:6:10" }, - "scope": 1854, - "src": "5421:86:10", + "scope": 1967, + "src": "5511:86:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1814, + "id": 1924, "nodeType": "Block", - "src": "5758:393:10", + "src": "5848:411:10", "statements": [ { "assignments": [ - 1788 + 1895 ], "declarations": [ { "constant": false, - "id": 1788, + "id": 1895, "name": "videoHash", "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5768:17:10", + "scope": 1925, + "src": "5858:17:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8953,10 +9577,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1787, + "id": 1894, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5768:7:10", + "src": "5858:7:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8966,43 +9590,95 @@ "visibility": "internal" } ], - "id": 1792, + "id": 1902, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1790, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "5798:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1789, + "id": 1896, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "5788:9:10", + "referencedDeclaration": 3338, + "src": "5878:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1791, + "id": 1901, "isConstant": false, "isLValue": false, "isPure": false, @@ -9010,14 +9686,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5788:19:10", + "src": "5878:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "5768:39:10" + "src": "5858:57:10" }, { "condition": { @@ -9026,7 +9702,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1807, + "id": 1917, "isConstant": false, "isLValue": false, "isPure": false, @@ -9037,7 +9713,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1802, + "id": 1912, "isConstant": false, "isLValue": false, "isPure": false, @@ -9047,12 +9723,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1794, + "id": 1904, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "5982:8:10", + "referencedDeclaration": 1889, + "src": "6090:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -9066,18 +9742,18 @@ "typeString": "string memory" } ], - "id": 1793, + "id": 1903, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1759, - "src": "5971:10:10", + "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": 1795, + "id": 1905, "isConstant": false, "isLValue": false, "isPure": false, @@ -9085,7 +9761,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5971:20:10", + "src": "6079:20:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9102,26 +9778,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1797, + "id": 1907, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6017:8:10", + "referencedDeclaration": 1605, + "src": "6125:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1799, + "id": 1909, "indexExpression": { "argumentTypes": null, - "id": 1798, + "id": 1908, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1788, - "src": "6026:9:10", + "referencedDeclaration": 1895, + "src": "6134:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -9132,21 +9808,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6017:19:10", + "src": "6125:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, - "id": 1800, + "id": 1910, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1500, - "src": "6017:37:10", + "referencedDeclaration": 1592, + "src": "6125:37:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9160,18 +9836,18 @@ "typeString": "uint256" } ], - "id": 1796, + "id": 1906, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1772, - "src": "6007:9:10", + "referencedDeclaration": 1879, + "src": "6115:9:10", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 1801, + "id": 1911, "isConstant": false, "isLValue": false, "isPure": false, @@ -9179,13 +9855,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6007:48:10", + "src": "6115:48:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5971:84:10", + "src": "6079:84:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9195,7 +9871,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 1806, + "id": 1916, "isConstant": false, "isLValue": false, "isPure": false, @@ -9203,18 +9879,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6071:24:10", + "src": "6179:24:10", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1804, + "id": 1914, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1782, - "src": "6086:8:10", + "referencedDeclaration": 1889, + "src": "6194:8:10", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -9228,18 +9904,18 @@ "typeString": "string memory" } ], - "id": 1803, + "id": 1913, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1742, - "src": "6072:13:10", + "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": 1805, + "id": 1915, "isConstant": false, "isLValue": false, "isPure": false, @@ -9247,7 +9923,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6072:23:10", + "src": "6180:23:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9258,33 +9934,33 @@ "typeString": "bool" } }, - "src": "5971:124:10", + "src": "6079:124:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1811, + "id": 1921, "nodeType": "IfStatement", - "src": "5954:168:10", + "src": "6062:168:10", "trueBody": { - "id": 1810, + "id": 1920, "nodeType": "Block", - "src": "6106:16:10", + "src": "6214:16:10", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1808, + "id": 1918, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6115:4:10", + "src": "6223:4:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9292,10 +9968,10 @@ }, "value": "true" }, - "functionReturnParameters": 1786, - "id": 1809, + "functionReturnParameters": 1893, + "id": 1919, "nodeType": "Return", - "src": "6108:11:10" + "src": "6216:11:10" } ] } @@ -9304,14 +9980,14 @@ "expression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1812, + "id": 1922, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6139:5:10", + "src": "6247:5:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9319,15 +9995,15 @@ }, "value": "false" }, - "functionReturnParameters": 1786, - "id": 1813, + "functionReturnParameters": 1893, + "id": 1923, "nodeType": "Return", - "src": "6132:12:10" + "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": 1815, + "id": 1925, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -9335,16 +10011,16 @@ "name": "canBeWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1783, + "id": 1890, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1782, + "id": 1889, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5714:15:10", + "scope": 1925, + "src": "5804:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9352,10 +10028,10 @@ "typeString": "string" }, "typeName": { - "id": 1781, + "id": 1888, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5714:6:10", + "src": "5804:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -9365,20 +10041,20 @@ "visibility": "internal" } ], - "src": "5713:17:10" + "src": "5803:17:10" }, "payable": false, "returnParameters": { - "id": 1786, + "id": 1893, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1785, + "id": 1892, "name": "", "nodeType": "VariableDeclaration", - "scope": 1815, - "src": "5752:4:10", + "scope": 1925, + "src": "5842:4:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9386,10 +10062,10 @@ "typeString": "bool" }, "typeName": { - "id": 1784, + "id": 1891, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5752:4:10", + "src": "5842:4:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9399,32 +10075,32 @@ "visibility": "internal" } ], - "src": "5751:6:10" + "src": "5841:6:10" }, - "scope": 1854, - "src": "5688:463:10", + "scope": 1967, + "src": "5778:481:10", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1852, + "id": 1965, "nodeType": "Block", - "src": "6346:328:10", + "src": "6454:346:10", "statements": [ { "assignments": [ - 1821 + 1931 ], "declarations": [ { "constant": false, - "id": 1821, + "id": 1931, "name": "videoHash", "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6356:17:10", + "scope": 1966, + "src": "6464:17:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9432,10 +10108,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1820, + "id": 1930, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "6356:7:10", + "src": "6464:7:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -9445,43 +10121,95 @@ "visibility": "internal" } ], - "id": 1825, + "id": 1938, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1823, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1817, - "src": "6386:8:10", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 1822, + "id": 1932, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "6376:9:10", + "referencedDeclaration": 3338, + "src": "6484:9:10", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 1824, + "id": 1937, "isConstant": false, "isLValue": false, "isPure": false, @@ -9489,42 +10217,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6376:19:10", + "src": "6484:37:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "6356:39:10" + "src": "6464:57:10" }, { "assignments": [ - 1827 + 1940 ], "declarations": [ { "constant": false, - "id": 1827, + "id": 1940, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6405:23:10", + "scope": 1966, + "src": "6531:23:10", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" }, "typeName": { "contractScope": null, - "id": 1826, + "id": 1939, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1509, - "src": "6405:7:10", + "referencedDeclaration": 1601, + "src": "6531:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing" } }, @@ -9532,31 +10260,31 @@ "visibility": "internal" } ], - "id": 1831, + "id": 1944, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1828, + "id": 1941, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6431:8:10", + "referencedDeclaration": 1605, + "src": "6557:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1830, + "id": 1943, "indexExpression": { "argumentTypes": null, - "id": 1829, + "id": 1942, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6440:9:10", + "referencedDeclaration": 1931, + "src": "6566:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -9567,14 +10295,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6431:19:10", + "src": "6557:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6405:45:10" + "src": "6531:45:10" }, { "condition": { @@ -9583,7 +10311,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1835, + "id": 1948, "isConstant": false, "isLValue": false, "isPure": false, @@ -9592,26 +10320,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1832, + "id": 1945, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6526:7:10", + "referencedDeclaration": 1940, + "src": "6652:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1833, + "id": 1946, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6526:23:10", + "referencedDeclaration": 1598, + "src": "6652:23:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9622,14 +10350,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1834, + "id": 1947, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6552:1:10", + "src": "6678:1:10", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -9637,16 +10365,16 @@ }, "value": "0" }, - "src": "6526:27:10", + "src": "6652:27:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1846, + "id": 1959, "nodeType": "IfStatement", - "src": "6522:108:10", + "src": "6648:108:10", "trueBody": { "expression": { "argumentTypes": null, @@ -9658,26 +10386,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1839, + "id": 1952, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6590:7:10", + "referencedDeclaration": 1940, + "src": "6716:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1840, + "id": 1953, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1504, - "src": "6590:13:10", + "referencedDeclaration": 1596, + "src": "6716:13:10", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9687,26 +10415,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1841, + "id": 1954, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1827, - "src": "6605:7:10", + "referencedDeclaration": 1940, + "src": "6731:7:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$1601_storage_ptr", "typeString": "struct TcrPlaceholder.Listing storage pointer" } }, - "id": 1842, + "id": 1955, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1506, - "src": "6605:23:10", + "referencedDeclaration": 1598, + "src": "6731:23:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9726,32 +10454,32 @@ ], "expression": { "argumentTypes": null, - "id": 1837, + "id": 1950, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1515, - "src": "6575:5:10", + "referencedDeclaration": 1607, + "src": "6701:5:10", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 1838, + "id": 1951, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "6575:14:10", + "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": 1843, + "id": 1956, "isConstant": false, "isLValue": false, "isPure": false, @@ -9759,7 +10487,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6575:54:10", + "src": "6701:54:10", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9773,21 +10501,21 @@ "typeString": "bool" } ], - "id": 1836, + "id": 1949, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "6567:7:10", + "referencedDeclaration": 3347, + "src": "6693:7:10", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1844, + "id": 1957, "isConstant": false, "isLValue": false, "isPure": false, @@ -9795,21 +10523,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6567:63:10", + "src": "6693:63:10", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1845, + "id": 1958, "nodeType": "ExpressionStatement", - "src": "6567:63:10" + "src": "6693:63:10" } }, { "expression": { "argumentTypes": null, - "id": 1850, + "id": 1963, "isConstant": false, "isLValue": false, "isPure": false, @@ -9817,31 +10545,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "6641:26:10", + "src": "6767:26:10", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1847, + "id": 1960, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1513, - "src": "6648:8:10", + "referencedDeclaration": 1605, + "src": "6774:8:10", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1509_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1601_storage_$", "typeString": "mapping(bytes32 => struct TcrPlaceholder.Listing storage ref)" } }, - "id": 1849, + "id": 1962, "indexExpression": { "argumentTypes": null, - "id": 1848, + "id": 1961, "name": "videoHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1821, - "src": "6657:9:10", + "referencedDeclaration": 1931, + "src": "6783:9:10", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -9852,9 +10580,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6648:19:10", + "src": "6774:19:10", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1509_storage", + "typeIdentifier": "t_struct$_Listing_$1601_storage", "typeString": "struct TcrPlaceholder.Listing storage ref" } }, @@ -9863,14 +10591,14 @@ "typeString": "tuple()" } }, - "id": 1851, + "id": 1964, "nodeType": "ExpressionStatement", - "src": "6641:26:10" + "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": 1853, + "id": 1966, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -9878,16 +10606,16 @@ "name": "resetListing", "nodeType": "FunctionDefinition", "parameters": { - "id": 1818, + "id": 1928, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1817, + "id": 1927, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 1853, - "src": "6321:15:10", + "scope": 1966, + "src": "6429:15:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9895,10 +10623,10 @@ "typeString": "string" }, "typeName": { - "id": 1816, + "id": 1926, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6321:6:10", + "src": "6429:6:10", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -9908,27 +10636,27 @@ "visibility": "internal" } ], - "src": "6320:17:10" + "src": "6428:17:10" }, "payable": false, "returnParameters": { - "id": 1819, + "id": 1929, "nodeType": "ParameterList", "parameters": [], - "src": "6346:0:10" + "src": "6454:0:10" }, - "scope": 1854, - "src": "6299:375:10", + "scope": 1967, + "src": "6407:393:10", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" } ], - "scope": 1855, - "src": "237:6440:10" + "scope": 1968, + "src": "237:6566:10" } ], - "src": "0:6678:10" + "src": "0:6804:10" }, "compiler": { "name": "solc", @@ -9936,5 +10664,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.678Z" + "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 f91995f..daba114 100644 --- a/build/contracts/Users.json +++ b/build/contracts/Users.json @@ -191,24 +191,24 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5060405160208061117c83398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050611078806101046000396000f300608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a7230582090c7e1bf33f385a8e7c7ce8cf02e26fa88093759f6c15c5a54729a26665fd4d90029", - "deployedBytecode": "0x608060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806329092d0e1461007d57806358192547146100c05780638da5cb5b146101d5578063a87430ba1461022c578063c2bc2efc146103c0578063f2fde38b14610554575b600080fd5b34801561008957600080fd5b506100be600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610597565b005b3480156100cc57600080fd5b506101d3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106e2565b005b3480156101e157600080fd5b506101ea6109bd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561023857600080fd5b5061026d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109e2565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156102b557808201518184015260208101905061029a565b50505050905090810190601f1680156102e25780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b8381101561031b578082015181840152602081019050610300565b50505050905090810190601f1680156103485780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b83811015610381578082015181840152602081019050610366565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103cc57600080fd5b50610401600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bd4565b60405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b8381101561044957808201518184015260208101905061042e565b50505050905090810190601f1680156104765780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b838110156105155780820151818401526020810190506104fa565b50505050905090810190601f1680156105425780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561056057600080fd5b50610595600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e0a565b005b806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061061e57508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561062957600080fd5b600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006106799190610f5f565b6001820160006106899190610f5f565b6002820160006106999190610f5f565b50508173ffffffffffffffffffffffffffffffffffffffff167f55851df80c45c1f97f20eea833f78ef3d130c5a10c8fc9c7ee1c7f1612b5c5b160405160405180910390a25050565b836000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061076957508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b151561077457600080fd5b60606040519081016040528085815260200184815260200183815250600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000190805190602001906107eb929190610fa7565b506020820151816001019080519060200190610808929190610fa7565b506040820151816002019080519060200190610825929190610fa7565b509050508473ffffffffffffffffffffffffffffffffffffffff167fba99562563f525f7262c85e26d4cc59ed7bc12b61f8c070b57cb400fa8e6a9b885858560405180806020018060200180602001848103845287818151815260200191508051906020019080838360005b838110156108ac578082015181840152602081019050610891565b50505050905090810190601f1680156108d95780820380516001836020036101000a031916815260200191505b50848103835286818151815260200191508051906020019080838360005b838110156109125780820151818401526020810190506108f7565b50505050905090810190601f16801561093f5780820380516001836020036101000a031916815260200191505b50848103825285818151815260200191508051906020019080838360005b8381101561097857808201518184015260208101905061095d565b50505050905090810190601f1680156109a55780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a25050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6002602052806000526040600020600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a8e5780601f10610a6357610100808354040283529160200191610a8e565b820191906000526020600020905b815481529060010190602001808311610a7157829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b2c5780601f10610b0157610100808354040283529160200191610b2c565b820191906000526020600020905b815481529060010190602001808311610b0f57829003601f168201915b505050505090806002018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bca5780601f10610b9f57610100808354040283529160200191610bca565b820191906000526020600020905b815481529060010190602001808311610bad57829003601f168201915b5050505050905083565b60608060606000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050806000018160010182600201828054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbd5780601f10610c9257610100808354040283529160200191610cbd565b820191906000526020600020905b815481529060010190602001808311610ca057829003601f168201915b50505050509250818054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610d595780601f10610d2e57610100808354040283529160200191610d59565b820191906000526020600020905b815481529060010190602001808311610d3c57829003601f168201915b50505050509150808054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610df55780601f10610dca57610100808354040283529160200191610df5565b820191906000526020600020905b815481529060010190602001808311610dd857829003601f168201915b50505050509050935093509350509193909250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610ea157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f10610f855750610fa4565b601f016020900490600052602060002090810190610fa39190611027565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610fe857805160ff1916838001178555611016565b82800160010185558215611016579182015b82811115611015578251825591602001919060010190610ffa565b5b5090506110239190611027565b5090565b61104991905b8082111561104557600081600090555060010161102d565b5090565b905600a165627a7a7230582090c7e1bf33f385a8e7c7ce8cf02e26fa88093759f6c15c5a54729a26665fd4d90029", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", + "sourcePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", "ast": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", "exportedSymbols": { "Users": [ - 1997 + 2110 ] }, - "id": 1998, + "id": 2111, "nodeType": "SourceUnit", "nodes": [ { - "id": 1856, + "id": 1969, "literals": [ "solidity", "^", @@ -221,21 +221,21 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1857, + "id": 1970, "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 2807, + "scope": 2111, + "sourceUnit": 2950, "src": "26:59:11", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1858, + "id": 1971, "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 1097, + "scope": 2111, + "sourceUnit": 1157, "src": "86:24:11", "symbolAliases": [], "unitAlias": "" @@ -246,57 +246,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1859, + "id": 1972, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "130:7:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1860, + "id": 1973, "nodeType": "InheritanceSpecifier", "src": "130:7:11" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1997, + "id": 2110, "linearizedBaseContracts": [ - 1997, - 2806 + 2110, + 2949 ], "name": "Users", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1862, + "id": 1975, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1997, + "scope": 2110, "src": "145:17:11", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1861, + "id": 1974, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "145:8:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -305,14 +305,14 @@ }, { "canonicalName": "Users.UserInfo", - "id": 1869, + "id": 1982, "members": [ { "constant": false, - "id": 1864, + "id": 1977, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1982, "src": "195:11:11", "stateVariable": false, "storageLocation": "default", @@ -321,7 +321,7 @@ "typeString": "string" }, "typeName": { - "id": 1863, + "id": 1976, "name": "string", "nodeType": "ElementaryTypeName", "src": "195:6:11", @@ -335,10 +335,10 @@ }, { "constant": false, - "id": 1866, + "id": 1979, "name": "email", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1982, "src": "216:12:11", "stateVariable": false, "storageLocation": "default", @@ -347,7 +347,7 @@ "typeString": "string" }, "typeName": { - "id": 1865, + "id": 1978, "name": "string", "nodeType": "ElementaryTypeName", "src": "216:6:11", @@ -361,10 +361,10 @@ }, { "constant": false, - "id": 1868, + "id": 1981, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1982, "src": "238:15:11", "stateVariable": false, "storageLocation": "default", @@ -373,7 +373,7 @@ "typeString": "string" }, "typeName": { - "id": 1867, + "id": 1980, "name": "string", "nodeType": "ElementaryTypeName", "src": "238:6:11", @@ -388,27 +388,27 @@ ], "name": "UserInfo", "nodeType": "StructDefinition", - "scope": 1997, + "scope": 2110, "src": "169:91:11", "visibility": "public" }, { "constant": false, - "id": 1873, + "id": 1986, "name": "users", "nodeType": "VariableDeclaration", - "scope": 1997, + "scope": 2110, "src": "266:40:11", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo)" }, "typeName": { - "id": 1872, + "id": 1985, "keyType": { - "id": 1870, + "id": 1983, "name": "address", "nodeType": "ElementaryTypeName", "src": "275:7:11", @@ -420,18 +420,18 @@ "nodeType": "Mapping", "src": "266:27:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo)" }, "valueType": { "contractScope": null, - "id": 1871, + "id": 1984, "name": "UserInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, + "referencedDeclaration": 1982, "src": "284:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo" } } @@ -442,20 +442,20 @@ { "anonymous": false, "documentation": null, - "id": 1883, + "id": 1996, "name": "LogCreateUser", "nodeType": "EventDefinition", "parameters": { - "id": 1882, + "id": 1995, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1875, + "id": 1988, "indexed": true, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "342:24:11", "stateVariable": false, "storageLocation": "default", @@ -464,7 +464,7 @@ "typeString": "address" }, "typeName": { - "id": 1874, + "id": 1987, "name": "address", "nodeType": "ElementaryTypeName", "src": "342:7:11", @@ -478,11 +478,11 @@ }, { "constant": false, - "id": 1877, + "id": 1990, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "376:12:11", "stateVariable": false, "storageLocation": "default", @@ -491,7 +491,7 @@ "typeString": "string" }, "typeName": { - "id": 1876, + "id": 1989, "name": "string", "nodeType": "ElementaryTypeName", "src": "376:6:11", @@ -505,11 +505,11 @@ }, { "constant": false, - "id": 1879, + "id": 1992, "indexed": false, "name": "_email", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "398:13:11", "stateVariable": false, "storageLocation": "default", @@ -518,7 +518,7 @@ "typeString": "string" }, "typeName": { - "id": 1878, + "id": 1991, "name": "string", "nodeType": "ElementaryTypeName", "src": "398:6:11", @@ -532,11 +532,11 @@ }, { "constant": false, - "id": 1881, + "id": 1994, "indexed": false, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "421:16:11", "stateVariable": false, "storageLocation": "default", @@ -545,7 +545,7 @@ "typeString": "string" }, "typeName": { - "id": 1880, + "id": 1993, "name": "string", "nodeType": "ElementaryTypeName", "src": "421:6:11", @@ -565,20 +565,20 @@ { "anonymous": false, "documentation": null, - "id": 1887, + "id": 2000, "name": "LogRemoveUser", "nodeType": "EventDefinition", "parameters": { - "id": 1886, + "id": 1999, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1885, + "id": 1998, "indexed": true, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1887, + "scope": 2000, "src": "470:24:11", "stateVariable": false, "storageLocation": "default", @@ -587,7 +587,7 @@ "typeString": "address" }, "typeName": { - "id": 1884, + "id": 1997, "name": "address", "nodeType": "ElementaryTypeName", "src": "470:7:11", @@ -606,7 +606,7 @@ }, { "body": { - "id": 1904, + "id": 2017, "nodeType": "Block", "src": "545:82:11", "statements": [ @@ -620,7 +620,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1900, + "id": 2013, "isConstant": false, "isLValue": false, "isPure": false, @@ -631,7 +631,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1895, + "id": 2008, "isConstant": false, "isLValue": false, "isPure": false, @@ -640,18 +640,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1892, + "id": 2005, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "563:3:11", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1893, + "id": 2006, "isConstant": false, "isLValue": false, "isPure": false, @@ -669,11 +669,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1894, + "id": 2007, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "577:5:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -694,7 +694,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1899, + "id": 2012, "isConstant": false, "isLValue": false, "isPure": false, @@ -703,18 +703,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1896, + "id": 2009, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "586:3:11", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1897, + "id": 2010, "isConstant": false, "isLValue": false, "isPure": false, @@ -732,11 +732,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1898, + "id": 2011, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1889, + "referencedDeclaration": 2002, "src": "600:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -763,21 +763,21 @@ "typeString": "bool" } ], - "id": 1891, + "id": 2004, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "555:7:11", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1901, + "id": 2014, "isConstant": false, "isLValue": false, "isPure": false, @@ -791,31 +791,31 @@ "typeString": "tuple()" } }, - "id": 1902, + "id": 2015, "nodeType": "ExpressionStatement", "src": "555:54:11" }, { - "id": 1903, + "id": 2016, "nodeType": "PlaceholderStatement", "src": "619:1:11" } ] }, "documentation": null, - "id": 1905, + "id": 2018, "name": "onlyOwnerOrUser", "nodeType": "ModifierDefinition", "parameters": { - "id": 1890, + "id": 2003, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1889, + "id": 2002, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1905, + "scope": 2018, "src": "527:16:11", "stateVariable": false, "storageLocation": "default", @@ -824,7 +824,7 @@ "typeString": "address" }, "typeName": { - "id": 1888, + "id": 2001, "name": "address", "nodeType": "ElementaryTypeName", "src": "527:7:11", @@ -844,25 +844,25 @@ }, { "body": { - "id": 1919, + "id": 2032, "nodeType": "Block", "src": "672:65:11", "statements": [ { "expression": { "argumentTypes": null, - "id": 1913, + "id": 2026, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1910, + "id": 2023, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "682:5:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -875,18 +875,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1911, + "id": 2024, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "690:3:11", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1912, + "id": 2025, "isConstant": false, "isLValue": false, "isPure": false, @@ -906,28 +906,28 @@ "typeString": "address" } }, - "id": 1914, + "id": 2027, "nodeType": "ExpressionStatement", "src": "682:18:11" }, { "expression": { "argumentTypes": null, - "id": 1917, + "id": 2030, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1915, + "id": 2028, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1862, + "referencedDeclaration": 1975, "src": "710:8:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -935,31 +935,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1916, + "id": 2029, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1907, + "referencedDeclaration": 2020, "src": "721:9:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "710:20:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1918, + "id": 2031, "nodeType": "ExpressionStatement", "src": "710:20:11" } ] }, "documentation": null, - "id": 1920, + "id": 2033, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -967,31 +967,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1908, + "id": 2021, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1907, + "id": 2020, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1920, + "scope": 2033, "src": "645:18:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1906, + "id": 2019, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "645:8:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1003,12 +1003,12 @@ }, "payable": false, "returnParameters": { - "id": 1909, + "id": 2022, "nodeType": "ParameterList", "parameters": [], "src": "672:0:11" }, - "scope": 1997, + "scope": 2110, "src": "633:104:11", "stateMutability": "nonpayable", "superFunction": null, @@ -1016,14 +1016,14 @@ }, { "body": { - "id": 1951, + "id": 2064, "nodeType": "Block", "src": "1183:205:11", "statements": [ { "expression": { "argumentTypes": null, - "id": 1942, + "id": 2055, "isConstant": false, "isLValue": false, "isPure": false, @@ -1032,25 +1032,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1934, + "id": 2047, "name": "users", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1873, + "referencedDeclaration": 1986, "src": "1193:5:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo storage ref)" } }, - "id": 1936, + "id": 2049, "indexExpression": { "argumentTypes": null, - "id": 1935, + "id": 2048, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1922, + "referencedDeclaration": 2035, "src": "1199:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1064,7 +1064,7 @@ "nodeType": "IndexAccess", "src": "1193:15:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, @@ -1075,11 +1075,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1938, + "id": 2051, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1924, + "referencedDeclaration": 2037, "src": "1240:5:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1088,11 +1088,11 @@ }, { "argumentTypes": null, - "id": 1939, + "id": 2052, "name": "_email", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1926, + "referencedDeclaration": 2039, "src": "1266:6:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1101,11 +1101,11 @@ }, { "argumentTypes": null, - "id": 1940, + "id": 2053, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1928, + "referencedDeclaration": 2041, "src": "1296:9:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1115,18 +1115,18 @@ ], "expression": { "argumentTypes": null, - "id": 1937, + "id": 2050, "name": "UserInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1982, "src": "1211:8:11", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_UserInfo_$1869_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_UserInfo_$1982_storage_ptr_$", "typeString": "type(struct Users.UserInfo storage pointer)" } }, - "id": 1941, + "id": 2054, "isConstant": false, "isLValue": false, "isPure": false, @@ -1140,17 +1140,17 @@ "nodeType": "FunctionCall", "src": "1211:105:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_memory", + "typeIdentifier": "t_struct$_UserInfo_$1982_memory", "typeString": "struct Users.UserInfo memory" } }, "src": "1193:123:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, - "id": 1943, + "id": 2056, "nodeType": "ExpressionStatement", "src": "1193:123:11" }, @@ -1160,11 +1160,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1945, + "id": 2058, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1922, + "referencedDeclaration": 2035, "src": "1346:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1173,11 +1173,11 @@ }, { "argumentTypes": null, - "id": 1946, + "id": 2059, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1924, + "referencedDeclaration": 2037, "src": "1356:5:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1186,11 +1186,11 @@ }, { "argumentTypes": null, - "id": 1947, + "id": 2060, "name": "_email", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1926, + "referencedDeclaration": 2039, "src": "1363:6:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1199,11 +1199,11 @@ }, { "argumentTypes": null, - "id": 1948, + "id": 2061, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1928, + "referencedDeclaration": 2041, "src": "1371:9:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -1230,18 +1230,18 @@ "typeString": "string memory" } ], - "id": 1944, + "id": 2057, "name": "LogCreateUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1883, + "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": 1949, + "id": 2062, "isConstant": false, "isLValue": false, "isPure": false, @@ -1255,14 +1255,14 @@ "typeString": "tuple()" } }, - "id": 1950, + "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": 1952, + "id": 2065, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1271,11 +1271,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1931, + "id": 2044, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1922, + "referencedDeclaration": 2035, "src": "1168:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1283,14 +1283,14 @@ } } ], - "id": 1932, + "id": 2045, "modifierName": { "argumentTypes": null, - "id": 1930, + "id": 2043, "name": "onlyOwnerOrUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1905, + "referencedDeclaration": 2018, "src": "1152:15:11", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", @@ -1304,15 +1304,15 @@ "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 1929, + "id": 2042, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1922, + "id": 2035, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1043:16:11", "stateVariable": false, "storageLocation": "default", @@ -1321,7 +1321,7 @@ "typeString": "address" }, "typeName": { - "id": 1921, + "id": 2034, "name": "address", "nodeType": "ElementaryTypeName", "src": "1043:7:11", @@ -1335,10 +1335,10 @@ }, { "constant": false, - "id": 1924, + "id": 2037, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1069:12:11", "stateVariable": false, "storageLocation": "default", @@ -1347,7 +1347,7 @@ "typeString": "string" }, "typeName": { - "id": 1923, + "id": 2036, "name": "string", "nodeType": "ElementaryTypeName", "src": "1069:6:11", @@ -1361,10 +1361,10 @@ }, { "constant": false, - "id": 1926, + "id": 2039, "name": "_email", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1091:13:11", "stateVariable": false, "storageLocation": "default", @@ -1373,7 +1373,7 @@ "typeString": "string" }, "typeName": { - "id": 1925, + "id": 2038, "name": "string", "nodeType": "ElementaryTypeName", "src": "1091:6:11", @@ -1387,10 +1387,10 @@ }, { "constant": false, - "id": 1928, + "id": 2041, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1114:16:11", "stateVariable": false, "storageLocation": "default", @@ -1399,7 +1399,7 @@ "typeString": "string" }, "typeName": { - "id": 1927, + "id": 2040, "name": "string", "nodeType": "ElementaryTypeName", "src": "1114:6:11", @@ -1416,12 +1416,12 @@ }, "payable": false, "returnParameters": { - "id": 1933, + "id": 2046, "nodeType": "ParameterList", "parameters": [], "src": "1183:0:11" }, - "scope": 1997, + "scope": 2110, "src": "1018:370:11", "stateMutability": "nonpayable", "superFunction": null, @@ -1429,14 +1429,14 @@ }, { "body": { - "id": 1969, + "id": 2082, "nodeType": "Block", "src": "1620:77:11", "statements": [ { "expression": { "argumentTypes": null, - "id": 1963, + "id": 2076, "isConstant": false, "isLValue": false, "isPure": false, @@ -1449,25 +1449,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1960, + "id": 2073, "name": "users", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1873, + "referencedDeclaration": 1986, "src": "1637:5:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo storage ref)" } }, - "id": 1962, + "id": 2075, "indexExpression": { "argumentTypes": null, - "id": 1961, + "id": 2074, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1954, + "referencedDeclaration": 2067, "src": "1643:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1481,7 +1481,7 @@ "nodeType": "IndexAccess", "src": "1637:15:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, @@ -1490,7 +1490,7 @@ "typeString": "tuple()" } }, - "id": 1964, + "id": 2077, "nodeType": "ExpressionStatement", "src": "1630:22:11" }, @@ -1500,11 +1500,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1966, + "id": 2079, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1954, + "referencedDeclaration": 2067, "src": "1681:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1519,18 +1519,18 @@ "typeString": "address" } ], - "id": 1965, + "id": 2078, "name": "LogRemoveUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1887, + "referencedDeclaration": 2000, "src": "1667:13:11", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1967, + "id": 2080, "isConstant": false, "isLValue": false, "isPure": false, @@ -1544,14 +1544,14 @@ "typeString": "tuple()" } }, - "id": 1968, + "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": 1970, + "id": 2083, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1560,11 +1560,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1957, + "id": 2070, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1954, + "referencedDeclaration": 2067, "src": "1610:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1572,14 +1572,14 @@ } } ], - "id": 1958, + "id": 2071, "modifierName": { "argumentTypes": null, - "id": 1956, + "id": 2069, "name": "onlyOwnerOrUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1905, + "referencedDeclaration": 2018, "src": "1594:15:11", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", @@ -1593,15 +1593,15 @@ "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 1955, + "id": 2068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1954, + "id": 2067, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1970, + "scope": 2083, "src": "1569:16:11", "stateVariable": false, "storageLocation": "default", @@ -1610,7 +1610,7 @@ "typeString": "address" }, "typeName": { - "id": 1953, + "id": 2066, "name": "address", "nodeType": "ElementaryTypeName", "src": "1569:7:11", @@ -1627,12 +1627,12 @@ }, "payable": false, "returnParameters": { - "id": 1959, + "id": 2072, "nodeType": "ParameterList", "parameters": [], "src": "1620:0:11" }, - "scope": 1997, + "scope": 2110, "src": "1553:144:11", "stateMutability": "nonpayable", "superFunction": null, @@ -1640,37 +1640,37 @@ }, { "body": { - "id": 1995, + "id": 2108, "nodeType": "Block", "src": "1934:127:11", "statements": [ { "assignments": [ - 1982 + 2095 ], "declarations": [ { "constant": false, - "id": 1982, + "id": 2095, "name": "userInfo", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1944:25:11", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo" }, "typeName": { "contractScope": null, - "id": 1981, + "id": 2094, "name": "UserInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, + "referencedDeclaration": 1982, "src": "1944:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo" } }, @@ -1678,30 +1678,30 @@ "visibility": "internal" } ], - "id": 1986, + "id": 2099, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1983, + "id": 2096, "name": "users", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1873, + "referencedDeclaration": 1986, "src": "1972:5:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo storage ref)" } }, - "id": 1985, + "id": 2098, "indexExpression": { "argumentTypes": null, - "id": 1984, + "id": 2097, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1972, + "referencedDeclaration": 2085, "src": "1978:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1715,7 +1715,7 @@ "nodeType": "IndexAccess", "src": "1972:15:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, @@ -1730,25 +1730,25 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1987, + "id": 2100, "name": "userInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1982, + "referencedDeclaration": 2095, "src": "2005:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo storage pointer" } }, - "id": 1988, + "id": 2101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 1864, + "referencedDeclaration": 1977, "src": "2005:13:11", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -1759,25 +1759,25 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1989, + "id": 2102, "name": "userInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1982, + "referencedDeclaration": 2095, "src": "2020:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo storage pointer" } }, - "id": 1990, + "id": 2103, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "email", "nodeType": "MemberAccess", - "referencedDeclaration": 1866, + "referencedDeclaration": 1979, "src": "2020:14:11", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -1788,25 +1788,25 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1991, + "id": 2104, "name": "userInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1982, + "referencedDeclaration": 2095, "src": "2036:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo storage pointer" } }, - "id": 1992, + "id": 2105, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 1868, + "referencedDeclaration": 1981, "src": "2036:17:11", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -1814,7 +1814,7 @@ } } ], - "id": 1993, + "id": 2106, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -1827,15 +1827,15 @@ "typeString": "tuple(string storage ref,string storage ref,string storage ref)" } }, - "functionReturnParameters": 1980, - "id": 1994, + "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": 1996, + "id": 2109, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1843,15 +1843,15 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 1973, + "id": 2086, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1972, + "id": 2085, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1872:16:11", "stateVariable": false, "storageLocation": "default", @@ -1860,7 +1860,7 @@ "typeString": "address" }, "typeName": { - "id": 1971, + "id": 2084, "name": "address", "nodeType": "ElementaryTypeName", "src": "1872:7:11", @@ -1877,15 +1877,15 @@ }, "payable": false, "returnParameters": { - "id": 1980, + "id": 2093, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1975, + "id": 2088, "name": "", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1910:6:11", "stateVariable": false, "storageLocation": "default", @@ -1894,7 +1894,7 @@ "typeString": "string" }, "typeName": { - "id": 1974, + "id": 2087, "name": "string", "nodeType": "ElementaryTypeName", "src": "1910:6:11", @@ -1908,10 +1908,10 @@ }, { "constant": false, - "id": 1977, + "id": 2090, "name": "", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1918:6:11", "stateVariable": false, "storageLocation": "default", @@ -1920,7 +1920,7 @@ "typeString": "string" }, "typeName": { - "id": 1976, + "id": 2089, "name": "string", "nodeType": "ElementaryTypeName", "src": "1918:6:11", @@ -1934,10 +1934,10 @@ }, { "constant": false, - "id": 1979, + "id": 2092, "name": "", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1926:6:11", "stateVariable": false, "storageLocation": "default", @@ -1946,7 +1946,7 @@ "typeString": "string" }, "typeName": { - "id": 1978, + "id": 2091, "name": "string", "nodeType": "ElementaryTypeName", "src": "1926:6:11", @@ -1961,31 +1961,31 @@ ], "src": "1909:24:11" }, - "scope": 1997, + "scope": 2110, "src": "1859:202:11", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1998, + "scope": 2111, "src": "112:1951:11" } ], "src": "0:2064:11" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Users.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Users.sol", "exportedSymbols": { "Users": [ - 1997 + 2110 ] }, - "id": 1998, + "id": 2111, "nodeType": "SourceUnit", "nodes": [ { - "id": 1856, + "id": 1969, "literals": [ "solidity", "^", @@ -1998,21 +1998,21 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 1857, + "id": 1970, "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 2807, + "scope": 2111, + "sourceUnit": 2950, "src": "26:59:11", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 1858, + "id": 1971, "nodeType": "ImportDirective", - "scope": 1998, - "sourceUnit": 1097, + "scope": 2111, + "sourceUnit": 1157, "src": "86:24:11", "symbolAliases": [], "unitAlias": "" @@ -2023,57 +2023,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1859, + "id": 1972, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "130:7:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 1860, + "id": 1973, "nodeType": "InheritanceSpecifier", "src": "130:7:11" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1997, + "id": 2110, "linearizedBaseContracts": [ - 1997, - 2806 + 2110, + 2949 ], "name": "Users", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1862, + "id": 1975, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 1997, + "scope": 2110, "src": "145:17:11", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1861, + "id": 1974, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "145:8:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2082,14 +2082,14 @@ }, { "canonicalName": "Users.UserInfo", - "id": 1869, + "id": 1982, "members": [ { "constant": false, - "id": 1864, + "id": 1977, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1982, "src": "195:11:11", "stateVariable": false, "storageLocation": "default", @@ -2098,7 +2098,7 @@ "typeString": "string" }, "typeName": { - "id": 1863, + "id": 1976, "name": "string", "nodeType": "ElementaryTypeName", "src": "195:6:11", @@ -2112,10 +2112,10 @@ }, { "constant": false, - "id": 1866, + "id": 1979, "name": "email", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1982, "src": "216:12:11", "stateVariable": false, "storageLocation": "default", @@ -2124,7 +2124,7 @@ "typeString": "string" }, "typeName": { - "id": 1865, + "id": 1978, "name": "string", "nodeType": "ElementaryTypeName", "src": "216:6:11", @@ -2138,10 +2138,10 @@ }, { "constant": false, - "id": 1868, + "id": 1981, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 1869, + "scope": 1982, "src": "238:15:11", "stateVariable": false, "storageLocation": "default", @@ -2150,7 +2150,7 @@ "typeString": "string" }, "typeName": { - "id": 1867, + "id": 1980, "name": "string", "nodeType": "ElementaryTypeName", "src": "238:6:11", @@ -2165,27 +2165,27 @@ ], "name": "UserInfo", "nodeType": "StructDefinition", - "scope": 1997, + "scope": 2110, "src": "169:91:11", "visibility": "public" }, { "constant": false, - "id": 1873, + "id": 1986, "name": "users", "nodeType": "VariableDeclaration", - "scope": 1997, + "scope": 2110, "src": "266:40:11", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo)" }, "typeName": { - "id": 1872, + "id": 1985, "keyType": { - "id": 1870, + "id": 1983, "name": "address", "nodeType": "ElementaryTypeName", "src": "275:7:11", @@ -2197,18 +2197,18 @@ "nodeType": "Mapping", "src": "266:27:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo)" }, "valueType": { "contractScope": null, - "id": 1871, + "id": 1984, "name": "UserInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, + "referencedDeclaration": 1982, "src": "284:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo" } } @@ -2219,20 +2219,20 @@ { "anonymous": false, "documentation": null, - "id": 1883, + "id": 1996, "name": "LogCreateUser", "nodeType": "EventDefinition", "parameters": { - "id": 1882, + "id": 1995, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1875, + "id": 1988, "indexed": true, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "342:24:11", "stateVariable": false, "storageLocation": "default", @@ -2241,7 +2241,7 @@ "typeString": "address" }, "typeName": { - "id": 1874, + "id": 1987, "name": "address", "nodeType": "ElementaryTypeName", "src": "342:7:11", @@ -2255,11 +2255,11 @@ }, { "constant": false, - "id": 1877, + "id": 1990, "indexed": false, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "376:12:11", "stateVariable": false, "storageLocation": "default", @@ -2268,7 +2268,7 @@ "typeString": "string" }, "typeName": { - "id": 1876, + "id": 1989, "name": "string", "nodeType": "ElementaryTypeName", "src": "376:6:11", @@ -2282,11 +2282,11 @@ }, { "constant": false, - "id": 1879, + "id": 1992, "indexed": false, "name": "_email", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "398:13:11", "stateVariable": false, "storageLocation": "default", @@ -2295,7 +2295,7 @@ "typeString": "string" }, "typeName": { - "id": 1878, + "id": 1991, "name": "string", "nodeType": "ElementaryTypeName", "src": "398:6:11", @@ -2309,11 +2309,11 @@ }, { "constant": false, - "id": 1881, + "id": 1994, "indexed": false, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1883, + "scope": 1996, "src": "421:16:11", "stateVariable": false, "storageLocation": "default", @@ -2322,7 +2322,7 @@ "typeString": "string" }, "typeName": { - "id": 1880, + "id": 1993, "name": "string", "nodeType": "ElementaryTypeName", "src": "421:6:11", @@ -2342,20 +2342,20 @@ { "anonymous": false, "documentation": null, - "id": 1887, + "id": 2000, "name": "LogRemoveUser", "nodeType": "EventDefinition", "parameters": { - "id": 1886, + "id": 1999, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1885, + "id": 1998, "indexed": true, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1887, + "scope": 2000, "src": "470:24:11", "stateVariable": false, "storageLocation": "default", @@ -2364,7 +2364,7 @@ "typeString": "address" }, "typeName": { - "id": 1884, + "id": 1997, "name": "address", "nodeType": "ElementaryTypeName", "src": "470:7:11", @@ -2383,7 +2383,7 @@ }, { "body": { - "id": 1904, + "id": 2017, "nodeType": "Block", "src": "545:82:11", "statements": [ @@ -2397,7 +2397,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1900, + "id": 2013, "isConstant": false, "isLValue": false, "isPure": false, @@ -2408,7 +2408,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1895, + "id": 2008, "isConstant": false, "isLValue": false, "isPure": false, @@ -2417,18 +2417,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1892, + "id": 2005, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "563:3:11", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1893, + "id": 2006, "isConstant": false, "isLValue": false, "isPure": false, @@ -2446,11 +2446,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1894, + "id": 2007, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "577:5:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2471,7 +2471,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1899, + "id": 2012, "isConstant": false, "isLValue": false, "isPure": false, @@ -2480,18 +2480,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1896, + "id": 2009, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "586:3:11", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1897, + "id": 2010, "isConstant": false, "isLValue": false, "isPure": false, @@ -2509,11 +2509,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1898, + "id": 2011, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1889, + "referencedDeclaration": 2002, "src": "600:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2540,21 +2540,21 @@ "typeString": "bool" } ], - "id": 1891, + "id": 2004, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "555:7:11", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1901, + "id": 2014, "isConstant": false, "isLValue": false, "isPure": false, @@ -2568,31 +2568,31 @@ "typeString": "tuple()" } }, - "id": 1902, + "id": 2015, "nodeType": "ExpressionStatement", "src": "555:54:11" }, { - "id": 1903, + "id": 2016, "nodeType": "PlaceholderStatement", "src": "619:1:11" } ] }, "documentation": null, - "id": 1905, + "id": 2018, "name": "onlyOwnerOrUser", "nodeType": "ModifierDefinition", "parameters": { - "id": 1890, + "id": 2003, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1889, + "id": 2002, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1905, + "scope": 2018, "src": "527:16:11", "stateVariable": false, "storageLocation": "default", @@ -2601,7 +2601,7 @@ "typeString": "address" }, "typeName": { - "id": 1888, + "id": 2001, "name": "address", "nodeType": "ElementaryTypeName", "src": "527:7:11", @@ -2621,25 +2621,25 @@ }, { "body": { - "id": 1919, + "id": 2032, "nodeType": "Block", "src": "672:65:11", "statements": [ { "expression": { "argumentTypes": null, - "id": 1913, + "id": 2026, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1910, + "id": 2023, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "682:5:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2652,18 +2652,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1911, + "id": 2024, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "690:3:11", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1912, + "id": 2025, "isConstant": false, "isLValue": false, "isPure": false, @@ -2683,28 +2683,28 @@ "typeString": "address" } }, - "id": 1914, + "id": 2027, "nodeType": "ExpressionStatement", "src": "682:18:11" }, { "expression": { "argumentTypes": null, - "id": 1917, + "id": 2030, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1915, + "id": 2028, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1862, + "referencedDeclaration": 1975, "src": "710:8:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2712,31 +2712,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1916, + "id": 2029, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1907, + "referencedDeclaration": 2020, "src": "721:9:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "710:20:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 1918, + "id": 2031, "nodeType": "ExpressionStatement", "src": "710:20:11" } ] }, "documentation": null, - "id": 1920, + "id": 2033, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -2744,31 +2744,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1908, + "id": 2021, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1907, + "id": 2020, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 1920, + "scope": 2033, "src": "645:18:11", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 1906, + "id": 2019, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "645:8:11", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2780,12 +2780,12 @@ }, "payable": false, "returnParameters": { - "id": 1909, + "id": 2022, "nodeType": "ParameterList", "parameters": [], "src": "672:0:11" }, - "scope": 1997, + "scope": 2110, "src": "633:104:11", "stateMutability": "nonpayable", "superFunction": null, @@ -2793,14 +2793,14 @@ }, { "body": { - "id": 1951, + "id": 2064, "nodeType": "Block", "src": "1183:205:11", "statements": [ { "expression": { "argumentTypes": null, - "id": 1942, + "id": 2055, "isConstant": false, "isLValue": false, "isPure": false, @@ -2809,25 +2809,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1934, + "id": 2047, "name": "users", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1873, + "referencedDeclaration": 1986, "src": "1193:5:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo storage ref)" } }, - "id": 1936, + "id": 2049, "indexExpression": { "argumentTypes": null, - "id": 1935, + "id": 2048, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1922, + "referencedDeclaration": 2035, "src": "1199:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2841,7 +2841,7 @@ "nodeType": "IndexAccess", "src": "1193:15:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, @@ -2852,11 +2852,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1938, + "id": 2051, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1924, + "referencedDeclaration": 2037, "src": "1240:5:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2865,11 +2865,11 @@ }, { "argumentTypes": null, - "id": 1939, + "id": 2052, "name": "_email", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1926, + "referencedDeclaration": 2039, "src": "1266:6:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2878,11 +2878,11 @@ }, { "argumentTypes": null, - "id": 1940, + "id": 2053, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1928, + "referencedDeclaration": 2041, "src": "1296:9:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2892,18 +2892,18 @@ ], "expression": { "argumentTypes": null, - "id": 1937, + "id": 2050, "name": "UserInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, + "referencedDeclaration": 1982, "src": "1211:8:11", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_UserInfo_$1869_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_UserInfo_$1982_storage_ptr_$", "typeString": "type(struct Users.UserInfo storage pointer)" } }, - "id": 1941, + "id": 2054, "isConstant": false, "isLValue": false, "isPure": false, @@ -2917,17 +2917,17 @@ "nodeType": "FunctionCall", "src": "1211:105:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_memory", + "typeIdentifier": "t_struct$_UserInfo_$1982_memory", "typeString": "struct Users.UserInfo memory" } }, "src": "1193:123:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, - "id": 1943, + "id": 2056, "nodeType": "ExpressionStatement", "src": "1193:123:11" }, @@ -2937,11 +2937,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1945, + "id": 2058, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1922, + "referencedDeclaration": 2035, "src": "1346:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2950,11 +2950,11 @@ }, { "argumentTypes": null, - "id": 1946, + "id": 2059, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1924, + "referencedDeclaration": 2037, "src": "1356:5:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2963,11 +2963,11 @@ }, { "argumentTypes": null, - "id": 1947, + "id": 2060, "name": "_email", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1926, + "referencedDeclaration": 2039, "src": "1363:6:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -2976,11 +2976,11 @@ }, { "argumentTypes": null, - "id": 1948, + "id": 2061, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1928, + "referencedDeclaration": 2041, "src": "1371:9:11", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", @@ -3007,18 +3007,18 @@ "typeString": "string memory" } ], - "id": 1944, + "id": 2057, "name": "LogCreateUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1883, + "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": 1949, + "id": 2062, "isConstant": false, "isLValue": false, "isPure": false, @@ -3032,14 +3032,14 @@ "typeString": "tuple()" } }, - "id": 1950, + "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": 1952, + "id": 2065, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3048,11 +3048,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1931, + "id": 2044, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1922, + "referencedDeclaration": 2035, "src": "1168:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3060,14 +3060,14 @@ } } ], - "id": 1932, + "id": 2045, "modifierName": { "argumentTypes": null, - "id": 1930, + "id": 2043, "name": "onlyOwnerOrUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1905, + "referencedDeclaration": 2018, "src": "1152:15:11", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", @@ -3081,15 +3081,15 @@ "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 1929, + "id": 2042, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1922, + "id": 2035, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1043:16:11", "stateVariable": false, "storageLocation": "default", @@ -3098,7 +3098,7 @@ "typeString": "address" }, "typeName": { - "id": 1921, + "id": 2034, "name": "address", "nodeType": "ElementaryTypeName", "src": "1043:7:11", @@ -3112,10 +3112,10 @@ }, { "constant": false, - "id": 1924, + "id": 2037, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1069:12:11", "stateVariable": false, "storageLocation": "default", @@ -3124,7 +3124,7 @@ "typeString": "string" }, "typeName": { - "id": 1923, + "id": 2036, "name": "string", "nodeType": "ElementaryTypeName", "src": "1069:6:11", @@ -3138,10 +3138,10 @@ }, { "constant": false, - "id": 1926, + "id": 2039, "name": "_email", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1091:13:11", "stateVariable": false, "storageLocation": "default", @@ -3150,7 +3150,7 @@ "typeString": "string" }, "typeName": { - "id": 1925, + "id": 2038, "name": "string", "nodeType": "ElementaryTypeName", "src": "1091:6:11", @@ -3164,10 +3164,10 @@ }, { "constant": false, - "id": 1928, + "id": 2041, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 1952, + "scope": 2065, "src": "1114:16:11", "stateVariable": false, "storageLocation": "default", @@ -3176,7 +3176,7 @@ "typeString": "string" }, "typeName": { - "id": 1927, + "id": 2040, "name": "string", "nodeType": "ElementaryTypeName", "src": "1114:6:11", @@ -3193,12 +3193,12 @@ }, "payable": false, "returnParameters": { - "id": 1933, + "id": 2046, "nodeType": "ParameterList", "parameters": [], "src": "1183:0:11" }, - "scope": 1997, + "scope": 2110, "src": "1018:370:11", "stateMutability": "nonpayable", "superFunction": null, @@ -3206,14 +3206,14 @@ }, { "body": { - "id": 1969, + "id": 2082, "nodeType": "Block", "src": "1620:77:11", "statements": [ { "expression": { "argumentTypes": null, - "id": 1963, + "id": 2076, "isConstant": false, "isLValue": false, "isPure": false, @@ -3226,25 +3226,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1960, + "id": 2073, "name": "users", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1873, + "referencedDeclaration": 1986, "src": "1637:5:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo storage ref)" } }, - "id": 1962, + "id": 2075, "indexExpression": { "argumentTypes": null, - "id": 1961, + "id": 2074, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1954, + "referencedDeclaration": 2067, "src": "1643:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3258,7 +3258,7 @@ "nodeType": "IndexAccess", "src": "1637:15:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, @@ -3267,7 +3267,7 @@ "typeString": "tuple()" } }, - "id": 1964, + "id": 2077, "nodeType": "ExpressionStatement", "src": "1630:22:11" }, @@ -3277,11 +3277,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1966, + "id": 2079, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1954, + "referencedDeclaration": 2067, "src": "1681:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3296,18 +3296,18 @@ "typeString": "address" } ], - "id": 1965, + "id": 2078, "name": "LogRemoveUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1887, + "referencedDeclaration": 2000, "src": "1667:13:11", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", "typeString": "function (address)" } }, - "id": 1967, + "id": 2080, "isConstant": false, "isLValue": false, "isPure": false, @@ -3321,14 +3321,14 @@ "typeString": "tuple()" } }, - "id": 1968, + "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": 1970, + "id": 2083, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3337,11 +3337,11 @@ "arguments": [ { "argumentTypes": null, - "id": 1957, + "id": 2070, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1954, + "referencedDeclaration": 2067, "src": "1610:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3349,14 +3349,14 @@ } } ], - "id": 1958, + "id": 2071, "modifierName": { "argumentTypes": null, - "id": 1956, + "id": 2069, "name": "onlyOwnerOrUser", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1905, + "referencedDeclaration": 2018, "src": "1594:15:11", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", @@ -3370,15 +3370,15 @@ "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 1955, + "id": 2068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1954, + "id": 2067, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1970, + "scope": 2083, "src": "1569:16:11", "stateVariable": false, "storageLocation": "default", @@ -3387,7 +3387,7 @@ "typeString": "address" }, "typeName": { - "id": 1953, + "id": 2066, "name": "address", "nodeType": "ElementaryTypeName", "src": "1569:7:11", @@ -3404,12 +3404,12 @@ }, "payable": false, "returnParameters": { - "id": 1959, + "id": 2072, "nodeType": "ParameterList", "parameters": [], "src": "1620:0:11" }, - "scope": 1997, + "scope": 2110, "src": "1553:144:11", "stateMutability": "nonpayable", "superFunction": null, @@ -3417,37 +3417,37 @@ }, { "body": { - "id": 1995, + "id": 2108, "nodeType": "Block", "src": "1934:127:11", "statements": [ { "assignments": [ - 1982 + 2095 ], "declarations": [ { "constant": false, - "id": 1982, + "id": 2095, "name": "userInfo", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1944:25:11", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo" }, "typeName": { "contractScope": null, - "id": 1981, + "id": 2094, "name": "UserInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1869, + "referencedDeclaration": 1982, "src": "1944:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo" } }, @@ -3455,30 +3455,30 @@ "visibility": "internal" } ], - "id": 1986, + "id": 2099, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1983, + "id": 2096, "name": "users", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1873, + "referencedDeclaration": 1986, "src": "1972:5:11", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1869_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_UserInfo_$1982_storage_$", "typeString": "mapping(address => struct Users.UserInfo storage ref)" } }, - "id": 1985, + "id": 2098, "indexExpression": { "argumentTypes": null, - "id": 1984, + "id": 2097, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1972, + "referencedDeclaration": 2085, "src": "1978:8:11", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3492,7 +3492,7 @@ "nodeType": "IndexAccess", "src": "1972:15:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage", "typeString": "struct Users.UserInfo storage ref" } }, @@ -3507,25 +3507,25 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1987, + "id": 2100, "name": "userInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1982, + "referencedDeclaration": 2095, "src": "2005:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo storage pointer" } }, - "id": 1988, + "id": 2101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 1864, + "referencedDeclaration": 1977, "src": "2005:13:11", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -3536,25 +3536,25 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1989, + "id": 2102, "name": "userInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1982, + "referencedDeclaration": 2095, "src": "2020:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo storage pointer" } }, - "id": 1990, + "id": 2103, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "email", "nodeType": "MemberAccess", - "referencedDeclaration": 1866, + "referencedDeclaration": 1979, "src": "2020:14:11", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -3565,25 +3565,25 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1991, + "id": 2104, "name": "userInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1982, + "referencedDeclaration": 2095, "src": "2036:8:11", "typeDescriptions": { - "typeIdentifier": "t_struct$_UserInfo_$1869_storage_ptr", + "typeIdentifier": "t_struct$_UserInfo_$1982_storage_ptr", "typeString": "struct Users.UserInfo storage pointer" } }, - "id": 1992, + "id": 2105, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 1868, + "referencedDeclaration": 1981, "src": "2036:17:11", "typeDescriptions": { "typeIdentifier": "t_string_storage", @@ -3591,7 +3591,7 @@ } } ], - "id": 1993, + "id": 2106, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -3604,15 +3604,15 @@ "typeString": "tuple(string storage ref,string storage ref,string storage ref)" } }, - "functionReturnParameters": 1980, - "id": 1994, + "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": 1996, + "id": 2109, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3620,15 +3620,15 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 1973, + "id": 2086, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1972, + "id": 2085, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1872:16:11", "stateVariable": false, "storageLocation": "default", @@ -3637,7 +3637,7 @@ "typeString": "address" }, "typeName": { - "id": 1971, + "id": 2084, "name": "address", "nodeType": "ElementaryTypeName", "src": "1872:7:11", @@ -3654,15 +3654,15 @@ }, "payable": false, "returnParameters": { - "id": 1980, + "id": 2093, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1975, + "id": 2088, "name": "", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1910:6:11", "stateVariable": false, "storageLocation": "default", @@ -3671,7 +3671,7 @@ "typeString": "string" }, "typeName": { - "id": 1974, + "id": 2087, "name": "string", "nodeType": "ElementaryTypeName", "src": "1910:6:11", @@ -3685,10 +3685,10 @@ }, { "constant": false, - "id": 1977, + "id": 2090, "name": "", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1918:6:11", "stateVariable": false, "storageLocation": "default", @@ -3697,7 +3697,7 @@ "typeString": "string" }, "typeName": { - "id": 1976, + "id": 2089, "name": "string", "nodeType": "ElementaryTypeName", "src": "1918:6:11", @@ -3711,10 +3711,10 @@ }, { "constant": false, - "id": 1979, + "id": 2092, "name": "", "nodeType": "VariableDeclaration", - "scope": 1996, + "scope": 2109, "src": "1926:6:11", "stateVariable": false, "storageLocation": "default", @@ -3723,7 +3723,7 @@ "typeString": "string" }, "typeName": { - "id": 1978, + "id": 2091, "name": "string", "nodeType": "ElementaryTypeName", "src": "1926:6:11", @@ -3738,14 +3738,14 @@ ], "src": "1909:24:11" }, - "scope": 1997, + "scope": 2110, "src": "1859:202:11", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1998, + "scope": 2111, "src": "112:1951:11" } ], @@ -3757,5 +3757,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.682Z" + "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 63b1820..1afa0eb 100644 --- a/build/contracts/Videos.json +++ b/build/contracts/Videos.json @@ -213,24 +213,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", "exportedSymbols": { "Videos": [ - 2270 + 2398 ] }, - "id": 2271, + "id": 2399, "nodeType": "SourceUnit", "nodes": [ { - "id": 1999, + "id": 2112, "literals": [ "solidity", "^", @@ -243,10 +243,10 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2000, + "id": 2113, "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2807, + "scope": 2399, + "sourceUnit": 2950, "src": "26:59:12", "symbolAliases": [], "unitAlias": "" @@ -254,21 +254,21 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 2001, + "id": 2114, "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2751, + "scope": 2399, + "sourceUnit": 2894, "src": "86:55:12", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 2002, + "id": 2115, "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 1097, + "scope": 2399, + "sourceUnit": 1157, "src": "142:24:12", "symbolAliases": [], "unitAlias": "" @@ -279,45 +279,45 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2003, + "id": 2116, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "187:7:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 2004, + "id": 2117, "nodeType": "InheritanceSpecifier", "src": "187:7:12" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2270, + "id": 2398, "linearizedBaseContracts": [ - 2270, - 2806 + 2398, + 2949 ], "name": "Videos", "nodeType": "ContractDefinition", "nodes": [ { "canonicalName": "Videos.VideoInfo", - "id": 2019, + "id": 2132, "members": [ { "constant": false, - "id": 2006, + "id": 2119, "name": "_id", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "229:11:12", "stateVariable": false, "storageLocation": "default", @@ -326,7 +326,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2005, + "id": 2118, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "229:7:12", @@ -340,10 +340,10 @@ }, { "constant": false, - "id": 2008, + "id": 2121, "name": "ipfsHashOrig", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "250:19:12", "stateVariable": false, "storageLocation": "default", @@ -352,7 +352,7 @@ "typeString": "string" }, "typeName": { - "id": 2007, + "id": 2120, "name": "string", "nodeType": "ElementaryTypeName", "src": "250:6:12", @@ -366,10 +366,10 @@ }, { "constant": false, - "id": 2010, + "id": 2123, "name": "ipfsHash", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "320:15:12", "stateVariable": false, "storageLocation": "default", @@ -378,7 +378,7 @@ "typeString": "string" }, "typeName": { - "id": 2009, + "id": 2122, "name": "string", "nodeType": "ElementaryTypeName", "src": "320:6:12", @@ -392,10 +392,10 @@ }, { "constant": false, - "id": 2012, + "id": 2125, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "401:15:12", "stateVariable": false, "storageLocation": "default", @@ -404,7 +404,7 @@ "typeString": "string" }, "typeName": { - "id": 2011, + "id": 2124, "name": "string", "nodeType": "ElementaryTypeName", "src": "401:6:12", @@ -418,10 +418,10 @@ }, { "constant": false, - "id": 2014, + "id": 2127, "name": "price", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "485:13:12", "stateVariable": false, "storageLocation": "default", @@ -430,7 +430,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2013, + "id": 2126, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "485:7:12", @@ -444,10 +444,10 @@ }, { "constant": false, - "id": 2016, + "id": 2129, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "528:13:12", "stateVariable": false, "storageLocation": "default", @@ -456,7 +456,7 @@ "typeString": "address" }, "typeName": { - "id": 2015, + "id": 2128, "name": "address", "nodeType": "ElementaryTypeName", "src": "528:7:12", @@ -470,10 +470,10 @@ }, { "constant": false, - "id": 2018, + "id": 2131, "name": "registrar", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "564:17:12", "stateVariable": false, "storageLocation": "default", @@ -482,7 +482,7 @@ "typeString": "address" }, "typeName": { - "id": 2017, + "id": 2130, "name": "address", "nodeType": "ElementaryTypeName", "src": "564:7:12", @@ -497,27 +497,27 @@ ], "name": "VideoInfo", "nodeType": "StructDefinition", - "scope": 2270, + "scope": 2398, "src": "202:467:12", "visibility": "public" }, { "constant": false, - "id": 2023, + "id": 2136, "name": "videos", "nodeType": "VariableDeclaration", - "scope": 2270, + "scope": 2398, "src": "675:35:12", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" }, "typeName": { - "id": 2022, + "id": 2135, "keyType": { - "id": 2020, + "id": 2133, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "684:7:12", @@ -529,18 +529,18 @@ "nodeType": "Mapping", "src": "675:28:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" }, "valueType": { "contractScope": null, - "id": 2021, + "id": 2134, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, + "referencedDeclaration": 2132, "src": "693:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } } @@ -550,26 +550,26 @@ }, { "constant": false, - "id": 2025, + "id": 2138, "name": "paratiiRegistry", "nodeType": "VariableDeclaration", - "scope": 2270, + "scope": 2398, "src": "716:31:12", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2024, + "id": 2137, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "716:8:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -579,20 +579,20 @@ { "anonymous": false, "documentation": null, - "id": 2041, + "id": 2154, "name": "LogCreateVideo", "nodeType": "EventDefinition", "parameters": { - "id": 2040, + "id": 2153, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2027, + "id": 2140, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "784:14:12", "stateVariable": false, "storageLocation": "default", @@ -601,7 +601,7 @@ "typeString": "string" }, "typeName": { - "id": 2026, + "id": 2139, "name": "string", "nodeType": "ElementaryTypeName", "src": "784:6:12", @@ -615,11 +615,11 @@ }, { "constant": false, - "id": 2029, + "id": 2142, "indexed": false, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "808:13:12", "stateVariable": false, "storageLocation": "default", @@ -628,7 +628,7 @@ "typeString": "address" }, "typeName": { - "id": 2028, + "id": 2141, "name": "address", "nodeType": "ElementaryTypeName", "src": "808:7:12", @@ -642,11 +642,11 @@ }, { "constant": false, - "id": 2031, + "id": 2144, "indexed": false, "name": "price", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "831:10:12", "stateVariable": false, "storageLocation": "default", @@ -655,7 +655,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2030, + "id": 2143, "name": "uint", "nodeType": "ElementaryTypeName", "src": "831:4:12", @@ -669,11 +669,11 @@ }, { "constant": false, - "id": 2033, + "id": 2146, "indexed": false, "name": "ipfsHashOrig", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "851:19:12", "stateVariable": false, "storageLocation": "default", @@ -682,7 +682,7 @@ "typeString": "string" }, "typeName": { - "id": 2032, + "id": 2145, "name": "string", "nodeType": "ElementaryTypeName", "src": "851:6:12", @@ -696,11 +696,11 @@ }, { "constant": false, - "id": 2035, + "id": 2148, "indexed": false, "name": "ipfsHash", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "880:15:12", "stateVariable": false, "storageLocation": "default", @@ -709,7 +709,7 @@ "typeString": "string" }, "typeName": { - "id": 2034, + "id": 2147, "name": "string", "nodeType": "ElementaryTypeName", "src": "880:6:12", @@ -723,11 +723,11 @@ }, { "constant": false, - "id": 2037, + "id": 2150, "indexed": false, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "905:15:12", "stateVariable": false, "storageLocation": "default", @@ -736,7 +736,7 @@ "typeString": "string" }, "typeName": { - "id": 2036, + "id": 2149, "name": "string", "nodeType": "ElementaryTypeName", "src": "905:6:12", @@ -750,11 +750,11 @@ }, { "constant": false, - "id": 2039, + "id": 2152, "indexed": false, "name": "registrar", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "930:17:12", "stateVariable": false, "storageLocation": "default", @@ -763,7 +763,7 @@ "typeString": "address" }, "typeName": { - "id": 2038, + "id": 2151, "name": "address", "nodeType": "ElementaryTypeName", "src": "930:7:12", @@ -783,20 +783,20 @@ { "anonymous": false, "documentation": null, - "id": 2045, + "id": 2158, "name": "LogRemoveVideo", "nodeType": "EventDefinition", "parameters": { - "id": 2044, + "id": 2157, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2043, + "id": 2156, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 2045, + "scope": 2158, "src": "981:14:12", "stateVariable": false, "storageLocation": "default", @@ -805,7 +805,7 @@ "typeString": "string" }, "typeName": { - "id": 2042, + "id": 2155, "name": "string", "nodeType": "ElementaryTypeName", "src": "981:6:12", @@ -824,7 +824,7 @@ }, { "body": { - "id": 2058, + "id": 2171, "nodeType": "Block", "src": "1042:87:12", "statements": [ @@ -838,7 +838,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2054, + "id": 2167, "isConstant": false, "isLValue": false, "isPure": false, @@ -847,18 +847,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2048, + "id": 2161, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1060:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2049, + "id": 2162, "isConstant": false, "isLValue": false, "isPure": false, @@ -880,7 +880,7 @@ { "argumentTypes": null, "hexValue": "5573657273", - "id": 2052, + "id": 2165, "isConstant": false, "isLValue": false, "isPure": true, @@ -905,32 +905,32 @@ ], "expression": { "argumentTypes": null, - "id": 2050, + "id": 2163, "name": "paratiiRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2025, + "referencedDeclaration": 2138, "src": "1074:15:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2051, + "id": 2164, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 2053, + "id": 2166, "isConstant": false, "isLValue": false, "isPure": false, @@ -958,21 +958,21 @@ "typeString": "bool" } ], - "id": 2047, + "id": 2160, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1052:7:12", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2055, + "id": 2168, "isConstant": false, "isLValue": false, "isPure": false, @@ -986,23 +986,23 @@ "typeString": "tuple()" } }, - "id": 2056, + "id": 2169, "nodeType": "ExpressionStatement", "src": "1052:59:12" }, { - "id": 2057, + "id": 2170, "nodeType": "PlaceholderStatement", "src": "1121:1:12" } ] }, "documentation": null, - "id": 2059, + "id": 2172, "name": "onlyUserRegistry", "nodeType": "ModifierDefinition", "parameters": { - "id": 2046, + "id": 2159, "nodeType": "ParameterList", "parameters": [], "src": "1039:2:12" @@ -1012,21 +1012,21 @@ }, { "body": { - "id": 2095, + "id": 2211, "nodeType": "Block", - "src": "1183:215:12", + "src": "1183:233:12", "statements": [ { "assignments": [ - 2064 + 2177 ], "declarations": [ { "constant": false, - "id": 2064, + "id": 2177, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2096, + "scope": 2212, "src": "1193:10:12", "stateVariable": false, "storageLocation": "default", @@ -1035,7 +1035,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2063, + "id": 2176, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1193:7:12", @@ -1048,43 +1048,95 @@ "visibility": "internal" } ], - "id": 2068, + "id": 2184, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2066, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2061, - "src": "1216:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2065, + "id": 2178, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "1206:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2067, + "id": 2183, "isConstant": false, "isLValue": false, "isPure": false, @@ -1092,42 +1144,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1206:19:12", + "src": "1206:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1193:32:12" + "src": "1193:50:12" }, { "assignments": [ - 2070 + 2186 ], "declarations": [ { "constant": false, - "id": 2070, + "id": 2186, "name": "videoInfo", "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1235:27:12", + "scope": 2212, + "src": "1253:27:12", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" }, "typeName": { "contractScope": null, - "id": 2069, + "id": 2185, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1235:9:12", + "referencedDeclaration": 2132, + "src": "1253:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } }, @@ -1135,31 +1187,31 @@ "visibility": "internal" } ], - "id": 2074, + "id": 2190, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2071, + "id": 2187, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1265:6:12", + "referencedDeclaration": 2136, + "src": "1283:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2073, + "id": 2189, "indexExpression": { "argumentTypes": null, - "id": 2072, + "id": 2188, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2064, - "src": "1272:2:12", + "referencedDeclaration": 2177, + "src": "1290:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1170,14 +1222,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1265:10:12", + "src": "1283:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1235:40:12" + "src": "1253:40:12" }, { "expression": { @@ -1189,7 +1241,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2091, + "id": 2207, "isConstant": false, "isLValue": false, "isPure": false, @@ -1200,7 +1252,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2079, + "id": 2195, "isConstant": false, "isLValue": false, "isPure": false, @@ -1209,18 +1261,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2076, + "id": 2192, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1293:3:12", + "referencedDeclaration": 3344, + "src": "1311:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2077, + "id": 2193, "isConstant": false, "isLValue": false, "isPure": false, @@ -1228,7 +1280,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1293:10:12", + "src": "1311:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1238,18 +1290,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2078, + "id": 2194, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1307:5:12", + "referencedDeclaration": 2897, + "src": "1325:5:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1293:19:12", + "src": "1311:19:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1266,7 +1318,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2089, + "id": 2205, "isConstant": false, "isLValue": false, "isPure": false, @@ -1277,7 +1329,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2083, + "id": 2199, "isConstant": false, "isLValue": false, "isPure": false, @@ -1286,26 +1338,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2080, + "id": 2196, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1317:9:12", + "referencedDeclaration": 2186, + "src": "1335:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2081, + "id": 2197, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1317:19:12", + "referencedDeclaration": 2131, + "src": "1335:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1316,14 +1368,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2082, + "id": 2198, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1340:1:12", + "src": "1358:1:12", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -1331,7 +1383,7 @@ }, "value": "0" }, - "src": "1317:24:12", + "src": "1335:24:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1345,7 +1397,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2088, + "id": 2204, "isConstant": false, "isLValue": false, "isPure": false, @@ -1354,18 +1406,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2084, + "id": 2200, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1345:3:12", + "referencedDeclaration": 3344, + "src": "1363:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2085, + "id": 2201, "isConstant": false, "isLValue": false, "isPure": false, @@ -1373,7 +1425,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1345:10:12", + "src": "1363:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1385,58 +1437,58 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2086, + "id": 2202, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1359:9:12", + "referencedDeclaration": 2186, + "src": "1377:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2087, + "id": 2203, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1359:19:12", + "referencedDeclaration": 2131, + "src": "1377:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1345:33:12", + "src": "1363:33:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1317:61:12", + "src": "1335:61:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2090, + "id": 2206, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "1316:63:12", + "src": "1334:63:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1293:86:12", + "src": "1311:86:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1450,21 +1502,21 @@ "typeString": "bool" } ], - "id": 2075, + "id": 2191, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1285:7:12", + "referencedDeclaration": 3347, + "src": "1303:7:12", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2092, + "id": 2208, "isConstant": false, "isLValue": false, "isPure": false, @@ -1472,37 +1524,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1285:95:12", + "src": "1303:95:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2093, + "id": 2209, "nodeType": "ExpressionStatement", - "src": "1285:95:12" + "src": "1303:95:12" }, { - "id": 2094, + "id": 2210, "nodeType": "PlaceholderStatement", - "src": "1390:1:12" + "src": "1408:1:12" } ] }, "documentation": null, - "id": 2096, + "id": 2212, "name": "onlyRegistrarOrAvatar", "nodeType": "ModifierDefinition", "parameters": { - "id": 2062, + "id": 2175, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2061, + "id": 2174, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2096, + "scope": 2212, "src": "1166:15:12", "stateVariable": false, "storageLocation": "default", @@ -1511,7 +1563,7 @@ "typeString": "string" }, "typeName": { - "id": 2060, + "id": 2173, "name": "string", "nodeType": "ElementaryTypeName", "src": "1166:6:12", @@ -1526,27 +1578,27 @@ ], "src": "1165:17:12" }, - "src": "1135:263:12", + "src": "1135:281:12", "visibility": "internal" }, { "body": { - "id": 2138, + "id": 2257, "nodeType": "Block", - "src": "1458:248:12", + "src": "1476:266:12", "statements": [ { "assignments": [ - 2101 + 2217 ], "declarations": [ { "constant": false, - "id": 2101, + "id": 2217, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1468:10:12", + "scope": 2258, + "src": "1486:10:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1554,10 +1606,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2100, + "id": 2216, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1468:7:12", + "src": "1486:7:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1567,43 +1619,95 @@ "visibility": "internal" } ], - "id": 2105, + "id": 2224, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2103, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2098, - "src": "1491:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2102, + "id": 2218, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1481:9:12", + "referencedDeclaration": 3338, + "src": "1499:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2104, + "id": 2223, "isConstant": false, "isLValue": false, "isPure": false, @@ -1611,42 +1715,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1481:19:12", + "src": "1499:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1468:32:12" + "src": "1486:50:12" }, { "assignments": [ - 2107 + 2226 ], "declarations": [ { "constant": false, - "id": 2107, + "id": 2226, "name": "videoInfo", "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1510:27:12", + "scope": 2258, + "src": "1546:27:12", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" }, "typeName": { "contractScope": null, - "id": 2106, + "id": 2225, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1510:9:12", + "referencedDeclaration": 2132, + "src": "1546:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } }, @@ -1654,31 +1758,31 @@ "visibility": "internal" } ], - "id": 2111, + "id": 2230, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2108, + "id": 2227, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1540:6:12", + "referencedDeclaration": 2136, + "src": "1576:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2110, + "id": 2229, "indexExpression": { "argumentTypes": null, - "id": 2109, + "id": 2228, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2101, - "src": "1547:2:12", + "referencedDeclaration": 2217, + "src": "1583:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1689,14 +1793,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1540:10:12", + "src": "1576:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1510:40:12" + "src": "1546:40:12" }, { "expression": { @@ -1708,7 +1812,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2134, + "id": 2253, "isConstant": false, "isLValue": false, "isPure": false, @@ -1719,7 +1823,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2116, + "id": 2235, "isConstant": false, "isLValue": false, "isPure": false, @@ -1728,18 +1832,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2113, + "id": 2232, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1568:3:12", + "referencedDeclaration": 3344, + "src": "1604:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2114, + "id": 2233, "isConstant": false, "isLValue": false, "isPure": false, @@ -1747,7 +1851,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1568:10:12", + "src": "1604:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1757,18 +1861,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2115, + "id": 2234, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1582:5:12", + "referencedDeclaration": 2897, + "src": "1618:5:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1568:19:12", + "src": "1604:19:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1785,7 +1889,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2132, + "id": 2251, "isConstant": false, "isLValue": false, "isPure": false, @@ -1796,7 +1900,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2126, + "id": 2245, "isConstant": false, "isLValue": false, "isPure": false, @@ -1807,7 +1911,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2120, + "id": 2239, "isConstant": false, "isLValue": false, "isPure": false, @@ -1816,26 +1920,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2117, + "id": 2236, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1592:9:12", + "referencedDeclaration": 2226, + "src": "1628:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2118, + "id": 2237, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1592:19:12", + "referencedDeclaration": 2131, + "src": "1628:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1846,14 +1950,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2119, + "id": 2238, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1615:1:12", + "src": "1651:1:12", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -1861,7 +1965,7 @@ }, "value": "0" }, - "src": "1592:24:12", + "src": "1628:24:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1875,7 +1979,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2125, + "id": 2244, "isConstant": false, "isLValue": false, "isPure": false, @@ -1884,18 +1988,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2121, + "id": 2240, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1620:3:12", + "referencedDeclaration": 3344, + "src": "1656:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2122, + "id": 2241, "isConstant": false, "isLValue": false, "isPure": false, @@ -1903,7 +2007,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1620:10:12", + "src": "1656:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1915,38 +2019,38 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2123, + "id": 2242, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1634:9:12", + "referencedDeclaration": 2226, + "src": "1670:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2124, + "id": 2243, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1634:19:12", + "referencedDeclaration": 2131, + "src": "1670:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1620:33:12", + "src": "1656:33:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1592:61:12", + "src": "1628:61:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1960,7 +2064,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2131, + "id": 2250, "isConstant": false, "isLValue": false, "isPure": false, @@ -1969,18 +2073,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2127, + "id": 2246, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1657:3:12", + "referencedDeclaration": 3344, + "src": "1693:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2128, + "id": 2247, "isConstant": false, "isLValue": false, "isPure": false, @@ -1988,7 +2092,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1657:10:12", + "src": "1693:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2000,58 +2104,58 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2129, + "id": 2248, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1671:9:12", + "referencedDeclaration": 2226, + "src": "1707:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2130, + "id": 2249, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "1671:15:12", + "referencedDeclaration": 2129, + "src": "1707:15:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1657:29:12", + "src": "1693:29:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1592:94:12", + "src": "1628:94:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2133, + "id": 2252, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "1591:96:12", + "src": "1627:96:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1568:119:12", + "src": "1604:119:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2065,21 +2169,21 @@ "typeString": "bool" } ], - "id": 2112, + "id": 2231, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1560:7:12", + "referencedDeclaration": 3347, + "src": "1596:7:12", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2135, + "id": 2254, "isConstant": false, "isLValue": false, "isPure": false, @@ -2087,38 +2191,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1560:128:12", + "src": "1596:128:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2136, + "id": 2255, "nodeType": "ExpressionStatement", - "src": "1560:128:12" + "src": "1596:128:12" }, { - "id": 2137, + "id": 2256, "nodeType": "PlaceholderStatement", - "src": "1698:1:12" + "src": "1734:1:12" } ] }, "documentation": null, - "id": 2139, + "id": 2258, "name": "onlyRegistrarOrAvatarOrOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 2099, + "id": 2215, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2098, + "id": 2214, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1441:15:12", + "scope": 2258, + "src": "1459:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2126,10 +2230,10 @@ "typeString": "string" }, "typeName": { - "id": 2097, + "id": 2213, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1441:6:12", + "src": "1459:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2139,33 +2243,33 @@ "visibility": "internal" } ], - "src": "1440:17:12" + "src": "1458:17:12" }, - "src": "1403:303:12", + "src": "1421:321:12", "visibility": "internal" }, { "body": { - "id": 2153, + "id": 2272, "nodeType": "Block", - "src": "1758:79:12", + "src": "1794:79:12", "statements": [ { "expression": { "argumentTypes": null, - "id": 2147, + "id": 2266, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2144, + "id": 2263, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1768:5:12", + "referencedDeclaration": 2897, + "src": "1804:5:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2177,18 +2281,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2145, + "id": 2264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1776:3:12", + "referencedDeclaration": 3344, + "src": "1812:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2146, + "id": 2265, "isConstant": false, "isLValue": false, "isPure": false, @@ -2196,40 +2300,40 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1776:10:12", + "src": "1812:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1768:18:12", + "src": "1804:18:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2148, + "id": 2267, "nodeType": "ExpressionStatement", - "src": "1768:18:12" + "src": "1804:18:12" }, { "expression": { "argumentTypes": null, - "id": 2151, + "id": 2270, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2149, + "id": 2268, "name": "paratiiRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2025, - "src": "1796:15:12", + "referencedDeclaration": 2138, + "src": "1832:15:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2237,31 +2341,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2150, + "id": 2269, "name": "_paratiiRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2141, - "src": "1814:16:12", + "referencedDeclaration": 2260, + "src": "1850:16:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "src": "1796:34:12", + "src": "1832:34:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2152, + "id": 2271, "nodeType": "ExpressionStatement", - "src": "1796:34:12" + "src": "1832:34:12" } ] }, "documentation": null, - "id": 2154, + "id": 2273, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -2269,31 +2373,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2142, + "id": 2261, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2141, + "id": 2260, "name": "_paratiiRegistry", "nodeType": "VariableDeclaration", - "scope": 2154, - "src": "1724:25:12", + "scope": 2273, + "src": "1760:25:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2140, + "id": 2259, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "1724:8:12", + "referencedDeclaration": 1156, + "src": "1760:8:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2301,39 +2405,39 @@ "visibility": "internal" } ], - "src": "1723:27:12" + "src": "1759:27:12" }, "payable": false, "returnParameters": { - "id": 2143, + "id": 2262, "nodeType": "ParameterList", "parameters": [], - "src": "1758:0:12" + "src": "1794:0:12" }, - "scope": 2270, - "src": "1712:125:12", + "scope": 2398, + "src": "1748:125:12", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2204, + "id": 2326, "nodeType": "Block", - "src": "2508:417:12", + "src": "2544:435:12", "statements": [ { "assignments": [ - 2173 + 2292 ], "declarations": [ { "constant": false, - "id": 2173, + "id": 2292, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2519:10:12", + "scope": 2327, + "src": "2555:10:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2341,10 +2445,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2172, + "id": 2291, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2519:7:12", + "src": "2555:7:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2354,43 +2458,95 @@ "visibility": "internal" } ], - "id": 2177, + "id": 2299, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2175, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2542:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2174, + "id": 2293, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2532:9:12", + "referencedDeclaration": 3338, + "src": "2568:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2176, + "id": 2298, "isConstant": false, "isLValue": false, "isPure": false, @@ -2398,19 +2554,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2532:19:12", + "src": "2568:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "2519:32:12" + "src": "2555:50:12" }, { "expression": { "argumentTypes": null, - "id": 2191, + "id": 2313, "isConstant": false, "isLValue": false, "isPure": false, @@ -2419,26 +2575,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2178, + "id": 2300, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "2562:6:12", + "referencedDeclaration": 2136, + "src": "2616:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2180, + "id": 2302, "indexExpression": { "argumentTypes": null, - "id": 2179, + "id": 2301, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2569:2:12", + "referencedDeclaration": 2292, + "src": "2623:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2449,9 +2605,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2562:10:12", + "src": "2616:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, @@ -2462,12 +2618,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2182, + "id": 2304, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2604:2:12", + "referencedDeclaration": 2292, + "src": "2658:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2475,12 +2631,12 @@ }, { "argumentTypes": null, - "id": 2183, + "id": 2305, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2627:6:12", + "referencedDeclaration": 2279, + "src": "2681:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2488,12 +2644,12 @@ }, { "argumentTypes": null, - "id": 2184, + "id": 2306, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2654:6:12", + "referencedDeclaration": 2277, + "src": "2708:6:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2501,12 +2657,12 @@ }, { "argumentTypes": null, - "id": 2185, + "id": 2307, "name": "_ipfsHashOrig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2688:13:12", + "referencedDeclaration": 2281, + "src": "2742:13:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2514,12 +2670,12 @@ }, { "argumentTypes": null, - "id": 2186, + "id": 2308, "name": "_ipfsHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2725:9:12", + "referencedDeclaration": 2283, + "src": "2779:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2527,12 +2683,12 @@ }, { "argumentTypes": null, - "id": 2187, + "id": 2309, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2758:9:12", + "referencedDeclaration": 2285, + "src": "2812:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2542,18 +2698,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2188, + "id": 2310, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2792:3:12", + "referencedDeclaration": 3344, + "src": "2846:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2189, + "id": 2311, "isConstant": false, "isLValue": false, "isPure": false, @@ -2561,7 +2717,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2792:10:12", + "src": "2846:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2570,18 +2726,18 @@ ], "expression": { "argumentTypes": null, - "id": 2181, + "id": 2303, "name": "VideoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2019, - "src": "2575:9:12", + "referencedDeclaration": 2132, + "src": "2629:9:12", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2019_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2132_storage_ptr_$", "typeString": "type(struct Videos.VideoInfo storage pointer)" } }, - "id": 2190, + "id": 2312, "isConstant": false, "isLValue": false, "isPure": false, @@ -2597,21 +2753,21 @@ "registrar" ], "nodeType": "FunctionCall", - "src": "2575:238:12", + "src": "2629:238:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_memory", + "typeIdentifier": "t_struct$_VideoInfo_$2132_memory", "typeString": "struct Videos.VideoInfo memory" } }, - "src": "2562:251:12", + "src": "2616:251:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, - "id": 2192, + "id": 2314, "nodeType": "ExpressionStatement", - "src": "2562:251:12" + "src": "2616:251:12" }, { "eventCall": { @@ -2619,12 +2775,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2194, + "id": 2316, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2844:8:12", + "referencedDeclaration": 2275, + "src": "2898:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2632,12 +2788,12 @@ }, { "argumentTypes": null, - "id": 2195, + "id": 2317, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2854:6:12", + "referencedDeclaration": 2277, + "src": "2908:6:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2645,12 +2801,12 @@ }, { "argumentTypes": null, - "id": 2196, + "id": 2318, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2862:6:12", + "referencedDeclaration": 2279, + "src": "2916:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2658,12 +2814,12 @@ }, { "argumentTypes": null, - "id": 2197, + "id": 2319, "name": "_ipfsHashOrig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2870:13:12", + "referencedDeclaration": 2281, + "src": "2924:13:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2671,12 +2827,12 @@ }, { "argumentTypes": null, - "id": 2198, + "id": 2320, "name": "_ipfsHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2885:9:12", + "referencedDeclaration": 2283, + "src": "2939:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2684,12 +2840,12 @@ }, { "argumentTypes": null, - "id": 2199, + "id": 2321, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2896:9:12", + "referencedDeclaration": 2285, + "src": "2950:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2699,18 +2855,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2200, + "id": 2322, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2907:3:12", + "referencedDeclaration": 3344, + "src": "2961:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2201, + "id": 2323, "isConstant": false, "isLValue": false, "isPure": false, @@ -2718,7 +2874,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2907:10:12", + "src": "2961:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2756,18 +2912,18 @@ "typeString": "address" } ], - "id": 2193, + "id": 2315, "name": "LogCreateVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2041, - "src": "2829:14:12", + "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": 2202, + "id": 2324, "isConstant": false, "isLValue": false, "isPure": false, @@ -2775,20 +2931,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2829:89:12", + "src": "2883:89:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2203, + "id": 2325, "nodeType": "EmitStatement", - "src": "2824:94:12" + "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": 2205, + "id": 2327, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2797,49 +2953,49 @@ "arguments": [ { "argumentTypes": null, - "id": 2169, + "id": 2288, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2491:8:12", + "referencedDeclaration": 2275, + "src": "2527:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], - "id": 2170, + "id": 2289, "modifierName": { "argumentTypes": null, - "id": 2168, + "id": 2287, "name": "onlyRegistrarOrAvatarOrOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2462:28:12", + "referencedDeclaration": 2258, + "src": "2498:28:12", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", "typeString": "modifier (string memory)" } }, "nodeType": "ModifierInvocation", - "src": "2462:38:12" + "src": "2498:38:12" } ], "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 2167, + "id": 2286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2156, + "id": 2275, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2310:15:12", + "scope": 2327, + "src": "2346:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2847,10 +3003,10 @@ "typeString": "string" }, "typeName": { - "id": 2155, + "id": 2274, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2310:6:12", + "src": "2346:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2861,11 +3017,11 @@ }, { "constant": false, - "id": 2158, + "id": 2277, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2335:14:12", + "scope": 2327, + "src": "2371:14:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2873,10 +3029,10 @@ "typeString": "address" }, "typeName": { - "id": 2157, + "id": 2276, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2335:7:12", + "src": "2371:7:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2887,11 +3043,11 @@ }, { "constant": false, - "id": 2160, + "id": 2279, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2359:14:12", + "scope": 2327, + "src": "2395:14:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2899,10 +3055,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2159, + "id": 2278, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2359:7:12", + "src": "2395:7:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2913,11 +3069,11 @@ }, { "constant": false, - "id": 2162, + "id": 2281, "name": "_ipfsHashOrig", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2383:20:12", + "scope": 2327, + "src": "2419:20:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2925,10 +3081,10 @@ "typeString": "string" }, "typeName": { - "id": 2161, + "id": 2280, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2383:6:12", + "src": "2419:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2939,11 +3095,11 @@ }, { "constant": false, - "id": 2164, + "id": 2283, "name": "_ipfsHash", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2413:16:12", + "scope": 2327, + "src": "2449:16:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2951,10 +3107,10 @@ "typeString": "string" }, "typeName": { - "id": 2163, + "id": 2282, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2413:6:12", + "src": "2449:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2965,11 +3121,11 @@ }, { "constant": false, - "id": 2166, + "id": 2285, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2439:16:12", + "scope": 2327, + "src": "2475:16:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2977,10 +3133,10 @@ "typeString": "string" }, "typeName": { - "id": 2165, + "id": 2284, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2439:6:12", + "src": "2475:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2990,39 +3146,39 @@ "visibility": "internal" } ], - "src": "2300:161:12" + "src": "2336:161:12" }, "payable": false, "returnParameters": { - "id": 2171, + "id": 2290, "nodeType": "ParameterList", "parameters": [], - "src": "2508:0:12" + "src": "2544:0:12" }, - "scope": 2270, - "src": "2285:640:12", + "scope": 2398, + "src": "2321:658:12", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2228, + "id": 2353, "nodeType": "Block", - "src": "3010:115:12", + "src": "3064:133:12", "statements": [ { "assignments": [ - 2214 + 2336 ], "declarations": [ { "constant": false, - "id": 2214, + "id": 2336, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "3020:10:12", + "scope": 2354, + "src": "3074:10:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3030,10 +3186,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2213, + "id": 2335, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3020:7:12", + "src": "3074:7:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3043,43 +3199,95 @@ "visibility": "internal" } ], - "id": 2218, + "id": 2343, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2216, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3043:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2215, + "id": 2337, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3033:9:12", + "referencedDeclaration": 3338, + "src": "3087:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2217, + "id": 2342, "isConstant": false, "isLValue": false, "isPure": false, @@ -3087,19 +3295,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3033:19:12", + "src": "3087:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "3020:32:12" + "src": "3074:50:12" }, { "expression": { "argumentTypes": null, - "id": 2222, + "id": 2347, "isConstant": false, "isLValue": false, "isPure": false, @@ -3107,31 +3315,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "3062:17:12", + "src": "3134:17:12", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2219, + "id": 2344, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3069:6:12", + "referencedDeclaration": 2136, + "src": "3141:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2221, + "id": 2346, "indexExpression": { "argumentTypes": null, - "id": 2220, + "id": 2345, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2214, - "src": "3076:2:12", + "referencedDeclaration": 2336, + "src": "3148:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3142,9 +3350,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3069:10:12", + "src": "3141:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, @@ -3153,9 +3361,9 @@ "typeString": "tuple()" } }, - "id": 2223, + "id": 2348, "nodeType": "ExpressionStatement", - "src": "3062:17:12" + "src": "3134:17:12" }, { "eventCall": { @@ -3163,12 +3371,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2225, + "id": 2350, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3109:8:12", + "referencedDeclaration": 2329, + "src": "3181:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3182,18 +3390,18 @@ "typeString": "string memory" } ], - "id": 2224, + "id": 2349, "name": "LogRemoveVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2045, - "src": "3094:14:12", + "referencedDeclaration": 2158, + "src": "3166:14:12", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 2226, + "id": 2351, "isConstant": false, "isLValue": false, "isPure": false, @@ -3201,20 +3409,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3094:24:12", + "src": "3166:24:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2227, + "id": 2352, "nodeType": "EmitStatement", - "src": "3089:29:12" + "src": "3161:29:12" } ] }, "documentation": null, - "id": 2229, + "id": 2354, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3223,49 +3431,49 @@ "arguments": [ { "argumentTypes": null, - "id": 2210, + "id": 2332, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3000:8:12", + "referencedDeclaration": 2329, + "src": "3054:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], - "id": 2211, + "id": 2333, "modifierName": { "argumentTypes": null, - "id": 2209, + "id": 2331, "name": "onlyRegistrarOrAvatarOrOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2971:28:12", + "referencedDeclaration": 2258, + "src": "3025:28:12", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", "typeString": "modifier (string memory)" } }, "nodeType": "ModifierInvocation", - "src": "2971:38:12" + "src": "3025:38:12" } ], "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2208, + "id": 2330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2207, + "id": 2329, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "2947:15:12", + "scope": 2354, + "src": "3001:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3273,10 +3481,10 @@ "typeString": "string" }, "typeName": { - "id": 2206, + "id": 2328, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2947:6:12", + "src": "3001:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3286,54 +3494,54 @@ "visibility": "internal" } ], - "src": "2946:17:12" + "src": "3000:17:12" }, "payable": false, "returnParameters": { - "id": 2212, + "id": 2334, "nodeType": "ParameterList", "parameters": [], - "src": "3010:0:12" + "src": "3064:0:12" }, - "scope": 2270, - "src": "2931:194:12", + "scope": 2398, + "src": "2985:212:12", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2268, + "id": 2396, "nodeType": "Block", - "src": "3403:210:12", + "src": "3475:324:12", "statements": [ { "assignments": [ - 2247 + 2372 ], "declarations": [ { "constant": false, - "id": 2247, + "id": 2372, "name": "videoInfo", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3413:27:12", + "scope": 2397, + "src": "3485:27:12", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" }, "typeName": { "contractScope": null, - "id": 2246, + "id": 2371, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "3413:9:12", + "referencedDeclaration": 2132, + "src": "3485:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } }, @@ -3341,59 +3549,111 @@ "visibility": "internal" } ], - "id": 2253, + "id": 2381, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2248, + "id": 2373, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3443:6:12", + "referencedDeclaration": 2136, + "src": "3515:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2252, + "id": 2380, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2250, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2231, - "src": "3460:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2249, + "id": 2374, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3450:9:12", + "referencedDeclaration": 3338, + "src": "3522:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2251, + "id": 2379, "isConstant": false, "isLValue": false, "isPure": false, @@ -3401,7 +3661,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3450:19:12", + "src": "3522:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3412,14 +3672,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3443:27:12", + "src": "3515:45:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3413:57:12" + "src": "3485:75:12" }, { "expression": { @@ -3429,26 +3689,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2254, + "id": 2382, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3488:9:12", + "referencedDeclaration": 2372, + "src": "3600:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2255, + "id": 2383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "3488:15:12", + "referencedDeclaration": 2129, + "src": "3600:15:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3458,26 +3718,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2256, + "id": 2384, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3505:9:12", + "referencedDeclaration": 2372, + "src": "3630:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2257, + "id": 2385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "price", "nodeType": "MemberAccess", - "referencedDeclaration": 2014, - "src": "3505:15:12", + "referencedDeclaration": 2127, + "src": "3630:15:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3487,26 +3747,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2258, + "id": 2386, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3522:9:12", + "referencedDeclaration": 2372, + "src": "3660:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2259, + "id": 2387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsHashOrig", "nodeType": "MemberAccess", - "referencedDeclaration": 2008, - "src": "3522:22:12", + "referencedDeclaration": 2121, + "src": "3660:22:12", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -3516,26 +3776,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2260, + "id": 2388, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3546:9:12", + "referencedDeclaration": 2372, + "src": "3697:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2261, + "id": 2389, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsHash", "nodeType": "MemberAccess", - "referencedDeclaration": 2010, - "src": "3546:18:12", + "referencedDeclaration": 2123, + "src": "3697:18:12", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -3545,26 +3805,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2262, + "id": 2390, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3566:9:12", + "referencedDeclaration": 2372, + "src": "3730:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2263, + "id": 2391, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 2012, - "src": "3566:18:12", + "referencedDeclaration": 2125, + "src": "3730:18:12", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -3574,54 +3834,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2264, + "id": 2392, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3586:9:12", + "referencedDeclaration": 2372, + "src": "3763:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2265, + "id": 2393, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "3586:19:12", + "referencedDeclaration": 2131, + "src": "3763:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 2266, + "id": 2394, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "3487:119:12", + "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": 2245, - "id": 2267, + "functionReturnParameters": 2370, + "id": 2395, "nodeType": "Return", - "src": "3480:126:12" + "src": "3579:213:12" } ] }, "documentation": "@dev return information about video\n@return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)", - "id": 2269, + "id": 2397, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -3629,16 +3889,16 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 2232, + "id": 2357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2231, + "id": 2356, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3287:15:12", + "scope": 2397, + "src": "3359:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3646,10 +3906,10 @@ "typeString": "string" }, "typeName": { - "id": 2230, + "id": 2355, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3287:6:12", + "src": "3359:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3659,20 +3919,20 @@ "visibility": "internal" } ], - "src": "3286:17:12" + "src": "3358:17:12" }, "payable": false, "returnParameters": { - "id": 2245, + "id": 2370, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2234, + "id": 2359, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3348:7:12", + "scope": 2397, + "src": "3420:7:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3680,10 +3940,10 @@ "typeString": "address" }, "typeName": { - "id": 2233, + "id": 2358, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3348:7:12", + "src": "3420:7:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3694,11 +3954,11 @@ }, { "constant": false, - "id": 2236, + "id": 2361, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3357:7:12", + "scope": 2397, + "src": "3429:7:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3706,10 +3966,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2235, + "id": 2360, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3357:7:12", + "src": "3429:7:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3720,11 +3980,11 @@ }, { "constant": false, - "id": 2238, + "id": 2363, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3366:6:12", + "scope": 2397, + "src": "3438:6:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3732,10 +3992,10 @@ "typeString": "string" }, "typeName": { - "id": 2237, + "id": 2362, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3366:6:12", + "src": "3438:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3746,11 +4006,11 @@ }, { "constant": false, - "id": 2240, + "id": 2365, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3374:6:12", + "scope": 2397, + "src": "3446:6:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3758,10 +4018,10 @@ "typeString": "string" }, "typeName": { - "id": 2239, + "id": 2364, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3374:6:12", + "src": "3446:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3772,11 +4032,11 @@ }, { "constant": false, - "id": 2242, + "id": 2367, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3382:6:12", + "scope": 2397, + "src": "3454:6:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3784,10 +4044,10 @@ "typeString": "string" }, "typeName": { - "id": 2241, + "id": 2366, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3382:6:12", + "src": "3454:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3798,11 +4058,11 @@ }, { "constant": false, - "id": 2244, + "id": 2369, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3390:7:12", + "scope": 2397, + "src": "3462:7:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3810,10 +4070,10 @@ "typeString": "address" }, "typeName": { - "id": 2243, + "id": 2368, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3390:7:12", + "src": "3462:7:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3823,33 +4083,33 @@ "visibility": "internal" } ], - "src": "3347:51:12" + "src": "3419:51:12" }, - "scope": 2270, - "src": "3274:339:12", + "scope": 2398, + "src": "3346:453:12", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 2271, - "src": "168:3447:12" + "scope": 2399, + "src": "168:3633:12" } ], - "src": "0:3616:12" + "src": "0:3802:12" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Videos.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Videos.sol", "exportedSymbols": { "Videos": [ - 2270 + 2398 ] }, - "id": 2271, + "id": 2399, "nodeType": "SourceUnit", "nodes": [ { - "id": 1999, + "id": 2112, "literals": [ "solidity", "^", @@ -3862,10 +4122,10 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2000, + "id": 2113, "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2807, + "scope": 2399, + "sourceUnit": 2950, "src": "26:59:12", "symbolAliases": [], "unitAlias": "" @@ -3873,21 +4133,21 @@ { "absolutePath": "zeppelin-solidity/contracts/math/SafeMath.sol", "file": "zeppelin-solidity/contracts/math/SafeMath.sol", - "id": 2001, + "id": 2114, "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 2751, + "scope": 2399, + "sourceUnit": 2894, "src": "86:55:12", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 2002, + "id": 2115, "nodeType": "ImportDirective", - "scope": 2271, - "sourceUnit": 1097, + "scope": 2399, + "sourceUnit": 1157, "src": "142:24:12", "symbolAliases": [], "unitAlias": "" @@ -3898,45 +4158,45 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2003, + "id": 2116, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "187:7:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 2004, + "id": 2117, "nodeType": "InheritanceSpecifier", "src": "187:7:12" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2270, + "id": 2398, "linearizedBaseContracts": [ - 2270, - 2806 + 2398, + 2949 ], "name": "Videos", "nodeType": "ContractDefinition", "nodes": [ { "canonicalName": "Videos.VideoInfo", - "id": 2019, + "id": 2132, "members": [ { "constant": false, - "id": 2006, + "id": 2119, "name": "_id", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "229:11:12", "stateVariable": false, "storageLocation": "default", @@ -3945,7 +4205,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2005, + "id": 2118, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "229:7:12", @@ -3959,10 +4219,10 @@ }, { "constant": false, - "id": 2008, + "id": 2121, "name": "ipfsHashOrig", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "250:19:12", "stateVariable": false, "storageLocation": "default", @@ -3971,7 +4231,7 @@ "typeString": "string" }, "typeName": { - "id": 2007, + "id": 2120, "name": "string", "nodeType": "ElementaryTypeName", "src": "250:6:12", @@ -3985,10 +4245,10 @@ }, { "constant": false, - "id": 2010, + "id": 2123, "name": "ipfsHash", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "320:15:12", "stateVariable": false, "storageLocation": "default", @@ -3997,7 +4257,7 @@ "typeString": "string" }, "typeName": { - "id": 2009, + "id": 2122, "name": "string", "nodeType": "ElementaryTypeName", "src": "320:6:12", @@ -4011,10 +4271,10 @@ }, { "constant": false, - "id": 2012, + "id": 2125, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "401:15:12", "stateVariable": false, "storageLocation": "default", @@ -4023,7 +4283,7 @@ "typeString": "string" }, "typeName": { - "id": 2011, + "id": 2124, "name": "string", "nodeType": "ElementaryTypeName", "src": "401:6:12", @@ -4037,10 +4297,10 @@ }, { "constant": false, - "id": 2014, + "id": 2127, "name": "price", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "485:13:12", "stateVariable": false, "storageLocation": "default", @@ -4049,7 +4309,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2013, + "id": 2126, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "485:7:12", @@ -4063,10 +4323,10 @@ }, { "constant": false, - "id": 2016, + "id": 2129, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "528:13:12", "stateVariable": false, "storageLocation": "default", @@ -4075,7 +4335,7 @@ "typeString": "address" }, "typeName": { - "id": 2015, + "id": 2128, "name": "address", "nodeType": "ElementaryTypeName", "src": "528:7:12", @@ -4089,10 +4349,10 @@ }, { "constant": false, - "id": 2018, + "id": 2131, "name": "registrar", "nodeType": "VariableDeclaration", - "scope": 2019, + "scope": 2132, "src": "564:17:12", "stateVariable": false, "storageLocation": "default", @@ -4101,7 +4361,7 @@ "typeString": "address" }, "typeName": { - "id": 2017, + "id": 2130, "name": "address", "nodeType": "ElementaryTypeName", "src": "564:7:12", @@ -4116,27 +4376,27 @@ ], "name": "VideoInfo", "nodeType": "StructDefinition", - "scope": 2270, + "scope": 2398, "src": "202:467:12", "visibility": "public" }, { "constant": false, - "id": 2023, + "id": 2136, "name": "videos", "nodeType": "VariableDeclaration", - "scope": 2270, + "scope": 2398, "src": "675:35:12", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" }, "typeName": { - "id": 2022, + "id": 2135, "keyType": { - "id": 2020, + "id": 2133, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "684:7:12", @@ -4148,18 +4408,18 @@ "nodeType": "Mapping", "src": "675:28:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo)" }, "valueType": { "contractScope": null, - "id": 2021, + "id": 2134, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, + "referencedDeclaration": 2132, "src": "693:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } } @@ -4169,26 +4429,26 @@ }, { "constant": false, - "id": 2025, + "id": 2138, "name": "paratiiRegistry", "nodeType": "VariableDeclaration", - "scope": 2270, + "scope": 2398, "src": "716:31:12", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2024, + "id": 2137, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "716:8:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -4198,20 +4458,20 @@ { "anonymous": false, "documentation": null, - "id": 2041, + "id": 2154, "name": "LogCreateVideo", "nodeType": "EventDefinition", "parameters": { - "id": 2040, + "id": 2153, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2027, + "id": 2140, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "784:14:12", "stateVariable": false, "storageLocation": "default", @@ -4220,7 +4480,7 @@ "typeString": "string" }, "typeName": { - "id": 2026, + "id": 2139, "name": "string", "nodeType": "ElementaryTypeName", "src": "784:6:12", @@ -4234,11 +4494,11 @@ }, { "constant": false, - "id": 2029, + "id": 2142, "indexed": false, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "808:13:12", "stateVariable": false, "storageLocation": "default", @@ -4247,7 +4507,7 @@ "typeString": "address" }, "typeName": { - "id": 2028, + "id": 2141, "name": "address", "nodeType": "ElementaryTypeName", "src": "808:7:12", @@ -4261,11 +4521,11 @@ }, { "constant": false, - "id": 2031, + "id": 2144, "indexed": false, "name": "price", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "831:10:12", "stateVariable": false, "storageLocation": "default", @@ -4274,7 +4534,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2030, + "id": 2143, "name": "uint", "nodeType": "ElementaryTypeName", "src": "831:4:12", @@ -4288,11 +4548,11 @@ }, { "constant": false, - "id": 2033, + "id": 2146, "indexed": false, "name": "ipfsHashOrig", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "851:19:12", "stateVariable": false, "storageLocation": "default", @@ -4301,7 +4561,7 @@ "typeString": "string" }, "typeName": { - "id": 2032, + "id": 2145, "name": "string", "nodeType": "ElementaryTypeName", "src": "851:6:12", @@ -4315,11 +4575,11 @@ }, { "constant": false, - "id": 2035, + "id": 2148, "indexed": false, "name": "ipfsHash", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "880:15:12", "stateVariable": false, "storageLocation": "default", @@ -4328,7 +4588,7 @@ "typeString": "string" }, "typeName": { - "id": 2034, + "id": 2147, "name": "string", "nodeType": "ElementaryTypeName", "src": "880:6:12", @@ -4342,11 +4602,11 @@ }, { "constant": false, - "id": 2037, + "id": 2150, "indexed": false, "name": "ipfsData", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "905:15:12", "stateVariable": false, "storageLocation": "default", @@ -4355,7 +4615,7 @@ "typeString": "string" }, "typeName": { - "id": 2036, + "id": 2149, "name": "string", "nodeType": "ElementaryTypeName", "src": "905:6:12", @@ -4369,11 +4629,11 @@ }, { "constant": false, - "id": 2039, + "id": 2152, "indexed": false, "name": "registrar", "nodeType": "VariableDeclaration", - "scope": 2041, + "scope": 2154, "src": "930:17:12", "stateVariable": false, "storageLocation": "default", @@ -4382,7 +4642,7 @@ "typeString": "address" }, "typeName": { - "id": 2038, + "id": 2151, "name": "address", "nodeType": "ElementaryTypeName", "src": "930:7:12", @@ -4402,20 +4662,20 @@ { "anonymous": false, "documentation": null, - "id": 2045, + "id": 2158, "name": "LogRemoveVideo", "nodeType": "EventDefinition", "parameters": { - "id": 2044, + "id": 2157, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2043, + "id": 2156, "indexed": false, "name": "videoId", "nodeType": "VariableDeclaration", - "scope": 2045, + "scope": 2158, "src": "981:14:12", "stateVariable": false, "storageLocation": "default", @@ -4424,7 +4684,7 @@ "typeString": "string" }, "typeName": { - "id": 2042, + "id": 2155, "name": "string", "nodeType": "ElementaryTypeName", "src": "981:6:12", @@ -4443,7 +4703,7 @@ }, { "body": { - "id": 2058, + "id": 2171, "nodeType": "Block", "src": "1042:87:12", "statements": [ @@ -4457,7 +4717,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2054, + "id": 2167, "isConstant": false, "isLValue": false, "isPure": false, @@ -4466,18 +4726,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2048, + "id": 2161, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "1060:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2049, + "id": 2162, "isConstant": false, "isLValue": false, "isPure": false, @@ -4499,7 +4759,7 @@ { "argumentTypes": null, "hexValue": "5573657273", - "id": 2052, + "id": 2165, "isConstant": false, "isLValue": false, "isPure": true, @@ -4524,32 +4784,32 @@ ], "expression": { "argumentTypes": null, - "id": 2050, + "id": 2163, "name": "paratiiRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2025, + "referencedDeclaration": 2138, "src": "1074:15:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2051, + "id": 2164, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 2053, + "id": 2166, "isConstant": false, "isLValue": false, "isPure": false, @@ -4577,21 +4837,21 @@ "typeString": "bool" } ], - "id": 2047, + "id": 2160, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "1052:7:12", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2055, + "id": 2168, "isConstant": false, "isLValue": false, "isPure": false, @@ -4605,23 +4865,23 @@ "typeString": "tuple()" } }, - "id": 2056, + "id": 2169, "nodeType": "ExpressionStatement", "src": "1052:59:12" }, { - "id": 2057, + "id": 2170, "nodeType": "PlaceholderStatement", "src": "1121:1:12" } ] }, "documentation": null, - "id": 2059, + "id": 2172, "name": "onlyUserRegistry", "nodeType": "ModifierDefinition", "parameters": { - "id": 2046, + "id": 2159, "nodeType": "ParameterList", "parameters": [], "src": "1039:2:12" @@ -4631,21 +4891,21 @@ }, { "body": { - "id": 2095, + "id": 2211, "nodeType": "Block", - "src": "1183:215:12", + "src": "1183:233:12", "statements": [ { "assignments": [ - 2064 + 2177 ], "declarations": [ { "constant": false, - "id": 2064, + "id": 2177, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2096, + "scope": 2212, "src": "1193:10:12", "stateVariable": false, "storageLocation": "default", @@ -4654,7 +4914,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2063, + "id": 2176, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1193:7:12", @@ -4667,43 +4927,95 @@ "visibility": "internal" } ], - "id": 2068, + "id": 2184, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2066, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2061, - "src": "1216:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2065, + "id": 2178, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "1206:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2067, + "id": 2183, "isConstant": false, "isLValue": false, "isPure": false, @@ -4711,42 +5023,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1206:19:12", + "src": "1206:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1193:32:12" + "src": "1193:50:12" }, { "assignments": [ - 2070 + 2186 ], "declarations": [ { "constant": false, - "id": 2070, + "id": 2186, "name": "videoInfo", "nodeType": "VariableDeclaration", - "scope": 2096, - "src": "1235:27:12", + "scope": 2212, + "src": "1253:27:12", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" }, "typeName": { "contractScope": null, - "id": 2069, + "id": 2185, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1235:9:12", + "referencedDeclaration": 2132, + "src": "1253:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } }, @@ -4754,31 +5066,31 @@ "visibility": "internal" } ], - "id": 2074, + "id": 2190, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2071, + "id": 2187, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1265:6:12", + "referencedDeclaration": 2136, + "src": "1283:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2073, + "id": 2189, "indexExpression": { "argumentTypes": null, - "id": 2072, + "id": 2188, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2064, - "src": "1272:2:12", + "referencedDeclaration": 2177, + "src": "1290:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4789,14 +5101,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1265:10:12", + "src": "1283:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1235:40:12" + "src": "1253:40:12" }, { "expression": { @@ -4808,7 +5120,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2091, + "id": 2207, "isConstant": false, "isLValue": false, "isPure": false, @@ -4819,7 +5131,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2079, + "id": 2195, "isConstant": false, "isLValue": false, "isPure": false, @@ -4828,18 +5140,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2076, + "id": 2192, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1293:3:12", + "referencedDeclaration": 3344, + "src": "1311:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2077, + "id": 2193, "isConstant": false, "isLValue": false, "isPure": false, @@ -4847,7 +5159,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1293:10:12", + "src": "1311:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4857,18 +5169,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2078, + "id": 2194, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1307:5:12", + "referencedDeclaration": 2897, + "src": "1325:5:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1293:19:12", + "src": "1311:19:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4885,7 +5197,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2089, + "id": 2205, "isConstant": false, "isLValue": false, "isPure": false, @@ -4896,7 +5208,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2083, + "id": 2199, "isConstant": false, "isLValue": false, "isPure": false, @@ -4905,26 +5217,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2080, + "id": 2196, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1317:9:12", + "referencedDeclaration": 2186, + "src": "1335:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2081, + "id": 2197, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1317:19:12", + "referencedDeclaration": 2131, + "src": "1335:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4935,14 +5247,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2082, + "id": 2198, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1340:1:12", + "src": "1358:1:12", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -4950,7 +5262,7 @@ }, "value": "0" }, - "src": "1317:24:12", + "src": "1335:24:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4964,7 +5276,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2088, + "id": 2204, "isConstant": false, "isLValue": false, "isPure": false, @@ -4973,18 +5285,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2084, + "id": 2200, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1345:3:12", + "referencedDeclaration": 3344, + "src": "1363:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2085, + "id": 2201, "isConstant": false, "isLValue": false, "isPure": false, @@ -4992,7 +5304,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1345:10:12", + "src": "1363:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5004,58 +5316,58 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2086, + "id": 2202, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2070, - "src": "1359:9:12", + "referencedDeclaration": 2186, + "src": "1377:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2087, + "id": 2203, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1359:19:12", + "referencedDeclaration": 2131, + "src": "1377:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1345:33:12", + "src": "1363:33:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1317:61:12", + "src": "1335:61:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2090, + "id": 2206, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "1316:63:12", + "src": "1334:63:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1293:86:12", + "src": "1311:86:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5069,21 +5381,21 @@ "typeString": "bool" } ], - "id": 2075, + "id": 2191, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1285:7:12", + "referencedDeclaration": 3347, + "src": "1303:7:12", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2092, + "id": 2208, "isConstant": false, "isLValue": false, "isPure": false, @@ -5091,37 +5403,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1285:95:12", + "src": "1303:95:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2093, + "id": 2209, "nodeType": "ExpressionStatement", - "src": "1285:95:12" + "src": "1303:95:12" }, { - "id": 2094, + "id": 2210, "nodeType": "PlaceholderStatement", - "src": "1390:1:12" + "src": "1408:1:12" } ] }, "documentation": null, - "id": 2096, + "id": 2212, "name": "onlyRegistrarOrAvatar", "nodeType": "ModifierDefinition", "parameters": { - "id": 2062, + "id": 2175, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2061, + "id": 2174, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2096, + "scope": 2212, "src": "1166:15:12", "stateVariable": false, "storageLocation": "default", @@ -5130,7 +5442,7 @@ "typeString": "string" }, "typeName": { - "id": 2060, + "id": 2173, "name": "string", "nodeType": "ElementaryTypeName", "src": "1166:6:12", @@ -5145,27 +5457,27 @@ ], "src": "1165:17:12" }, - "src": "1135:263:12", + "src": "1135:281:12", "visibility": "internal" }, { "body": { - "id": 2138, + "id": 2257, "nodeType": "Block", - "src": "1458:248:12", + "src": "1476:266:12", "statements": [ { "assignments": [ - 2101 + 2217 ], "declarations": [ { "constant": false, - "id": 2101, + "id": 2217, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1468:10:12", + "scope": 2258, + "src": "1486:10:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5173,10 +5485,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2100, + "id": 2216, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1468:7:12", + "src": "1486:7:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5186,43 +5498,95 @@ "visibility": "internal" } ], - "id": 2105, + "id": 2224, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2103, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2098, - "src": "1491:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2102, + "id": 2218, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1481:9:12", + "referencedDeclaration": 3338, + "src": "1499:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2104, + "id": 2223, "isConstant": false, "isLValue": false, "isPure": false, @@ -5230,42 +5594,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1481:19:12", + "src": "1499:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1468:32:12" + "src": "1486:50:12" }, { "assignments": [ - 2107 + 2226 ], "declarations": [ { "constant": false, - "id": 2107, + "id": 2226, "name": "videoInfo", "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1510:27:12", + "scope": 2258, + "src": "1546:27:12", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" }, "typeName": { "contractScope": null, - "id": 2106, + "id": 2225, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "1510:9:12", + "referencedDeclaration": 2132, + "src": "1546:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } }, @@ -5273,31 +5637,31 @@ "visibility": "internal" } ], - "id": 2111, + "id": 2230, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2108, + "id": 2227, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "1540:6:12", + "referencedDeclaration": 2136, + "src": "1576:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2110, + "id": 2229, "indexExpression": { "argumentTypes": null, - "id": 2109, + "id": 2228, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2101, - "src": "1547:2:12", + "referencedDeclaration": 2217, + "src": "1583:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5308,14 +5672,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1540:10:12", + "src": "1576:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1510:40:12" + "src": "1546:40:12" }, { "expression": { @@ -5327,7 +5691,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2134, + "id": 2253, "isConstant": false, "isLValue": false, "isPure": false, @@ -5338,7 +5702,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2116, + "id": 2235, "isConstant": false, "isLValue": false, "isPure": false, @@ -5347,18 +5711,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2113, + "id": 2232, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1568:3:12", + "referencedDeclaration": 3344, + "src": "1604:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2114, + "id": 2233, "isConstant": false, "isLValue": false, "isPure": false, @@ -5366,7 +5730,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1568:10:12", + "src": "1604:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5376,18 +5740,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2115, + "id": 2234, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1582:5:12", + "referencedDeclaration": 2897, + "src": "1618:5:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1568:19:12", + "src": "1604:19:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5404,7 +5768,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2132, + "id": 2251, "isConstant": false, "isLValue": false, "isPure": false, @@ -5415,7 +5779,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2126, + "id": 2245, "isConstant": false, "isLValue": false, "isPure": false, @@ -5426,7 +5790,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2120, + "id": 2239, "isConstant": false, "isLValue": false, "isPure": false, @@ -5435,26 +5799,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2117, + "id": 2236, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1592:9:12", + "referencedDeclaration": 2226, + "src": "1628:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2118, + "id": 2237, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1592:19:12", + "referencedDeclaration": 2131, + "src": "1628:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5465,14 +5829,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2119, + "id": 2238, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1615:1:12", + "src": "1651:1:12", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -5480,7 +5844,7 @@ }, "value": "0" }, - "src": "1592:24:12", + "src": "1628:24:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5494,7 +5858,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2125, + "id": 2244, "isConstant": false, "isLValue": false, "isPure": false, @@ -5503,18 +5867,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2121, + "id": 2240, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1620:3:12", + "referencedDeclaration": 3344, + "src": "1656:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2122, + "id": 2241, "isConstant": false, "isLValue": false, "isPure": false, @@ -5522,7 +5886,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1620:10:12", + "src": "1656:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5534,38 +5898,38 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2123, + "id": 2242, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1634:9:12", + "referencedDeclaration": 2226, + "src": "1670:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2124, + "id": 2243, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "1634:19:12", + "referencedDeclaration": 2131, + "src": "1670:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1620:33:12", + "src": "1656:33:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1592:61:12", + "src": "1628:61:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5579,7 +5943,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2131, + "id": 2250, "isConstant": false, "isLValue": false, "isPure": false, @@ -5588,18 +5952,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2127, + "id": 2246, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1657:3:12", + "referencedDeclaration": 3344, + "src": "1693:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2128, + "id": 2247, "isConstant": false, "isLValue": false, "isPure": false, @@ -5607,7 +5971,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1657:10:12", + "src": "1693:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5619,58 +5983,58 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2129, + "id": 2248, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2107, - "src": "1671:9:12", + "referencedDeclaration": 2226, + "src": "1707:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2130, + "id": 2249, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "1671:15:12", + "referencedDeclaration": 2129, + "src": "1707:15:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1657:29:12", + "src": "1693:29:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1592:94:12", + "src": "1628:94:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2133, + "id": 2252, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "1591:96:12", + "src": "1627:96:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1568:119:12", + "src": "1604:119:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5684,21 +6048,21 @@ "typeString": "bool" } ], - "id": 2112, + "id": 2231, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1560:7:12", + "referencedDeclaration": 3347, + "src": "1596:7:12", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2135, + "id": 2254, "isConstant": false, "isLValue": false, "isPure": false, @@ -5706,38 +6070,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1560:128:12", + "src": "1596:128:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2136, + "id": 2255, "nodeType": "ExpressionStatement", - "src": "1560:128:12" + "src": "1596:128:12" }, { - "id": 2137, + "id": 2256, "nodeType": "PlaceholderStatement", - "src": "1698:1:12" + "src": "1734:1:12" } ] }, "documentation": null, - "id": 2139, + "id": 2258, "name": "onlyRegistrarOrAvatarOrOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 2099, + "id": 2215, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2098, + "id": 2214, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2139, - "src": "1441:15:12", + "scope": 2258, + "src": "1459:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5745,10 +6109,10 @@ "typeString": "string" }, "typeName": { - "id": 2097, + "id": 2213, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1441:6:12", + "src": "1459:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5758,33 +6122,33 @@ "visibility": "internal" } ], - "src": "1440:17:12" + "src": "1458:17:12" }, - "src": "1403:303:12", + "src": "1421:321:12", "visibility": "internal" }, { "body": { - "id": 2153, + "id": 2272, "nodeType": "Block", - "src": "1758:79:12", + "src": "1794:79:12", "statements": [ { "expression": { "argumentTypes": null, - "id": 2147, + "id": 2266, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2144, + "id": 2263, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, - "src": "1768:5:12", + "referencedDeclaration": 2897, + "src": "1804:5:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5796,18 +6160,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2145, + "id": 2264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "1776:3:12", + "referencedDeclaration": 3344, + "src": "1812:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2146, + "id": 2265, "isConstant": false, "isLValue": false, "isPure": false, @@ -5815,40 +6179,40 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "1776:10:12", + "src": "1812:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1768:18:12", + "src": "1804:18:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2148, + "id": 2267, "nodeType": "ExpressionStatement", - "src": "1768:18:12" + "src": "1804:18:12" }, { "expression": { "argumentTypes": null, - "id": 2151, + "id": 2270, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2149, + "id": 2268, "name": "paratiiRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2025, - "src": "1796:15:12", + "referencedDeclaration": 2138, + "src": "1832:15:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -5856,31 +6220,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2150, + "id": 2269, "name": "_paratiiRegistry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2141, - "src": "1814:16:12", + "referencedDeclaration": 2260, + "src": "1850:16:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "src": "1796:34:12", + "src": "1832:34:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2152, + "id": 2271, "nodeType": "ExpressionStatement", - "src": "1796:34:12" + "src": "1832:34:12" } ] }, "documentation": null, - "id": 2154, + "id": 2273, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -5888,31 +6252,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2142, + "id": 2261, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2141, + "id": 2260, "name": "_paratiiRegistry", "nodeType": "VariableDeclaration", - "scope": 2154, - "src": "1724:25:12", + "scope": 2273, + "src": "1760:25:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2140, + "id": 2259, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, - "src": "1724:8:12", + "referencedDeclaration": 1156, + "src": "1760:8:12", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -5920,39 +6284,39 @@ "visibility": "internal" } ], - "src": "1723:27:12" + "src": "1759:27:12" }, "payable": false, "returnParameters": { - "id": 2143, + "id": 2262, "nodeType": "ParameterList", "parameters": [], - "src": "1758:0:12" + "src": "1794:0:12" }, - "scope": 2270, - "src": "1712:125:12", + "scope": 2398, + "src": "1748:125:12", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2204, + "id": 2326, "nodeType": "Block", - "src": "2508:417:12", + "src": "2544:435:12", "statements": [ { "assignments": [ - 2173 + 2292 ], "declarations": [ { "constant": false, - "id": 2173, + "id": 2292, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2519:10:12", + "scope": 2327, + "src": "2555:10:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5960,10 +6324,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2172, + "id": 2291, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2519:7:12", + "src": "2555:7:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5973,43 +6337,95 @@ "visibility": "internal" } ], - "id": 2177, + "id": 2299, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2175, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2542:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2174, + "id": 2293, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "2532:9:12", + "referencedDeclaration": 3338, + "src": "2568:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2176, + "id": 2298, "isConstant": false, "isLValue": false, "isPure": false, @@ -6017,19 +6433,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2532:19:12", + "src": "2568:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "2519:32:12" + "src": "2555:50:12" }, { "expression": { "argumentTypes": null, - "id": 2191, + "id": 2313, "isConstant": false, "isLValue": false, "isPure": false, @@ -6038,26 +6454,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2178, + "id": 2300, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "2562:6:12", + "referencedDeclaration": 2136, + "src": "2616:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2180, + "id": 2302, "indexExpression": { "argumentTypes": null, - "id": 2179, + "id": 2301, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2569:2:12", + "referencedDeclaration": 2292, + "src": "2623:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6068,9 +6484,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2562:10:12", + "src": "2616:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, @@ -6081,12 +6497,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2182, + "id": 2304, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2173, - "src": "2604:2:12", + "referencedDeclaration": 2292, + "src": "2658:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6094,12 +6510,12 @@ }, { "argumentTypes": null, - "id": 2183, + "id": 2305, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2627:6:12", + "referencedDeclaration": 2279, + "src": "2681:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6107,12 +6523,12 @@ }, { "argumentTypes": null, - "id": 2184, + "id": 2306, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2654:6:12", + "referencedDeclaration": 2277, + "src": "2708:6:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6120,12 +6536,12 @@ }, { "argumentTypes": null, - "id": 2185, + "id": 2307, "name": "_ipfsHashOrig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2688:13:12", + "referencedDeclaration": 2281, + "src": "2742:13:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6133,12 +6549,12 @@ }, { "argumentTypes": null, - "id": 2186, + "id": 2308, "name": "_ipfsHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2725:9:12", + "referencedDeclaration": 2283, + "src": "2779:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6146,12 +6562,12 @@ }, { "argumentTypes": null, - "id": 2187, + "id": 2309, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2758:9:12", + "referencedDeclaration": 2285, + "src": "2812:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6161,18 +6577,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2188, + "id": 2310, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2792:3:12", + "referencedDeclaration": 3344, + "src": "2846:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2189, + "id": 2311, "isConstant": false, "isLValue": false, "isPure": false, @@ -6180,7 +6596,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2792:10:12", + "src": "2846:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6189,18 +6605,18 @@ ], "expression": { "argumentTypes": null, - "id": 2181, + "id": 2303, "name": "VideoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2019, - "src": "2575:9:12", + "referencedDeclaration": 2132, + "src": "2629:9:12", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2019_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_VideoInfo_$2132_storage_ptr_$", "typeString": "type(struct Videos.VideoInfo storage pointer)" } }, - "id": 2190, + "id": 2312, "isConstant": false, "isLValue": false, "isPure": false, @@ -6216,21 +6632,21 @@ "registrar" ], "nodeType": "FunctionCall", - "src": "2575:238:12", + "src": "2629:238:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_memory", + "typeIdentifier": "t_struct$_VideoInfo_$2132_memory", "typeString": "struct Videos.VideoInfo memory" } }, - "src": "2562:251:12", + "src": "2616:251:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, - "id": 2192, + "id": 2314, "nodeType": "ExpressionStatement", - "src": "2562:251:12" + "src": "2616:251:12" }, { "eventCall": { @@ -6238,12 +6654,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2194, + "id": 2316, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2844:8:12", + "referencedDeclaration": 2275, + "src": "2898:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6251,12 +6667,12 @@ }, { "argumentTypes": null, - "id": 2195, + "id": 2317, "name": "_owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2158, - "src": "2854:6:12", + "referencedDeclaration": 2277, + "src": "2908:6:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6264,12 +6680,12 @@ }, { "argumentTypes": null, - "id": 2196, + "id": 2318, "name": "_price", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2160, - "src": "2862:6:12", + "referencedDeclaration": 2279, + "src": "2916:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6277,12 +6693,12 @@ }, { "argumentTypes": null, - "id": 2197, + "id": 2319, "name": "_ipfsHashOrig", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2162, - "src": "2870:13:12", + "referencedDeclaration": 2281, + "src": "2924:13:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6290,12 +6706,12 @@ }, { "argumentTypes": null, - "id": 2198, + "id": 2320, "name": "_ipfsHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2164, - "src": "2885:9:12", + "referencedDeclaration": 2283, + "src": "2939:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6303,12 +6719,12 @@ }, { "argumentTypes": null, - "id": 2199, + "id": 2321, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2166, - "src": "2896:9:12", + "referencedDeclaration": 2285, + "src": "2950:9:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6318,18 +6734,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2200, + "id": 2322, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2907:3:12", + "referencedDeclaration": 3344, + "src": "2961:3:12", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2201, + "id": 2323, "isConstant": false, "isLValue": false, "isPure": false, @@ -6337,7 +6753,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2907:10:12", + "src": "2961:10:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6375,18 +6791,18 @@ "typeString": "address" } ], - "id": 2193, + "id": 2315, "name": "LogCreateVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2041, - "src": "2829:14:12", + "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": 2202, + "id": 2324, "isConstant": false, "isLValue": false, "isPure": false, @@ -6394,20 +6810,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2829:89:12", + "src": "2883:89:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2203, + "id": 2325, "nodeType": "EmitStatement", - "src": "2824:94:12" + "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": 2205, + "id": 2327, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -6416,49 +6832,49 @@ "arguments": [ { "argumentTypes": null, - "id": 2169, + "id": 2288, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2156, - "src": "2491:8:12", + "referencedDeclaration": 2275, + "src": "2527:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], - "id": 2170, + "id": 2289, "modifierName": { "argumentTypes": null, - "id": 2168, + "id": 2287, "name": "onlyRegistrarOrAvatarOrOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2462:28:12", + "referencedDeclaration": 2258, + "src": "2498:28:12", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", "typeString": "modifier (string memory)" } }, "nodeType": "ModifierInvocation", - "src": "2462:38:12" + "src": "2498:38:12" } ], "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 2167, + "id": 2286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2156, + "id": 2275, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2310:15:12", + "scope": 2327, + "src": "2346:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6466,10 +6882,10 @@ "typeString": "string" }, "typeName": { - "id": 2155, + "id": 2274, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2310:6:12", + "src": "2346:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6480,11 +6896,11 @@ }, { "constant": false, - "id": 2158, + "id": 2277, "name": "_owner", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2335:14:12", + "scope": 2327, + "src": "2371:14:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6492,10 +6908,10 @@ "typeString": "address" }, "typeName": { - "id": 2157, + "id": 2276, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2335:7:12", + "src": "2371:7:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6506,11 +6922,11 @@ }, { "constant": false, - "id": 2160, + "id": 2279, "name": "_price", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2359:14:12", + "scope": 2327, + "src": "2395:14:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6518,10 +6934,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2159, + "id": 2278, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2359:7:12", + "src": "2395:7:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6532,11 +6948,11 @@ }, { "constant": false, - "id": 2162, + "id": 2281, "name": "_ipfsHashOrig", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2383:20:12", + "scope": 2327, + "src": "2419:20:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6544,10 +6960,10 @@ "typeString": "string" }, "typeName": { - "id": 2161, + "id": 2280, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2383:6:12", + "src": "2419:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6558,11 +6974,11 @@ }, { "constant": false, - "id": 2164, + "id": 2283, "name": "_ipfsHash", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2413:16:12", + "scope": 2327, + "src": "2449:16:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6570,10 +6986,10 @@ "typeString": "string" }, "typeName": { - "id": 2163, + "id": 2282, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2413:6:12", + "src": "2449:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6584,11 +7000,11 @@ }, { "constant": false, - "id": 2166, + "id": 2285, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2205, - "src": "2439:16:12", + "scope": 2327, + "src": "2475:16:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6596,10 +7012,10 @@ "typeString": "string" }, "typeName": { - "id": 2165, + "id": 2284, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2439:6:12", + "src": "2475:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6609,39 +7025,39 @@ "visibility": "internal" } ], - "src": "2300:161:12" + "src": "2336:161:12" }, "payable": false, "returnParameters": { - "id": 2171, + "id": 2290, "nodeType": "ParameterList", "parameters": [], - "src": "2508:0:12" + "src": "2544:0:12" }, - "scope": 2270, - "src": "2285:640:12", + "scope": 2398, + "src": "2321:658:12", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2228, + "id": 2353, "nodeType": "Block", - "src": "3010:115:12", + "src": "3064:133:12", "statements": [ { "assignments": [ - 2214 + 2336 ], "declarations": [ { "constant": false, - "id": 2214, + "id": 2336, "name": "id", "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "3020:10:12", + "scope": 2354, + "src": "3074:10:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6649,10 +7065,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2213, + "id": 2335, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3020:7:12", + "src": "3074:7:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6662,43 +7078,95 @@ "visibility": "internal" } ], - "id": 2218, + "id": 2343, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2216, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3043:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2215, + "id": 2337, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3033:9:12", + "referencedDeclaration": 3338, + "src": "3087:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2217, + "id": 2342, "isConstant": false, "isLValue": false, "isPure": false, @@ -6706,19 +7174,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3033:19:12", + "src": "3087:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "3020:32:12" + "src": "3074:50:12" }, { "expression": { "argumentTypes": null, - "id": 2222, + "id": 2347, "isConstant": false, "isLValue": false, "isPure": false, @@ -6726,31 +7194,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "3062:17:12", + "src": "3134:17:12", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2219, + "id": 2344, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3069:6:12", + "referencedDeclaration": 2136, + "src": "3141:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2221, + "id": 2346, "indexExpression": { "argumentTypes": null, - "id": 2220, + "id": 2345, "name": "id", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2214, - "src": "3076:2:12", + "referencedDeclaration": 2336, + "src": "3148:2:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6761,9 +7229,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3069:10:12", + "src": "3141:10:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, @@ -6772,9 +7240,9 @@ "typeString": "tuple()" } }, - "id": 2223, + "id": 2348, "nodeType": "ExpressionStatement", - "src": "3062:17:12" + "src": "3134:17:12" }, { "eventCall": { @@ -6782,12 +7250,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2225, + "id": 2350, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3109:8:12", + "referencedDeclaration": 2329, + "src": "3181:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6801,18 +7269,18 @@ "typeString": "string memory" } ], - "id": 2224, + "id": 2349, "name": "LogRemoveVideo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2045, - "src": "3094:14:12", + "referencedDeclaration": 2158, + "src": "3166:14:12", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory)" } }, - "id": 2226, + "id": 2351, "isConstant": false, "isLValue": false, "isPure": false, @@ -6820,20 +7288,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3094:24:12", + "src": "3166:24:12", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2227, + "id": 2352, "nodeType": "EmitStatement", - "src": "3089:29:12" + "src": "3161:29:12" } ] }, "documentation": null, - "id": 2229, + "id": 2354, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -6842,49 +7310,49 @@ "arguments": [ { "argumentTypes": null, - "id": 2210, + "id": 2332, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2207, - "src": "3000:8:12", + "referencedDeclaration": 2329, + "src": "3054:8:12", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], - "id": 2211, + "id": 2333, "modifierName": { "argumentTypes": null, - "id": 2209, + "id": 2331, "name": "onlyRegistrarOrAvatarOrOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "2971:28:12", + "referencedDeclaration": 2258, + "src": "3025:28:12", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_string_memory_ptr_$", "typeString": "modifier (string memory)" } }, "nodeType": "ModifierInvocation", - "src": "2971:38:12" + "src": "3025:38:12" } ], "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2208, + "id": 2330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2207, + "id": 2329, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2229, - "src": "2947:15:12", + "scope": 2354, + "src": "3001:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6892,10 +7360,10 @@ "typeString": "string" }, "typeName": { - "id": 2206, + "id": 2328, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2947:6:12", + "src": "3001:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6905,54 +7373,54 @@ "visibility": "internal" } ], - "src": "2946:17:12" + "src": "3000:17:12" }, "payable": false, "returnParameters": { - "id": 2212, + "id": 2334, "nodeType": "ParameterList", "parameters": [], - "src": "3010:0:12" + "src": "3064:0:12" }, - "scope": 2270, - "src": "2931:194:12", + "scope": 2398, + "src": "2985:212:12", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2268, + "id": 2396, "nodeType": "Block", - "src": "3403:210:12", + "src": "3475:324:12", "statements": [ { "assignments": [ - 2247 + 2372 ], "declarations": [ { "constant": false, - "id": 2247, + "id": 2372, "name": "videoInfo", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3413:27:12", + "scope": 2397, + "src": "3485:27:12", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" }, "typeName": { "contractScope": null, - "id": 2246, + "id": 2371, "name": "VideoInfo", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2019, - "src": "3413:9:12", + "referencedDeclaration": 2132, + "src": "3485:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo" } }, @@ -6960,59 +7428,111 @@ "visibility": "internal" } ], - "id": 2253, + "id": 2381, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2248, + "id": 2373, "name": "videos", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2023, - "src": "3443:6:12", + "referencedDeclaration": 2136, + "src": "3515:6:12", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2019_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_VideoInfo_$2132_storage_$", "typeString": "mapping(bytes32 => struct Videos.VideoInfo storage ref)" } }, - "id": 2252, + "id": 2380, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2250, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2231, - "src": "3460:8:12", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2249, + "id": 2374, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "3450:9:12", + "referencedDeclaration": 3338, + "src": "3522:9:12", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2251, + "id": 2379, "isConstant": false, "isLValue": false, "isPure": false, @@ -7020,7 +7540,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3450:19:12", + "src": "3522:37:12", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7031,14 +7551,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3443:27:12", + "src": "3515:45:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage", "typeString": "struct Videos.VideoInfo storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3413:57:12" + "src": "3485:75:12" }, { "expression": { @@ -7048,26 +7568,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2254, + "id": 2382, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3488:9:12", + "referencedDeclaration": 2372, + "src": "3600:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2255, + "id": 2383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 2016, - "src": "3488:15:12", + "referencedDeclaration": 2129, + "src": "3600:15:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7077,26 +7597,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2256, + "id": 2384, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3505:9:12", + "referencedDeclaration": 2372, + "src": "3630:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2257, + "id": 2385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "price", "nodeType": "MemberAccess", - "referencedDeclaration": 2014, - "src": "3505:15:12", + "referencedDeclaration": 2127, + "src": "3630:15:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7106,26 +7626,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2258, + "id": 2386, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3522:9:12", + "referencedDeclaration": 2372, + "src": "3660:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2259, + "id": 2387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsHashOrig", "nodeType": "MemberAccess", - "referencedDeclaration": 2008, - "src": "3522:22:12", + "referencedDeclaration": 2121, + "src": "3660:22:12", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7135,26 +7655,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2260, + "id": 2388, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3546:9:12", + "referencedDeclaration": 2372, + "src": "3697:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2261, + "id": 2389, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsHash", "nodeType": "MemberAccess", - "referencedDeclaration": 2010, - "src": "3546:18:12", + "referencedDeclaration": 2123, + "src": "3697:18:12", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7164,26 +7684,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2262, + "id": 2390, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3566:9:12", + "referencedDeclaration": 2372, + "src": "3730:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2263, + "id": 2391, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 2012, - "src": "3566:18:12", + "referencedDeclaration": 2125, + "src": "3730:18:12", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7193,54 +7713,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2264, + "id": 2392, "name": "videoInfo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2247, - "src": "3586:9:12", + "referencedDeclaration": 2372, + "src": "3763:9:12", "typeDescriptions": { - "typeIdentifier": "t_struct$_VideoInfo_$2019_storage_ptr", + "typeIdentifier": "t_struct$_VideoInfo_$2132_storage_ptr", "typeString": "struct Videos.VideoInfo storage pointer" } }, - "id": 2265, + "id": 2393, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "registrar", "nodeType": "MemberAccess", - "referencedDeclaration": 2018, - "src": "3586:19:12", + "referencedDeclaration": 2131, + "src": "3763:19:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 2266, + "id": 2394, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "3487:119:12", + "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": 2245, - "id": 2267, + "functionReturnParameters": 2370, + "id": 2395, "nodeType": "Return", - "src": "3480:126:12" + "src": "3579:213:12" } ] }, "documentation": "@dev return information about video\n@return a tuple (owner, price, ipfsHashOrig, ipfsHash, ipfsData, registrar)", - "id": 2269, + "id": 2397, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -7248,16 +7768,16 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 2232, + "id": 2357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2231, + "id": 2356, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3287:15:12", + "scope": 2397, + "src": "3359:15:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7265,10 +7785,10 @@ "typeString": "string" }, "typeName": { - "id": 2230, + "id": 2355, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3287:6:12", + "src": "3359:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7278,20 +7798,20 @@ "visibility": "internal" } ], - "src": "3286:17:12" + "src": "3358:17:12" }, "payable": false, "returnParameters": { - "id": 2245, + "id": 2370, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2234, + "id": 2359, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3348:7:12", + "scope": 2397, + "src": "3420:7:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7299,10 +7819,10 @@ "typeString": "address" }, "typeName": { - "id": 2233, + "id": 2358, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3348:7:12", + "src": "3420:7:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7313,11 +7833,11 @@ }, { "constant": false, - "id": 2236, + "id": 2361, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3357:7:12", + "scope": 2397, + "src": "3429:7:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7325,10 +7845,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2235, + "id": 2360, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3357:7:12", + "src": "3429:7:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7339,11 +7859,11 @@ }, { "constant": false, - "id": 2238, + "id": 2363, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3366:6:12", + "scope": 2397, + "src": "3438:6:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7351,10 +7871,10 @@ "typeString": "string" }, "typeName": { - "id": 2237, + "id": 2362, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3366:6:12", + "src": "3438:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7365,11 +7885,11 @@ }, { "constant": false, - "id": 2240, + "id": 2365, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3374:6:12", + "scope": 2397, + "src": "3446:6:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7377,10 +7897,10 @@ "typeString": "string" }, "typeName": { - "id": 2239, + "id": 2364, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3374:6:12", + "src": "3446:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7391,11 +7911,11 @@ }, { "constant": false, - "id": 2242, + "id": 2367, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3382:6:12", + "scope": 2397, + "src": "3454:6:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7403,10 +7923,10 @@ "typeString": "string" }, "typeName": { - "id": 2241, + "id": 2366, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3382:6:12", + "src": "3454:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7417,11 +7937,11 @@ }, { "constant": false, - "id": 2244, + "id": 2369, "name": "", "nodeType": "VariableDeclaration", - "scope": 2269, - "src": "3390:7:12", + "scope": 2397, + "src": "3462:7:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7429,10 +7949,10 @@ "typeString": "address" }, "typeName": { - "id": 2243, + "id": 2368, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3390:7:12", + "src": "3462:7:12", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7442,20 +7962,20 @@ "visibility": "internal" } ], - "src": "3347:51:12" + "src": "3419:51:12" }, - "scope": 2270, - "src": "3274:339:12", + "scope": 2398, + "src": "3346:453:12", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 2271, - "src": "168:3447:12" + "scope": 2399, + "src": "168:3633:12" } ], - "src": "0:3616:12" + "src": "0:3802:12" }, "compiler": { "name": "solc", @@ -7463,5 +7983,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.683Z" + "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 e0c5209..e1b4a39 100644 --- a/build/contracts/Views.json +++ b/build/contracts/Views.json @@ -201,24 +201,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Views.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Views.sol", "exportedSymbols": { "Views": [ - 2444 + 2584 ] }, - "id": 2445, + "id": 2585, "nodeType": "SourceUnit", "nodes": [ { - "id": 2272, + "id": 2400, "literals": [ "solidity", "^", @@ -231,21 +231,21 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2273, + "id": 2401, "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 2807, + "scope": 2585, + "sourceUnit": 2950, "src": "26:59:13", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 2274, + "id": 2402, "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 1097, + "scope": 2585, + "sourceUnit": 1157, "src": "86:24:13", "symbolAliases": [], "unitAlias": "" @@ -256,57 +256,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2275, + "id": 2403, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "130:7:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 2276, + "id": 2404, "nodeType": "InheritanceSpecifier", "src": "130:7:13" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2444, + "id": 2584, "linearizedBaseContracts": [ - 2444, - 2806 + 2584, + 2949 ], "name": "Views", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2278, + "id": 2406, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 2444, + "scope": 2584, "src": "145:24:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2277, + "id": 2405, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "145:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -315,14 +315,14 @@ }, { "canonicalName": "Views.Data", - "id": 2283, + "id": 2411, "members": [ { "constant": false, - "id": 2280, + "id": 2408, "name": "_isRegistered", "nodeType": "VariableDeclaration", - "scope": 2283, + "scope": 2411, "src": "198:18:13", "stateVariable": false, "storageLocation": "default", @@ -331,7 +331,7 @@ "typeString": "bool" }, "typeName": { - "id": 2279, + "id": 2407, "name": "bool", "nodeType": "ElementaryTypeName", "src": "198:4:13", @@ -345,10 +345,10 @@ }, { "constant": false, - "id": 2282, + "id": 2410, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2283, + "scope": 2411, "src": "226:16:13", "stateVariable": false, "storageLocation": "default", @@ -357,7 +357,7 @@ "typeString": "string" }, "typeName": { - "id": 2281, + "id": 2409, "name": "string", "nodeType": "ElementaryTypeName", "src": "226:6:13", @@ -372,27 +372,27 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2444, + "scope": 2584, "src": "176:73:13", "visibility": "public" }, { "constant": false, - "id": 2289, + "id": 2417, "name": "_views", "nodeType": "VariableDeclaration", - "scope": 2444, + "scope": 2584, "src": "315:60:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" }, "typeName": { - "id": 2288, + "id": 2416, "keyType": { - "id": 2284, + "id": 2412, "name": "address", "nodeType": "ElementaryTypeName", "src": "324:7:13", @@ -404,13 +404,13 @@ "nodeType": "Mapping", "src": "315:45:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" }, "valueType": { - "id": 2287, + "id": 2415, "keyType": { - "id": 2285, + "id": 2413, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "343:7:13", @@ -422,18 +422,18 @@ "nodeType": "Mapping", "src": "334:25:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data)" }, "valueType": { "contractScope": null, - "id": 2286, + "id": 2414, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, + "referencedDeclaration": 2411, "src": "354:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data" } } @@ -445,20 +445,20 @@ { "anonymous": false, "documentation": null, - "id": 2297, + "id": 2425, "name": "LogCreateView", "nodeType": "EventDefinition", "parameters": { - "id": 2296, + "id": 2424, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2291, + "id": 2419, "indexed": false, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2297, + "scope": 2425, "src": "402:16:13", "stateVariable": false, "storageLocation": "default", @@ -467,7 +467,7 @@ "typeString": "address" }, "typeName": { - "id": 2290, + "id": 2418, "name": "address", "nodeType": "ElementaryTypeName", "src": "402:7:13", @@ -481,11 +481,11 @@ }, { "constant": false, - "id": 2293, + "id": 2421, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2297, + "scope": 2425, "src": "420:15:13", "stateVariable": false, "storageLocation": "default", @@ -494,7 +494,7 @@ "typeString": "string" }, "typeName": { - "id": 2292, + "id": 2420, "name": "string", "nodeType": "ElementaryTypeName", "src": "420:6:13", @@ -508,11 +508,11 @@ }, { "constant": false, - "id": 2295, + "id": 2423, "indexed": false, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2297, + "scope": 2425, "src": "437:16:13", "stateVariable": false, "storageLocation": "default", @@ -521,7 +521,7 @@ "typeString": "string" }, "typeName": { - "id": 2294, + "id": 2422, "name": "string", "nodeType": "ElementaryTypeName", "src": "437:6:13", @@ -541,20 +541,20 @@ { "anonymous": false, "documentation": null, - "id": 2303, + "id": 2431, "name": "LogRemoveView", "nodeType": "EventDefinition", "parameters": { - "id": 2302, + "id": 2430, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2299, + "id": 2427, "indexed": false, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2303, + "scope": 2431, "src": "480:16:13", "stateVariable": false, "storageLocation": "default", @@ -563,7 +563,7 @@ "typeString": "address" }, "typeName": { - "id": 2298, + "id": 2426, "name": "address", "nodeType": "ElementaryTypeName", "src": "480:7:13", @@ -577,11 +577,11 @@ }, { "constant": false, - "id": 2301, + "id": 2429, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2303, + "scope": 2431, "src": "498:15:13", "stateVariable": false, "storageLocation": "default", @@ -590,7 +590,7 @@ "typeString": "string" }, "typeName": { - "id": 2300, + "id": 2428, "name": "string", "nodeType": "ElementaryTypeName", "src": "498:6:13", @@ -609,7 +609,7 @@ }, { "body": { - "id": 2323, + "id": 2451, "nodeType": "Block", "src": "550:108:13", "statements": [ @@ -623,7 +623,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2319, + "id": 2447, "isConstant": false, "isLValue": false, "isPure": false, @@ -637,7 +637,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2309, + "id": 2437, "isConstant": false, "isLValue": false, "isPure": false, @@ -646,18 +646,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2306, + "id": 2434, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "569:3:13", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2307, + "id": 2435, "isConstant": false, "isLValue": false, "isPure": false, @@ -675,11 +675,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2308, + "id": 2436, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "583:5:13", "typeDescriptions": { "typeIdentifier": "t_address", @@ -693,7 +693,7 @@ } } ], - "id": 2310, + "id": 2438, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -717,7 +717,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2317, + "id": 2445, "isConstant": false, "isLValue": false, "isPure": false, @@ -726,18 +726,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2311, + "id": 2439, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "594:3:13", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2312, + "id": 2440, "isConstant": false, "isLValue": false, "isPure": false, @@ -759,7 +759,7 @@ { "argumentTypes": null, "hexValue": "417661746172", - "id": 2315, + "id": 2443, "isConstant": false, "isLValue": false, "isPure": true, @@ -784,32 +784,32 @@ ], "expression": { "argumentTypes": null, - "id": 2313, + "id": 2441, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2278, + "referencedDeclaration": 2406, "src": "608:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2314, + "id": 2442, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 2316, + "id": 2444, "isConstant": false, "isLValue": false, "isPure": false, @@ -830,7 +830,7 @@ } } ], - "id": 2318, + "id": 2446, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -857,21 +857,21 @@ "typeString": "bool" } ], - "id": 2305, + "id": 2433, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "560:7:13", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2320, + "id": 2448, "isConstant": false, "isLValue": false, "isPure": false, @@ -885,23 +885,23 @@ "typeString": "tuple()" } }, - "id": 2321, + "id": 2449, "nodeType": "ExpressionStatement", "src": "560:80:13" }, { - "id": 2322, + "id": 2450, "nodeType": "PlaceholderStatement", "src": "650:1:13" } ] }, "documentation": null, - "id": 2324, + "id": 2452, "name": "onlyOwnerOrAvatar", "nodeType": "ModifierDefinition", "parameters": { - "id": 2304, + "id": 2432, "nodeType": "ParameterList", "parameters": [], "src": "547:2:13" @@ -911,25 +911,25 @@ }, { "body": { - "id": 2338, + "id": 2466, "nodeType": "Block", "src": "703:65:13", "statements": [ { "expression": { "argumentTypes": null, - "id": 2332, + "id": 2460, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2329, + "id": 2457, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "713:5:13", "typeDescriptions": { "typeIdentifier": "t_address", @@ -942,18 +942,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2330, + "id": 2458, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "721:3:13", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2331, + "id": 2459, "isConstant": false, "isLValue": false, "isPure": false, @@ -973,28 +973,28 @@ "typeString": "address" } }, - "id": 2333, + "id": 2461, "nodeType": "ExpressionStatement", "src": "713:18:13" }, { "expression": { "argumentTypes": null, - "id": 2336, + "id": 2464, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2334, + "id": 2462, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2278, + "referencedDeclaration": 2406, "src": "741:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1002,31 +1002,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2335, + "id": 2463, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2326, + "referencedDeclaration": 2454, "src": "752:9:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "741:20:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2337, + "id": 2465, "nodeType": "ExpressionStatement", "src": "741:20:13" } ] }, "documentation": null, - "id": 2339, + "id": 2467, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -1034,31 +1034,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2327, + "id": 2455, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2326, + "id": 2454, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 2339, + "scope": 2467, "src": "676:18:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2325, + "id": 2453, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "676:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1070,12 +1070,12 @@ }, "payable": false, "returnParameters": { - "id": 2328, + "id": 2456, "nodeType": "ParameterList", "parameters": [], "src": "703:0:13" }, - "scope": 2444, + "scope": 2584, "src": "664:104:13", "stateMutability": "nonpayable", "superFunction": null, @@ -1083,14 +1083,14 @@ }, { "body": { - "id": 2369, + "id": 2500, "nodeType": "Block", - "src": "867:135:13", + "src": "867:153:13", "statements": [ { "expression": { "argumentTypes": null, - "id": 2361, + "id": 2492, "isConstant": false, "isLValue": false, "isPure": false, @@ -1101,25 +1101,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2350, + "id": 2478, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, + "referencedDeclaration": 2417, "src": "877:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2355, + "id": 2486, "indexExpression": { "argumentTypes": null, - "id": 2351, + "id": 2479, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2341, + "referencedDeclaration": 2469, "src": "884:7:13", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1133,47 +1133,99 @@ "nodeType": "IndexAccess", "src": "877:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2356, + "id": 2487, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2353, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "903:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2352, + "id": 2480, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "893:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2354, + "id": 2485, "isConstant": false, "isLValue": false, "isPure": false, @@ -1181,7 +1233,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "893:19:13", + "src": "893:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1192,9 +1244,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "877:36:13", + "src": "877:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, @@ -1206,14 +1258,14 @@ { "argumentTypes": null, "hexValue": "74727565", - "id": 2358, + "id": 2489, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "921:4:13", + "src": "939:4:13", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1223,12 +1275,12 @@ }, { "argumentTypes": null, - "id": 2359, + "id": 2490, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "927:9:13", + "referencedDeclaration": 2473, + "src": "945:9:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1246,18 +1298,18 @@ "typeString": "string memory" } ], - "id": 2357, + "id": 2488, "name": "Data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "916:4:13", + "referencedDeclaration": 2411, + "src": "934:4:13", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2283_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Data_$2411_storage_ptr_$", "typeString": "type(struct Views.Data storage pointer)" } }, - "id": 2360, + "id": 2491, "isConstant": false, "isLValue": false, "isPure": false, @@ -1265,21 +1317,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "916:21:13", + "src": "934:21:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_memory", + "typeIdentifier": "t_struct$_Data_$2411_memory", "typeString": "struct Views.Data memory" } }, - "src": "877:60:13", + "src": "877:78:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, - "id": 2362, + "id": 2493, "nodeType": "ExpressionStatement", - "src": "877:60:13" + "src": "877:78:13" }, { "eventCall": { @@ -1287,12 +1339,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2364, + "id": 2495, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2341, - "src": "966:7:13", + "referencedDeclaration": 2469, + "src": "984:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1300,12 +1352,12 @@ }, { "argumentTypes": null, - "id": 2365, + "id": 2496, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "975:8:13", + "referencedDeclaration": 2471, + "src": "993:8:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1313,12 +1365,12 @@ }, { "argumentTypes": null, - "id": 2366, + "id": 2497, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "985:9:13", + "referencedDeclaration": 2473, + "src": "1003:9:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1340,18 +1392,18 @@ "typeString": "string memory" } ], - "id": 2363, + "id": 2494, "name": "LogCreateView", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2297, - "src": "952:13:13", + "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": 2367, + "id": 2498, "isConstant": false, "isLValue": false, "isPure": false, @@ -1359,34 +1411,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "952:43:13", + "src": "970:43:13", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2368, + "id": 2499, "nodeType": "EmitStatement", - "src": "947:48:13" + "src": "965:48:13" } ] }, "documentation": null, - "id": 2370, + "id": 2501, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2348, + "id": 2476, "modifierName": { "argumentTypes": null, - "id": 2347, + "id": 2475, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, + "referencedDeclaration": 2452, "src": "849:17:13", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -1400,15 +1452,15 @@ "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 2346, + "id": 2474, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2341, + "id": 2469, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2370, + "scope": 2501, "src": "790:15:13", "stateVariable": false, "storageLocation": "default", @@ -1417,7 +1469,7 @@ "typeString": "address" }, "typeName": { - "id": 2340, + "id": 2468, "name": "address", "nodeType": "ElementaryTypeName", "src": "790:7:13", @@ -1431,10 +1483,10 @@ }, { "constant": false, - "id": 2343, + "id": 2471, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2370, + "scope": 2501, "src": "807:15:13", "stateVariable": false, "storageLocation": "default", @@ -1443,7 +1495,7 @@ "typeString": "string" }, "typeName": { - "id": 2342, + "id": 2470, "name": "string", "nodeType": "ElementaryTypeName", "src": "807:6:13", @@ -1457,10 +1509,10 @@ }, { "constant": false, - "id": 2345, + "id": 2473, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2370, + "scope": 2501, "src": "824:16:13", "stateVariable": false, "storageLocation": "default", @@ -1469,7 +1521,7 @@ "typeString": "string" }, "typeName": { - "id": 2344, + "id": 2472, "name": "string", "nodeType": "ElementaryTypeName", "src": "824:6:13", @@ -1486,27 +1538,27 @@ }, "payable": false, "returnParameters": { - "id": 2349, + "id": 2477, "nodeType": "ParameterList", "parameters": [], "src": "867:0:13" }, - "scope": 2444, - "src": "774:228:13", + "scope": 2584, + "src": "774:246:13", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2393, + "id": 2527, "nodeType": "Block", - "src": "1083:107:13", + "src": "1101:125:13", "statements": [ { "expression": { "argumentTypes": null, - "id": 2386, + "id": 2520, "isConstant": false, "isLValue": false, "isPure": false, @@ -1514,33 +1566,33 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "1093:43:13", + "src": "1111:61:13", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2379, + "id": 2510, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1100:6:13", + "referencedDeclaration": 2417, + "src": "1118:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2381, + "id": 2512, "indexExpression": { "argumentTypes": null, - "id": 2380, + "id": 2511, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1107:7:13", + "referencedDeclaration": 2503, + "src": "1125:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1551,49 +1603,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1100:15:13", + "src": "1118:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2385, + "id": 2519, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2383, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1126:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2382, + "id": 2513, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1116:9:13", + "referencedDeclaration": 3338, + "src": "1134:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2384, + "id": 2518, "isConstant": false, "isLValue": false, "isPure": false, @@ -1601,7 +1705,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1116:19:13", + "src": "1134:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1612,9 +1716,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1100:36:13", + "src": "1118:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, @@ -1623,9 +1727,9 @@ "typeString": "tuple()" } }, - "id": 2387, + "id": 2521, "nodeType": "ExpressionStatement", - "src": "1093:43:13" + "src": "1111:61:13" }, { "eventCall": { @@ -1633,12 +1737,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2389, + "id": 2523, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1165:7:13", + "referencedDeclaration": 2503, + "src": "1201:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1646,12 +1750,12 @@ }, { "argumentTypes": null, - "id": 2390, + "id": 2524, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1174:8:13", + "referencedDeclaration": 2505, + "src": "1210:8:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -1669,18 +1773,18 @@ "typeString": "string memory" } ], - "id": 2388, + "id": 2522, "name": "LogRemoveView", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "1151:13:13", + "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": 2391, + "id": 2525, "isConstant": false, "isLValue": false, "isPure": false, @@ -1688,57 +1792,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1151:32:13", + "src": "1187:32:13", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2392, + "id": 2526, "nodeType": "EmitStatement", - "src": "1146:37:13" + "src": "1182:37:13" } ] }, "documentation": null, - "id": 2394, + "id": 2528, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2377, + "id": 2508, "modifierName": { "argumentTypes": null, - "id": 2376, + "id": 2507, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1065:17:13", + "referencedDeclaration": 2452, + "src": "1083:17:13", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1065:17:13" + "src": "1083:17:13" } ], "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2375, + "id": 2506, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2372, + "id": 2503, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1024:15:13", + "scope": 2528, + "src": "1042:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1746,10 +1850,10 @@ "typeString": "address" }, "typeName": { - "id": 2371, + "id": 2502, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1024:7:13", + "src": "1042:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1760,11 +1864,11 @@ }, { "constant": false, - "id": 2374, + "id": 2505, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1041:15:13", + "scope": 2528, + "src": "1059:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1772,10 +1876,10 @@ "typeString": "string" }, "typeName": { - "id": 2373, + "id": 2504, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1041:6:13", + "src": "1059:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1785,54 +1889,54 @@ "visibility": "internal" } ], - "src": "1023:34:13" + "src": "1041:34:13" }, "payable": false, "returnParameters": { - "id": 2378, + "id": 2509, "nodeType": "ParameterList", "parameters": [], - "src": "1083:0:13" + "src": "1101:0:13" }, - "scope": 2444, - "src": "1008:182:13", + "scope": 2584, + "src": "1026:200:13", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2423, + "id": 2560, "nodeType": "Block", - "src": "1295:118:13", + "src": "1331:144:13", "statements": [ { "assignments": [ - 2408 + 2542 ], "declarations": [ { "constant": false, - "id": 2408, + "id": 2542, "name": "data", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1305:9:13", + "scope": 2561, + "src": "1341:17:13", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data" }, "typeName": { "contractScope": null, - "id": 2407, + "id": 2541, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, - "src": "1305:4:13", + "referencedDeclaration": 2411, + "src": "1341:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data" } }, @@ -1840,33 +1944,33 @@ "visibility": "internal" } ], - "id": 2416, + "id": 2553, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2409, + "id": 2543, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1317:6:13", + "referencedDeclaration": 2417, + "src": "1361:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2411, + "id": 2545, "indexExpression": { "argumentTypes": null, - "id": 2410, + "id": 2544, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2396, - "src": "1324:7:13", + "referencedDeclaration": 2530, + "src": "1368:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1877,49 +1981,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1317:15:13", + "src": "1361:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2415, + "id": 2552, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2413, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2398, - "src": "1343:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2412, + "id": 2546, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1333:9:13", + "referencedDeclaration": 3338, + "src": "1377:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2414, + "id": 2551, "isConstant": false, "isLValue": false, "isPure": false, @@ -1927,7 +2083,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1333:19:13", + "src": "1377:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1938,14 +2094,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1317:36:13", + "src": "1361:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1305:48:13" + "src": "1341:74:13" }, { "expression": { @@ -1955,26 +2111,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2417, + "id": 2554, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1371:4:13", + "referencedDeclaration": 2542, + "src": "1433:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data storage pointer" } }, - "id": 2418, + "id": 2555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_isRegistered", "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1371:18:13", + "referencedDeclaration": 2408, + "src": "1433:18:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1984,91 +2140,91 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2419, + "id": 2556, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1391:4:13", + "referencedDeclaration": 2542, + "src": "1453:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data storage pointer" } }, - "id": 2420, + "id": 2557, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 2282, - "src": "1391:14:13", + "referencedDeclaration": 2410, + "src": "1453:14:13", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } } ], - "id": 2421, + "id": 2558, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "1370:36:13", + "src": "1432:36:13", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_string_storage_$", "typeString": "tuple(bool,string storage ref)" } }, - "functionReturnParameters": 2406, - "id": 2422, + "functionReturnParameters": 2540, + "id": 2559, "nodeType": "Return", - "src": "1363:43:13" + "src": "1425:43:13" } ] }, "documentation": null, - "id": 2424, + "id": 2561, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [ { "arguments": null, - "id": 2401, + "id": 2535, "modifierName": { "argumentTypes": null, - "id": 2400, + "id": 2534, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1255:17:13", + "referencedDeclaration": 2452, + "src": "1291:17:13", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1255:17:13" + "src": "1291:17:13" } ], "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 2399, + "id": 2533, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2396, + "id": 2530, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1209:15:13", + "scope": 2561, + "src": "1245:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2076,10 +2232,10 @@ "typeString": "address" }, "typeName": { - "id": 2395, + "id": 2529, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1209:7:13", + "src": "1245:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2090,11 +2246,11 @@ }, { "constant": false, - "id": 2398, + "id": 2532, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1226:15:13", + "scope": 2561, + "src": "1262:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2102,10 +2258,10 @@ "typeString": "string" }, "typeName": { - "id": 2397, + "id": 2531, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1226:6:13", + "src": "1262:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2115,20 +2271,20 @@ "visibility": "internal" } ], - "src": "1208:34:13" + "src": "1244:34:13" }, "payable": false, "returnParameters": { - "id": 2406, + "id": 2540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2403, + "id": 2537, "name": "", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1281:4:13", + "scope": 2561, + "src": "1317:4:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2136,10 +2292,10 @@ "typeString": "bool" }, "typeName": { - "id": 2402, + "id": 2536, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1281:4:13", + "src": "1317:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2150,11 +2306,11 @@ }, { "constant": false, - "id": 2405, + "id": 2539, "name": "", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1287:6:13", + "scope": 2561, + "src": "1323:6:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2162,10 +2318,10 @@ "typeString": "string" }, "typeName": { - "id": 2404, + "id": 2538, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1287:6:13", + "src": "1323:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2175,19 +2331,19 @@ "visibility": "internal" } ], - "src": "1280:14:13" + "src": "1316:14:13" }, - "scope": 2444, - "src": "1196:217:13", + "scope": 2584, + "src": "1232:243:13", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2442, + "id": 2582, "nodeType": "Block", - "src": "1504:74:13", + "src": "1566:92:13", "statements": [ { "expression": { @@ -2198,26 +2354,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2433, + "id": 2570, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1521:6:13", + "referencedDeclaration": 2417, + "src": "1583:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2435, + "id": 2572, "indexExpression": { "argumentTypes": null, - "id": 2434, + "id": 2571, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2426, - "src": "1528:7:13", + "referencedDeclaration": 2563, + "src": "1590:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2228,49 +2384,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1521:15:13", + "src": "1583:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2439, + "id": 2579, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2437, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2428, - "src": "1547:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2436, + "id": 2573, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1537:9:13", + "referencedDeclaration": 3338, + "src": "1599:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2438, + "id": 2578, "isConstant": false, "isLValue": false, "isPure": false, @@ -2278,7 +2486,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1537:19:13", + "src": "1599:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2289,35 +2497,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1521:36:13", + "src": "1583:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, - "id": 2440, + "id": 2580, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_isRegistered", "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1521:50:13", + "referencedDeclaration": 2408, + "src": "1583:68:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2432, - "id": 2441, + "functionReturnParameters": 2569, + "id": 2581, "nodeType": "Return", - "src": "1514:57:13" + "src": "1576:75:13" } ] }, "documentation": null, - "id": 2443, + "id": 2583, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2325,16 +2533,16 @@ "name": "userViewedVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 2429, + "id": 2566, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2426, + "id": 2563, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1444:15:13", + "scope": 2583, + "src": "1506:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2342,10 +2550,10 @@ "typeString": "address" }, "typeName": { - "id": 2425, + "id": 2562, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1444:7:13", + "src": "1506:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2356,11 +2564,11 @@ }, { "constant": false, - "id": 2428, + "id": 2565, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1461:15:13", + "scope": 2583, + "src": "1523:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2368,10 +2576,10 @@ "typeString": "string" }, "typeName": { - "id": 2427, + "id": 2564, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1461:6:13", + "src": "1523:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2381,20 +2589,20 @@ "visibility": "internal" } ], - "src": "1443:34:13" + "src": "1505:34:13" }, "payable": false, "returnParameters": { - "id": 2432, + "id": 2569, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2431, + "id": 2568, "name": "", "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1498:4:13", + "scope": 2583, + "src": "1560:4:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2402,10 +2610,10 @@ "typeString": "bool" }, "typeName": { - "id": 2430, + "id": 2567, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1498:4:13", + "src": "1560:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2415,33 +2623,33 @@ "visibility": "internal" } ], - "src": "1497:6:13" + "src": "1559:6:13" }, - "scope": 2444, - "src": "1419:159:13", + "scope": 2584, + "src": "1481:177:13", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 2445, - "src": "112:1468:13" + "scope": 2585, + "src": "112:1548:13" } ], - "src": "0:1581:13" + "src": "0:1661:13" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Views.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Views.sol", "exportedSymbols": { "Views": [ - 2444 + 2584 ] }, - "id": 2445, + "id": 2585, "nodeType": "SourceUnit", "nodes": [ { - "id": 2272, + "id": 2400, "literals": [ "solidity", "^", @@ -2454,21 +2662,21 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2273, + "id": 2401, "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 2807, + "scope": 2585, + "sourceUnit": 2950, "src": "26:59:13", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 2274, + "id": 2402, "nodeType": "ImportDirective", - "scope": 2445, - "sourceUnit": 1097, + "scope": 2585, + "sourceUnit": 1157, "src": "86:24:13", "symbolAliases": [], "unitAlias": "" @@ -2479,57 +2687,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2275, + "id": 2403, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "130:7:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 2276, + "id": 2404, "nodeType": "InheritanceSpecifier", "src": "130:7:13" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2444, + "id": 2584, "linearizedBaseContracts": [ - 2444, - 2806 + 2584, + 2949 ], "name": "Views", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2278, + "id": 2406, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 2444, + "scope": 2584, "src": "145:24:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2277, + "id": 2405, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "145:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -2538,14 +2746,14 @@ }, { "canonicalName": "Views.Data", - "id": 2283, + "id": 2411, "members": [ { "constant": false, - "id": 2280, + "id": 2408, "name": "_isRegistered", "nodeType": "VariableDeclaration", - "scope": 2283, + "scope": 2411, "src": "198:18:13", "stateVariable": false, "storageLocation": "default", @@ -2554,7 +2762,7 @@ "typeString": "bool" }, "typeName": { - "id": 2279, + "id": 2407, "name": "bool", "nodeType": "ElementaryTypeName", "src": "198:4:13", @@ -2568,10 +2776,10 @@ }, { "constant": false, - "id": 2282, + "id": 2410, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2283, + "scope": 2411, "src": "226:16:13", "stateVariable": false, "storageLocation": "default", @@ -2580,7 +2788,7 @@ "typeString": "string" }, "typeName": { - "id": 2281, + "id": 2409, "name": "string", "nodeType": "ElementaryTypeName", "src": "226:6:13", @@ -2595,27 +2803,27 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2444, + "scope": 2584, "src": "176:73:13", "visibility": "public" }, { "constant": false, - "id": 2289, + "id": 2417, "name": "_views", "nodeType": "VariableDeclaration", - "scope": 2444, + "scope": 2584, "src": "315:60:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" }, "typeName": { - "id": 2288, + "id": 2416, "keyType": { - "id": 2284, + "id": 2412, "name": "address", "nodeType": "ElementaryTypeName", "src": "324:7:13", @@ -2627,13 +2835,13 @@ "nodeType": "Mapping", "src": "315:45:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$_$", "typeString": "mapping(address => mapping(bytes32 => struct Views.Data))" }, "valueType": { - "id": 2287, + "id": 2415, "keyType": { - "id": 2285, + "id": 2413, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "343:7:13", @@ -2645,18 +2853,18 @@ "nodeType": "Mapping", "src": "334:25:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data)" }, "valueType": { "contractScope": null, - "id": 2286, + "id": 2414, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, + "referencedDeclaration": 2411, "src": "354:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data" } } @@ -2668,20 +2876,20 @@ { "anonymous": false, "documentation": null, - "id": 2297, + "id": 2425, "name": "LogCreateView", "nodeType": "EventDefinition", "parameters": { - "id": 2296, + "id": 2424, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2291, + "id": 2419, "indexed": false, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2297, + "scope": 2425, "src": "402:16:13", "stateVariable": false, "storageLocation": "default", @@ -2690,7 +2898,7 @@ "typeString": "address" }, "typeName": { - "id": 2290, + "id": 2418, "name": "address", "nodeType": "ElementaryTypeName", "src": "402:7:13", @@ -2704,11 +2912,11 @@ }, { "constant": false, - "id": 2293, + "id": 2421, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2297, + "scope": 2425, "src": "420:15:13", "stateVariable": false, "storageLocation": "default", @@ -2717,7 +2925,7 @@ "typeString": "string" }, "typeName": { - "id": 2292, + "id": 2420, "name": "string", "nodeType": "ElementaryTypeName", "src": "420:6:13", @@ -2731,11 +2939,11 @@ }, { "constant": false, - "id": 2295, + "id": 2423, "indexed": false, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2297, + "scope": 2425, "src": "437:16:13", "stateVariable": false, "storageLocation": "default", @@ -2744,7 +2952,7 @@ "typeString": "string" }, "typeName": { - "id": 2294, + "id": 2422, "name": "string", "nodeType": "ElementaryTypeName", "src": "437:6:13", @@ -2764,20 +2972,20 @@ { "anonymous": false, "documentation": null, - "id": 2303, + "id": 2431, "name": "LogRemoveView", "nodeType": "EventDefinition", "parameters": { - "id": 2302, + "id": 2430, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2299, + "id": 2427, "indexed": false, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 2303, + "scope": 2431, "src": "480:16:13", "stateVariable": false, "storageLocation": "default", @@ -2786,7 +2994,7 @@ "typeString": "address" }, "typeName": { - "id": 2298, + "id": 2426, "name": "address", "nodeType": "ElementaryTypeName", "src": "480:7:13", @@ -2800,11 +3008,11 @@ }, { "constant": false, - "id": 2301, + "id": 2429, "indexed": false, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2303, + "scope": 2431, "src": "498:15:13", "stateVariable": false, "storageLocation": "default", @@ -2813,7 +3021,7 @@ "typeString": "string" }, "typeName": { - "id": 2300, + "id": 2428, "name": "string", "nodeType": "ElementaryTypeName", "src": "498:6:13", @@ -2832,7 +3040,7 @@ }, { "body": { - "id": 2323, + "id": 2451, "nodeType": "Block", "src": "550:108:13", "statements": [ @@ -2846,7 +3054,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2319, + "id": 2447, "isConstant": false, "isLValue": false, "isPure": false, @@ -2860,7 +3068,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2309, + "id": 2437, "isConstant": false, "isLValue": false, "isPure": false, @@ -2869,18 +3077,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2306, + "id": 2434, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "569:3:13", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2307, + "id": 2435, "isConstant": false, "isLValue": false, "isPure": false, @@ -2898,11 +3106,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2308, + "id": 2436, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "583:5:13", "typeDescriptions": { "typeIdentifier": "t_address", @@ -2916,7 +3124,7 @@ } } ], - "id": 2310, + "id": 2438, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -2940,7 +3148,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2317, + "id": 2445, "isConstant": false, "isLValue": false, "isPure": false, @@ -2949,18 +3157,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2311, + "id": 2439, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "594:3:13", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2312, + "id": 2440, "isConstant": false, "isLValue": false, "isPure": false, @@ -2982,7 +3190,7 @@ { "argumentTypes": null, "hexValue": "417661746172", - "id": 2315, + "id": 2443, "isConstant": false, "isLValue": false, "isPure": true, @@ -3007,32 +3215,32 @@ ], "expression": { "argumentTypes": null, - "id": 2313, + "id": 2441, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2278, + "referencedDeclaration": 2406, "src": "608:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2314, + "id": 2442, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 2316, + "id": 2444, "isConstant": false, "isLValue": false, "isPure": false, @@ -3053,7 +3261,7 @@ } } ], - "id": 2318, + "id": 2446, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -3080,21 +3288,21 @@ "typeString": "bool" } ], - "id": 2305, + "id": 2433, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "560:7:13", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2320, + "id": 2448, "isConstant": false, "isLValue": false, "isPure": false, @@ -3108,23 +3316,23 @@ "typeString": "tuple()" } }, - "id": 2321, + "id": 2449, "nodeType": "ExpressionStatement", "src": "560:80:13" }, { - "id": 2322, + "id": 2450, "nodeType": "PlaceholderStatement", "src": "650:1:13" } ] }, "documentation": null, - "id": 2324, + "id": 2452, "name": "onlyOwnerOrAvatar", "nodeType": "ModifierDefinition", "parameters": { - "id": 2304, + "id": 2432, "nodeType": "ParameterList", "parameters": [], "src": "547:2:13" @@ -3134,25 +3342,25 @@ }, { "body": { - "id": 2338, + "id": 2466, "nodeType": "Block", "src": "703:65:13", "statements": [ { "expression": { "argumentTypes": null, - "id": 2332, + "id": 2460, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2329, + "id": 2457, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "713:5:13", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3165,18 +3373,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2330, + "id": 2458, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "721:3:13", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2331, + "id": 2459, "isConstant": false, "isLValue": false, "isPure": false, @@ -3196,28 +3404,28 @@ "typeString": "address" } }, - "id": 2333, + "id": 2461, "nodeType": "ExpressionStatement", "src": "713:18:13" }, { "expression": { "argumentTypes": null, - "id": 2336, + "id": 2464, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2334, + "id": 2462, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2278, + "referencedDeclaration": 2406, "src": "741:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3225,31 +3433,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2335, + "id": 2463, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2326, + "referencedDeclaration": 2454, "src": "752:9:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "741:20:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2337, + "id": 2465, "nodeType": "ExpressionStatement", "src": "741:20:13" } ] }, "documentation": null, - "id": 2339, + "id": 2467, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -3257,31 +3465,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2327, + "id": 2455, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2326, + "id": 2454, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 2339, + "scope": 2467, "src": "676:18:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2325, + "id": 2453, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "676:8:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3293,12 +3501,12 @@ }, "payable": false, "returnParameters": { - "id": 2328, + "id": 2456, "nodeType": "ParameterList", "parameters": [], "src": "703:0:13" }, - "scope": 2444, + "scope": 2584, "src": "664:104:13", "stateMutability": "nonpayable", "superFunction": null, @@ -3306,14 +3514,14 @@ }, { "body": { - "id": 2369, + "id": 2500, "nodeType": "Block", - "src": "867:135:13", + "src": "867:153:13", "statements": [ { "expression": { "argumentTypes": null, - "id": 2361, + "id": 2492, "isConstant": false, "isLValue": false, "isPure": false, @@ -3324,25 +3532,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2350, + "id": 2478, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, + "referencedDeclaration": 2417, "src": "877:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2355, + "id": 2486, "indexExpression": { "argumentTypes": null, - "id": 2351, + "id": 2479, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2341, + "referencedDeclaration": 2469, "src": "884:7:13", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3356,47 +3564,99 @@ "nodeType": "IndexAccess", "src": "877:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2356, + "id": 2487, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2353, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "903:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2352, + "id": 2480, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, + "referencedDeclaration": 3338, "src": "893:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2354, + "id": 2485, "isConstant": false, "isLValue": false, "isPure": false, @@ -3404,7 +3664,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "893:19:13", + "src": "893:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3415,9 +3675,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "877:36:13", + "src": "877:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, @@ -3429,14 +3689,14 @@ { "argumentTypes": null, "hexValue": "74727565", - "id": 2358, + "id": 2489, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "921:4:13", + "src": "939:4:13", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -3446,12 +3706,12 @@ }, { "argumentTypes": null, - "id": 2359, + "id": 2490, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "927:9:13", + "referencedDeclaration": 2473, + "src": "945:9:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3469,18 +3729,18 @@ "typeString": "string memory" } ], - "id": 2357, + "id": 2488, "name": "Data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2283, - "src": "916:4:13", + "referencedDeclaration": 2411, + "src": "934:4:13", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2283_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Data_$2411_storage_ptr_$", "typeString": "type(struct Views.Data storage pointer)" } }, - "id": 2360, + "id": 2491, "isConstant": false, "isLValue": false, "isPure": false, @@ -3488,21 +3748,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "916:21:13", + "src": "934:21:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_memory", + "typeIdentifier": "t_struct$_Data_$2411_memory", "typeString": "struct Views.Data memory" } }, - "src": "877:60:13", + "src": "877:78:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, - "id": 2362, + "id": 2493, "nodeType": "ExpressionStatement", - "src": "877:60:13" + "src": "877:78:13" }, { "eventCall": { @@ -3510,12 +3770,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2364, + "id": 2495, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2341, - "src": "966:7:13", + "referencedDeclaration": 2469, + "src": "984:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3523,12 +3783,12 @@ }, { "argumentTypes": null, - "id": 2365, + "id": 2496, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2343, - "src": "975:8:13", + "referencedDeclaration": 2471, + "src": "993:8:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3536,12 +3796,12 @@ }, { "argumentTypes": null, - "id": 2366, + "id": 2497, "name": "_ipfsData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2345, - "src": "985:9:13", + "referencedDeclaration": 2473, + "src": "1003:9:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3563,18 +3823,18 @@ "typeString": "string memory" } ], - "id": 2363, + "id": 2494, "name": "LogCreateView", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2297, - "src": "952:13:13", + "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": 2367, + "id": 2498, "isConstant": false, "isLValue": false, "isPure": false, @@ -3582,34 +3842,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "952:43:13", + "src": "970:43:13", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2368, + "id": 2499, "nodeType": "EmitStatement", - "src": "947:48:13" + "src": "965:48:13" } ] }, "documentation": null, - "id": 2370, + "id": 2501, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2348, + "id": 2476, "modifierName": { "argumentTypes": null, - "id": 2347, + "id": 2475, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, + "referencedDeclaration": 2452, "src": "849:17:13", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -3623,15 +3883,15 @@ "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 2346, + "id": 2474, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2341, + "id": 2469, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2370, + "scope": 2501, "src": "790:15:13", "stateVariable": false, "storageLocation": "default", @@ -3640,7 +3900,7 @@ "typeString": "address" }, "typeName": { - "id": 2340, + "id": 2468, "name": "address", "nodeType": "ElementaryTypeName", "src": "790:7:13", @@ -3654,10 +3914,10 @@ }, { "constant": false, - "id": 2343, + "id": 2471, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2370, + "scope": 2501, "src": "807:15:13", "stateVariable": false, "storageLocation": "default", @@ -3666,7 +3926,7 @@ "typeString": "string" }, "typeName": { - "id": 2342, + "id": 2470, "name": "string", "nodeType": "ElementaryTypeName", "src": "807:6:13", @@ -3680,10 +3940,10 @@ }, { "constant": false, - "id": 2345, + "id": 2473, "name": "_ipfsData", "nodeType": "VariableDeclaration", - "scope": 2370, + "scope": 2501, "src": "824:16:13", "stateVariable": false, "storageLocation": "default", @@ -3692,7 +3952,7 @@ "typeString": "string" }, "typeName": { - "id": 2344, + "id": 2472, "name": "string", "nodeType": "ElementaryTypeName", "src": "824:6:13", @@ -3709,27 +3969,27 @@ }, "payable": false, "returnParameters": { - "id": 2349, + "id": 2477, "nodeType": "ParameterList", "parameters": [], "src": "867:0:13" }, - "scope": 2444, - "src": "774:228:13", + "scope": 2584, + "src": "774:246:13", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2393, + "id": 2527, "nodeType": "Block", - "src": "1083:107:13", + "src": "1101:125:13", "statements": [ { "expression": { "argumentTypes": null, - "id": 2386, + "id": 2520, "isConstant": false, "isLValue": false, "isPure": false, @@ -3737,33 +3997,33 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "1093:43:13", + "src": "1111:61:13", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2379, + "id": 2510, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1100:6:13", + "referencedDeclaration": 2417, + "src": "1118:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2381, + "id": 2512, "indexExpression": { "argumentTypes": null, - "id": 2380, + "id": 2511, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1107:7:13", + "referencedDeclaration": 2503, + "src": "1125:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3774,49 +4034,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1100:15:13", + "src": "1118:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2385, + "id": 2519, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2383, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1126:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2382, + "id": 2513, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1116:9:13", + "referencedDeclaration": 3338, + "src": "1134:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2384, + "id": 2518, "isConstant": false, "isLValue": false, "isPure": false, @@ -3824,7 +4136,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1116:19:13", + "src": "1134:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3835,9 +4147,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "1100:36:13", + "src": "1118:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, @@ -3846,9 +4158,9 @@ "typeString": "tuple()" } }, - "id": 2387, + "id": 2521, "nodeType": "ExpressionStatement", - "src": "1093:43:13" + "src": "1111:61:13" }, { "eventCall": { @@ -3856,12 +4168,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2389, + "id": 2523, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2372, - "src": "1165:7:13", + "referencedDeclaration": 2503, + "src": "1201:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3869,12 +4181,12 @@ }, { "argumentTypes": null, - "id": 2390, + "id": 2524, "name": "_videoId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2374, - "src": "1174:8:13", + "referencedDeclaration": 2505, + "src": "1210:8:13", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -3892,18 +4204,18 @@ "typeString": "string memory" } ], - "id": 2388, + "id": 2522, "name": "LogRemoveView", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2303, - "src": "1151:13:13", + "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": 2391, + "id": 2525, "isConstant": false, "isLValue": false, "isPure": false, @@ -3911,57 +4223,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1151:32:13", + "src": "1187:32:13", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2392, + "id": 2526, "nodeType": "EmitStatement", - "src": "1146:37:13" + "src": "1182:37:13" } ] }, "documentation": null, - "id": 2394, + "id": 2528, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2377, + "id": 2508, "modifierName": { "argumentTypes": null, - "id": 2376, + "id": 2507, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1065:17:13", + "referencedDeclaration": 2452, + "src": "1083:17:13", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1065:17:13" + "src": "1083:17:13" } ], "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2375, + "id": 2506, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2372, + "id": 2503, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1024:15:13", + "scope": 2528, + "src": "1042:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3969,10 +4281,10 @@ "typeString": "address" }, "typeName": { - "id": 2371, + "id": 2502, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1024:7:13", + "src": "1042:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3983,11 +4295,11 @@ }, { "constant": false, - "id": 2374, + "id": 2505, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2394, - "src": "1041:15:13", + "scope": 2528, + "src": "1059:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3995,10 +4307,10 @@ "typeString": "string" }, "typeName": { - "id": 2373, + "id": 2504, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1041:6:13", + "src": "1059:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4008,54 +4320,54 @@ "visibility": "internal" } ], - "src": "1023:34:13" + "src": "1041:34:13" }, "payable": false, "returnParameters": { - "id": 2378, + "id": 2509, "nodeType": "ParameterList", "parameters": [], - "src": "1083:0:13" + "src": "1101:0:13" }, - "scope": 2444, - "src": "1008:182:13", + "scope": 2584, + "src": "1026:200:13", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2423, + "id": 2560, "nodeType": "Block", - "src": "1295:118:13", + "src": "1331:144:13", "statements": [ { "assignments": [ - 2408 + 2542 ], "declarations": [ { "constant": false, - "id": 2408, + "id": 2542, "name": "data", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1305:9:13", + "scope": 2561, + "src": "1341:17:13", "stateVariable": false, - "storageLocation": "default", + "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data" }, "typeName": { "contractScope": null, - "id": 2407, + "id": 2541, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2283, - "src": "1305:4:13", + "referencedDeclaration": 2411, + "src": "1341:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data" } }, @@ -4063,33 +4375,33 @@ "visibility": "internal" } ], - "id": 2416, + "id": 2553, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2409, + "id": 2543, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1317:6:13", + "referencedDeclaration": 2417, + "src": "1361:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2411, + "id": 2545, "indexExpression": { "argumentTypes": null, - "id": 2410, + "id": 2544, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2396, - "src": "1324:7:13", + "referencedDeclaration": 2530, + "src": "1368:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4100,49 +4412,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1317:15:13", + "src": "1361:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2415, + "id": 2552, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2413, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2398, - "src": "1343:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2412, + "id": 2546, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1333:9:13", + "referencedDeclaration": 3338, + "src": "1377:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2414, + "id": 2551, "isConstant": false, "isLValue": false, "isPure": false, @@ -4150,7 +4514,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1333:19:13", + "src": "1377:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4161,14 +4525,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1317:36:13", + "src": "1361:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1305:48:13" + "src": "1341:74:13" }, { "expression": { @@ -4178,26 +4542,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2417, + "id": 2554, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1371:4:13", + "referencedDeclaration": 2542, + "src": "1433:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data storage pointer" } }, - "id": 2418, + "id": 2555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_isRegistered", "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1371:18:13", + "referencedDeclaration": 2408, + "src": "1433:18:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4207,91 +4571,91 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2419, + "id": 2556, "name": "data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2408, - "src": "1391:4:13", + "referencedDeclaration": 2542, + "src": "1453:4:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2411_storage_ptr", "typeString": "struct Views.Data storage pointer" } }, - "id": 2420, + "id": 2557, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_ipfsData", "nodeType": "MemberAccess", - "referencedDeclaration": 2282, - "src": "1391:14:13", + "referencedDeclaration": 2410, + "src": "1453:14:13", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } } ], - "id": 2421, + "id": 2558, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "1370:36:13", + "src": "1432:36:13", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_string_storage_$", "typeString": "tuple(bool,string storage ref)" } }, - "functionReturnParameters": 2406, - "id": 2422, + "functionReturnParameters": 2540, + "id": 2559, "nodeType": "Return", - "src": "1363:43:13" + "src": "1425:43:13" } ] }, "documentation": null, - "id": 2424, + "id": 2561, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [ { "arguments": null, - "id": 2401, + "id": 2535, "modifierName": { "argumentTypes": null, - "id": 2400, + "id": 2534, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2324, - "src": "1255:17:13", + "referencedDeclaration": 2452, + "src": "1291:17:13", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "1255:17:13" + "src": "1291:17:13" } ], "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 2399, + "id": 2533, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2396, + "id": 2530, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1209:15:13", + "scope": 2561, + "src": "1245:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4299,10 +4663,10 @@ "typeString": "address" }, "typeName": { - "id": 2395, + "id": 2529, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1209:7:13", + "src": "1245:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4313,11 +4677,11 @@ }, { "constant": false, - "id": 2398, + "id": 2532, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1226:15:13", + "scope": 2561, + "src": "1262:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4325,10 +4689,10 @@ "typeString": "string" }, "typeName": { - "id": 2397, + "id": 2531, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1226:6:13", + "src": "1262:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4338,20 +4702,20 @@ "visibility": "internal" } ], - "src": "1208:34:13" + "src": "1244:34:13" }, "payable": false, "returnParameters": { - "id": 2406, + "id": 2540, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2403, + "id": 2537, "name": "", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1281:4:13", + "scope": 2561, + "src": "1317:4:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4359,10 +4723,10 @@ "typeString": "bool" }, "typeName": { - "id": 2402, + "id": 2536, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1281:4:13", + "src": "1317:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4373,11 +4737,11 @@ }, { "constant": false, - "id": 2405, + "id": 2539, "name": "", "nodeType": "VariableDeclaration", - "scope": 2424, - "src": "1287:6:13", + "scope": 2561, + "src": "1323:6:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4385,10 +4749,10 @@ "typeString": "string" }, "typeName": { - "id": 2404, + "id": 2538, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1287:6:13", + "src": "1323:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4398,19 +4762,19 @@ "visibility": "internal" } ], - "src": "1280:14:13" + "src": "1316:14:13" }, - "scope": 2444, - "src": "1196:217:13", + "scope": 2584, + "src": "1232:243:13", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2442, + "id": 2582, "nodeType": "Block", - "src": "1504:74:13", + "src": "1566:92:13", "statements": [ { "expression": { @@ -4421,26 +4785,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2433, + "id": 2570, "name": "_views", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2289, - "src": "1521:6:13", + "referencedDeclaration": 2417, + "src": "1583:6:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$_$", + "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": 2435, + "id": 2572, "indexExpression": { "argumentTypes": null, - "id": 2434, + "id": 2571, "name": "_viewer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2426, - "src": "1528:7:13", + "referencedDeclaration": 2563, + "src": "1590:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4451,49 +4815,101 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1521:15:13", + "src": "1583:15:13", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2283_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2411_storage_$", "typeString": "mapping(bytes32 => struct Views.Data storage ref)" } }, - "id": 2439, + "id": 2579, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2437, - "name": "_videoId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2428, - "src": "1547:8:13", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2436, + "id": 2573, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1537:9:13", + "referencedDeclaration": 3338, + "src": "1599:9:13", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2438, + "id": 2578, "isConstant": false, "isLValue": false, "isPure": false, @@ -4501,7 +4917,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1537:19:13", + "src": "1599:37:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4512,35 +4928,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1521:36:13", + "src": "1583:54:13", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2283_storage", + "typeIdentifier": "t_struct$_Data_$2411_storage", "typeString": "struct Views.Data storage ref" } }, - "id": 2440, + "id": 2580, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_isRegistered", "nodeType": "MemberAccess", - "referencedDeclaration": 2280, - "src": "1521:50:13", + "referencedDeclaration": 2408, + "src": "1583:68:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2432, - "id": 2441, + "functionReturnParameters": 2569, + "id": 2581, "nodeType": "Return", - "src": "1514:57:13" + "src": "1576:75:13" } ] }, "documentation": null, - "id": 2443, + "id": 2583, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4548,16 +4964,16 @@ "name": "userViewedVideo", "nodeType": "FunctionDefinition", "parameters": { - "id": 2429, + "id": 2566, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2426, + "id": 2563, "name": "_viewer", "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1444:15:13", + "scope": 2583, + "src": "1506:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4565,10 +4981,10 @@ "typeString": "address" }, "typeName": { - "id": 2425, + "id": 2562, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1444:7:13", + "src": "1506:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4579,11 +4995,11 @@ }, { "constant": false, - "id": 2428, + "id": 2565, "name": "_videoId", "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1461:15:13", + "scope": 2583, + "src": "1523:15:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4591,10 +5007,10 @@ "typeString": "string" }, "typeName": { - "id": 2427, + "id": 2564, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1461:6:13", + "src": "1523:6:13", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4604,20 +5020,20 @@ "visibility": "internal" } ], - "src": "1443:34:13" + "src": "1505:34:13" }, "payable": false, "returnParameters": { - "id": 2432, + "id": 2569, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2431, + "id": 2568, "name": "", "nodeType": "VariableDeclaration", - "scope": 2443, - "src": "1498:4:13", + "scope": 2583, + "src": "1560:4:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4625,10 +5041,10 @@ "typeString": "bool" }, "typeName": { - "id": 2430, + "id": 2567, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1498:4:13", + "src": "1560:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4638,20 +5054,20 @@ "visibility": "internal" } ], - "src": "1497:6:13" + "src": "1559:6:13" }, - "scope": 2444, - "src": "1419:159:13", + "scope": 2584, + "src": "1481:177:13", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 2445, - "src": "112:1468:13" + "scope": 2585, + "src": "112:1548:13" } ], - "src": "0:1581:13" + "src": "0:1661:13" }, "compiler": { "name": "solc", @@ -4659,5 +5075,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.685Z" + "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 319676d..300e3d4 100644 --- a/build/contracts/Vouchers.json +++ b/build/contracts/Vouchers.json @@ -226,24 +226,24 @@ "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", + "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": "/media/data2/projects/paratii/contracts/contracts/paratii/Vouchers.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Vouchers.sol", "exportedSymbols": { "Vouchers": [ - 2655 + 2798 ] }, - "id": 2656, + "id": 2799, "nodeType": "SourceUnit", "nodes": [ { - "id": 2446, + "id": 2586, "literals": [ "solidity", "^", @@ -256,32 +256,32 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2447, + "id": 2587, "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 2807, + "scope": 2799, + "sourceUnit": 2950, "src": "26:59:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 2448, + "id": 2588, "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 872, + "scope": 2799, + "sourceUnit": 905, "src": "86:28:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 2449, + "id": 2589, "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 1097, + "scope": 2799, + "sourceUnit": 1157, "src": "115:24:14", "symbolAliases": [], "unitAlias": "" @@ -292,57 +292,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2450, + "id": 2590, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "162:7:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 2451, + "id": 2591, "nodeType": "InheritanceSpecifier", "src": "162:7:14" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2655, + "id": 2798, "linearizedBaseContracts": [ - 2655, - 2806 + 2798, + 2949 ], "name": "Vouchers", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2453, + "id": 2593, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 2655, + "scope": 2798, "src": "177:24:14", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2452, + "id": 2592, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "177:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -351,14 +351,14 @@ }, { "canonicalName": "Vouchers.Data", - "id": 2458, + "id": 2598, "members": [ { "constant": false, - "id": 2455, + "id": 2595, "name": "_claimant", "nodeType": "VariableDeclaration", - "scope": 2458, + "scope": 2598, "src": "230:17:14", "stateVariable": false, "storageLocation": "default", @@ -367,7 +367,7 @@ "typeString": "address" }, "typeName": { - "id": 2454, + "id": 2594, "name": "address", "nodeType": "ElementaryTypeName", "src": "230:7:14", @@ -381,10 +381,10 @@ }, { "constant": false, - "id": 2457, + "id": 2597, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2458, + "scope": 2598, "src": "257:12:14", "stateVariable": false, "storageLocation": "default", @@ -393,7 +393,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2456, + "id": 2596, "name": "uint", "nodeType": "ElementaryTypeName", "src": "257:4:14", @@ -408,27 +408,27 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2655, + "scope": 2798, "src": "208:68:14", "visibility": "public" }, { "constant": false, - "id": 2462, + "id": 2602, "name": "vouchers", "nodeType": "VariableDeclaration", - "scope": 2655, + "scope": 2798, "src": "282:41:14", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data)" }, "typeName": { - "id": 2461, + "id": 2601, "keyType": { - "id": 2459, + "id": 2599, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "291:7:14", @@ -440,18 +440,18 @@ "nodeType": "Mapping", "src": "282:25:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data)" }, "valueType": { "contractScope": null, - "id": 2460, + "id": 2600, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, + "referencedDeclaration": 2598, "src": "302:4:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data" } } @@ -462,20 +462,20 @@ { "anonymous": false, "documentation": null, - "id": 2468, + "id": 2608, "name": "LogCreateVoucher", "nodeType": "EventDefinition", "parameters": { - "id": 2467, + "id": 2607, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2464, + "id": 2604, "indexed": false, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2468, + "scope": 2608, "src": "353:22:14", "stateVariable": false, "storageLocation": "default", @@ -484,7 +484,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2463, + "id": 2603, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "353:7:14", @@ -498,11 +498,11 @@ }, { "constant": false, - "id": 2466, + "id": 2606, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2468, + "scope": 2608, "src": "377:12:14", "stateVariable": false, "storageLocation": "default", @@ -511,7 +511,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2465, + "id": 2605, "name": "uint", "nodeType": "ElementaryTypeName", "src": "377:4:14", @@ -531,20 +531,20 @@ { "anonymous": false, "documentation": null, - "id": 2472, + "id": 2612, "name": "LogRemoveVoucher", "nodeType": "EventDefinition", "parameters": { - "id": 2471, + "id": 2611, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2470, + "id": 2610, "indexed": false, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2472, + "scope": 2612, "src": "419:22:14", "stateVariable": false, "storageLocation": "default", @@ -553,7 +553,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2469, + "id": 2609, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "419:7:14", @@ -573,20 +573,20 @@ { "anonymous": false, "documentation": null, - "id": 2482, + "id": 2622, "name": "LogRedeemVoucher", "nodeType": "EventDefinition", "parameters": { - "id": 2481, + "id": 2621, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2474, + "id": 2614, "indexed": false, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "471:22:14", "stateVariable": false, "storageLocation": "default", @@ -595,7 +595,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2473, + "id": 2613, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "471:7:14", @@ -609,11 +609,11 @@ }, { "constant": false, - "id": 2476, + "id": 2616, "indexed": false, "name": "_voucher", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "495:15:14", "stateVariable": false, "storageLocation": "default", @@ -622,7 +622,7 @@ "typeString": "string" }, "typeName": { - "id": 2475, + "id": 2615, "name": "string", "nodeType": "ElementaryTypeName", "src": "495:6:14", @@ -636,11 +636,11 @@ }, { "constant": false, - "id": 2478, + "id": 2618, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "512:12:14", "stateVariable": false, "storageLocation": "default", @@ -649,7 +649,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2477, + "id": 2617, "name": "uint", "nodeType": "ElementaryTypeName", "src": "512:4:14", @@ -663,11 +663,11 @@ }, { "constant": false, - "id": 2480, + "id": 2620, "indexed": false, "name": "_claimant", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "526:17:14", "stateVariable": false, "storageLocation": "default", @@ -676,7 +676,7 @@ "typeString": "address" }, "typeName": { - "id": 2479, + "id": 2619, "name": "address", "nodeType": "ElementaryTypeName", "src": "526:7:14", @@ -695,7 +695,7 @@ }, { "body": { - "id": 2502, + "id": 2642, "nodeType": "Block", "src": "580:108:14", "statements": [ @@ -709,7 +709,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2498, + "id": 2638, "isConstant": false, "isLValue": false, "isPure": false, @@ -723,7 +723,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2488, + "id": 2628, "isConstant": false, "isLValue": false, "isPure": false, @@ -732,18 +732,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2485, + "id": 2625, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "599:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2486, + "id": 2626, "isConstant": false, "isLValue": false, "isPure": false, @@ -761,11 +761,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2487, + "id": 2627, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "613:5:14", "typeDescriptions": { "typeIdentifier": "t_address", @@ -779,7 +779,7 @@ } } ], - "id": 2489, + "id": 2629, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -803,7 +803,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2496, + "id": 2636, "isConstant": false, "isLValue": false, "isPure": false, @@ -812,18 +812,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2490, + "id": 2630, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "624:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2491, + "id": 2631, "isConstant": false, "isLValue": false, "isPure": false, @@ -845,7 +845,7 @@ { "argumentTypes": null, "hexValue": "417661746172", - "id": 2494, + "id": 2634, "isConstant": false, "isLValue": false, "isPure": true, @@ -870,32 +870,32 @@ ], "expression": { "argumentTypes": null, - "id": 2492, + "id": 2632, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2453, + "referencedDeclaration": 2593, "src": "638:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2493, + "id": 2633, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 2495, + "id": 2635, "isConstant": false, "isLValue": false, "isPure": false, @@ -916,7 +916,7 @@ } } ], - "id": 2497, + "id": 2637, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -943,21 +943,21 @@ "typeString": "bool" } ], - "id": 2484, + "id": 2624, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "590:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2499, + "id": 2639, "isConstant": false, "isLValue": false, "isPure": false, @@ -971,23 +971,23 @@ "typeString": "tuple()" } }, - "id": 2500, + "id": 2640, "nodeType": "ExpressionStatement", "src": "590:80:14" }, { - "id": 2501, + "id": 2641, "nodeType": "PlaceholderStatement", "src": "680:1:14" } ] }, "documentation": null, - "id": 2503, + "id": 2643, "name": "onlyOwnerOrAvatar", "nodeType": "ModifierDefinition", "parameters": { - "id": 2483, + "id": 2623, "nodeType": "ParameterList", "parameters": [], "src": "577:2:14" @@ -997,25 +997,25 @@ }, { "body": { - "id": 2517, + "id": 2657, "nodeType": "Block", "src": "733:65:14", "statements": [ { "expression": { "argumentTypes": null, - "id": 2511, + "id": 2651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2508, + "id": 2648, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "743:5:14", "typeDescriptions": { "typeIdentifier": "t_address", @@ -1028,18 +1028,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2509, + "id": 2649, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "751:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2510, + "id": 2650, "isConstant": false, "isLValue": false, "isPure": false, @@ -1059,28 +1059,28 @@ "typeString": "address" } }, - "id": 2512, + "id": 2652, "nodeType": "ExpressionStatement", "src": "743:18:14" }, { "expression": { "argumentTypes": null, - "id": 2515, + "id": 2655, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2513, + "id": 2653, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2453, + "referencedDeclaration": 2593, "src": "771:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1088,31 +1088,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2514, + "id": 2654, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2505, + "referencedDeclaration": 2645, "src": "782:9:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "771:20:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2516, + "id": 2656, "nodeType": "ExpressionStatement", "src": "771:20:14" } ] }, "documentation": null, - "id": 2518, + "id": 2658, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -1120,31 +1120,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2506, + "id": 2646, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2505, + "id": 2645, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 2518, + "scope": 2658, "src": "706:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2504, + "id": 2644, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "706:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -1156,12 +1156,12 @@ }, "payable": false, "returnParameters": { - "id": 2507, + "id": 2647, "nodeType": "ParameterList", "parameters": [], "src": "733:0:14" }, - "scope": 2655, + "scope": 2798, "src": "694:104:14", "stateMutability": "nonpayable", "superFunction": null, @@ -1169,13 +1169,13 @@ }, { "body": { - "id": 2521, + "id": 2661, "nodeType": "Block", "src": "864:3:14", "statements": [] }, "documentation": null, - "id": 2522, + "id": 2662, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1183,19 +1183,19 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2519, + "id": 2659, "nodeType": "ParameterList", "parameters": [], "src": "846:2:14" }, "payable": true, "returnParameters": { - "id": 2520, + "id": 2660, "nodeType": "ParameterList", "parameters": [], "src": "864:0:14" }, - "scope": 2655, + "scope": 2798, "src": "838:29:14", "stateMutability": "payable", "superFunction": null, @@ -1203,7 +1203,7 @@ }, { "body": { - "id": 2553, + "id": 2693, "nodeType": "Block", "src": "952:155:14", "statements": [ @@ -1217,18 +1217,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2534, + "id": 2674, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2532, + "id": 2672, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2526, + "referencedDeclaration": 2666, "src": "970:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1240,7 +1240,7 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2533, + "id": 2673, "isConstant": false, "isLValue": false, "isPure": true, @@ -1269,21 +1269,21 @@ "typeString": "bool" } ], - "id": 2531, + "id": 2671, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "962:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2535, + "id": 2675, "isConstant": false, "isLValue": false, "isPure": false, @@ -1297,14 +1297,14 @@ "typeString": "tuple()" } }, - "id": 2536, + "id": 2676, "nodeType": "ExpressionStatement", "src": "962:20:14" }, { "expression": { "argumentTypes": null, - "id": 2546, + "id": 2686, "isConstant": false, "isLValue": false, "isPure": false, @@ -1313,25 +1313,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2537, + "id": 2677, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, + "referencedDeclaration": 2602, "src": "992:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2539, + "id": 2679, "indexExpression": { "argumentTypes": null, - "id": 2538, + "id": 2678, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2524, + "referencedDeclaration": 2664, "src": "1001:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1345,7 +1345,7 @@ "nodeType": "IndexAccess", "src": "992:24:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, @@ -1360,7 +1360,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2542, + "id": 2682, "isConstant": false, "isLValue": false, "isPure": true, @@ -1383,7 +1383,7 @@ "typeString": "int_const 0" } ], - "id": 2541, + "id": 2681, "isConstant": false, "isLValue": false, "isPure": true, @@ -1396,7 +1396,7 @@ }, "typeName": "address" }, - "id": 2543, + "id": 2683, "isConstant": false, "isLValue": false, "isPure": true, @@ -1412,11 +1412,11 @@ }, { "argumentTypes": null, - "id": 2544, + "id": 2684, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2526, + "referencedDeclaration": 2666, "src": "1036:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1435,18 +1435,18 @@ "typeString": "uint256" } ], - "id": 2540, + "id": 2680, "name": "Data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2458, + "referencedDeclaration": 2598, "src": "1019:4:14", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2458_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Data_$2598_storage_ptr_$", "typeString": "type(struct Vouchers.Data storage pointer)" } }, - "id": 2545, + "id": 2685, "isConstant": false, "isLValue": false, "isPure": false, @@ -1456,17 +1456,17 @@ "nodeType": "FunctionCall", "src": "1019:25:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_memory", + "typeIdentifier": "t_struct$_Data_$2598_memory", "typeString": "struct Vouchers.Data memory" } }, "src": "992:52:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, - "id": 2547, + "id": 2687, "nodeType": "ExpressionStatement", "src": "992:52:14" }, @@ -1476,11 +1476,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2549, + "id": 2689, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2524, + "referencedDeclaration": 2664, "src": "1076:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1489,11 +1489,11 @@ }, { "argumentTypes": null, - "id": 2550, + "id": 2690, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2526, + "referencedDeclaration": 2666, "src": "1092:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -1512,18 +1512,18 @@ "typeString": "uint256" } ], - "id": 2548, + "id": 2688, "name": "LogCreateVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2468, + "referencedDeclaration": 2608, "src": "1059:16:14", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256)" } }, - "id": 2551, + "id": 2691, "isConstant": false, "isLValue": false, "isPure": false, @@ -1537,28 +1537,28 @@ "typeString": "tuple()" } }, - "id": 2552, + "id": 2692, "nodeType": "EmitStatement", "src": "1054:46:14" } ] }, "documentation": null, - "id": 2554, + "id": 2694, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2529, + "id": 2669, "modifierName": { "argumentTypes": null, - "id": 2528, + "id": 2668, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2503, + "referencedDeclaration": 2643, "src": "934:17:14", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -1572,15 +1572,15 @@ "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 2527, + "id": 2667, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2524, + "id": 2664, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2554, + "scope": 2694, "src": "889:22:14", "stateVariable": false, "storageLocation": "default", @@ -1589,7 +1589,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2523, + "id": 2663, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "889:7:14", @@ -1603,10 +1603,10 @@ }, { "constant": false, - "id": 2526, + "id": 2666, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2554, + "scope": 2694, "src": "913:12:14", "stateVariable": false, "storageLocation": "default", @@ -1615,7 +1615,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2525, + "id": 2665, "name": "uint", "nodeType": "ElementaryTypeName", "src": "913:4:14", @@ -1632,12 +1632,12 @@ }, "payable": false, "returnParameters": { - "id": 2530, + "id": 2670, "nodeType": "ParameterList", "parameters": [], "src": "952:0:14" }, - "scope": 2655, + "scope": 2798, "src": "873:234:14", "stateMutability": "nonpayable", "superFunction": null, @@ -1645,14 +1645,14 @@ }, { "body": { - "id": 2570, + "id": 2710, "nodeType": "Block", "src": "1178:95:14", "statements": [ { "expression": { "argumentTypes": null, - "id": 2564, + "id": 2704, "isConstant": false, "isLValue": false, "isPure": false, @@ -1665,25 +1665,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2561, + "id": 2701, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, + "referencedDeclaration": 2602, "src": "1195:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2563, + "id": 2703, "indexExpression": { "argumentTypes": null, - "id": 2562, + "id": 2702, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2556, + "referencedDeclaration": 2696, "src": "1204:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1697,7 +1697,7 @@ "nodeType": "IndexAccess", "src": "1195:24:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, @@ -1706,7 +1706,7 @@ "typeString": "tuple()" } }, - "id": 2565, + "id": 2705, "nodeType": "ExpressionStatement", "src": "1188:31:14" }, @@ -1716,11 +1716,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2567, + "id": 2707, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2556, + "referencedDeclaration": 2696, "src": "1251:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -1735,18 +1735,18 @@ "typeString": "bytes32" } ], - "id": 2566, + "id": 2706, "name": "LogRemoveVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2472, + "referencedDeclaration": 2612, "src": "1234:16:14", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2568, + "id": 2708, "isConstant": false, "isLValue": false, "isPure": false, @@ -1760,28 +1760,28 @@ "typeString": "tuple()" } }, - "id": 2569, + "id": 2709, "nodeType": "EmitStatement", "src": "1229:37:14" } ] }, "documentation": null, - "id": 2571, + "id": 2711, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2559, + "id": 2699, "modifierName": { "argumentTypes": null, - "id": 2558, + "id": 2698, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2503, + "referencedDeclaration": 2643, "src": "1160:17:14", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -1795,15 +1795,15 @@ "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2557, + "id": 2697, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2556, + "id": 2696, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2571, + "scope": 2711, "src": "1129:22:14", "stateVariable": false, "storageLocation": "default", @@ -1812,7 +1812,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2555, + "id": 2695, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1129:7:14", @@ -1829,12 +1829,12 @@ }, "payable": false, "returnParameters": { - "id": 2560, + "id": 2700, "nodeType": "ParameterList", "parameters": [], "src": "1178:0:14" }, - "scope": 2655, + "scope": 2798, "src": "1113:160:14", "stateMutability": "nonpayable", "superFunction": null, @@ -1842,9 +1842,9 @@ }, { "body": { - "id": 2582, + "id": 2725, "nodeType": "Block", - "src": "1441:43:14", + "src": "1440:61:14", "statements": [ { "expression": { @@ -1852,37 +1852,89 @@ "arguments": [ { "argumentTypes": null, - "id": 2579, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1468:8:14", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2578, + "id": 2718, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1458:9:14", + "referencedDeclaration": 3338, + "src": "1457:9:14", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2580, + "id": 2723, "isConstant": false, "isLValue": false, "isPure": false, @@ -1890,21 +1942,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1458:19:14", + "src": "1457:37:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 2577, - "id": 2581, + "functionReturnParameters": 2717, + "id": 2724, "nodeType": "Return", - "src": "1451:26:14" + "src": "1450:44:14" } ] }, "documentation": null, - "id": 2583, + "id": 2726, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1912,16 +1964,16 @@ "name": "hashVoucher", "nodeType": "FunctionDefinition", "parameters": { - "id": 2574, + "id": 2714, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2573, + "id": 2713, "name": "_voucher", "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1380:15:14", + "scope": 2726, + "src": "1379:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1929,10 +1981,10 @@ "typeString": "string" }, "typeName": { - "id": 2572, + "id": 2712, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1380:6:14", + "src": "1379:6:14", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1942,20 +1994,20 @@ "visibility": "internal" } ], - "src": "1379:17:14" + "src": "1378:17:14" }, "payable": false, "returnParameters": { - "id": 2577, + "id": 2717, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2576, + "id": 2716, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1417:22:14", + "scope": 2726, + "src": "1416:22:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1963,10 +2015,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2575, + "id": 2715, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1417:7:14", + "src": "1416:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1976,32 +2028,32 @@ "visibility": "internal" } ], - "src": "1416:24:14" + "src": "1415:24:14" }, - "scope": 2655, - "src": "1359:125:14", + "scope": 2798, + "src": "1358:143:14", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2653, + "id": 2796, "nodeType": "Block", - "src": "1740:672:14", + "src": "1769:672:14", "statements": [ { "assignments": [ - 2591 + 2734 ], "declarations": [ { "constant": false, - "id": 2591, + "id": 2734, "name": "hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1817:21:14", + "scope": 2797, + "src": "1846:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2009,10 +2061,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2590, + "id": 2733, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1817:7:14", + "src": "1846:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2022,18 +2074,18 @@ "visibility": "internal" } ], - "id": 2595, + "id": 2738, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2593, + "id": 2736, "name": "_voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "1853:8:14", + "referencedDeclaration": 2728, + "src": "1882:8:14", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2047,18 +2099,18 @@ "typeString": "string memory" } ], - "id": 2592, + "id": 2735, "name": "hashVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2583, - "src": "1841:11:14", + "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": 2594, + "id": 2737, "isConstant": false, "isLValue": false, "isPure": false, @@ -2066,42 +2118,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1841:21:14", + "src": "1870:21:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1817:45:14" + "src": "1846:45:14" }, { "assignments": [ - 2597 + 2740 ], "declarations": [ { "constant": false, - "id": 2597, + "id": 2740, "name": "voucher", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1872:20:14", + "scope": 2797, + "src": "1901:20:14", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data" }, "typeName": { "contractScope": null, - "id": 2596, + "id": 2739, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, - "src": "1872:4:14", + "referencedDeclaration": 2598, + "src": "1901:4:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data" } }, @@ -2109,31 +2161,31 @@ "visibility": "internal" } ], - "id": 2601, + "id": 2744, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2598, + "id": 2741, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "1895:8:14", + "referencedDeclaration": 2602, + "src": "1924:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2600, + "id": 2743, "indexExpression": { "argumentTypes": null, - "id": 2599, + "id": 2742, "name": "hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "1904:13:14", + "referencedDeclaration": 2734, + "src": "1933:13:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2144,14 +2196,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1895:23:14", + "src": "1924:23:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1872:46:14" + "src": "1901:46:14" }, { "expression": { @@ -2163,7 +2215,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2606, + "id": 2749, "isConstant": false, "isLValue": false, "isPure": false, @@ -2172,26 +2224,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2603, + "id": 2746, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1936:7:14", + "referencedDeclaration": 2740, + "src": "1965:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2604, + "id": 2747, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_amount", "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "1936:15:14", + "referencedDeclaration": 2597, + "src": "1965:15:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2202,14 +2254,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2605, + "id": 2748, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1954:1:14", + "src": "1983:1:14", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -2217,7 +2269,7 @@ }, "value": "0" }, - "src": "1936:19:14", + "src": "1965:19:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2231,21 +2283,21 @@ "typeString": "bool" } ], - "id": 2602, + "id": 2745, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1928:7:14", + "referencedDeclaration": 3347, + "src": "1957:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2607, + "id": 2750, "isConstant": false, "isLValue": false, "isPure": false, @@ -2253,15 +2305,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1928:28:14", + "src": "1957:28:14", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2608, + "id": 2751, "nodeType": "ExpressionStatement", - "src": "1928:28:14" + "src": "1957:28:14" }, { "expression": { @@ -2273,7 +2325,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2615, + "id": 2758, "isConstant": false, "isLValue": false, "isPure": false, @@ -2282,26 +2334,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2610, + "id": 2753, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1974:7:14", + "referencedDeclaration": 2740, + "src": "2003:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2611, + "id": 2754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_claimant", "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "1974:17:14", + "referencedDeclaration": 2595, + "src": "2003:17:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2315,14 +2367,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2613, + "id": 2756, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2003:1:14", + "src": "2032:1:14", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -2338,20 +2390,20 @@ "typeString": "int_const 0" } ], - "id": 2612, + "id": 2755, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1995:7:14", + "src": "2024:7:14", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 2614, + "id": 2757, "isConstant": false, "isLValue": false, "isPure": true, @@ -2359,13 +2411,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1995:10:14", + "src": "2024:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1974:31:14", + "src": "2003:31:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2379,21 +2431,21 @@ "typeString": "bool" } ], - "id": 2609, + "id": 2752, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1966:7:14", + "referencedDeclaration": 3347, + "src": "1995:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2616, + "id": 2759, "isConstant": false, "isLValue": false, "isPure": false, @@ -2401,20 +2453,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1966:40:14", + "src": "1995:40:14", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2617, + "id": 2760, "nodeType": "ExpressionStatement", - "src": "1966:40:14" + "src": "1995:40:14" }, { "expression": { "argumentTypes": null, - "id": 2624, + "id": 2767, "isConstant": false, "isLValue": false, "isPure": false, @@ -2425,26 +2477,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2618, + "id": 2761, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "2084:8:14", + "referencedDeclaration": 2602, + "src": "2113:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2620, + "id": 2763, "indexExpression": { "argumentTypes": null, - "id": 2619, + "id": 2762, "name": "hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2093:13:14", + "referencedDeclaration": 2734, + "src": "2122:13:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2455,21 +2507,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2084:23:14", + "src": "2113:23:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, - "id": 2621, + "id": 2764, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "_claimant", "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "2084:33:14", + "referencedDeclaration": 2595, + "src": "2113:33:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2481,18 +2533,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2622, + "id": 2765, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2120:3:14", + "referencedDeclaration": 3344, + "src": "2149:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2623, + "id": 2766, "isConstant": false, "isLValue": false, "isPure": false, @@ -2500,49 +2552,49 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2120:10:14", + "src": "2149:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2084:46:14", + "src": "2113:46:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2625, + "id": 2768, "nodeType": "ExpressionStatement", - "src": "2084:46:14" + "src": "2113:46:14" }, { "assignments": [ - 2627 + 2770 ], "declarations": [ { "constant": false, - "id": 2627, + "id": 2770, "name": "token", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "2196:18:14", + "scope": 2797, + "src": "2225:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" }, "typeName": { "contractScope": null, - "id": 2626, + "id": 2769, "name": "ParatiiToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "2196:12:14", + "referencedDeclaration": 904, + "src": "2225:12:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -2550,7 +2602,7 @@ "visibility": "internal" } ], - "id": 2634, + "id": 2777, "initialValue": { "argumentTypes": null, "arguments": [ @@ -2560,14 +2612,14 @@ { "argumentTypes": null, "hexValue": "50617261746969546f6b656e", - "id": 2631, + "id": 2774, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2251:14:14", + "src": "2280:14:14", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", @@ -2585,32 +2637,32 @@ ], "expression": { "argumentTypes": null, - "id": 2629, + "id": 2772, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "2230:8:14", + "referencedDeclaration": 2593, + "src": "2259:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2630, + "id": 2773, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "2230:20:14", + "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": 2632, + "id": 2775, "isConstant": false, "isLValue": false, "isPure": false, @@ -2618,7 +2670,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2230:36:14", + "src": "2259:36:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2632,18 +2684,18 @@ "typeString": "address" } ], - "id": 2628, + "id": 2771, "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "2217:12:14", + "referencedDeclaration": 904, + "src": "2246:12:14", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", "typeString": "type(contract ParatiiToken)" } }, - "id": 2633, + "id": 2776, "isConstant": false, "isLValue": false, "isPure": false, @@ -2651,14 +2703,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2217:50:14", + "src": "2246:50:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, "nodeType": "VariableDeclarationStatement", - "src": "2196:71:14" + "src": "2225:71:14" }, { "expression": { @@ -2668,18 +2720,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2638, + "id": 2781, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2292:3:14", + "referencedDeclaration": 3344, + "src": "2321:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2639, + "id": 2782, "isConstant": false, "isLValue": false, "isPure": false, @@ -2687,7 +2739,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2292:10:14", + "src": "2321:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2697,26 +2749,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2640, + "id": 2783, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2304:7:14", + "referencedDeclaration": 2740, + "src": "2333:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2641, + "id": 2784, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_amount", "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2304:15:14", + "referencedDeclaration": 2597, + "src": "2333:15:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2736,32 +2788,32 @@ ], "expression": { "argumentTypes": null, - "id": 2635, + "id": 2778, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2627, - "src": "2277:5:14", + "referencedDeclaration": 2770, + "src": "2306:5:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 2637, + "id": 2780, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "2277:14:14", + "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": 2642, + "id": 2785, "isConstant": false, "isLValue": false, "isPure": false, @@ -2769,15 +2821,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2277:43:14", + "src": "2306:43:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2643, + "id": 2786, "nodeType": "ExpressionStatement", - "src": "2277:43:14" + "src": "2306:43:14" }, { "eventCall": { @@ -2785,12 +2837,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2645, + "id": 2788, "name": "hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2352:13:14", + "referencedDeclaration": 2734, + "src": "2381:13:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2798,12 +2850,12 @@ }, { "argumentTypes": null, - "id": 2646, + "id": 2789, "name": "_voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "2367:8:14", + "referencedDeclaration": 2728, + "src": "2396:8:14", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -2813,26 +2865,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2647, + "id": 2790, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2377:7:14", + "referencedDeclaration": 2740, + "src": "2406:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2648, + "id": 2791, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_amount", "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2377:15:14", + "referencedDeclaration": 2597, + "src": "2406:15:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2842,18 +2894,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2649, + "id": 2792, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2394:3:14", + "referencedDeclaration": 3344, + "src": "2423:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2650, + "id": 2793, "isConstant": false, "isLValue": false, "isPure": false, @@ -2861,7 +2913,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2394:10:14", + "src": "2423:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2887,18 +2939,18 @@ "typeString": "address" } ], - "id": 2644, + "id": 2787, "name": "LogRedeemVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2482, - "src": "2335:16:14", + "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": 2651, + "id": 2794, "isConstant": false, "isLValue": false, "isPure": false, @@ -2906,20 +2958,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2335:70:14", + "src": "2364:70:14", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2652, + "id": 2795, "nodeType": "EmitStatement", - "src": "2330:75:14" + "src": "2359:75:14" } ] }, "documentation": null, - "id": 2654, + "id": 2797, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2927,16 +2979,16 @@ "name": "redeem", "nodeType": "FunctionDefinition", "parameters": { - "id": 2586, + "id": 2729, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2585, + "id": 2728, "name": "_voucher", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1702:15:14", + "scope": 2797, + "src": "1731:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2944,10 +2996,10 @@ "typeString": "string" }, "typeName": { - "id": 2584, + "id": 2727, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1702:6:14", + "src": "1731:6:14", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2957,20 +3009,20 @@ "visibility": "internal" } ], - "src": "1701:17:14" + "src": "1730:17:14" }, "payable": false, "returnParameters": { - "id": 2589, + "id": 2732, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2588, + "id": 2731, "name": "", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1734:4:14", + "scope": 2797, + "src": "1763:4:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2978,10 +3030,10 @@ "typeString": "bool" }, "typeName": { - "id": 2587, + "id": 2730, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1734:4:14", + "src": "1763:4:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2991,33 +3043,33 @@ "visibility": "internal" } ], - "src": "1733:6:14" + "src": "1762:6:14" }, - "scope": 2655, - "src": "1686:726:14", + "scope": 2798, + "src": "1715:726:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2656, - "src": "141:2273:14" + "scope": 2799, + "src": "141:2302:14" } ], - "src": "0:2415:14" + "src": "0:2444:14" }, "legacyAST": { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Vouchers.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Vouchers.sol", "exportedSymbols": { "Vouchers": [ - 2655 + 2798 ] }, - "id": 2656, + "id": 2799, "nodeType": "SourceUnit", "nodes": [ { - "id": 2446, + "id": 2586, "literals": [ "solidity", "^", @@ -3030,32 +3082,32 @@ { "absolutePath": "zeppelin-solidity/contracts/ownership/Ownable.sol", "file": "zeppelin-solidity/contracts/ownership/Ownable.sol", - "id": 2447, + "id": 2587, "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 2807, + "scope": 2799, + "sourceUnit": 2950, "src": "26:59:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/ParatiiToken.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/ParatiiToken.sol", "file": "./ParatiiToken.sol", - "id": 2448, + "id": 2588, "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 872, + "scope": 2799, + "sourceUnit": 905, "src": "86:28:14", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/media/data2/projects/paratii/contracts/contracts/paratii/Registry.sol", + "absolutePath": "/home/rigel/Documents/paratii/paratii-contracts/contracts/paratii/Registry.sol", "file": "./Registry.sol", - "id": 2449, + "id": 2589, "nodeType": "ImportDirective", - "scope": 2656, - "sourceUnit": 1097, + "scope": 2799, + "sourceUnit": 1157, "src": "115:24:14", "symbolAliases": [], "unitAlias": "" @@ -3066,57 +3118,57 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 2450, + "id": 2590, "name": "Ownable", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2806, + "referencedDeclaration": 2949, "src": "162:7:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$2806", + "typeIdentifier": "t_contract$_Ownable_$2949", "typeString": "contract Ownable" } }, - "id": 2451, + "id": 2591, "nodeType": "InheritanceSpecifier", "src": "162:7:14" } ], "contractDependencies": [ - 2806 + 2949 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2655, + "id": 2798, "linearizedBaseContracts": [ - 2655, - 2806 + 2798, + 2949 ], "name": "Vouchers", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 2453, + "id": 2593, "name": "registry", "nodeType": "VariableDeclaration", - "scope": 2655, + "scope": 2798, "src": "177:24:14", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2452, + "id": 2592, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "177:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3125,14 +3177,14 @@ }, { "canonicalName": "Vouchers.Data", - "id": 2458, + "id": 2598, "members": [ { "constant": false, - "id": 2455, + "id": 2595, "name": "_claimant", "nodeType": "VariableDeclaration", - "scope": 2458, + "scope": 2598, "src": "230:17:14", "stateVariable": false, "storageLocation": "default", @@ -3141,7 +3193,7 @@ "typeString": "address" }, "typeName": { - "id": 2454, + "id": 2594, "name": "address", "nodeType": "ElementaryTypeName", "src": "230:7:14", @@ -3155,10 +3207,10 @@ }, { "constant": false, - "id": 2457, + "id": 2597, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2458, + "scope": 2598, "src": "257:12:14", "stateVariable": false, "storageLocation": "default", @@ -3167,7 +3219,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2456, + "id": 2596, "name": "uint", "nodeType": "ElementaryTypeName", "src": "257:4:14", @@ -3182,27 +3234,27 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2655, + "scope": 2798, "src": "208:68:14", "visibility": "public" }, { "constant": false, - "id": 2462, + "id": 2602, "name": "vouchers", "nodeType": "VariableDeclaration", - "scope": 2655, + "scope": 2798, "src": "282:41:14", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data)" }, "typeName": { - "id": 2461, + "id": 2601, "keyType": { - "id": 2459, + "id": 2599, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "291:7:14", @@ -3214,18 +3266,18 @@ "nodeType": "Mapping", "src": "282:25:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data)" }, "valueType": { "contractScope": null, - "id": 2460, + "id": 2600, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, + "referencedDeclaration": 2598, "src": "302:4:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data" } } @@ -3236,20 +3288,20 @@ { "anonymous": false, "documentation": null, - "id": 2468, + "id": 2608, "name": "LogCreateVoucher", "nodeType": "EventDefinition", "parameters": { - "id": 2467, + "id": 2607, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2464, + "id": 2604, "indexed": false, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2468, + "scope": 2608, "src": "353:22:14", "stateVariable": false, "storageLocation": "default", @@ -3258,7 +3310,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2463, + "id": 2603, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "353:7:14", @@ -3272,11 +3324,11 @@ }, { "constant": false, - "id": 2466, + "id": 2606, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2468, + "scope": 2608, "src": "377:12:14", "stateVariable": false, "storageLocation": "default", @@ -3285,7 +3337,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2465, + "id": 2605, "name": "uint", "nodeType": "ElementaryTypeName", "src": "377:4:14", @@ -3305,20 +3357,20 @@ { "anonymous": false, "documentation": null, - "id": 2472, + "id": 2612, "name": "LogRemoveVoucher", "nodeType": "EventDefinition", "parameters": { - "id": 2471, + "id": 2611, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2470, + "id": 2610, "indexed": false, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2472, + "scope": 2612, "src": "419:22:14", "stateVariable": false, "storageLocation": "default", @@ -3327,7 +3379,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2469, + "id": 2609, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "419:7:14", @@ -3347,20 +3399,20 @@ { "anonymous": false, "documentation": null, - "id": 2482, + "id": 2622, "name": "LogRedeemVoucher", "nodeType": "EventDefinition", "parameters": { - "id": 2481, + "id": 2621, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2474, + "id": 2614, "indexed": false, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "471:22:14", "stateVariable": false, "storageLocation": "default", @@ -3369,7 +3421,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2473, + "id": 2613, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "471:7:14", @@ -3383,11 +3435,11 @@ }, { "constant": false, - "id": 2476, + "id": 2616, "indexed": false, "name": "_voucher", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "495:15:14", "stateVariable": false, "storageLocation": "default", @@ -3396,7 +3448,7 @@ "typeString": "string" }, "typeName": { - "id": 2475, + "id": 2615, "name": "string", "nodeType": "ElementaryTypeName", "src": "495:6:14", @@ -3410,11 +3462,11 @@ }, { "constant": false, - "id": 2478, + "id": 2618, "indexed": false, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "512:12:14", "stateVariable": false, "storageLocation": "default", @@ -3423,7 +3475,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2477, + "id": 2617, "name": "uint", "nodeType": "ElementaryTypeName", "src": "512:4:14", @@ -3437,11 +3489,11 @@ }, { "constant": false, - "id": 2480, + "id": 2620, "indexed": false, "name": "_claimant", "nodeType": "VariableDeclaration", - "scope": 2482, + "scope": 2622, "src": "526:17:14", "stateVariable": false, "storageLocation": "default", @@ -3450,7 +3502,7 @@ "typeString": "address" }, "typeName": { - "id": 2479, + "id": 2619, "name": "address", "nodeType": "ElementaryTypeName", "src": "526:7:14", @@ -3469,7 +3521,7 @@ }, { "body": { - "id": 2502, + "id": 2642, "nodeType": "Block", "src": "580:108:14", "statements": [ @@ -3483,7 +3535,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2498, + "id": 2638, "isConstant": false, "isLValue": false, "isPure": false, @@ -3497,7 +3549,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2488, + "id": 2628, "isConstant": false, "isLValue": false, "isPure": false, @@ -3506,18 +3558,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2485, + "id": 2625, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "599:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2486, + "id": 2626, "isConstant": false, "isLValue": false, "isPure": false, @@ -3535,11 +3587,11 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2487, + "id": 2627, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "613:5:14", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3553,7 +3605,7 @@ } } ], - "id": 2489, + "id": 2629, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -3577,7 +3629,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2496, + "id": 2636, "isConstant": false, "isLValue": false, "isPure": false, @@ -3586,18 +3638,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2490, + "id": 2630, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "624:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2491, + "id": 2631, "isConstant": false, "isLValue": false, "isPure": false, @@ -3619,7 +3671,7 @@ { "argumentTypes": null, "hexValue": "417661746172", - "id": 2494, + "id": 2634, "isConstant": false, "isLValue": false, "isPure": true, @@ -3644,32 +3696,32 @@ ], "expression": { "argumentTypes": null, - "id": 2492, + "id": 2632, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2453, + "referencedDeclaration": 2593, "src": "638:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2493, + "id": 2633, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, + "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": 2495, + "id": 2635, "isConstant": false, "isLValue": false, "isPure": false, @@ -3690,7 +3742,7 @@ } } ], - "id": 2497, + "id": 2637, "isConstant": false, "isInlineArray": false, "isLValue": false, @@ -3717,21 +3769,21 @@ "typeString": "bool" } ], - "id": 2484, + "id": 2624, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "590:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2499, + "id": 2639, "isConstant": false, "isLValue": false, "isPure": false, @@ -3745,23 +3797,23 @@ "typeString": "tuple()" } }, - "id": 2500, + "id": 2640, "nodeType": "ExpressionStatement", "src": "590:80:14" }, { - "id": 2501, + "id": 2641, "nodeType": "PlaceholderStatement", "src": "680:1:14" } ] }, "documentation": null, - "id": 2503, + "id": 2643, "name": "onlyOwnerOrAvatar", "nodeType": "ModifierDefinition", "parameters": { - "id": 2483, + "id": 2623, "nodeType": "ParameterList", "parameters": [], "src": "577:2:14" @@ -3771,25 +3823,25 @@ }, { "body": { - "id": 2517, + "id": 2657, "nodeType": "Block", "src": "733:65:14", "statements": [ { "expression": { "argumentTypes": null, - "id": 2511, + "id": 2651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2508, + "id": 2648, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2754, + "referencedDeclaration": 2897, "src": "743:5:14", "typeDescriptions": { "typeIdentifier": "t_address", @@ -3802,18 +3854,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2509, + "id": 2649, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, + "referencedDeclaration": 3344, "src": "751:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2510, + "id": 2650, "isConstant": false, "isLValue": false, "isPure": false, @@ -3833,28 +3885,28 @@ "typeString": "address" } }, - "id": 2512, + "id": 2652, "nodeType": "ExpressionStatement", "src": "743:18:14" }, { "expression": { "argumentTypes": null, - "id": 2515, + "id": 2655, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2513, + "id": 2653, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2453, + "referencedDeclaration": 2593, "src": "771:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3862,31 +3914,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2514, + "id": 2654, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2505, + "referencedDeclaration": 2645, "src": "782:9:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, "src": "771:20:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2516, + "id": 2656, "nodeType": "ExpressionStatement", "src": "771:20:14" } ] }, "documentation": null, - "id": 2518, + "id": 2658, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -3894,31 +3946,31 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2506, + "id": 2646, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2505, + "id": 2645, "name": "_registry", "nodeType": "VariableDeclaration", - "scope": 2518, + "scope": 2658, "src": "706:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" }, "typeName": { "contractScope": null, - "id": 2504, + "id": 2644, "name": "Registry", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1096, + "referencedDeclaration": 1156, "src": "706:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, @@ -3930,12 +3982,12 @@ }, "payable": false, "returnParameters": { - "id": 2507, + "id": 2647, "nodeType": "ParameterList", "parameters": [], "src": "733:0:14" }, - "scope": 2655, + "scope": 2798, "src": "694:104:14", "stateMutability": "nonpayable", "superFunction": null, @@ -3943,13 +3995,13 @@ }, { "body": { - "id": 2521, + "id": 2661, "nodeType": "Block", "src": "864:3:14", "statements": [] }, "documentation": null, - "id": 2522, + "id": 2662, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3957,19 +4009,19 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2519, + "id": 2659, "nodeType": "ParameterList", "parameters": [], "src": "846:2:14" }, "payable": true, "returnParameters": { - "id": 2520, + "id": 2660, "nodeType": "ParameterList", "parameters": [], "src": "864:0:14" }, - "scope": 2655, + "scope": 2798, "src": "838:29:14", "stateMutability": "payable", "superFunction": null, @@ -3977,7 +4029,7 @@ }, { "body": { - "id": 2553, + "id": 2693, "nodeType": "Block", "src": "952:155:14", "statements": [ @@ -3991,18 +4043,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2534, + "id": 2674, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2532, + "id": 2672, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2526, + "referencedDeclaration": 2666, "src": "970:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4014,7 +4066,7 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2533, + "id": 2673, "isConstant": false, "isLValue": false, "isPure": true, @@ -4043,21 +4095,21 @@ "typeString": "bool" } ], - "id": 2531, + "id": 2671, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, + "referencedDeclaration": 3347, "src": "962:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2535, + "id": 2675, "isConstant": false, "isLValue": false, "isPure": false, @@ -4071,14 +4123,14 @@ "typeString": "tuple()" } }, - "id": 2536, + "id": 2676, "nodeType": "ExpressionStatement", "src": "962:20:14" }, { "expression": { "argumentTypes": null, - "id": 2546, + "id": 2686, "isConstant": false, "isLValue": false, "isPure": false, @@ -4087,25 +4139,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2537, + "id": 2677, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, + "referencedDeclaration": 2602, "src": "992:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2539, + "id": 2679, "indexExpression": { "argumentTypes": null, - "id": 2538, + "id": 2678, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2524, + "referencedDeclaration": 2664, "src": "1001:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4119,7 +4171,7 @@ "nodeType": "IndexAccess", "src": "992:24:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, @@ -4134,7 +4186,7 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2542, + "id": 2682, "isConstant": false, "isLValue": false, "isPure": true, @@ -4157,7 +4209,7 @@ "typeString": "int_const 0" } ], - "id": 2541, + "id": 2681, "isConstant": false, "isLValue": false, "isPure": true, @@ -4170,7 +4222,7 @@ }, "typeName": "address" }, - "id": 2543, + "id": 2683, "isConstant": false, "isLValue": false, "isPure": true, @@ -4186,11 +4238,11 @@ }, { "argumentTypes": null, - "id": 2544, + "id": 2684, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2526, + "referencedDeclaration": 2666, "src": "1036:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4209,18 +4261,18 @@ "typeString": "uint256" } ], - "id": 2540, + "id": 2680, "name": "Data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2458, + "referencedDeclaration": 2598, "src": "1019:4:14", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Data_$2458_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Data_$2598_storage_ptr_$", "typeString": "type(struct Vouchers.Data storage pointer)" } }, - "id": 2545, + "id": 2685, "isConstant": false, "isLValue": false, "isPure": false, @@ -4230,17 +4282,17 @@ "nodeType": "FunctionCall", "src": "1019:25:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_memory", + "typeIdentifier": "t_struct$_Data_$2598_memory", "typeString": "struct Vouchers.Data memory" } }, "src": "992:52:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, - "id": 2547, + "id": 2687, "nodeType": "ExpressionStatement", "src": "992:52:14" }, @@ -4250,11 +4302,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2549, + "id": 2689, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2524, + "referencedDeclaration": 2664, "src": "1076:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4263,11 +4315,11 @@ }, { "argumentTypes": null, - "id": 2550, + "id": 2690, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2526, + "referencedDeclaration": 2666, "src": "1092:7:14", "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -4286,18 +4338,18 @@ "typeString": "uint256" } ], - "id": 2548, + "id": 2688, "name": "LogCreateVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2468, + "referencedDeclaration": 2608, "src": "1059:16:14", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256)" } }, - "id": 2551, + "id": 2691, "isConstant": false, "isLValue": false, "isPure": false, @@ -4311,28 +4363,28 @@ "typeString": "tuple()" } }, - "id": 2552, + "id": 2692, "nodeType": "EmitStatement", "src": "1054:46:14" } ] }, "documentation": null, - "id": 2554, + "id": 2694, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2529, + "id": 2669, "modifierName": { "argumentTypes": null, - "id": 2528, + "id": 2668, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2503, + "referencedDeclaration": 2643, "src": "934:17:14", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -4346,15 +4398,15 @@ "name": "create", "nodeType": "FunctionDefinition", "parameters": { - "id": 2527, + "id": 2667, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2524, + "id": 2664, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2554, + "scope": 2694, "src": "889:22:14", "stateVariable": false, "storageLocation": "default", @@ -4363,7 +4415,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2523, + "id": 2663, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "889:7:14", @@ -4377,10 +4429,10 @@ }, { "constant": false, - "id": 2526, + "id": 2666, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 2554, + "scope": 2694, "src": "913:12:14", "stateVariable": false, "storageLocation": "default", @@ -4389,7 +4441,7 @@ "typeString": "uint256" }, "typeName": { - "id": 2525, + "id": 2665, "name": "uint", "nodeType": "ElementaryTypeName", "src": "913:4:14", @@ -4406,12 +4458,12 @@ }, "payable": false, "returnParameters": { - "id": 2530, + "id": 2670, "nodeType": "ParameterList", "parameters": [], "src": "952:0:14" }, - "scope": 2655, + "scope": 2798, "src": "873:234:14", "stateMutability": "nonpayable", "superFunction": null, @@ -4419,14 +4471,14 @@ }, { "body": { - "id": 2570, + "id": 2710, "nodeType": "Block", "src": "1178:95:14", "statements": [ { "expression": { "argumentTypes": null, - "id": 2564, + "id": 2704, "isConstant": false, "isLValue": false, "isPure": false, @@ -4439,25 +4491,25 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2561, + "id": 2701, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, + "referencedDeclaration": 2602, "src": "1195:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2563, + "id": 2703, "indexExpression": { "argumentTypes": null, - "id": 2562, + "id": 2702, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2556, + "referencedDeclaration": 2696, "src": "1204:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4471,7 +4523,7 @@ "nodeType": "IndexAccess", "src": "1195:24:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, @@ -4480,7 +4532,7 @@ "typeString": "tuple()" } }, - "id": 2565, + "id": 2705, "nodeType": "ExpressionStatement", "src": "1188:31:14" }, @@ -4490,11 +4542,11 @@ "arguments": [ { "argumentTypes": null, - "id": 2567, + "id": 2707, "name": "_hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2556, + "referencedDeclaration": 2696, "src": "1251:14:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -4509,18 +4561,18 @@ "typeString": "bytes32" } ], - "id": 2566, + "id": 2706, "name": "LogRemoveVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2472, + "referencedDeclaration": 2612, "src": "1234:16:14", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2568, + "id": 2708, "isConstant": false, "isLValue": false, "isPure": false, @@ -4534,28 +4586,28 @@ "typeString": "tuple()" } }, - "id": 2569, + "id": 2709, "nodeType": "EmitStatement", "src": "1229:37:14" } ] }, "documentation": null, - "id": 2571, + "id": 2711, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 2559, + "id": 2699, "modifierName": { "argumentTypes": null, - "id": 2558, + "id": 2698, "name": "onlyOwnerOrAvatar", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2503, + "referencedDeclaration": 2643, "src": "1160:17:14", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", @@ -4569,15 +4621,15 @@ "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2557, + "id": 2697, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2556, + "id": 2696, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2571, + "scope": 2711, "src": "1129:22:14", "stateVariable": false, "storageLocation": "default", @@ -4586,7 +4638,7 @@ "typeString": "bytes32" }, "typeName": { - "id": 2555, + "id": 2695, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1129:7:14", @@ -4603,12 +4655,12 @@ }, "payable": false, "returnParameters": { - "id": 2560, + "id": 2700, "nodeType": "ParameterList", "parameters": [], "src": "1178:0:14" }, - "scope": 2655, + "scope": 2798, "src": "1113:160:14", "stateMutability": "nonpayable", "superFunction": null, @@ -4616,9 +4668,9 @@ }, { "body": { - "id": 2582, + "id": 2725, "nodeType": "Block", - "src": "1441:43:14", + "src": "1440:61:14", "statements": [ { "expression": { @@ -4626,37 +4678,89 @@ "arguments": [ { "argumentTypes": null, - "id": 2579, - "name": "_voucher", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "1468:8:14", + "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_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2578, + "id": 2718, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3195, - "src": "1458:9:14", + "referencedDeclaration": 3338, + "src": "1457:9:14", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2580, + "id": 2723, "isConstant": false, "isLValue": false, "isPure": false, @@ -4664,21 +4768,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1458:19:14", + "src": "1457:37:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 2577, - "id": 2581, + "functionReturnParameters": 2717, + "id": 2724, "nodeType": "Return", - "src": "1451:26:14" + "src": "1450:44:14" } ] }, "documentation": null, - "id": 2583, + "id": 2726, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4686,16 +4790,16 @@ "name": "hashVoucher", "nodeType": "FunctionDefinition", "parameters": { - "id": 2574, + "id": 2714, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2573, + "id": 2713, "name": "_voucher", "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1380:15:14", + "scope": 2726, + "src": "1379:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4703,10 +4807,10 @@ "typeString": "string" }, "typeName": { - "id": 2572, + "id": 2712, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1380:6:14", + "src": "1379:6:14", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4716,20 +4820,20 @@ "visibility": "internal" } ], - "src": "1379:17:14" + "src": "1378:17:14" }, "payable": false, "returnParameters": { - "id": 2577, + "id": 2717, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2576, + "id": 2716, "name": "_hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2583, - "src": "1417:22:14", + "scope": 2726, + "src": "1416:22:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4737,10 +4841,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2575, + "id": 2715, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1417:7:14", + "src": "1416:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4750,32 +4854,32 @@ "visibility": "internal" } ], - "src": "1416:24:14" + "src": "1415:24:14" }, - "scope": 2655, - "src": "1359:125:14", + "scope": 2798, + "src": "1358:143:14", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2653, + "id": 2796, "nodeType": "Block", - "src": "1740:672:14", + "src": "1769:672:14", "statements": [ { "assignments": [ - 2591 + 2734 ], "declarations": [ { "constant": false, - "id": 2591, + "id": 2734, "name": "hashedVoucher", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1817:21:14", + "scope": 2797, + "src": "1846:21:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4783,10 +4887,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2590, + "id": 2733, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1817:7:14", + "src": "1846:7:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4796,18 +4900,18 @@ "visibility": "internal" } ], - "id": 2595, + "id": 2738, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2593, + "id": 2736, "name": "_voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "1853:8:14", + "referencedDeclaration": 2728, + "src": "1882:8:14", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4821,18 +4925,18 @@ "typeString": "string memory" } ], - "id": 2592, + "id": 2735, "name": "hashVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2583, - "src": "1841:11:14", + "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": 2594, + "id": 2737, "isConstant": false, "isLValue": false, "isPure": false, @@ -4840,42 +4944,42 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1841:21:14", + "src": "1870:21:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "1817:45:14" + "src": "1846:45:14" }, { "assignments": [ - 2597 + 2740 ], "declarations": [ { "constant": false, - "id": 2597, + "id": 2740, "name": "voucher", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1872:20:14", + "scope": 2797, + "src": "1901:20:14", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data" }, "typeName": { "contractScope": null, - "id": 2596, + "id": 2739, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2458, - "src": "1872:4:14", + "referencedDeclaration": 2598, + "src": "1901:4:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data" } }, @@ -4883,31 +4987,31 @@ "visibility": "internal" } ], - "id": 2601, + "id": 2744, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2598, + "id": 2741, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "1895:8:14", + "referencedDeclaration": 2602, + "src": "1924:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2600, + "id": 2743, "indexExpression": { "argumentTypes": null, - "id": 2599, + "id": 2742, "name": "hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "1904:13:14", + "referencedDeclaration": 2734, + "src": "1933:13:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4918,14 +5022,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1895:23:14", + "src": "1924:23:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "1872:46:14" + "src": "1901:46:14" }, { "expression": { @@ -4937,7 +5041,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2606, + "id": 2749, "isConstant": false, "isLValue": false, "isPure": false, @@ -4946,26 +5050,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2603, + "id": 2746, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1936:7:14", + "referencedDeclaration": 2740, + "src": "1965:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2604, + "id": 2747, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_amount", "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "1936:15:14", + "referencedDeclaration": 2597, + "src": "1965:15:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4976,14 +5080,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2605, + "id": 2748, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1954:1:14", + "src": "1983:1:14", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -4991,7 +5095,7 @@ }, "value": "0" }, - "src": "1936:19:14", + "src": "1965:19:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5005,21 +5109,21 @@ "typeString": "bool" } ], - "id": 2602, + "id": 2745, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1928:7:14", + "referencedDeclaration": 3347, + "src": "1957:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2607, + "id": 2750, "isConstant": false, "isLValue": false, "isPure": false, @@ -5027,15 +5131,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1928:28:14", + "src": "1957:28:14", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2608, + "id": 2751, "nodeType": "ExpressionStatement", - "src": "1928:28:14" + "src": "1957:28:14" }, { "expression": { @@ -5047,7 +5151,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 2615, + "id": 2758, "isConstant": false, "isLValue": false, "isPure": false, @@ -5056,26 +5160,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2610, + "id": 2753, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "1974:7:14", + "referencedDeclaration": 2740, + "src": "2003:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2611, + "id": 2754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_claimant", "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "1974:17:14", + "referencedDeclaration": 2595, + "src": "2003:17:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5089,14 +5193,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 2613, + "id": 2756, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2003:1:14", + "src": "2032:1:14", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -5112,20 +5216,20 @@ "typeString": "int_const 0" } ], - "id": 2612, + "id": 2755, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1995:7:14", + "src": "2024:7:14", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 2614, + "id": 2757, "isConstant": false, "isLValue": false, "isPure": true, @@ -5133,13 +5237,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1995:10:14", + "src": "2024:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1974:31:14", + "src": "2003:31:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5153,21 +5257,21 @@ "typeString": "bool" } ], - "id": 2609, + "id": 2752, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3204, - 3205 + 3347, + 3348 ], - "referencedDeclaration": 3204, - "src": "1966:7:14", + "referencedDeclaration": 3347, + "src": "1995:7:14", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2616, + "id": 2759, "isConstant": false, "isLValue": false, "isPure": false, @@ -5175,20 +5279,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1966:40:14", + "src": "1995:40:14", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2617, + "id": 2760, "nodeType": "ExpressionStatement", - "src": "1966:40:14" + "src": "1995:40:14" }, { "expression": { "argumentTypes": null, - "id": 2624, + "id": 2767, "isConstant": false, "isLValue": false, "isPure": false, @@ -5199,26 +5303,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2618, + "id": 2761, "name": "vouchers", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2462, - "src": "2084:8:14", + "referencedDeclaration": 2602, + "src": "2113:8:14", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2458_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Data_$2598_storage_$", "typeString": "mapping(bytes32 => struct Vouchers.Data storage ref)" } }, - "id": 2620, + "id": 2763, "indexExpression": { "argumentTypes": null, - "id": 2619, + "id": 2762, "name": "hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2093:13:14", + "referencedDeclaration": 2734, + "src": "2122:13:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5229,21 +5333,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2084:23:14", + "src": "2113:23:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage", + "typeIdentifier": "t_struct$_Data_$2598_storage", "typeString": "struct Vouchers.Data storage ref" } }, - "id": 2621, + "id": 2764, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "_claimant", "nodeType": "MemberAccess", - "referencedDeclaration": 2455, - "src": "2084:33:14", + "referencedDeclaration": 2595, + "src": "2113:33:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5255,18 +5359,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2622, + "id": 2765, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2120:3:14", + "referencedDeclaration": 3344, + "src": "2149:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2623, + "id": 2766, "isConstant": false, "isLValue": false, "isPure": false, @@ -5274,49 +5378,49 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2120:10:14", + "src": "2149:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2084:46:14", + "src": "2113:46:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 2625, + "id": 2768, "nodeType": "ExpressionStatement", - "src": "2084:46:14" + "src": "2113:46:14" }, { "assignments": [ - 2627 + 2770 ], "declarations": [ { "constant": false, - "id": 2627, + "id": 2770, "name": "token", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "2196:18:14", + "scope": 2797, + "src": "2225:18:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" }, "typeName": { "contractScope": null, - "id": 2626, + "id": 2769, "name": "ParatiiToken", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 871, - "src": "2196:12:14", + "referencedDeclaration": 904, + "src": "2225:12:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, @@ -5324,7 +5428,7 @@ "visibility": "internal" } ], - "id": 2634, + "id": 2777, "initialValue": { "argumentTypes": null, "arguments": [ @@ -5334,14 +5438,14 @@ { "argumentTypes": null, "hexValue": "50617261746969546f6b656e", - "id": 2631, + "id": 2774, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2251:14:14", + "src": "2280:14:14", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_7631507f3f7bc8a54ae4ffd3c749e7cce6ebb390bbd0a742160abd113aa9ca0c", @@ -5359,32 +5463,32 @@ ], "expression": { "argumentTypes": null, - "id": 2629, + "id": 2772, "name": "registry", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2453, - "src": "2230:8:14", + "referencedDeclaration": 2593, + "src": "2259:8:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$1096", + "typeIdentifier": "t_contract$_Registry_$1156", "typeString": "contract Registry" } }, - "id": 2630, + "id": 2773, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getContract", "nodeType": "MemberAccess", - "referencedDeclaration": 983, - "src": "2230:20:14", + "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": 2632, + "id": 2775, "isConstant": false, "isLValue": false, "isPure": false, @@ -5392,7 +5496,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2230:36:14", + "src": "2259:36:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5406,18 +5510,18 @@ "typeString": "address" } ], - "id": 2628, + "id": 2771, "name": "ParatiiToken", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 871, - "src": "2217:12:14", + "referencedDeclaration": 904, + "src": "2246:12:14", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$871_$", + "typeIdentifier": "t_type$_t_contract$_ParatiiToken_$904_$", "typeString": "type(contract ParatiiToken)" } }, - "id": 2633, + "id": 2776, "isConstant": false, "isLValue": false, "isPure": false, @@ -5425,14 +5529,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2217:50:14", + "src": "2246:50:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, "nodeType": "VariableDeclarationStatement", - "src": "2196:71:14" + "src": "2225:71:14" }, { "expression": { @@ -5442,18 +5546,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2638, + "id": 2781, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2292:3:14", + "referencedDeclaration": 3344, + "src": "2321:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2639, + "id": 2782, "isConstant": false, "isLValue": false, "isPure": false, @@ -5461,7 +5565,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2292:10:14", + "src": "2321:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5471,26 +5575,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2640, + "id": 2783, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2304:7:14", + "referencedDeclaration": 2740, + "src": "2333:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2641, + "id": 2784, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_amount", "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2304:15:14", + "referencedDeclaration": 2597, + "src": "2333:15:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5510,32 +5614,32 @@ ], "expression": { "argumentTypes": null, - "id": 2635, + "id": 2778, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2627, - "src": "2277:5:14", + "referencedDeclaration": 2770, + "src": "2306:5:14", "typeDescriptions": { - "typeIdentifier": "t_contract$_ParatiiToken_$871", + "typeIdentifier": "t_contract$_ParatiiToken_$904", "typeString": "contract ParatiiToken" } }, - "id": 2637, + "id": 2780, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 2870, - "src": "2277:14:14", + "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": 2642, + "id": 2785, "isConstant": false, "isLValue": false, "isPure": false, @@ -5543,15 +5647,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2277:43:14", + "src": "2306:43:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2643, + "id": 2786, "nodeType": "ExpressionStatement", - "src": "2277:43:14" + "src": "2306:43:14" }, { "eventCall": { @@ -5559,12 +5663,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2645, + "id": 2788, "name": "hashedVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "2352:13:14", + "referencedDeclaration": 2734, + "src": "2381:13:14", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5572,12 +5676,12 @@ }, { "argumentTypes": null, - "id": 2646, + "id": 2789, "name": "_voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2585, - "src": "2367:8:14", + "referencedDeclaration": 2728, + "src": "2396:8:14", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5587,26 +5691,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2647, + "id": 2790, "name": "voucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2597, - "src": "2377:7:14", + "referencedDeclaration": 2740, + "src": "2406:7:14", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2458_storage_ptr", + "typeIdentifier": "t_struct$_Data_$2598_storage_ptr", "typeString": "struct Vouchers.Data storage pointer" } }, - "id": 2648, + "id": 2791, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "_amount", "nodeType": "MemberAccess", - "referencedDeclaration": 2457, - "src": "2377:15:14", + "referencedDeclaration": 2597, + "src": "2406:15:14", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5616,18 +5720,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2649, + "id": 2792, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3201, - "src": "2394:3:14", + "referencedDeclaration": 3344, + "src": "2423:3:14", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2650, + "id": 2793, "isConstant": false, "isLValue": false, "isPure": false, @@ -5635,7 +5739,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2394:10:14", + "src": "2423:10:14", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5661,18 +5765,18 @@ "typeString": "address" } ], - "id": 2644, + "id": 2787, "name": "LogRedeemVoucher", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2482, - "src": "2335:16:14", + "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": 2651, + "id": 2794, "isConstant": false, "isLValue": false, "isPure": false, @@ -5680,20 +5784,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2335:70:14", + "src": "2364:70:14", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2652, + "id": 2795, "nodeType": "EmitStatement", - "src": "2330:75:14" + "src": "2359:75:14" } ] }, "documentation": null, - "id": 2654, + "id": 2797, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5701,16 +5805,16 @@ "name": "redeem", "nodeType": "FunctionDefinition", "parameters": { - "id": 2586, + "id": 2729, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2585, + "id": 2728, "name": "_voucher", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1702:15:14", + "scope": 2797, + "src": "1731:15:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5718,10 +5822,10 @@ "typeString": "string" }, "typeName": { - "id": 2584, + "id": 2727, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1702:6:14", + "src": "1731:6:14", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5731,20 +5835,20 @@ "visibility": "internal" } ], - "src": "1701:17:14" + "src": "1730:17:14" }, "payable": false, "returnParameters": { - "id": 2589, + "id": 2732, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2588, + "id": 2731, "name": "", "nodeType": "VariableDeclaration", - "scope": 2654, - "src": "1734:4:14", + "scope": 2797, + "src": "1763:4:14", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5752,10 +5856,10 @@ "typeString": "bool" }, "typeName": { - "id": 2587, + "id": 2730, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1734:4:14", + "src": "1763:4:14", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5765,20 +5869,20 @@ "visibility": "internal" } ], - "src": "1733:6:14" + "src": "1762:6:14" }, - "scope": 2655, - "src": "1686:726:14", + "scope": 2798, + "src": "1715:726:14", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2656, - "src": "141:2273:14" + "scope": 2799, + "src": "141:2302:14" } ], - "src": "0:2415:14" + "src": "0:2444:14" }, "compiler": { "name": "solc", @@ -5786,5 +5890,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-07-05T11:09:36.686Z" + "updatedAt": "2018-07-14T17:23:22.065Z" } \ 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/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/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..4ce2bb3 100644 --- a/contracts/paratii/PTIDistributor.sol +++ b/contracts/paratii/PTIDistributor.sol @@ -20,11 +20,20 @@ contract PTIDistributor is Ownable { registry = _registry; } - - function distribute(address _toAddress, uint256 _amount, bytes32 _salt, string _reason, uint8 _v, bytes32 _r, bytes32 _s) public { - bytes32 message = keccak256(_toAddress, _amount, _salt, _reason); + 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(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")); @@ -32,20 +41,37 @@ 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 { - bytes32 message = keccak256(_toAddress, _amount, _salt, _reason); + function checkOwnerPacked( + 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(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); + function checkHashing(address _toAddress, uint256 _amount, bytes32 _salt, string _reason) + public + { + 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..e9284ed 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)]; - } - 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)]; - } - 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 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(_name)]; + return strings[keccak256(abi.encodePacked(_name))]; } } diff --git a/contracts/paratii/Sales.sol b/contracts/paratii/Sales.sol index d94890c..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,8 +40,10 @@ 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 { - _sales[_buyer][keccak256(_videoId)] = Data(true, _price, _ipfsData); + public + onlyOwnerOrStore + { + _sales[_buyer][keccak256(abi.encodePacked(_videoId))] = Data(true, _price, _ipfsData); emit LogCreateSale(_buyer, _videoId, _price, _ipfsData); } @@ -50,9 +51,8 @@ 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 { - delete _sales[_buyer][keccak256(_videoId)]; + function remove(address _buyer, string _videoId) public onlyOwnerOrStore { + 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..d33d91d 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,15 @@ contract Videos is Ownable { view returns(address, uint256, string, string, string, address) { - VideoInfo storage videoInfo = videos[keccak256(_videoId)]; - return (videoInfo.owner, videoInfo.price, videoInfo.ipfsHashOrig, videoInfo.ipfsHash, videoInfo.ipfsData, videoInfo.registrar); + 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..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(_voucher); + 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) */ 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"