diff --git a/contracts/0.1.2-rc.8/ARCDebug.json b/contracts/0.1.2-rc.8/ARCDebug.json new file mode 100644 index 00000000..f6451c08 --- /dev/null +++ b/contracts/0.1.2-rc.8/ARCDebug.json @@ -0,0 +1,98 @@ +{ + "contractName": "ARCDebug", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220f886d3abd89b2964b77c1e5f5ec0219cf298341e3d63a25f7302d69b0040197b64736f6c634300060c0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220f886d3abd89b2964b77c1e5f5ec0219cf298341e3d63a25f7302d69b0040197b64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ARCVotingMachineCallbacksMock.json b/contracts/0.1.2-rc.8/ARCVotingMachineCallbacksMock.json new file mode 100644 index 00000000..97063135 --- /dev/null +++ b/contracts/0.1.2-rc.8/ARCVotingMachineCallbacksMock.json @@ -0,0 +1,255 @@ +{ + "contractName": "ARCVotingMachineCallbacksMock", + "abi": [ + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_votingMachine", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "propose", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610d16806100206000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80639588378e116100715780639588378e1461017857806399882cdb146101a4578063b551c373146101c1578063bea75f28146101de578063d29b5d2f1461022e578063f81f8bf614610260576100b4565b80633edf7ca1146100b9578063485cc955146100dd5780634ea2c7ec1461010d5780635aef7de6146101275780636b8eb4031461012f5780637a5cb92c1461015b575b600080fd5b6100c1610292565b604080516001600160a01b039092168252519081900360200190f35b61010b600480360360408110156100f357600080fd5b506001600160a01b03813581169160200135166102a1565b005b6101156102cd565b60408051918252519081900360200190f35b6100c16102d3565b6101156004803603604081101561014557600080fd5b506001600160a01b0381351690602001356102e2565b6101156004803603602081101561017157600080fd5b50356103bc565b6101156004803603604081101561018e57600080fd5b506001600160a01b0381351690602001356103ce565b61010b600480360360208110156101ba57600080fd5b50356104ff565b610115600480360360208110156101d757600080fd5b5035610512565b61021a600480360360808110156101f457600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356107ae565b604080519115158252519081900360200190f35b61021a6004803603606081101561024457600080fd5b508035906001600160a01b036020820135169060400135610912565b61021a6004803603606081101561027657600080fd5b508035906001600160a01b036020820135169060400135610a6d565b6034546001600160a01b031681565b6102aa82610b93565b603480546001600160a01b0319166001600160a01b039290921691909117905550565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b0316331461033b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561038857600080fd5b505afa15801561039c573d6000803e3d6000fd5b505050506040513d60208110156103b257600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610427576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561047557600080fd5b505afa158015610489573d6000803e3d6000fd5b505050506040513d602081101561049f57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561038857600080fd5b6000908152603660205260409020439055565b60345460009082906001600160a01b0316331461056b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b957600080fd5b505afa1580156105cd573d6000803e3d6000fd5b505050506040513d60208110156105e357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561062d57600080fd5b505afa158015610641573d6000803e3d6000fd5b505050506040513d602081101561065757600080fd5b50516106aa576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106f857600080fd5b505afa15801561070c573d6000803e3d6000fd5b505050506040513d602081101561072257600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561077b57600080fd5b505afa15801561078f573d6000803e3d6000fd5b505050506040513d60208110156107a557600080fd5b50519392505050565b60345460009082906001600160a01b03163314610807576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561085557600080fd5b505afa158015610869573d6000803e3d6000fd5b505050506040513d602081101561087f57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156108dc57600080fd5b505af11580156108f0573d6000803e3d6000fd5b505050506040513d602081101561090657600080fd5b50519695505050505050565b60345460009082906001600160a01b0316331461096b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109b957600080fd5b505afa1580156109cd573d6000803e3d6000fd5b505050506040513d60208110156109e357600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015610a3857600080fd5b505af1158015610a4c573d6000803e3d6000fd5b505050506040513d6020811015610a6257600080fd5b505195945050505050565b60345460009082906001600160a01b03163314610ac6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b1457600080fd5b505afa158015610b28573d6000803e3d6000fd5b505050506040513d6020811015610b3e57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015610a3857600080fd5b600054610100900460ff1680610bac5750610bac610cac565b80610bba575060005460ff16155b610bf55760405162461bcd60e51b815260040180806020018281038252602e815260200180610cb3602e913960400191505060405180910390fd5b600054610100900460ff16158015610c20576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610c7b576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610ca8576000805461ff00191690555b5050565b303b159056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a264697066735822122033add0284ef4ed6dd58bc2b90d5c48ef9a0002e4b47ed0869053f1276aa7be0c64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100b45760003560e01c80639588378e116100715780639588378e1461017857806399882cdb146101a4578063b551c373146101c1578063bea75f28146101de578063d29b5d2f1461022e578063f81f8bf614610260576100b4565b80633edf7ca1146100b9578063485cc955146100dd5780634ea2c7ec1461010d5780635aef7de6146101275780636b8eb4031461012f5780637a5cb92c1461015b575b600080fd5b6100c1610292565b604080516001600160a01b039092168252519081900360200190f35b61010b600480360360408110156100f357600080fd5b506001600160a01b03813581169160200135166102a1565b005b6101156102cd565b60408051918252519081900360200190f35b6100c16102d3565b6101156004803603604081101561014557600080fd5b506001600160a01b0381351690602001356102e2565b6101156004803603602081101561017157600080fd5b50356103bc565b6101156004803603604081101561018e57600080fd5b506001600160a01b0381351690602001356103ce565b61010b600480360360208110156101ba57600080fd5b50356104ff565b610115600480360360208110156101d757600080fd5b5035610512565b61021a600480360360808110156101f457600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356107ae565b604080519115158252519081900360200190f35b61021a6004803603606081101561024457600080fd5b508035906001600160a01b036020820135169060400135610912565b61021a6004803603606081101561027657600080fd5b508035906001600160a01b036020820135169060400135610a6d565b6034546001600160a01b031681565b6102aa82610b93565b603480546001600160a01b0319166001600160a01b039290921691909117905550565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b0316331461033b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561038857600080fd5b505afa15801561039c573d6000803e3d6000fd5b505050506040513d60208110156103b257600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610427576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561047557600080fd5b505afa158015610489573d6000803e3d6000fd5b505050506040513d602081101561049f57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561038857600080fd5b6000908152603660205260409020439055565b60345460009082906001600160a01b0316331461056b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105b957600080fd5b505afa1580156105cd573d6000803e3d6000fd5b505050506040513d60208110156105e357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561062d57600080fd5b505afa158015610641573d6000803e3d6000fd5b505050506040513d602081101561065757600080fd5b50516106aa576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106f857600080fd5b505afa15801561070c573d6000803e3d6000fd5b505050506040513d602081101561072257600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561077b57600080fd5b505afa15801561078f573d6000803e3d6000fd5b505050506040513d60208110156107a557600080fd5b50519392505050565b60345460009082906001600160a01b03163314610807576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561085557600080fd5b505afa158015610869573d6000803e3d6000fd5b505050506040513d602081101561087f57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156108dc57600080fd5b505af11580156108f0573d6000803e3d6000fd5b505050506040513d602081101561090657600080fd5b50519695505050505050565b60345460009082906001600160a01b0316331461096b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109b957600080fd5b505afa1580156109cd573d6000803e3d6000fd5b505050506040513d60208110156109e357600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015610a3857600080fd5b505af1158015610a4c573d6000803e3d6000fd5b505050506040513d6020811015610a6257600080fd5b505195945050505050565b60345460009082906001600160a01b03163314610ac6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b1457600080fd5b505afa158015610b28573d6000803e3d6000fd5b505050506040513d6020811015610b3e57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015610a3857600080fd5b600054610100900460ff1680610bac5750610bac610cac565b80610bba575060005460ff16155b610bf55760405162461bcd60e51b815260040180806020018281038252602e815260200180610cb3602e913960400191505060405180910390fd5b600054610100900460ff16158015610c20576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610c7b576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610ca8576000805461ff00191690555b5050565b303b159056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a264697066735822122033add0284ef4ed6dd58bc2b90d5c48ef9a0002e4b47ed0869053f1276aa7be0c64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/AbsoluteVote.json b/contracts/0.1.2-rc.8/AbsoluteVote.json new file mode 100644 index 00000000..a953a58a --- /dev/null +++ b/contracts/0.1.2-rc.8/AbsoluteVote.json @@ -0,0 +1,558 @@ +{ + "contractName": "AbsoluteVote", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_isProxyVote", + "type": "bool" + } + ], + "name": "AVVoteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "open", + "type": "bool" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "uint256", + "name": "numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalVotes", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "voteInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611399806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b031661050a565b6102226004803603602081101561021b57600080fd5b5035610549565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610589565b604080519115158252519081900360200190f35b61017a6106c9565b6102956106d1565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106d6565b61019b610961565b6103186004803603602081101561031157600080fd5b5035610966565b005b61019b6004803603602081101561033057600080fd5b50356109d7565b61019b6004803603604081101561034d57600080fd5b50803590602001356109ec565b6103776004803603602081101561037057600080fd5b5035610a0d565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a28565b610295600480360360208110156103c657600080fd5b5035610a41565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112b9565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b6104aa576040805162461bcd60e51b815260206004820152601860248201527f5f70726563526571206973206f7574206f662072616e67650000000000000000604482015290519081900360640190fd5b60006104b6848461050a565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105eb576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206106016112d3565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106ad5781602001516001600160a01b0316336001600160a01b0316146106a6576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b50846106b0565b50335b6106bc89828a8a610ab5565b9998505050505050505050565b6000600a9091565b600190565b60008381526020819052604081205461072d576040805162461bcd60e51b81526020600482015260146024820152731c185c985b595d195c9cc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60008511801561073e5750600a8511155b6107795760405162461bcd60e51b81526004018080602001828103825260218152602001806113206021913960400191505060405180910390fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b8906001610d8e565b6003556107c36112ea565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f4576001600160a01b0384166108ca578051600090815260026020526040902080546001600160a01b031916331790556108f4565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c9576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d38233610def565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa3576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aac83610ee8565b91505b50919050565b60008481526001602052604081206002810154841115610b1c576040805162461bcd60e51b815260206004820152601960248201527f766f74696e672076616c7565206973206e6f742076616c696400000000000000604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7a57600080fd5b505afa158015610b8e573d6000803e3d6000fd5b505050506040513d6020811015610ba457600080fd5b5051905080610bfa576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c395760405162461bcd60e51b81526004018080602001828103825260238152602001806113416023913960400191505060405180910390fd5b8380610c425750805b6001600160a01b038716600090815260068401602052604090206001015415610c6f57610c6f8888610def565b6000868152600584016020526040902054610c8b908290610d8e565b60008781526005850160205260409020556004830154610cac908290610d8e565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8288610ee8565b98975050505050505050565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e056112b9565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e549190611172565b815160009081526005840160209081526040909120919091558101516004830154610e7e91611172565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f4a576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d6020811015610fd257600080fd5b505160038301546000908152602081905260408120549192505b83600201548111611165576000818152600585016020526040902054606484048302101561115d5761101c6112ea565b506040805160c08101825285548152600186015460ff81161515602083015261010090046001600160a01b0316918101919091526002850154606082015260038501546080820152600485015460a0820152611077886111b4565b805160009081526002602090815260409182902054825185815291820187905282516001600160a01b03909116928b927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d89846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d602081101561114e57600080fd5b50519650610aaf945050505050565b600101610fec565b5060009695505050505050565b6000610de883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611222565b6000818152600160205260408120905b816002015481116111e85760008181526005830160205260408120556001016111c4565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112b15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561127657818101518382015260200161125e565b50505050905090810190601f1680156112a35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe6e756d626572206f662063686f69636573206973206f7574206f662072616e676563616e6e6f7420766f74652077697468206d6f72652072657020766f74657220686173a2646970667358221220a50ff17d790c9d188cbcf57d84e294bc2e05dcc59e24a3a75070322ad33a10f964736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b031661050a565b6102226004803603602081101561021b57600080fd5b5035610549565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610589565b604080519115158252519081900360200190f35b61017a6106c9565b6102956106d1565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106d6565b61019b610961565b6103186004803603602081101561031157600080fd5b5035610966565b005b61019b6004803603602081101561033057600080fd5b50356109d7565b61019b6004803603604081101561034d57600080fd5b50803590602001356109ec565b6103776004803603602081101561037057600080fd5b5035610a0d565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a28565b610295600480360360208110156103c657600080fd5b5035610a41565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112b9565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b6104aa576040805162461bcd60e51b815260206004820152601860248201527f5f70726563526571206973206f7574206f662072616e67650000000000000000604482015290519081900360640190fd5b60006104b6848461050a565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105eb576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206106016112d3565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106ad5781602001516001600160a01b0316336001600160a01b0316146106a6576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b50846106b0565b50335b6106bc89828a8a610ab5565b9998505050505050505050565b6000600a9091565b600190565b60008381526020819052604081205461072d576040805162461bcd60e51b81526020600482015260146024820152731c185c985b595d195c9cc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60008511801561073e5750600a8511155b6107795760405162461bcd60e51b81526004018080602001828103825260218152602001806113206021913960400191505060405180910390fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b8906001610d8e565b6003556107c36112ea565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f4576001600160a01b0384166108ca578051600090815260026020526040902080546001600160a01b031916331790556108f4565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c9576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d38233610def565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa3576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aac83610ee8565b91505b50919050565b60008481526001602052604081206002810154841115610b1c576040805162461bcd60e51b815260206004820152601960248201527f766f74696e672076616c7565206973206e6f742076616c696400000000000000604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7a57600080fd5b505afa158015610b8e573d6000803e3d6000fd5b505050506040513d6020811015610ba457600080fd5b5051905080610bfa576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c395760405162461bcd60e51b81526004018080602001828103825260238152602001806113416023913960400191505060405180910390fd5b8380610c425750805b6001600160a01b038716600090815260068401602052604090206001015415610c6f57610c6f8888610def565b6000868152600584016020526040902054610c8b908290610d8e565b60008781526005850160205260409020556004830154610cac908290610d8e565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8288610ee8565b98975050505050505050565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e056112b9565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e549190611172565b815160009081526005840160209081526040909120919091558101516004830154610e7e91611172565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f4a576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d6020811015610fd257600080fd5b505160038301546000908152602081905260408120549192505b83600201548111611165576000818152600585016020526040902054606484048302101561115d5761101c6112ea565b506040805160c08101825285548152600186015460ff81161515602083015261010090046001600160a01b0316918101919091526002850154606082015260038501546080820152600485015460a0820152611077886111b4565b805160009081526002602090815260409182902054825185815291820187905282516001600160a01b03909116928b927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d89846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d602081101561114e57600080fd5b50519650610aaf945050505050565b600101610fec565b5060009695505050505050565b6000610de883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611222565b6000818152600160205260408120905b816002015481116111e85760008181526005830160205260408120556001016111c4565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112b15760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561127657818101518382015260200161125e565b50505050905090810190601f1680156112a35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe6e756d626572206f662063686f69636573206973206f7574206f662072616e676563616e6e6f7420766f74652077697468206d6f72652072657020766f74657220686173a2646970667358221220a50ff17d790c9d188cbcf57d84e294bc2e05dcc59e24a3a75070322ad33a10f964736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/AbsoluteVoteExecuteMock.json b/contracts/0.1.2-rc.8/AbsoluteVoteExecuteMock.json new file mode 100644 index 00000000..50ed4850 --- /dev/null +++ b/contracts/0.1.2-rc.8/AbsoluteVoteExecuteMock.json @@ -0,0 +1,520 @@ +{ + "contractName": "AbsoluteVoteExecuteMock", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "absoluteVote", + "outputs": [ + { + "internalType": "contract AbsoluteVote", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputationTest", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Reputation", + "name": "_reputation", + "type": "address" + }, + { + "internalType": "contract AbsoluteVote", + "name": "_absoluteVote", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumbers", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "setProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610d94806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80639d4c162d116100a2578063c52164c611610071578063c52164c614610301578063d1c7565014610309578063d29b5d2f14610326578063f2fde38b14610358578063f81f8bf61461037e5761010b565b80639d4c162d14610253578063abcc9cb914610276578063b551c373146102a8578063bea75f28146102c55761010b565b806370a53748116100de57806370a53748146101e6578063715018a6146102175780638da5cb5b1461021f5780639588378e146102275761010b565b80630905c9f914610110578063485cc955146101665780634b6d4400146101965780636b8eb403146101ba575b600080fd5b610154600480360360a081101561012657600080fd5b508035906020810135906001600160a01b0360408201358116916060810135821691608090910135166103b0565b60408051918252519081900360200190f35b6101946004803603604081101561017c57600080fd5b506001600160a01b038135811691602001351661045e565b005b61019e610543565b604080516001600160a01b039092168252519081900360200190f35b610154600480360360408110156101d057600080fd5b506001600160a01b038135169060200135610552565b610203600480360360208110156101fc57600080fd5b50356105d4565b604080519115158252519081900360200190f35b6101946105e8565b61019e61068a565b6101546004803603604081101561023d57600080fd5b506001600160a01b038135169060200135610699565b6102036004803603604081101561026957600080fd5b50803590602001356106fb565b6102036004803603606081101561028c57600080fd5b508035906001600160a01b03602082013516906040013561076d565b610154600480360360208110156102be57600080fd5b50356107fa565b610203600480360360808110156102db57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610886565b61019e61096c565b6101546004803603602081101561031f57600080fd5b503561097b565b6102036004803603606081101561033c57600080fd5b508035906001600160a01b03602082013516906040013561098d565b6101946004803603602081101561036e57600080fd5b50356001600160a01b0316610a3d565b6102036004803603606081101561039457600080fd5b508035906001600160a01b036020820135169060400135610b36565b60985460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b15801561041657600080fd5b505af115801561042a573d6000803e3d6000fd5b505050506040513d602081101561044057600080fd5b50516000818152609960205260409020439055979650505050505050565b600054610100900460ff16806104775750610477610be6565b80610485575060005460ff16155b6104c05760405162461bcd60e51b815260040180806020018281038252602e815260200180610d31602e913960400191505060405180910390fd5b600054610100900460ff161580156104eb576000805460ff1961ff0019909116610100171660011790555b609780546001600160a01b038086166001600160a01b0319928316179092556098805492851692909116919091179055610523610bec565b61052c82610a3d565b801561053e576000805461ff00191690555b505050565b6098546001600160a01b031681565b6000826001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b1580156105a157600080fd5b505afa1580156105b5573d6000803e3d6000fd5b505050506040513d60208110156105cb57600080fd5b50519392505050565b600090815260996020526040812043905590565b6105f0610ce6565b6065546001600160a01b03908116911614610640576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b609754600082815260996020908152604080832054815163277166bf60e11b81526001600160a01b0388811660048301526024820192909252915193941692634ee2cd7e92604480840193919291829003018186803b1580156105a157600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60975460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b1580156107c657600080fd5b505af11580156107da573d6000803e3d6000fd5b505050506040513d60208110156107f057600080fd5b5051949350505050565b6097546000828152609960209081526040808320548151630981b24d60e41b81526004810191909152905192936001600160a01b03169263981b24d092602480840193919291829003018186803b15801561085457600080fd5b505afa158015610868573d6000803e3d6000fd5b505050506040513d602081101561087e57600080fd5b505192915050565b6000610890610ce6565b6065546001600160a01b039081169116146108e0576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b505050506040513d602081101561096157600080fd5b505195945050505050565b6097546001600160a01b031681565b60996020526000908152604090205481565b6000610997610ce6565b6065546001600160a01b039081169116146109e7576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b609754604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b1580156107c657600080fd5b610a45610ce6565b6065546001600160a01b03908116911614610a95576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b6001600160a01b038116610ada5760405162461bcd60e51b8152600401808060200182810382526026815260200180610ceb6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b40610ce6565b6065546001600160a01b03908116911614610b90576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b60975460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b1580156107c657600080fd5b303b1590565b600054610100900460ff1680610c055750610c05610be6565b80610c13575060005460ff16155b610c4e5760405162461bcd60e51b815260040180806020018281038252602e815260200180610d31602e913960400191505060405180910390fd5b600054610100900460ff16158015610c79576000805460ff1961ff0019909116610100171660011790555b6000610c83610ce6565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610ce3576000805461ff00191690555b50565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212201a07abb58f5f5cdcd88a1010ab967826c7da62876a25548abb52b68e5048879c64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80639d4c162d116100a2578063c52164c611610071578063c52164c614610301578063d1c7565014610309578063d29b5d2f14610326578063f2fde38b14610358578063f81f8bf61461037e5761010b565b80639d4c162d14610253578063abcc9cb914610276578063b551c373146102a8578063bea75f28146102c55761010b565b806370a53748116100de57806370a53748146101e6578063715018a6146102175780638da5cb5b1461021f5780639588378e146102275761010b565b80630905c9f914610110578063485cc955146101665780634b6d4400146101965780636b8eb403146101ba575b600080fd5b610154600480360360a081101561012657600080fd5b508035906020810135906001600160a01b0360408201358116916060810135821691608090910135166103b0565b60408051918252519081900360200190f35b6101946004803603604081101561017c57600080fd5b506001600160a01b038135811691602001351661045e565b005b61019e610543565b604080516001600160a01b039092168252519081900360200190f35b610154600480360360408110156101d057600080fd5b506001600160a01b038135169060200135610552565b610203600480360360208110156101fc57600080fd5b50356105d4565b604080519115158252519081900360200190f35b6101946105e8565b61019e61068a565b6101546004803603604081101561023d57600080fd5b506001600160a01b038135169060200135610699565b6102036004803603604081101561026957600080fd5b50803590602001356106fb565b6102036004803603606081101561028c57600080fd5b508035906001600160a01b03602082013516906040013561076d565b610154600480360360208110156102be57600080fd5b50356107fa565b610203600480360360808110156102db57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610886565b61019e61096c565b6101546004803603602081101561031f57600080fd5b503561097b565b6102036004803603606081101561033c57600080fd5b508035906001600160a01b03602082013516906040013561098d565b6101946004803603602081101561036e57600080fd5b50356001600160a01b0316610a3d565b6102036004803603606081101561039457600080fd5b508035906001600160a01b036020820135169060400135610b36565b60985460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b15801561041657600080fd5b505af115801561042a573d6000803e3d6000fd5b505050506040513d602081101561044057600080fd5b50516000818152609960205260409020439055979650505050505050565b600054610100900460ff16806104775750610477610be6565b80610485575060005460ff16155b6104c05760405162461bcd60e51b815260040180806020018281038252602e815260200180610d31602e913960400191505060405180910390fd5b600054610100900460ff161580156104eb576000805460ff1961ff0019909116610100171660011790555b609780546001600160a01b038086166001600160a01b0319928316179092556098805492851692909116919091179055610523610bec565b61052c82610a3d565b801561053e576000805461ff00191690555b505050565b6098546001600160a01b031681565b6000826001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b1580156105a157600080fd5b505afa1580156105b5573d6000803e3d6000fd5b505050506040513d60208110156105cb57600080fd5b50519392505050565b600090815260996020526040812043905590565b6105f0610ce6565b6065546001600160a01b03908116911614610640576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b609754600082815260996020908152604080832054815163277166bf60e11b81526001600160a01b0388811660048301526024820192909252915193941692634ee2cd7e92604480840193919291829003018186803b1580156105a157600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60975460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b1580156107c657600080fd5b505af11580156107da573d6000803e3d6000fd5b505050506040513d60208110156107f057600080fd5b5051949350505050565b6097546000828152609960209081526040808320548151630981b24d60e41b81526004810191909152905192936001600160a01b03169263981b24d092602480840193919291829003018186803b15801561085457600080fd5b505afa158015610868573d6000803e3d6000fd5b505050506040513d602081101561087e57600080fd5b505192915050565b6000610890610ce6565b6065546001600160a01b039081169116146108e0576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561093757600080fd5b505af115801561094b573d6000803e3d6000fd5b505050506040513d602081101561096157600080fd5b505195945050505050565b6097546001600160a01b031681565b60996020526000908152604090205481565b6000610997610ce6565b6065546001600160a01b039081169116146109e7576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b609754604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b1580156107c657600080fd5b610a45610ce6565b6065546001600160a01b03908116911614610a95576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b6001600160a01b038116610ada5760405162461bcd60e51b8152600401808060200182810382526026815260200180610ceb6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b40610ce6565b6065546001600160a01b03908116911614610b90576040805162461bcd60e51b81526020600482018190526024820152600080516020610d11833981519152604482015290519081900360640190fd5b60975460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b1580156107c657600080fd5b303b1590565b600054610100900460ff1680610c055750610c05610be6565b80610c13575060005460ff16155b610c4e5760405162461bcd60e51b815260040180806020018281038252602e815260200180610d31602e913960400191505060405180910390fd5b600054610100900460ff16158015610c79576000805460ff1961ff0019909116610100171660011790555b6000610c83610ce6565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610ce3576000805461ff00191690555b50565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212201a07abb58f5f5cdcd88a1010ab967826c7da62876a25548abb52b68e5048879c64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ActionMock.json b/contracts/0.1.2-rc.8/ActionMock.json new file mode 100644 index 00000000..3bdbb023 --- /dev/null +++ b/contracts/0.1.2-rc.8/ActionMock.json @@ -0,0 +1,150 @@ +{ + "contractName": "ActionMock", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ReceiveEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "WithoutReturnValue", + "type": "event" + }, + { + "inputs": [], + "name": "activationTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "sendTo", + "type": "address" + } + ], + "name": "close", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_activationTime", + "type": "uint256" + } + ], + "name": "setActivationTime", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_a", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_b", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_c", + "type": "bytes32" + } + ], + "name": "test", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "test2", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "test3", + "outputs": [], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "withoutReturnValue", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610419806100206000396000f3fe6080604052600436106100745760003560e01c8063b11bead41161004e578063b11bead41461012a578063c74073a114610164578063da4493f614610197578063f3e8dcd0146101be576100b1565b80630a8e8e01146100b65780630db12fad146100cd5780637c5486a214610100576100b1565b366100b15760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b3480156100c257600080fd5b506100cb6101f0565b005b3480156100d957600080fd5b506100cb600480360360208110156100f057600080fd5b50356001600160a01b0316610232565b34801561010c57600080fd5b506100cb6004803603602081101561012357600080fd5b50356102b8565b6101506004803603602081101561014057600080fd5b50356001600160a01b03166102bd565b604080519115158252519081900360200190f35b34801561017057600080fd5b506100cb6004803603602081101561018757600080fd5b50356001600160a01b031661030e565b3480156101a357600080fd5b506101ac61031a565b60408051918252519081900360200190f35b6101ac600480360360608110156101d457600080fd5b508035906001600160a01b036020820135169060400135610320565b60005442116102305760405162461bcd60e51b815260040180806020018281038252602e815260200180610395602e913960400191505060405180910390fd5b565b336001600160a01b038216146102795760405162461bcd60e51b81526004018080602001828103825260218152602001806103c36021913960400191505060405180910390fd5b604080516001600160a01b038316815290517f296b3ab69f08b831e3eba781baef82f44885a5d62be6e22903cc9416d47812779181900360200190a150565b600055565b6000336001600160a01b038316146103065760405162461bcd60e51b81526004018080602001828103825260218152602001806103c36021913960400191505060405180910390fd5b506001919050565b806001600160a01b0316ff5b60005481565b60008360071461032f57600080fd5b6001600160a01b038316301461034457600080fd5b61048d60f21b821461035557600080fd5b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a25050506002029056fe6e6f772073686f756c642062652067726561746572207468616e207468652061637469766174696f6e2074696d657468652063616c6c6572206d75737420626520657175616c20746f205f61646472a26469706673582212201c2ba73996fd882259eb5c658ff423c3838738a89e575b659b7b4e4d3a61d34b64736f6c634300060c0033", + "deployedBytecode": "0x6080604052600436106100745760003560e01c8063b11bead41161004e578063b11bead41461012a578063c74073a114610164578063da4493f614610197578063f3e8dcd0146101be576100b1565b80630a8e8e01146100b65780630db12fad146100cd5780637c5486a214610100576100b1565b366100b15760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b3480156100c257600080fd5b506100cb6101f0565b005b3480156100d957600080fd5b506100cb600480360360208110156100f057600080fd5b50356001600160a01b0316610232565b34801561010c57600080fd5b506100cb6004803603602081101561012357600080fd5b50356102b8565b6101506004803603602081101561014057600080fd5b50356001600160a01b03166102bd565b604080519115158252519081900360200190f35b34801561017057600080fd5b506100cb6004803603602081101561018757600080fd5b50356001600160a01b031661030e565b3480156101a357600080fd5b506101ac61031a565b60408051918252519081900360200190f35b6101ac600480360360608110156101d457600080fd5b508035906001600160a01b036020820135169060400135610320565b60005442116102305760405162461bcd60e51b815260040180806020018281038252602e815260200180610395602e913960400191505060405180910390fd5b565b336001600160a01b038216146102795760405162461bcd60e51b81526004018080602001828103825260218152602001806103c36021913960400191505060405180910390fd5b604080516001600160a01b038316815290517f296b3ab69f08b831e3eba781baef82f44885a5d62be6e22903cc9416d47812779181900360200190a150565b600055565b6000336001600160a01b038316146103065760405162461bcd60e51b81526004018080602001828103825260218152602001806103c36021913960400191505060405180910390fd5b506001919050565b806001600160a01b0316ff5b60005481565b60008360071461032f57600080fd5b6001600160a01b038316301461034457600080fd5b61048d60f21b821461035557600080fd5b60408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a25050506002029056fe6e6f772073686f756c642062652067726561746572207468616e207468652061637469766174696f6e2074696d657468652063616c6c6572206d75737420626520657175616c20746f205f61646472a26469706673582212201c2ba73996fd882259eb5c658ff423c3838738a89e575b659b7b4e4d3a61d34b64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Address.json b/contracts/0.1.2-rc.8/Address.json new file mode 100644 index 00000000..2cc38f29 --- /dev/null +++ b/contracts/0.1.2-rc.8/Address.json @@ -0,0 +1,6 @@ +{ + "contractName": "Address", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208a776560f4e657cf493be629670e0e60c8d432cdceb87f8467a45347888fa91264736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208a776560f4e657cf493be629670e0e60c8d432cdceb87f8467a45347888fa91264736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/AdminUpgradeabilityProxy.json b/contracts/0.1.2-rc.8/AdminUpgradeabilityProxy.json new file mode 100644 index 00000000..cce19e1a --- /dev/null +++ b/contracts/0.1.2-rc.8/AdminUpgradeabilityProxy.json @@ -0,0 +1,138 @@ +{ + "contractName": "AdminUpgradeabilityProxy", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_logic", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "previousAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "changeAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeToAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x60806040526040516108d23803806108d28339818101604052606081101561002657600080fd5b8151602083015160408085018051915193959294830192918464010000000082111561005157600080fd5b90830190602082018581111561006657600080fd5b825164010000000081118282018810171561008057600080fd5b82525081516020918201929091019080838360005b838110156100ad578181015183820152602001610095565b50505050905090810190601f1680156100da5780820380516001836020036101000a031916815260200191505b50604052508491508290506100ee826101bf565b8051156101a6576000826001600160a01b0316826040518082805190602001908083835b602083106101315780518252601f199092019160209182019101610112565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610191576040519150601f19603f3d011682016040523d82523d6000602084013e610196565b606091505b50509050806101a457600080fd5b505b506101ae9050565b6101b782610231565b50505061025b565b6101d28161025560201b6103b41760201c565b61020d5760405162461bcd60e51b815260040180806020018281038252603b815260200180610897603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b3b151590565b61062d8061026a6000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996103ba565b6101a96101a461041a565b61043f565b565b6101b3610463565b6001600160a01b0316336001600160a01b031614156101da576101d581610488565b6101e2565b6101e2610191565b50565b6101ed610463565b6001600160a01b0316336001600160a01b031614156102855761020f83610488565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd61041a565b90506102cc565b6102cc610191565b90565b6102d7610463565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806105876036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e610463565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d5816104c8565b6000610393610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd610463565b3b151590565b6103c2610463565b6001600160a01b0316336001600160a01b031614156104125760405162461bcd60e51b81526004018080602001828103825260328152602001806105556032913960400191505060405180910390fd5b6101a96101a9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e80801561045e573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610491816104ec565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6104f5816103b4565b6105305760405162461bcd60e51b815260040180806020018281038252603b8152602001806105bd603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203ca74514dac320135b43e4097015fc2191283471651cff1fc022edd468f3874764736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373", + "deployedBytecode": "0x60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996103ba565b6101a96101a461041a565b61043f565b565b6101b3610463565b6001600160a01b0316336001600160a01b031614156101da576101d581610488565b6101e2565b6101e2610191565b50565b6101ed610463565b6001600160a01b0316336001600160a01b031614156102855761020f83610488565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd61041a565b90506102cc565b6102cc610191565b90565b6102d7610463565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806105876036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e610463565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d5816104c8565b6000610393610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd610463565b3b151590565b6103c2610463565b6001600160a01b0316336001600160a01b031614156104125760405162461bcd60e51b81526004018080602001828103825260328152602001806105556032913960400191505060405180910390fd5b6101a96101a9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e80801561045e573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610491816104ec565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6104f5816103b4565b6105305760405162461bcd60e51b815260040180806020018281038252603b8152602001806105bd603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203ca74514dac320135b43e4097015fc2191283471651cff1fc022edd468f3874764736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Agreement.json b/contracts/0.1.2-rc.8/Agreement.json new file mode 100644 index 00000000..7b8ef004 --- /dev/null +++ b/contracts/0.1.2-rc.8/Agreement.json @@ -0,0 +1,20 @@ +{ + "contractName": "Agreement", + "abi": [ + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b5060818061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063696da92114602d575b600080fd5b60336045565b60408051918252519081900360200190f35b6000549056fea26469706673582212207de483307c86d582270dece3b916a2641e8037646686e8f1ac4c9d9329827ce464736f6c634300060c0033", + "deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060285760003560e01c8063696da92114602d575b600080fd5b60336045565b60408051918252519081900360200190f35b6000549056fea26469706673582212207de483307c86d582270dece3b916a2641e8037646686e8f1ac4c9d9329827ce464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/AgreementMock.json b/contracts/0.1.2-rc.8/AgreementMock.json new file mode 100644 index 00000000..457916da --- /dev/null +++ b/contracts/0.1.2-rc.8/AgreementMock.json @@ -0,0 +1,52 @@ +{ + "contractName": "AgreementMock", + "abi": [ + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "setAgreementHashTest", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "test", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506101c6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063696da9211461004657806398d3642e14610060578063993723211461007f575b600080fd5b61004e6100b0565b60408051918252519081900360200190f35b61007d6004803603602081101561007657600080fd5b50356100b6565b005b61009c6004803603602081101561009557600080fd5b50356100c2565b604080519115158252519081900360200190f35b60005490565b6100bf8161010e565b50565b60008160005481146101055760405162461bcd60e51b81526004018080602001828103825260288152602001806101696028913960400191505060405180910390fd5b50600192915050565b60005415610163576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b60005556fe53656e646572206d7573742073656e64207468652072696768742061677265656d656e7448617368a264697066735822122090a13eb46d3ab1e1fb68d7e8b609eda73495d3ddf12f7093e0d75b5aaf3527d464736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063696da9211461004657806398d3642e14610060578063993723211461007f575b600080fd5b61004e6100b0565b60408051918252519081900360200190f35b61007d6004803603602081101561007657600080fd5b50356100b6565b005b61009c6004803603602081101561009557600080fd5b50356100c2565b604080519115158252519081900360200190f35b60005490565b6100bf8161010e565b50565b60008160005481146101055760405162461bcd60e51b81526004018080602001828103825260288152602001806101696028913960400191505060405180910390fd5b50600192915050565b60005415610163576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b60005556fe53656e646572206d7573742073656e64207468652072696768742061677265656d656e7448617368a264697066735822122090a13eb46d3ab1e1fb68d7e8b609eda73495d3ddf12f7093e0d75b5aaf3527d464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/App.json b/contracts/0.1.2-rc.8/App.json new file mode 100644 index 00000000..ef6e3e30 --- /dev/null +++ b/contracts/0.1.2-rc.8/App.json @@ -0,0 +1,247 @@ +{ + "contractName": "App", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "providerName", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "package", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64[3]", + "name": "version", + "type": "uint64[3]" + } + ], + "name": "PackageChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "proxy", + "type": "address" + } + ], + "name": "ProxyCreated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "packageName", + "type": "string" + }, + { + "internalType": "string", + "name": "contractName", + "type": "string" + }, + { + "internalType": "address", + "name": "admin", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "create", + "outputs": [ + { + "internalType": "contract AdminUpgradeabilityProxy", + "name": "", + "type": "address" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "packageName", + "type": "string" + }, + { + "internalType": "string", + "name": "contractName", + "type": "string" + } + ], + "name": "getImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "packageName", + "type": "string" + } + ], + "name": "getPackage", + "outputs": [ + { + "internalType": "contract Package", + "name": "", + "type": "address" + }, + { + "internalType": "uint64[3]", + "name": "", + "type": "uint64[3]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "packageName", + "type": "string" + } + ], + "name": "getProvider", + "outputs": [ + { + "internalType": "contract ImplementationProvider", + "name": "provider", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "packageName", + "type": "string" + }, + { + "internalType": "contract Package", + "name": "package", + "type": "address" + }, + { + "internalType": "uint64[3]", + "name": "version", + "type": "uint64[3]" + } + ], + "name": "setPackage", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "packageName", + "type": "string" + } + ], + "name": "unsetPackage", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50600080546001600160a01b03191633178082556040516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3611c5d806100696000396000f3fe6080604052600436106200009e5760003560e01c80638da5cb5b11620000615780638da5cb5b14620004c95780638f32d59b14620004e1578063ad358d99146200050d578063cd3e318a14620005c5578063f2fde38b1462000790576200009e565b806327a0d66914620000a357806350cadc8514620001ff578063715018a614620002b757806371eb64cc14620002d157806387c6048314620003c7575b600080fd5b348015620000b057600080fd5b50620001e360048036036040811015620000c957600080fd5b810190602081018135600160201b811115620000e457600080fd5b820183602082011115620000f757600080fd5b803590602001918460018302840111600160201b831117156200011957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156200016c57600080fd5b8201836020820111156200017f57600080fd5b803590602001918460018302840111600160201b83111715620001a157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550620007c7945050505050565b604080516001600160a01b039092168252519081900360200190f35b3480156200020c57600080fd5b50620001e3600480360360208110156200022557600080fd5b810190602081018135600160201b8111156200024057600080fd5b8201836020820111156200025357600080fd5b803590602001918460018302840111600160201b831117156200027557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550620008d1945050505050565b348015620002c457600080fd5b50620002cf62000a24565b005b348015620002de57600080fd5b50620002cf600480360360a0811015620002f757600080fd5b810190602081018135600160201b8111156200031257600080fd5b8201836020820111156200032557600080fd5b803590602001918460018302840111600160201b831117156200034757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051606081810190925293966001600160a01b038635169690959094608082019450925060200190600390839083908082843760009201919091525091945062000a829350505050565b348015620003d457600080fd5b506200047f60048036036020811015620003ed57600080fd5b810190602081018135600160201b8111156200040857600080fd5b8201836020820111156200041b57600080fd5b803590602001918460018302840111600160201b831117156200043d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955062000d02945050505050565b6040516001600160a01b03831681526020810182606080838360005b83811015620004b55781810151838201526020016200049b565b505050509050019250505060405180910390f35b348015620004d657600080fd5b50620001e362000df0565b348015620004ee57600080fd5b50620004f962000dff565b604080519115158252519081900360200190f35b3480156200051a57600080fd5b50620002cf600480360360208110156200053357600080fd5b810190602081018135600160201b8111156200054e57600080fd5b8201836020820111156200056157600080fd5b803590602001918460018302840111600160201b831117156200058357600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955062000e10945050505050565b620001e360048036036080811015620005dd57600080fd5b810190602081018135600160201b811115620005f857600080fd5b8201836020820111156200060b57600080fd5b803590602001918460018302840111600160201b831117156200062d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156200068057600080fd5b8201836020820111156200069357600080fd5b803590602001918460018302840111600160201b83111715620006b557600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092956001600160a01b03853516959094909350604081019250602001359050600160201b8111156200071957600080fd5b8201836020820111156200072c57600080fd5b803590602001918460018302840111600160201b831117156200074e57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955062001067945050505050565b3480156200079d57600080fd5b50620002cf60048036036020811015620007b657600080fd5b50356001600160a01b031662001183565b600080620007d584620008d1565b90506001600160a01b038116620007f1576000915050620008cb565b6040516335b41c4b60e11b81526020600482018181528551602484015285516001600160a01b03851693636b6838969388939283926044019185019080838360005b838110156200084d57818101518382015260200162000833565b50505050905090810190601f1680156200087b5780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b1580156200089957600080fd5b505afa158015620008ae573d6000803e3d6000fd5b505050506040513d6020811015620008c557600080fd5b50519150505b92915050565b6000806001836040518082805190602001908083835b60208310620009085780518252601f199092019160209182019101620008e7565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922080549093506001600160a01b03161515915062000957905057600091505062000a1f565b8054604051630efa075560e11b81526001600160a01b0390911690631df40eaa9060018401906004810190606401826000835b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116200098a579050505091505060206040518083038186803b158015620009ed57600080fd5b505afa15801562000a02573d6000803e3d6000fd5b505050506040513d602081101562000a1957600080fd5b50519150505b919050565b62000a2e62000dff565b62000a3857600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b62000a8c62000dff565b62000a9657600080fd5b604051631ae7200b60e11b81526001600160a01b038316906335ce40169083906004018082606080838360005b8381101562000add57818101518382015260200162000ac3565b5050505090500191505060206040518083038186803b15801562000b0057600080fd5b505afa15801562000b15573d6000803e3d6000fd5b505050506040513d602081101562000b2c57600080fd5b505162000b6b5760405162461bcd60e51b815260040180806020018281038252603d81526020018062001beb603d913960400191505060405180910390fd5b6040518060400160405280836001600160a01b03168152602001828152506001846040518082805190602001908083835b6020831062000bbd5780518252601f19909201916020918201910162000b9c565b51815160209384036101000a6000190180199092169116179052920194855250604051938490038101909320845181546001600160a01b0319166001600160a01b039091161781559284015162000c1d9250600184019150600362001214565b509050507f4ca1964bc3cd347906bc558f77fdd636486951cf12238150178be72a4fbb6fab8383836040518080602001846001600160a01b0316815260200183600360200280838360005b8381101562000c8257818101518382015260200162000c68565b50505050905001828103825285818151815260200191508051906020019080838360005b8381101562000cc057818101518382015260200162000ca6565b50505050905090810190601f16801562000cee5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1505050565b600062000d0e620012c3565b60006001846040518082805190602001908083835b6020831062000d445780518252601f19909201916020918201910162000d23565b51815160209384036101000a600019018019909216911617905292019485525060408051948590039091018420805460608601928390529095506001600160a01b03169360018601935091508290600390826000855b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001906008019060208260070104928301926001038202915080841162000d9a579050505050505090509250925050915091565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b62000e1a62000dff565b62000e2457600080fd5b60006001600160a01b03166001826040518082805190602001908083835b6020831062000e635780518252601f19909201916020918201910162000e42565b51815160209384036101000a60001901801990921691161790529201948552506040519384900301909220546001600160a01b03169290921415915062000ef39050576040805162461bcd60e51b815260206004820152601a60248201527f5061636b61676520746f20756e736574206e6f7420666f756e64000000000000604482015290519081900360640190fd5b6001816040518082805190602001908083835b6020831062000f275780518252601f19909201916020918201910162000f06565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922080546001600160a01b031916815591506000905062000f756001830182620012e1565b505060408051606080820183526000808352602080840182905283850182905284519081018290527f4ca1964bc3cd347906bc558f77fdd636486951cf12238150178be72a4fbb6fab948694929382918201908490808383895b8381101562000fe957818101518382015260200162000fcf565b50505050905001828103825285818151815260200191508051906020019080838360005b83811015620010275781810151838201526020016200100d565b50505050905090810190601f168015620010555780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a150565b600080620010768686620007c7565b90506000348286866040516200108c90620012e8565b80846001600160a01b03168152602001836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015620010e6578181015183820152602001620010cc565b50505050905090810190601f168015620011145780820380516001836020036101000a031916815260200191505b509450505050506040518091039082f090508015801562001139573d6000803e3d6000fd5b50604080516001600160a01b038316815290519192507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349919081900360200190a19695505050505050565b6200118d62000dff565b6200119757600080fd5b620011a281620011a5565b50565b6001600160a01b038116620011b957600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600183019183908215620012b15791602002820160005b838211156200127957835183826101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555092602001926008016020816007010492830192600103026200122b565b8015620012af5782816101000a81549067ffffffffffffffff021916905560080160208160070104928301926001030262001279565b505b50620012bf929150620012f6565b5090565b60405180606001604052806003906020820280368337509192915050565b5060009055565b6108d2806200131983390190565b5b80821115620012bf57805467ffffffffffffffff19168155600101620012f756fe60806040526040516108d23803806108d28339818101604052606081101561002657600080fd5b8151602083015160408085018051915193959294830192918464010000000082111561005157600080fd5b90830190602082018581111561006657600080fd5b825164010000000081118282018810171561008057600080fd5b82525081516020918201929091019080838360005b838110156100ad578181015183820152602001610095565b50505050905090810190601f1680156100da5780820380516001836020036101000a031916815260200191505b50604052508491508290506100ee826101bf565b8051156101a6576000826001600160a01b0316826040518082805190602001908083835b602083106101315780518252601f199092019160209182019101610112565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610191576040519150601f19603f3d011682016040523d82523d6000602084013e610196565b606091505b50509050806101a457600080fd5b505b506101ae9050565b6101b782610231565b50505061025b565b6101d28161025560201b6103b41760201c565b61020d5760405162461bcd60e51b815260040180806020018281038252603b815260200180610897603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b3b151590565b61062d8061026a6000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996103ba565b6101a96101a461041a565b61043f565b565b6101b3610463565b6001600160a01b0316336001600160a01b031614156101da576101d581610488565b6101e2565b6101e2610191565b50565b6101ed610463565b6001600160a01b0316336001600160a01b031614156102855761020f83610488565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd61041a565b90506102cc565b6102cc610191565b90565b6102d7610463565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806105876036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e610463565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d5816104c8565b6000610393610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd610463565b3b151590565b6103c2610463565b6001600160a01b0316336001600160a01b031614156104125760405162461bcd60e51b81526004018080602001828103825260328152602001806105556032913960400191505060405180910390fd5b6101a96101a9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e80801561045e573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610491816104ec565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6104f5816103b4565b6105305760405162461bcd60e51b815260040180806020018281038252603b8152602001806105bd603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203ca74514dac320135b43e4097015fc2191283471651cff1fc022edd468f3874764736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373546865207265717565737465642076657273696f6e206d757374206265207265676973746572656420696e2074686520676976656e207061636b616765a26469706673582212205e5d8f4908cc5020fdbbf81eec8fbb70734da45a9f2fae67852d8cbbe0b317eb64736f6c634300060c0033", + "deployedBytecode": "0x6080604052600436106200009e5760003560e01c80638da5cb5b11620000615780638da5cb5b14620004c95780638f32d59b14620004e1578063ad358d99146200050d578063cd3e318a14620005c5578063f2fde38b1462000790576200009e565b806327a0d66914620000a357806350cadc8514620001ff578063715018a614620002b757806371eb64cc14620002d157806387c6048314620003c7575b600080fd5b348015620000b057600080fd5b50620001e360048036036040811015620000c957600080fd5b810190602081018135600160201b811115620000e457600080fd5b820183602082011115620000f757600080fd5b803590602001918460018302840111600160201b831117156200011957600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156200016c57600080fd5b8201836020820111156200017f57600080fd5b803590602001918460018302840111600160201b83111715620001a157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550620007c7945050505050565b604080516001600160a01b039092168252519081900360200190f35b3480156200020c57600080fd5b50620001e3600480360360208110156200022557600080fd5b810190602081018135600160201b8111156200024057600080fd5b8201836020820111156200025357600080fd5b803590602001918460018302840111600160201b831117156200027557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550620008d1945050505050565b348015620002c457600080fd5b50620002cf62000a24565b005b348015620002de57600080fd5b50620002cf600480360360a0811015620002f757600080fd5b810190602081018135600160201b8111156200031257600080fd5b8201836020820111156200032557600080fd5b803590602001918460018302840111600160201b831117156200034757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505060408051606081810190925293966001600160a01b038635169690959094608082019450925060200190600390839083908082843760009201919091525091945062000a829350505050565b348015620003d457600080fd5b506200047f60048036036020811015620003ed57600080fd5b810190602081018135600160201b8111156200040857600080fd5b8201836020820111156200041b57600080fd5b803590602001918460018302840111600160201b831117156200043d57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955062000d02945050505050565b6040516001600160a01b03831681526020810182606080838360005b83811015620004b55781810151838201526020016200049b565b505050509050019250505060405180910390f35b348015620004d657600080fd5b50620001e362000df0565b348015620004ee57600080fd5b50620004f962000dff565b604080519115158252519081900360200190f35b3480156200051a57600080fd5b50620002cf600480360360208110156200053357600080fd5b810190602081018135600160201b8111156200054e57600080fd5b8201836020820111156200056157600080fd5b803590602001918460018302840111600160201b831117156200058357600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955062000e10945050505050565b620001e360048036036080811015620005dd57600080fd5b810190602081018135600160201b811115620005f857600080fd5b8201836020820111156200060b57600080fd5b803590602001918460018302840111600160201b831117156200062d57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295949360208101935035915050600160201b8111156200068057600080fd5b8201836020820111156200069357600080fd5b803590602001918460018302840111600160201b83111715620006b557600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092956001600160a01b03853516959094909350604081019250602001359050600160201b8111156200071957600080fd5b8201836020820111156200072c57600080fd5b803590602001918460018302840111600160201b831117156200074e57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955062001067945050505050565b3480156200079d57600080fd5b50620002cf60048036036020811015620007b657600080fd5b50356001600160a01b031662001183565b600080620007d584620008d1565b90506001600160a01b038116620007f1576000915050620008cb565b6040516335b41c4b60e11b81526020600482018181528551602484015285516001600160a01b03851693636b6838969388939283926044019185019080838360005b838110156200084d57818101518382015260200162000833565b50505050905090810190601f1680156200087b5780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b1580156200089957600080fd5b505afa158015620008ae573d6000803e3d6000fd5b505050506040513d6020811015620008c557600080fd5b50519150505b92915050565b6000806001836040518082805190602001908083835b60208310620009085780518252601f199092019160209182019101620008e7565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922080549093506001600160a01b03161515915062000957905057600091505062000a1f565b8054604051630efa075560e11b81526001600160a01b0390911690631df40eaa9060018401906004810190606401826000835b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116200098a579050505091505060206040518083038186803b158015620009ed57600080fd5b505afa15801562000a02573d6000803e3d6000fd5b505050506040513d602081101562000a1957600080fd5b50519150505b919050565b62000a2e62000dff565b62000a3857600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b62000a8c62000dff565b62000a9657600080fd5b604051631ae7200b60e11b81526001600160a01b038316906335ce40169083906004018082606080838360005b8381101562000add57818101518382015260200162000ac3565b5050505090500191505060206040518083038186803b15801562000b0057600080fd5b505afa15801562000b15573d6000803e3d6000fd5b505050506040513d602081101562000b2c57600080fd5b505162000b6b5760405162461bcd60e51b815260040180806020018281038252603d81526020018062001beb603d913960400191505060405180910390fd5b6040518060400160405280836001600160a01b03168152602001828152506001846040518082805190602001908083835b6020831062000bbd5780518252601f19909201916020918201910162000b9c565b51815160209384036101000a6000190180199092169116179052920194855250604051938490038101909320845181546001600160a01b0319166001600160a01b039091161781559284015162000c1d9250600184019150600362001214565b509050507f4ca1964bc3cd347906bc558f77fdd636486951cf12238150178be72a4fbb6fab8383836040518080602001846001600160a01b0316815260200183600360200280838360005b8381101562000c8257818101518382015260200162000c68565b50505050905001828103825285818151815260200191508051906020019080838360005b8381101562000cc057818101518382015260200162000ca6565b50505050905090810190601f16801562000cee5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1505050565b600062000d0e620012c3565b60006001846040518082805190602001908083835b6020831062000d445780518252601f19909201916020918201910162000d23565b51815160209384036101000a600019018019909216911617905292019485525060408051948590039091018420805460608601928390529095506001600160a01b03169360018601935091508290600390826000855b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001906008019060208260070104928301926001038202915080841162000d9a579050505050505090509250925050915091565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b62000e1a62000dff565b62000e2457600080fd5b60006001600160a01b03166001826040518082805190602001908083835b6020831062000e635780518252601f19909201916020918201910162000e42565b51815160209384036101000a60001901801990921691161790529201948552506040519384900301909220546001600160a01b03169290921415915062000ef39050576040805162461bcd60e51b815260206004820152601a60248201527f5061636b61676520746f20756e736574206e6f7420666f756e64000000000000604482015290519081900360640190fd5b6001816040518082805190602001908083835b6020831062000f275780518252601f19909201916020918201910162000f06565b51815160209384036101000a6000190180199092169116179052920194855250604051938490030190922080546001600160a01b031916815591506000905062000f756001830182620012e1565b505060408051606080820183526000808352602080840182905283850182905284519081018290527f4ca1964bc3cd347906bc558f77fdd636486951cf12238150178be72a4fbb6fab948694929382918201908490808383895b8381101562000fe957818101518382015260200162000fcf565b50505050905001828103825285818151815260200191508051906020019080838360005b83811015620010275781810151838201526020016200100d565b50505050905090810190601f168015620010555780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a150565b600080620010768686620007c7565b90506000348286866040516200108c90620012e8565b80846001600160a01b03168152602001836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015620010e6578181015183820152602001620010cc565b50505050905090810190601f168015620011145780820380516001836020036101000a031916815260200191505b509450505050506040518091039082f090508015801562001139573d6000803e3d6000fd5b50604080516001600160a01b038316815290519192507efffc2da0b561cae30d9826d37709e9421c4725faebc226cbbb7ef5fc5e7349919081900360200190a19695505050505050565b6200118d62000dff565b6200119757600080fd5b620011a281620011a5565b50565b6001600160a01b038116620011b957600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600183019183908215620012b15791602002820160005b838211156200127957835183826101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555092602001926008016020816007010492830192600103026200122b565b8015620012af5782816101000a81549067ffffffffffffffff021916905560080160208160070104928301926001030262001279565b505b50620012bf929150620012f6565b5090565b60405180606001604052806003906020820280368337509192915050565b5060009055565b6108d2806200131983390190565b5b80821115620012bf57805467ffffffffffffffff19168155600101620012f756fe60806040526040516108d23803806108d28339818101604052606081101561002657600080fd5b8151602083015160408085018051915193959294830192918464010000000082111561005157600080fd5b90830190602082018581111561006657600080fd5b825164010000000081118282018810171561008057600080fd5b82525081516020918201929091019080838360005b838110156100ad578181015183820152602001610095565b50505050905090810190601f1680156100da5780820380516001836020036101000a031916815260200191505b50604052508491508290506100ee826101bf565b8051156101a6576000826001600160a01b0316826040518082805190602001908083835b602083106101315780518252601f199092019160209182019101610112565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610191576040519150601f19603f3d011682016040523d82523d6000602084013e610196565b606091505b50509050806101a457600080fd5b505b506101ae9050565b6101b782610231565b50505061025b565b6101d28161025560201b6103b41760201c565b61020d5760405162461bcd60e51b815260040180806020018281038252603b815260200180610897603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b3b151590565b61062d8061026a6000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996103ba565b6101a96101a461041a565b61043f565b565b6101b3610463565b6001600160a01b0316336001600160a01b031614156101da576101d581610488565b6101e2565b6101e2610191565b50565b6101ed610463565b6001600160a01b0316336001600160a01b031614156102855761020f83610488565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd61041a565b90506102cc565b6102cc610191565b90565b6102d7610463565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806105876036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e610463565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d5816104c8565b6000610393610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd610463565b3b151590565b6103c2610463565b6001600160a01b0316336001600160a01b031614156104125760405162461bcd60e51b81526004018080602001828103825260328152602001806105556032913960400191505060405180910390fd5b6101a96101a9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e80801561045e573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610491816104ec565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6104f5816103b4565b6105305760405162461bcd60e51b815260040180806020018281038252603b8152602001806105bd603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203ca74514dac320135b43e4097015fc2191283471651cff1fc022edd468f3874764736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373546865207265717565737465642076657273696f6e206d757374206265207265676973746572656420696e2074686520676976656e207061636b616765a26469706673582212205e5d8f4908cc5020fdbbf81eec8fbb70734da45a9f2fae67852d8cbbe0b317eb64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ArcScheme.json b/contracts/0.1.2-rc.8/ArcScheme.json new file mode 100644 index 00000000..61e54924 --- /dev/null +++ b/contracts/0.1.2-rc.8/ArcScheme.json @@ -0,0 +1,46 @@ +{ + "contractName": "ArcScheme", + "abi": [ + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060db8061001f6000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c80633edf7ca11460415780634ea2c7ec1460635780635aef7de614607b575b600080fd5b60476081565b604080516001600160a01b039092168252519081900360200190f35b60696090565b60408051918252519081900360200190f35b60476096565b6034546001600160a01b031681565b60355481565b6033546001600160a01b03168156fea26469706673582212200c6c67cb56c4b0ab521817d4b41ee8eafb9a369f20d0a061d8f134d340463c8164736f6c634300060c0033", + "deployedBytecode": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c80633edf7ca11460415780634ea2c7ec1460635780635aef7de614607b575b600080fd5b60476081565b604080516001600160a01b039092168252519081900360200190f35b60696090565b60408051918252519081900360200190f35b60476096565b6034546001600160a01b031681565b60355481565b6033546001600160a01b03168156fea26469706673582212200c6c67cb56c4b0ab521817d4b41ee8eafb9a369f20d0a061d8f134d340463c8164736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Auction4Reputation.json b/contracts/0.1.2-rc.8/Auction4Reputation.json new file mode 100644 index 00000000..8b149165 --- /dev/null +++ b/contracts/0.1.2-rc.8/Auction4Reputation.json @@ -0,0 +1,364 @@ +{ + "contractName": "Auction4Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_bidder", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Bid", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "inputs": [], + "name": "auctionPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "auctionReputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "auctions", + "outputs": [ + { + "internalType": "uint256", + "name": "totalBid", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "auctionsEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "auctionsStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "bid", + "outputs": [ + { + "internalType": "uint256", + "name": "auctionId", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_bidder", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + } + ], + "name": "getBid", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_auctionReputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_auctionsStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_auctionPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_numberOfAuctions", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "numberOfAuctions", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_auctionId", + "type": "uint256" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "token", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "transferToWallet", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061120d806100206000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806350d9d472116100a2578063696da92111610071578063696da921146102315780637ad88799146102395780639abc03d21461028c578063afe0e33c14610294578063fc0c546a1461029c57610116565b806350d9d472146101fc57806356e4928714610204578063571a26a01461020c5780635aef7de61461022957610116565b80631e9a6950116100e95780631e9a6950146101925780633d1678f4146101be5780633edf7ca1146101c65780634870b81d146101ea5780634ea2c7ec146101f457610116565b80630b722bbb1461011b5780630cccfc581461015657806311c4dbf41461015e57806316ab2b0314610166575b600080fd5b6101446004803603606081101561013157600080fd5b50803590602081013590604001356102a4565b60408051918252519081900360200190f35b6101446104be565b6101446104c4565b6101446004803603604081101561017c57600080fd5b506001600160a01b0381351690602001356104ca565b610144600480360360408110156101a857600080fd5b506001600160a01b0381351690602001356104f7565b61014461079a565b6101ce6107a0565b604080516001600160a01b039092168252519081900360200190f35b6101f26107af565b005b610144610897565b61014461089d565b6101446108a3565b6101446004803603602081101561022257600080fd5b50356108a9565b6101ce6108bb565b6101446108ca565b6101f2600480360361010081101561025057600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c0820135169060e001356108d0565b610144610a10565b610144610a16565b6101ce610a1c565b60008160005481146102e75760405162461bcd60e51b81526004018080602001828103825260288152602001806111656028913960400191505060405180910390fd5b6000851161033c576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b603954421061037c5760405162461bcd60e51b81526004018080602001828103825260338152602001806110896033913960400191505060405180910390fd5b603a544210156103bd5760405162461bcd60e51b815260040180806020018281038252603681526020018061112f6036913960400191505060405180910390fd5b603f546103d5906001600160a01b0316333088610a2b565b603d54603a544203816103e457fe5b049150838214610433576040805162461bcd60e51b815260206004820152601560248201527461756374696f6e206973206e6f742061637469766560581b604482015290519081900360640190fd5b6000828152603760205260409020805461044d9087610a8b565b815533600090815260018201602052604090205461046b9087610a8b565b336000818152600184016020908152604091829020939093558051898152905186937f19421268847f42dd61705778018ddfc43bcdce8517e7a630acb12f122c709481928290030190a350509392505050565b603d5481565b603c5481565b60008181526037602090815260408083206001600160a01b03861684526001019091529020545b92915050565b6000603e544211610548576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b60008281526037602090815260408083206001600160a01b03871684526001810190925290912054806105c2576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6001600160a01b03851660009081526001830160205260408120819055603c546105ed908390610aec565b83549091506105fd908290610b45565b60385490945061060d9085610b87565b60385560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561065557600080fd5b505afa158015610669573d6000803e3d6000fd5b505050506040513d602081101561067f57600080fd5b50516040805163dea9e24d60e01b8152600481018790526001600160a01b0389811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156106d457600080fd5b505af11580156106e8573d6000803e3d6000fd5b505050506040513d60208110156106fe57600080fd5b5051610751576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805185815290516001600160a01b0388169187917f1069ba7d3dd3d969eada9a014b1e1a8e2ab1ef7f38989db8ce98e698ac844f659181900360200190a350505092915050565b603e5481565b6035546001600160a01b031681565b60395442116107fd576040805162461bcd60e51b81526020600482015260156024820152746e6f77203e2061756374696f6e73456e6454696d6560581b604482015290519081900360640190fd5b603f54604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561084857600080fd5b505afa15801561085c573d6000803e3d6000fd5b505050506040513d602081101561087257600080fd5b5051603454603f54919250610894916001600160a01b03908116911683610bc9565b50565b60365481565b603b5481565b60395481565b60376020526000908152604090205481565b6034546001600160a01b031681565b60005490565b6108d988610c20565b600084116109185760405162461bcd60e51b815260040180806020018281038252602181526020018061118d6021913960400191505060405180910390fd5b600f851161096d576040805162461bcd60e51b815260206004820152601c60248201527f61756374696f6e506572696f642073686f756c64206265203e20313500000000604482015290519081900360640190fd5b603d85905561097c8585610aec565b860160398190558310156109c15760405162461bcd60e51b81526004018080602001828103825260248152602001806110bc6024913960400191505060405180910390fd5b603f80546001600160a01b0319166001600160a01b038416179055603a869055603b849055603c8790556109f58785610aec565b603855603e839055610a0681610d38565b5050505050505050565b603a5481565b60385481565b603f546001600160a01b031681565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610a85908590610d92565b50505050565b600082820183811015610ae5576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600082610afb575060006104f1565b82820282848281610b0857fe5b0414610ae55760405162461bcd60e51b81526004018080602001828103825260218152602001806110e06021913960400191505060405180910390fd5b6000610ae583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f4a565b6000610ae583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fec565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610c1b908490610d92565b505050565b600154610100900460ff1680610c395750610c39611046565b80610c47575060015460ff16155b610c825760405162461bcd60e51b815260040180806020018281038252602e815260200180611101602e913960400191505060405180910390fd5b600154610100900460ff16158015610cac576001805460ff1961ff00199091166101001716811790555b6001600160a01b038216610d07576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015610d34576001805461ff00191690555b5050565b60005415610d8d576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b610da4826001600160a01b031661104c565b610df5576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310610e335780518252601f199092019160209182019101610e14565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610e95576040519150601f19603f3d011682016040523d82523d6000602084013e610e9a565b606091505b509150915081610ef1576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b805115610a8557808060200190516020811015610f0d57600080fd5b5051610a855760405162461bcd60e51b815260040180806020018281038252602a8152602001806111ae602a913960400191505060405180910390fd5b60008183610fd65760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f9b578181015183820152602001610f83565b50505050905090810190601f168015610fc85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610fe257fe5b0495945050505050565b6000818484111561103e5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610f9b578181015183820152602001610f83565b505050900390565b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061108057508115155b94935050505056fe62696464696e672073686f756c642062652077697468696e2074686520616c6c6f7765642062696464696e6720706572696f645f72656465656d456e61626c6554696d65203e3d2061756374696f6e73456e6454696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656462696464696e6720697320656e61626c65206f6e6c792061667465722062696464696e672061756374696f6e73537461727454696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686e756d626572206f662061756374696f6e732063616e6e6f74206265207a65726f5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a26469706673582212200d5df2e8dc6f2e39bf20d349562ad00686108056cc6fd39b9b96f9db82454fa064736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101165760003560e01c806350d9d472116100a2578063696da92111610071578063696da921146102315780637ad88799146102395780639abc03d21461028c578063afe0e33c14610294578063fc0c546a1461029c57610116565b806350d9d472146101fc57806356e4928714610204578063571a26a01461020c5780635aef7de61461022957610116565b80631e9a6950116100e95780631e9a6950146101925780633d1678f4146101be5780633edf7ca1146101c65780634870b81d146101ea5780634ea2c7ec146101f457610116565b80630b722bbb1461011b5780630cccfc581461015657806311c4dbf41461015e57806316ab2b0314610166575b600080fd5b6101446004803603606081101561013157600080fd5b50803590602081013590604001356102a4565b60408051918252519081900360200190f35b6101446104be565b6101446104c4565b6101446004803603604081101561017c57600080fd5b506001600160a01b0381351690602001356104ca565b610144600480360360408110156101a857600080fd5b506001600160a01b0381351690602001356104f7565b61014461079a565b6101ce6107a0565b604080516001600160a01b039092168252519081900360200190f35b6101f26107af565b005b610144610897565b61014461089d565b6101446108a3565b6101446004803603602081101561022257600080fd5b50356108a9565b6101ce6108bb565b6101446108ca565b6101f2600480360361010081101561025057600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c0820135169060e001356108d0565b610144610a10565b610144610a16565b6101ce610a1c565b60008160005481146102e75760405162461bcd60e51b81526004018080602001828103825260288152602001806111656028913960400191505060405180910390fd5b6000851161033c576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b603954421061037c5760405162461bcd60e51b81526004018080602001828103825260338152602001806110896033913960400191505060405180910390fd5b603a544210156103bd5760405162461bcd60e51b815260040180806020018281038252603681526020018061112f6036913960400191505060405180910390fd5b603f546103d5906001600160a01b0316333088610a2b565b603d54603a544203816103e457fe5b049150838214610433576040805162461bcd60e51b815260206004820152601560248201527461756374696f6e206973206e6f742061637469766560581b604482015290519081900360640190fd5b6000828152603760205260409020805461044d9087610a8b565b815533600090815260018201602052604090205461046b9087610a8b565b336000818152600184016020908152604091829020939093558051898152905186937f19421268847f42dd61705778018ddfc43bcdce8517e7a630acb12f122c709481928290030190a350509392505050565b603d5481565b603c5481565b60008181526037602090815260408083206001600160a01b03861684526001019091529020545b92915050565b6000603e544211610548576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b60008281526037602090815260408083206001600160a01b03871684526001810190925290912054806105c2576040805162461bcd60e51b815260206004820152601c60248201527f62696464696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6001600160a01b03851660009081526001830160205260408120819055603c546105ed908390610aec565b83549091506105fd908290610b45565b60385490945061060d9085610b87565b60385560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561065557600080fd5b505afa158015610669573d6000803e3d6000fd5b505050506040513d602081101561067f57600080fd5b50516040805163dea9e24d60e01b8152600481018790526001600160a01b0389811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156106d457600080fd5b505af11580156106e8573d6000803e3d6000fd5b505050506040513d60208110156106fe57600080fd5b5051610751576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805185815290516001600160a01b0388169187917f1069ba7d3dd3d969eada9a014b1e1a8e2ab1ef7f38989db8ce98e698ac844f659181900360200190a350505092915050565b603e5481565b6035546001600160a01b031681565b60395442116107fd576040805162461bcd60e51b81526020600482015260156024820152746e6f77203e2061756374696f6e73456e6454696d6560581b604482015290519081900360640190fd5b603f54604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561084857600080fd5b505afa15801561085c573d6000803e3d6000fd5b505050506040513d602081101561087257600080fd5b5051603454603f54919250610894916001600160a01b03908116911683610bc9565b50565b60365481565b603b5481565b60395481565b60376020526000908152604090205481565b6034546001600160a01b031681565b60005490565b6108d988610c20565b600084116109185760405162461bcd60e51b815260040180806020018281038252602181526020018061118d6021913960400191505060405180910390fd5b600f851161096d576040805162461bcd60e51b815260206004820152601c60248201527f61756374696f6e506572696f642073686f756c64206265203e20313500000000604482015290519081900360640190fd5b603d85905561097c8585610aec565b860160398190558310156109c15760405162461bcd60e51b81526004018080602001828103825260248152602001806110bc6024913960400191505060405180910390fd5b603f80546001600160a01b0319166001600160a01b038416179055603a869055603b849055603c8790556109f58785610aec565b603855603e839055610a0681610d38565b5050505050505050565b603a5481565b60385481565b603f546001600160a01b031681565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610a85908590610d92565b50505050565b600082820183811015610ae5576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600082610afb575060006104f1565b82820282848281610b0857fe5b0414610ae55760405162461bcd60e51b81526004018080602001828103825260218152602001806110e06021913960400191505060405180910390fd5b6000610ae583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f4a565b6000610ae583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610fec565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610c1b908490610d92565b505050565b600154610100900460ff1680610c395750610c39611046565b80610c47575060015460ff16155b610c825760405162461bcd60e51b815260040180806020018281038252602e815260200180611101602e913960400191505060405180910390fd5b600154610100900460ff16158015610cac576001805460ff1961ff00199091166101001716811790555b6001600160a01b038216610d07576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015610d34576001805461ff00191690555b5050565b60005415610d8d576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b610da4826001600160a01b031661104c565b610df5576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310610e335780518252601f199092019160209182019101610e14565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610e95576040519150601f19603f3d011682016040523d82523d6000602084013e610e9a565b606091505b509150915081610ef1576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b805115610a8557808060200190516020811015610f0d57600080fd5b5051610a855760405162461bcd60e51b815260040180806020018281038252602a8152602001806111ae602a913960400191505060405180910390fd5b60008183610fd65760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f9b578181015183820152602001610f83565b50505050905090810190601f168015610fc85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610fe257fe5b0495945050505050565b6000818484111561103e5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610f9b578181015183820152602001610f83565b505050900390565b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061108057508115155b94935050505056fe62696464696e672073686f756c642062652077697468696e2074686520616c6c6f7765642062696464696e6720706572696f645f72656465656d456e61626c6554696d65203e3d2061756374696f6e73456e6454696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656462696464696e6720697320656e61626c65206f6e6c792061667465722062696464696e672061756374696f6e73537461727454696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686e756d626572206f662061756374696f6e732063616e6e6f74206265207a65726f5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a26469706673582212200d5df2e8dc6f2e39bf20d349562ad00686108056cc6fd39b9b96f9db82454fa064736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Avatar.json b/contracts/0.1.2-rc.8/Avatar.json new file mode 100644 index 00000000..114a73f0 --- /dev/null +++ b/contracts/0.1.2-rc.8/Avatar.json @@ -0,0 +1,487 @@ +{ + "contractName": "Avatar", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ExternalTokenApproval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ExternalTokenTransfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ExternalTokenTransferFrom", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_data", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_success", + "type": "bool" + } + ], + "name": "GenericCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_metaData", + "type": "string" + } + ], + "name": "MetaData", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "db", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenApproval", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenTransferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCall", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "returnValue", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_orgName", + "type": "string" + }, + { + "internalType": "contract DAOToken", + "name": "_nativeToken", + "type": "address" + }, + { + "internalType": "contract Reputation", + "name": "_nativeReputation", + "type": "address" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_metaData", + "type": "string" + } + ], + "name": "metaData", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "nativeReputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nativeToken", + "outputs": [ + { + "internalType": "contract DAOToken", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "orgName", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "sendEthToVault", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amountInWei", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "_to", + "type": "address" + } + ], + "name": "sendEther", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_key", + "type": "string" + }, + { + "internalType": "string", + "name": "_value", + "type": "string" + } + ], + "name": "setDBValue", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "vault", + "outputs": [ + { + "internalType": "contract Vault", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611fb2806100206000396000f3fe6080604052600436106101025760003560e01c80639c9c732611610095578063dab0efff11610064578063dab0efff146105fe578063e1758bd814610641578063f2fde38b14610656578063f34822b414610689578063fbfa77cf1461071f57610123565b80639c9c73261461046e578063ab751f7114610539578063b756d5a21461057c578063cb16d4a2146105c557610123565b8063715018a6116100d1578063715018a614610384578063890ac46c1461039957806389ae1c90146104285780638da5cb5b1461045957610123565b80631386dc2d146101285780632bf16458146101b2578063582a6ca5146102be57806358cb548b146102d357610123565b3661012357609a546001600160a01b0316331461012157610121610734565b005b600080fd5b34801561013457600080fd5b5061013d610770565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561017757818101518382015260200161015f565b50505050905090810190601f1680156101a45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101be57600080fd5b5061023d600480360360608110156101d557600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101ff57600080fd5b82018360208201111561021157600080fd5b803590602001918460018302840111600160201b8311171561023257600080fd5b9193509150356107fe565b60405180831515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561028257818101518382015260200161026a565b50505050905090810190601f1680156102af5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102ca57600080fd5b50610121610734565b3480156102df57600080fd5b5061013d600480360360208110156102f657600080fd5b810190602081018135600160201b81111561031057600080fd5b82018360208201111561032257600080fd5b803590602001918460018302840111600160201b8311171561034357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109d2945050505050565b34801561039057600080fd5b50610121610a46565b3480156103a557600080fd5b50610414600480360360208110156103bc57600080fd5b810190602081018135600160201b8111156103d657600080fd5b8201836020820111156103e857600080fd5b803590602001918460018302840111600160201b8311171561040957600080fd5b509092509050610ae8565b604080519115158252519081900360200190f35b34801561043457600080fd5b5061043d610bab565b604080516001600160a01b039092168252519081900360200190f35b34801561046557600080fd5b5061043d610bba565b34801561047a57600080fd5b506104146004803603604081101561049157600080fd5b810190602081018135600160201b8111156104ab57600080fd5b8201836020820111156104bd57600080fd5b803590602001918460018302840111600160201b831117156104de57600080fd5b919390929091602081019035600160201b8111156104fb57600080fd5b82018360208201111561050d57600080fd5b803590602001918460018302840111600160201b8311171561052e57600080fd5b509092509050610bc9565b34801561054557600080fd5b506104146004803603606081101561055c57600080fd5b506001600160a01b03813581169160208101359091169060400135610c65565b34801561058857600080fd5b506104146004803603608081101561059f57600080fd5b506001600160a01b03813581169160208101358216916040820135169060600135610d23565b3480156105d157600080fd5b50610414600480360360408110156105e857600080fd5b50803590602001356001600160a01b0316610dec565b34801561060a57600080fd5b506104146004803603606081101561062157600080fd5b506001600160a01b03813581169160208101359091169060400135610ed1565b34801561064d57600080fd5b5061043d610f94565b34801561066257600080fd5b506101216004803603602081101561067957600080fd5b50356001600160a01b0316610fa3565b34801561069557600080fd5b50610121600480360360808110156106ac57600080fd5b810190602081018135600160201b8111156106c657600080fd5b8201836020820111156106d857600080fd5b803590602001918460018302840111600160201b831117156106f957600080fd5b91935091506001600160a01b03813581169160208101358216916040909101351661109c565b34801561072b57600080fd5b5061043d611231565b609a546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561076d573d6000803e3d6000fd5b50565b6097805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107f65780601f106107cb576101008083540402835291602001916107f6565b820191906000526020600020905b8154815290600101906020018083116107d957829003601f168201915b505050505081565b6000606061080a611240565b6065546001600160a01b0390811691161461085a576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b82156108e157609a546040805163658b6a5160e11b81526004810186905230602482015290516001600160a01b039092169163cb16d4a2916044808201926020929091908290030181600087803b1580156108b457600080fd5b505af11580156108c8573d6000803e3d6000fd5b505050506040513d60208110156108de57600080fd5b50505b856001600160a01b0316838686604051808383808284376040519201945060009350909150508083038185875af1925050503d806000811461093f576040519150601f19603f3d011682016040523d82523d6000602084013e610944565b606091505b508092508193505050856001600160a01b03167f534b52c783549f909f9e743120524d0b7154058e4a54cdc895c2c0b587a1c7e086868686604051808060200184815260200183151581526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a294509492505050565b8051602081830181018051609b8252928201938201939093209190925280546040805160026001841615610100026000190190931692909204601f810185900485028301850190915280825290928301828280156107f65780601f106107cb576101008083540402835291602001916107f6565b610a4e611240565b6065546001600160a01b03908116911614610a9e576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6000610af2611240565b6065546001600160a01b03908116911614610b42576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b7ff9deba4938ba20070ec5a45ddf59bccba49cf83124215228ec1232182ef0ba2b838360405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a150600192915050565b6099546001600160a01b031681565b6065546001600160a01b031690565b6000610bd3611240565b6065546001600160a01b03908116911614610c23576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b8282609b878760405180838380828437808301925050509250505090815260200160405180910390209190610c59929190611701565b50600195945050505050565b6000610c6f611240565b6065546001600160a01b03908116911614610cbf576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b610cd36001600160a01b0385168484611244565b604080516001600160a01b038581168252602082018590528251908716927f3a48a4d6253b30fd10e57a347c1f9bcb0604946481fae0b2fdad6e74f2a9cbb3928290030190a25060019392505050565b6000610d2d611240565b6065546001600160a01b03908116911614610d7d576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b610d926001600160a01b03861685858561135c565b604080516001600160a01b03868116825285811660208301528183018590529151918716917f179c15de44aa7ab84896301974328eb40b5b40fe01cfe0fee2924ea712c3e8439181900360600190a2506001949350505050565b6000610df6611240565b6065546001600160a01b03908116911614610e46576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b609a546040805163658b6a5160e11b8152600481018690526001600160a01b0385811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b158015610e9c57600080fd5b505af1158015610eb0573d6000803e3d6000fd5b505050506040513d6020811015610ec657600080fd5b506001949350505050565b6000610edb611240565b6065546001600160a01b03908116911614610f2b576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b610f3f6001600160a01b03851684846113bc565b826001600160a01b0316846001600160a01b03167f49dc2a60d2599a7b6932d78fb694c30dfc596fe4e0282b5d0fd184b52472c04d846040518082815260200191505060405180910390a35060019392505050565b6098546001600160a01b031681565b610fab611240565b6065546001600160a01b03908116911614610ffb576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b6001600160a01b0381166110405760405162461bcd60e51b8152600401808060200182810382526026815260200180611ea96026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110b557506110b561140e565b806110c3575060005460ff16155b6110fe5760405162461bcd60e51b815260040180806020018281038252602e815260200180611eef602e913960400191505060405180910390fd5b600054610100900460ff16158015611129576000805460ff1961ff0019909116610100171660011790555b61113560978787611701565b50609880546001600160a01b038087166001600160a01b031992831617909255609980549286169290911691909117905561116e611414565b61117782610fa3565b6040516111839061177f565b604051809103906000f08015801561119f573d6000803e3d6000fd5b50609a80546001600160a01b0319166001600160a01b0392831617908190556040805163189acdbd60e31b81523060048201529051919092169163c4d66de891602480830192600092919082900301818387803b1580156111ff57600080fd5b505af1158015611213573d6000803e3d6000fd5b505050508015611229576000805461ff00191690555b505050505050565b609a546001600160a01b031681565b3390565b8015806112ca575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b15801561129c57600080fd5b505afa1580156112b0573d6000803e3d6000fd5b505050506040513d60208110156112c657600080fd5b5051155b6113055760405162461bcd60e51b8152600401808060200182810382526036815260200180611f476036913960400191505060405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b17905261135790849061150d565b505050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526113b690859061150d565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261135790849061150d565b303b1590565b600054610100900460ff168061142d575061142d61140e565b8061143b575060005460ff16155b6114765760405162461bcd60e51b815260040180806020018281038252602e815260200180611eef602e913960400191505060405180910390fd5b600054610100900460ff161580156114a1576000805460ff1961ff0019909116610100171660011790555b60006114ab611240565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561076d576000805461ff001916905550565b61151f826001600160a01b03166116c5565b611570576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106115ae5780518252601f19909201916020918201910161158f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611610576040519150601f19603f3d011682016040523d82523d6000602084013e611615565b606091505b50915091508161166c576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156113b65780806020019051602081101561168857600080fd5b50516113b65760405162461bcd60e51b815260040180806020018281038252602a815260200180611f1d602a913960400191505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906116f957508115155b949350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117425782800160ff1982351617855561176f565b8280016001018555821561176f579182015b8281111561176f578235825591602001919060010190611754565b5061177b92915061178c565b5090565b610707806117a283390190565b5b8082111561177b576000815560010161178d56fe608060405234801561001057600080fd5b506106e7806100206000396000f3fe60806040526004361061004e5760003560e01c8063715018a6146100905780638da5cb5b146100a7578063c4d66de8146100d8578063cb16d4a21461010b578063f2fde38b146101585761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100a561018b565b005b3480156100b357600080fd5b506100bc61023f565b604080516001600160a01b039092168252519081900360200190f35b3480156100e457600080fd5b506100a5600480360360208110156100fb57600080fd5b50356001600160a01b031661024e565b34801561011757600080fd5b506101446004803603604081101561012e57600080fd5b50803590602001356001600160a01b0316610302565b604080519115158252519081900360200190f35b34801561016457600080fd5b506100a56004803603602081101561017b57600080fd5b50356001600160a01b031661044e565b610193610559565b6065546001600160a01b039081169116146101f5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff1680610267575061026761055d565b80610275575060005460ff16155b6102b05760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156102db576000805460ff1961ff0019909116610100171660011790555b6102e3610563565b6102ec8261044e565b80156102fe576000805461ff00191690555b5050565b600061030c610559565b6065546001600160a01b0390811691161461036e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6040516000906001600160a01b0384169085908381818185875af1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5050905080610408576040805162461bcd60e51b815260206004820152601160248201527039b2b73222ba3432b9103330b4b632b21760791b604482015290519081900360640190fd5b6040805185815290516001600160a01b038516917f5cf9c3dc0403b88750b3ce5ea792cdca787ff26128f6d508b99b2d3853ae13ec919081900360200190a25092915050565b610456610559565b6065546001600160a01b039081169116146104b8576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104fd5760405162461bcd60e51b815260040180806020018281038252602681526020018061065e6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061057c575061057c61055d565b8061058a575060005460ff16155b6105c55760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156105f0576000805460ff1961ff0019909116610100171660011790555b60006105fa610559565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561065a576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220157c7771cc4a87a41a603a3d9de8b49468f6f837834ee592668d5dde0c6c763e64736f6c634300060c00334f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a26469706673582212205e79e8a76dcae8bbbef4d5cda3f81209f6fbaa27abad10bc842f118c730c18b664736f6c634300060c0033", + "deployedBytecode": "0x6080604052600436106101025760003560e01c80639c9c732611610095578063dab0efff11610064578063dab0efff146105fe578063e1758bd814610641578063f2fde38b14610656578063f34822b414610689578063fbfa77cf1461071f57610123565b80639c9c73261461046e578063ab751f7114610539578063b756d5a21461057c578063cb16d4a2146105c557610123565b8063715018a6116100d1578063715018a614610384578063890ac46c1461039957806389ae1c90146104285780638da5cb5b1461045957610123565b80631386dc2d146101285780632bf16458146101b2578063582a6ca5146102be57806358cb548b146102d357610123565b3661012357609a546001600160a01b0316331461012157610121610734565b005b600080fd5b34801561013457600080fd5b5061013d610770565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561017757818101518382015260200161015f565b50505050905090810190601f1680156101a45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101be57600080fd5b5061023d600480360360608110156101d557600080fd5b6001600160a01b038235169190810190604081016020820135600160201b8111156101ff57600080fd5b82018360208201111561021157600080fd5b803590602001918460018302840111600160201b8311171561023257600080fd5b9193509150356107fe565b60405180831515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561028257818101518382015260200161026a565b50505050905090810190601f1680156102af5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b3480156102ca57600080fd5b50610121610734565b3480156102df57600080fd5b5061013d600480360360208110156102f657600080fd5b810190602081018135600160201b81111561031057600080fd5b82018360208201111561032257600080fd5b803590602001918460018302840111600160201b8311171561034357600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109d2945050505050565b34801561039057600080fd5b50610121610a46565b3480156103a557600080fd5b50610414600480360360208110156103bc57600080fd5b810190602081018135600160201b8111156103d657600080fd5b8201836020820111156103e857600080fd5b803590602001918460018302840111600160201b8311171561040957600080fd5b509092509050610ae8565b604080519115158252519081900360200190f35b34801561043457600080fd5b5061043d610bab565b604080516001600160a01b039092168252519081900360200190f35b34801561046557600080fd5b5061043d610bba565b34801561047a57600080fd5b506104146004803603604081101561049157600080fd5b810190602081018135600160201b8111156104ab57600080fd5b8201836020820111156104bd57600080fd5b803590602001918460018302840111600160201b831117156104de57600080fd5b919390929091602081019035600160201b8111156104fb57600080fd5b82018360208201111561050d57600080fd5b803590602001918460018302840111600160201b8311171561052e57600080fd5b509092509050610bc9565b34801561054557600080fd5b506104146004803603606081101561055c57600080fd5b506001600160a01b03813581169160208101359091169060400135610c65565b34801561058857600080fd5b506104146004803603608081101561059f57600080fd5b506001600160a01b03813581169160208101358216916040820135169060600135610d23565b3480156105d157600080fd5b50610414600480360360408110156105e857600080fd5b50803590602001356001600160a01b0316610dec565b34801561060a57600080fd5b506104146004803603606081101561062157600080fd5b506001600160a01b03813581169160208101359091169060400135610ed1565b34801561064d57600080fd5b5061043d610f94565b34801561066257600080fd5b506101216004803603602081101561067957600080fd5b50356001600160a01b0316610fa3565b34801561069557600080fd5b50610121600480360360808110156106ac57600080fd5b810190602081018135600160201b8111156106c657600080fd5b8201836020820111156106d857600080fd5b803590602001918460018302840111600160201b831117156106f957600080fd5b91935091506001600160a01b03813581169160208101358216916040909101351661109c565b34801561072b57600080fd5b5061043d611231565b609a546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561076d573d6000803e3d6000fd5b50565b6097805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107f65780601f106107cb576101008083540402835291602001916107f6565b820191906000526020600020905b8154815290600101906020018083116107d957829003601f168201915b505050505081565b6000606061080a611240565b6065546001600160a01b0390811691161461085a576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b82156108e157609a546040805163658b6a5160e11b81526004810186905230602482015290516001600160a01b039092169163cb16d4a2916044808201926020929091908290030181600087803b1580156108b457600080fd5b505af11580156108c8573d6000803e3d6000fd5b505050506040513d60208110156108de57600080fd5b50505b856001600160a01b0316838686604051808383808284376040519201945060009350909150508083038185875af1925050503d806000811461093f576040519150601f19603f3d011682016040523d82523d6000602084013e610944565b606091505b508092508193505050856001600160a01b03167f534b52c783549f909f9e743120524d0b7154058e4a54cdc895c2c0b587a1c7e086868686604051808060200184815260200183151581526020018281038252868682818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a294509492505050565b8051602081830181018051609b8252928201938201939093209190925280546040805160026001841615610100026000190190931692909204601f810185900485028301850190915280825290928301828280156107f65780601f106107cb576101008083540402835291602001916107f6565b610a4e611240565b6065546001600160a01b03908116911614610a9e576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6000610af2611240565b6065546001600160a01b03908116911614610b42576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b7ff9deba4938ba20070ec5a45ddf59bccba49cf83124215228ec1232182ef0ba2b838360405180806020018281038252848482818152602001925080828437600083820152604051601f909101601f19169092018290039550909350505050a150600192915050565b6099546001600160a01b031681565b6065546001600160a01b031690565b6000610bd3611240565b6065546001600160a01b03908116911614610c23576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b8282609b878760405180838380828437808301925050509250505090815260200160405180910390209190610c59929190611701565b50600195945050505050565b6000610c6f611240565b6065546001600160a01b03908116911614610cbf576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b610cd36001600160a01b0385168484611244565b604080516001600160a01b038581168252602082018590528251908716927f3a48a4d6253b30fd10e57a347c1f9bcb0604946481fae0b2fdad6e74f2a9cbb3928290030190a25060019392505050565b6000610d2d611240565b6065546001600160a01b03908116911614610d7d576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b610d926001600160a01b03861685858561135c565b604080516001600160a01b03868116825285811660208301528183018590529151918716917f179c15de44aa7ab84896301974328eb40b5b40fe01cfe0fee2924ea712c3e8439181900360600190a2506001949350505050565b6000610df6611240565b6065546001600160a01b03908116911614610e46576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b609a546040805163658b6a5160e11b8152600481018690526001600160a01b0385811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b158015610e9c57600080fd5b505af1158015610eb0573d6000803e3d6000fd5b505050506040513d6020811015610ec657600080fd5b506001949350505050565b6000610edb611240565b6065546001600160a01b03908116911614610f2b576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b610f3f6001600160a01b03851684846113bc565b826001600160a01b0316846001600160a01b03167f49dc2a60d2599a7b6932d78fb694c30dfc596fe4e0282b5d0fd184b52472c04d846040518082815260200191505060405180910390a35060019392505050565b6098546001600160a01b031681565b610fab611240565b6065546001600160a01b03908116911614610ffb576040805162461bcd60e51b81526020600482018190526024820152600080516020611ecf833981519152604482015290519081900360640190fd5b6001600160a01b0381166110405760405162461bcd60e51b8152600401808060200182810382526026815260200180611ea96026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110b557506110b561140e565b806110c3575060005460ff16155b6110fe5760405162461bcd60e51b815260040180806020018281038252602e815260200180611eef602e913960400191505060405180910390fd5b600054610100900460ff16158015611129576000805460ff1961ff0019909116610100171660011790555b61113560978787611701565b50609880546001600160a01b038087166001600160a01b031992831617909255609980549286169290911691909117905561116e611414565b61117782610fa3565b6040516111839061177f565b604051809103906000f08015801561119f573d6000803e3d6000fd5b50609a80546001600160a01b0319166001600160a01b0392831617908190556040805163189acdbd60e31b81523060048201529051919092169163c4d66de891602480830192600092919082900301818387803b1580156111ff57600080fd5b505af1158015611213573d6000803e3d6000fd5b505050508015611229576000805461ff00191690555b505050505050565b609a546001600160a01b031681565b3390565b8015806112ca575060408051636eb1769f60e11b81523060048201526001600160a01b03848116602483015291519185169163dd62ed3e91604480820192602092909190829003018186803b15801561129c57600080fd5b505afa1580156112b0573d6000803e3d6000fd5b505050506040513d60208110156112c657600080fd5b5051155b6113055760405162461bcd60e51b8152600401808060200182810382526036815260200180611f476036913960400191505060405180910390fd5b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b17905261135790849061150d565b505050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526113b690859061150d565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261135790849061150d565b303b1590565b600054610100900460ff168061142d575061142d61140e565b8061143b575060005460ff16155b6114765760405162461bcd60e51b815260040180806020018281038252602e815260200180611eef602e913960400191505060405180910390fd5b600054610100900460ff161580156114a1576000805460ff1961ff0019909116610100171660011790555b60006114ab611240565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561076d576000805461ff001916905550565b61151f826001600160a01b03166116c5565b611570576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106115ae5780518252601f19909201916020918201910161158f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611610576040519150601f19603f3d011682016040523d82523d6000602084013e611615565b606091505b50915091508161166c576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156113b65780806020019051602081101561168857600080fd5b50516113b65760405162461bcd60e51b815260040180806020018281038252602a815260200180611f1d602a913960400191505060405180910390fd5b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906116f957508115155b949350505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117425782800160ff1982351617855561176f565b8280016001018555821561176f579182015b8281111561176f578235825591602001919060010190611754565b5061177b92915061178c565b5090565b610707806117a283390190565b5b8082111561177b576000815560010161178d56fe608060405234801561001057600080fd5b506106e7806100206000396000f3fe60806040526004361061004e5760003560e01c8063715018a6146100905780638da5cb5b146100a7578063c4d66de8146100d8578063cb16d4a21461010b578063f2fde38b146101585761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100a561018b565b005b3480156100b357600080fd5b506100bc61023f565b604080516001600160a01b039092168252519081900360200190f35b3480156100e457600080fd5b506100a5600480360360208110156100fb57600080fd5b50356001600160a01b031661024e565b34801561011757600080fd5b506101446004803603604081101561012e57600080fd5b50803590602001356001600160a01b0316610302565b604080519115158252519081900360200190f35b34801561016457600080fd5b506100a56004803603602081101561017b57600080fd5b50356001600160a01b031661044e565b610193610559565b6065546001600160a01b039081169116146101f5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff1680610267575061026761055d565b80610275575060005460ff16155b6102b05760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156102db576000805460ff1961ff0019909116610100171660011790555b6102e3610563565b6102ec8261044e565b80156102fe576000805461ff00191690555b5050565b600061030c610559565b6065546001600160a01b0390811691161461036e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6040516000906001600160a01b0384169085908381818185875af1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5050905080610408576040805162461bcd60e51b815260206004820152601160248201527039b2b73222ba3432b9103330b4b632b21760791b604482015290519081900360640190fd5b6040805185815290516001600160a01b038516917f5cf9c3dc0403b88750b3ce5ea792cdca787ff26128f6d508b99b2d3853ae13ec919081900360200190a25092915050565b610456610559565b6065546001600160a01b039081169116146104b8576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104fd5760405162461bcd60e51b815260040180806020018281038252602681526020018061065e6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061057c575061057c61055d565b8061058a575060005460ff16155b6105c55760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156105f0576000805460ff1961ff0019909116610100171660011790555b60006105fa610559565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561065a576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220157c7771cc4a87a41a603a3d9de8b49468f6f837834ee592668d5dde0c6c763e64736f6c634300060c00334f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a26469706673582212205e79e8a76dcae8bbbef4d5cda3f81209f6fbaa27abad10bc842f118c730c18b664736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/BaseAdminUpgradeabilityProxy.json b/contracts/0.1.2-rc.8/BaseAdminUpgradeabilityProxy.json new file mode 100644 index 00000000..a9066c91 --- /dev/null +++ b/contracts/0.1.2-rc.8/BaseAdminUpgradeabilityProxy.json @@ -0,0 +1,117 @@ +{ + "contractName": "BaseAdminUpgradeabilityProxy", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "previousAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "changeAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeToAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061059b806100206000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996101a9565b6101a96101a46103b4565b6103d9565b565b6101b36103fd565b6001600160a01b0316336001600160a01b031614156101da576101d581610422565b6101e2565b6101e2610191565b50565b6101ed6103fd565b6001600160a01b0316336001600160a01b031614156102855761020f83610422565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c6103fd565b6001600160a01b0316336001600160a01b031614156102c4576102bd6103b4565b90506102cc565b6102cc610191565b90565b6102d76103fd565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806104f56036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e6103fd565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d581610462565b60006103936103fd565b6001600160a01b0316336001600160a01b031614156102c4576102bd6103fd565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156103f8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b61042b81610486565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61048f816104ee565b6104ca5760405162461bcd60e51b815260040180806020018281038252603b81526020018061052b603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203c6a2b36c0cea06055e59c2fcf0faa3c22ea468e6b2a6940dd523cd5f938942f64736f6c634300060c0033", + "deployedBytecode": "0x60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996101a9565b6101a96101a46103b4565b6103d9565b565b6101b36103fd565b6001600160a01b0316336001600160a01b031614156101da576101d581610422565b6101e2565b6101e2610191565b50565b6101ed6103fd565b6001600160a01b0316336001600160a01b031614156102855761020f83610422565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c6103fd565b6001600160a01b0316336001600160a01b031614156102c4576102bd6103b4565b90506102cc565b6102cc610191565b90565b6102d76103fd565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806104f56036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e6103fd565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d581610462565b60006103936103fd565b6001600160a01b0316336001600160a01b031614156102c4576102bd6103fd565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156103f8573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b61042b81610486565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b61048f816104ee565b6104ca5760405162461bcd60e51b815260040180806020018281038252603b81526020018061052b603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b15159056fe43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203c6a2b36c0cea06055e59c2fcf0faa3c22ea468e6b2a6940dd523cd5f938942f64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/BaseUpgradeabilityProxy.json b/contracts/0.1.2-rc.8/BaseUpgradeabilityProxy.json new file mode 100644 index 00000000..7c42e4b8 --- /dev/null +++ b/contracts/0.1.2-rc.8/BaseUpgradeabilityProxy.json @@ -0,0 +1,28 @@ +{ + "contractName": "BaseUpgradeabilityProxy", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b5060a58061001e6000396000f3fe608060405236601057600e6013565b005b600e5b60196025565b602560216027565b604c565b565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e808015606a573d6000f35b3d6000fdfea26469706673582212205033364a2d6094b33ee6c6505fecba833078b83862ab62cb8902ee291bf3c24464736f6c634300060c0033", + "deployedBytecode": "0x608060405236601057600e6013565b005b600e5b60196025565b602560216027565b604c565b565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e808015606a573d6000f35b3d6000fdfea26469706673582212205033364a2d6094b33ee6c6505fecba833078b83862ab62cb8902ee291bf3c24464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Bytes32ToStr.json b/contracts/0.1.2-rc.8/Bytes32ToStr.json new file mode 100644 index 00000000..4720e3aa --- /dev/null +++ b/contracts/0.1.2-rc.8/Bytes32ToStr.json @@ -0,0 +1,6 @@ +{ + "contractName": "Bytes32ToStr", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220937c7363b68d7eb9b4ab857daf4c1b12955f52735ed36867a13561cc03166dc264736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220937c7363b68d7eb9b4ab857daf4c1b12955f52735ed36867a13561cc03166dc264736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/BytesLib.json b/contracts/0.1.2-rc.8/BytesLib.json new file mode 100644 index 00000000..53237862 --- /dev/null +++ b/contracts/0.1.2-rc.8/BytesLib.json @@ -0,0 +1,6 @@ +{ + "contractName": "BytesLib", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212203482ebc7614bc7064bedef85d47309d2602aed8c5199935db96b5c0b0c87dbe464736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212203482ebc7614bc7064bedef85d47309d2602aed8c5199935db96b5c0b0c87dbe464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/CL4RRedeemer.json b/contracts/0.1.2-rc.8/CL4RRedeemer.json new file mode 100644 index 00000000..c50f9462 --- /dev/null +++ b/contracts/0.1.2-rc.8/CL4RRedeemer.json @@ -0,0 +1,203 @@ +{ + "contractName": "CL4RRedeemer", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_batchIndex", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "batchTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "batches", + "outputs": [ + { + "internalType": "uint256", + "name": "totalScore", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cl4r", + "outputs": [ + { + "internalType": "contract ContinuousLocking4Reputation", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract ContinuousLocking4Reputation", + "name": "_cl4r", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "startTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610e23806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80634ea2c7ec116100715780634ea2c7ec146101505780635aef7de6146101585780636c9d43b61461016057806378e9792514610168578063afe0e33c14610170578063b32c4d8d14610178576100a9565b80630c87b529146100ae5780631e9a6950146100d25780633d1678f4146101105780633edf7ca114610118578063485cc95514610120575b600080fd5b6100b6610195565b604080516001600160a01b039092168252519081900360200190f35b6100fe600480360360408110156100e857600080fd5b506001600160a01b0381351690602001356101a4565b60408051918252519081900360200190f35b6100fe6107dc565b6100b66107e2565b61014e6004803603604081101561013657600080fd5b506001600160a01b03813581169160200135166107f1565b005b6100fe610a13565b6100b6610a19565b6100fe610a28565b6100fe610a2e565b6100fe610a34565b6100fe6004803603602081101561018e57600080fd5b5035610a3a565b603b546001600160a01b031681565b600060395442116101f5576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6101fd610d5d565b50604080516060808201835260008083526020830181905282840152603b5483516329b8695360e21b81526001600160a01b03888116600483015260248201889052945193949091169263a6e1a54c92604480840193919291829003018186803b15801561026a57600080fd5b505afa15801561027e573d6000803e3d6000fd5b505050506040513d606081101561029457600080fd5b5080516020808301516040938401519385019390935283018290528252610302576040805162461bcd60e51b815260206004820152601960248201527f5f6c6f636b696e67496420646f6573206e6f7420657869737400000000000000604482015290519081900360640190fd5b6000603a546038548360200151038161031757fe5b0490506000603a5460385442038161032b57fe5b049050600061035161034a856040015185610a4c90919063ffffffff16565b8390610aad565b90505b808310156106185760008381526036602090815260408083208984526001019091529020546104c657603b546040805163b32c4d8d60e01b81526004810186905290516001600160a01b039092169163b32c4d8d91602480820192602092909190829003018186803b1580156103c957600080fd5b505afa1580156103dd573d6000803e3d6000fd5b505050506040513d60208110156103f357600080fd5b50516000848152603660209081526040808320938455898352600290930181529082902054603b5483516377ad1f2560e11b815260048101889052602481018b9052935191936001600160a01b039091169263ef5a3e4a92604480840193829003018186803b15801561046557600080fd5b505afa158015610479573d6000803e3d6000fd5b505050506040513d602081101561048f57600080fd5b505160008581526036602090815260408083208b845260018101835281842095909403948590556002909301905220805490910190555b60008381526036602090815260408083208984526001810190925290912054801561060b5760008881526001830160209081526040808320839055603b54815163029489a960e01b8152600481018a905291516001600160a01b039091169263029489a99260248082019391829003018186803b15801561054657600080fd5b505afa15801561055a573d6000803e3d6000fd5b505050506040513d602081101561057057600080fd5b50519050600061058861058284610ac3565b83610ada565b905060006105a28261059d8760000154610ac3565b610b3e565b90506105ae8a82610a4c565b99508b6001600160a01b03168b7facf9103edd7d12d169ab5037ce643ee56e59d5986362a9e903d86f2544fefcaa6105e584610b59565b604080516001600160d81b03929092168252602082018d90528051918290030190a35050505b5050600190920191610354565b61062185610b59565b6001600160d81b0316945060008511610681576040805162461bcd60e51b815260206004820152601960248201527f72657075746174696f6e20746f2072656465656d206973203000000000000000604482015290519081900360640190fd5b60375461068e9086610b65565b60375560335460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156106d657600080fd5b505afa1580156106ea573d6000803e3d6000fd5b505050506040513d602081101561070057600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b038a811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561075557600080fd5b505af1158015610769573d6000803e3d6000fd5b505050506040513d602081101561077f57600080fd5b50516107d2576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b5050505092915050565b60395481565b6034546001600160a01b031681565b6107fa82610ba7565b6001600160a01b03811661083f5760405162461bcd60e51b8152600401808060200182810382526041815260200180610d7f6041913960600191505060405180910390fd5b603b80546001600160a01b0319166001600160a01b038316908117909155604080516378e9792560e01b815290516378e9792591600480820192602092909190829003018186803b15801561089357600080fd5b505afa1580156108a7573d6000803e3d6000fd5b505050506040513d60208110156108bd57600080fd5b505160385560408051632bf838cf60e21b815290516001600160a01b0383169163afe0e33c916004808301926020929190829003018186803b15801561090257600080fd5b505afa158015610916573d6000803e3d6000fd5b505050506040513d602081101561092c57600080fd5b505160375560408051630f459e3d60e21b815290516001600160a01b03831691633d1678f4916004808301926020929190829003018186803b15801561097157600080fd5b505afa158015610985573d6000803e3d6000fd5b505050506040513d602081101561099b57600080fd5b50516039556040805163364ea1db60e11b815290516001600160a01b03831691636c9d43b6916004808301926020929190829003018186803b1580156109e057600080fd5b505afa1580156109f4573d6000803e3d6000fd5b505050506040513d6020811015610a0a57600080fd5b5051603a555050565b60355481565b6033546001600160a01b031681565b603a5481565b60385481565b60375481565b60366020526000908152604090205481565b600082820183811015610aa6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000818310610abc5781610aa6565b5090919050565b6001600160d81b0381166501000000000002919050565b600082820282848281610ae957fe5b0414610b34576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b60008165010000000000840281610b5157fe5b049392505050565b65010000000000900490565b6000610aa683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610cc0565b600054610100900460ff1680610bc05750610bc0610d57565b80610bce575060005460ff16155b610c095760405162461bcd60e51b815260040180806020018281038252602e815260200180610dc0602e913960400191505060405180910390fd5b600054610100900460ff16158015610c34576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610c8f576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610cbc576000805461ff00191690555b5050565b60008184841115610d4f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d14578181015183820152602001610cfc565b50505050905090810190601f168015610d415780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b303b1590565b6040518060600160405280600081526020016000815260200160008152509056fe436f6e74696e756f75734c6f636b696e673452657075746174696f6e207265666572656e636520636f6e7472616374206d75737420626520737065636966696564436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a264697066735822122007b96bf5602b6b0de77e9551522d995a1ae975f7b2339b99ab74a3958b6e3d8d64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80634ea2c7ec116100715780634ea2c7ec146101505780635aef7de6146101585780636c9d43b61461016057806378e9792514610168578063afe0e33c14610170578063b32c4d8d14610178576100a9565b80630c87b529146100ae5780631e9a6950146100d25780633d1678f4146101105780633edf7ca114610118578063485cc95514610120575b600080fd5b6100b6610195565b604080516001600160a01b039092168252519081900360200190f35b6100fe600480360360408110156100e857600080fd5b506001600160a01b0381351690602001356101a4565b60408051918252519081900360200190f35b6100fe6107dc565b6100b66107e2565b61014e6004803603604081101561013657600080fd5b506001600160a01b03813581169160200135166107f1565b005b6100fe610a13565b6100b6610a19565b6100fe610a28565b6100fe610a2e565b6100fe610a34565b6100fe6004803603602081101561018e57600080fd5b5035610a3a565b603b546001600160a01b031681565b600060395442116101f5576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6101fd610d5d565b50604080516060808201835260008083526020830181905282840152603b5483516329b8695360e21b81526001600160a01b03888116600483015260248201889052945193949091169263a6e1a54c92604480840193919291829003018186803b15801561026a57600080fd5b505afa15801561027e573d6000803e3d6000fd5b505050506040513d606081101561029457600080fd5b5080516020808301516040938401519385019390935283018290528252610302576040805162461bcd60e51b815260206004820152601960248201527f5f6c6f636b696e67496420646f6573206e6f7420657869737400000000000000604482015290519081900360640190fd5b6000603a546038548360200151038161031757fe5b0490506000603a5460385442038161032b57fe5b049050600061035161034a856040015185610a4c90919063ffffffff16565b8390610aad565b90505b808310156106185760008381526036602090815260408083208984526001019091529020546104c657603b546040805163b32c4d8d60e01b81526004810186905290516001600160a01b039092169163b32c4d8d91602480820192602092909190829003018186803b1580156103c957600080fd5b505afa1580156103dd573d6000803e3d6000fd5b505050506040513d60208110156103f357600080fd5b50516000848152603660209081526040808320938455898352600290930181529082902054603b5483516377ad1f2560e11b815260048101889052602481018b9052935191936001600160a01b039091169263ef5a3e4a92604480840193829003018186803b15801561046557600080fd5b505afa158015610479573d6000803e3d6000fd5b505050506040513d602081101561048f57600080fd5b505160008581526036602090815260408083208b845260018101835281842095909403948590556002909301905220805490910190555b60008381526036602090815260408083208984526001810190925290912054801561060b5760008881526001830160209081526040808320839055603b54815163029489a960e01b8152600481018a905291516001600160a01b039091169263029489a99260248082019391829003018186803b15801561054657600080fd5b505afa15801561055a573d6000803e3d6000fd5b505050506040513d602081101561057057600080fd5b50519050600061058861058284610ac3565b83610ada565b905060006105a28261059d8760000154610ac3565b610b3e565b90506105ae8a82610a4c565b99508b6001600160a01b03168b7facf9103edd7d12d169ab5037ce643ee56e59d5986362a9e903d86f2544fefcaa6105e584610b59565b604080516001600160d81b03929092168252602082018d90528051918290030190a35050505b5050600190920191610354565b61062185610b59565b6001600160d81b0316945060008511610681576040805162461bcd60e51b815260206004820152601960248201527f72657075746174696f6e20746f2072656465656d206973203000000000000000604482015290519081900360640190fd5b60375461068e9086610b65565b60375560335460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156106d657600080fd5b505afa1580156106ea573d6000803e3d6000fd5b505050506040513d602081101561070057600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b038a811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561075557600080fd5b505af1158015610769573d6000803e3d6000fd5b505050506040513d602081101561077f57600080fd5b50516107d2576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b5050505092915050565b60395481565b6034546001600160a01b031681565b6107fa82610ba7565b6001600160a01b03811661083f5760405162461bcd60e51b8152600401808060200182810382526041815260200180610d7f6041913960600191505060405180910390fd5b603b80546001600160a01b0319166001600160a01b038316908117909155604080516378e9792560e01b815290516378e9792591600480820192602092909190829003018186803b15801561089357600080fd5b505afa1580156108a7573d6000803e3d6000fd5b505050506040513d60208110156108bd57600080fd5b505160385560408051632bf838cf60e21b815290516001600160a01b0383169163afe0e33c916004808301926020929190829003018186803b15801561090257600080fd5b505afa158015610916573d6000803e3d6000fd5b505050506040513d602081101561092c57600080fd5b505160375560408051630f459e3d60e21b815290516001600160a01b03831691633d1678f4916004808301926020929190829003018186803b15801561097157600080fd5b505afa158015610985573d6000803e3d6000fd5b505050506040513d602081101561099b57600080fd5b50516039556040805163364ea1db60e11b815290516001600160a01b03831691636c9d43b6916004808301926020929190829003018186803b1580156109e057600080fd5b505afa1580156109f4573d6000803e3d6000fd5b505050506040513d6020811015610a0a57600080fd5b5051603a555050565b60355481565b6033546001600160a01b031681565b603a5481565b60385481565b60375481565b60366020526000908152604090205481565b600082820183811015610aa6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000818310610abc5781610aa6565b5090919050565b6001600160d81b0381166501000000000002919050565b600082820282848281610ae957fe5b0414610b34576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b60008165010000000000840281610b5157fe5b049392505050565b65010000000000900490565b6000610aa683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610cc0565b600054610100900460ff1680610bc05750610bc0610d57565b80610bce575060005460ff16155b610c095760405162461bcd60e51b815260040180806020018281038252602e815260200180610dc0602e913960400191505060405180910390fd5b600054610100900460ff16158015610c34576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610c8f576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610cbc576000805461ff00191690555b5050565b60008184841115610d4f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d14578181015183820152602001610cfc565b50505050905090810190601f168015610d415780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b303b1590565b6040518060600160405280600081526020016000815260200160008152509056fe436f6e74696e756f75734c6f636b696e673452657075746174696f6e207265666572656e636520636f6e7472616374206d75737420626520737065636966696564436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a264697066735822122007b96bf5602b6b0de77e9551522d995a1ae975f7b2339b99ab74a3958b6e3d8d64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/CommonInterface.json b/contracts/0.1.2-rc.8/CommonInterface.json new file mode 100644 index 00000000..d43febda --- /dev/null +++ b/contracts/0.1.2-rc.8/CommonInterface.json @@ -0,0 +1,33 @@ +{ + "contractName": "CommonInterface", + "abi": [ + { + "inputs": [], + "name": "FUNDED_BEFORE_DEADLINE_KEY", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "FUNDED_BEFORE_DEADLINE_VALUE", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610148806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80639537ba0c1461003b578063e4392dbb146100b8575b600080fd5b6100436100c0565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561007d578181015183820152602001610065565b50505050905090810190601f1680156100aa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100436100e0565b604051806040016040528060048152602001635452554560e01b81525081565b6040518060400160405280601681526020017546554e4445445f4245464f52455f444541444c494e4560501b8152508156fea2646970667358221220cd80251ffa0687a6f9b27f1cd8eeef2b47148ae670962c85644ca300b76c411664736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80639537ba0c1461003b578063e4392dbb146100b8575b600080fd5b6100436100c0565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561007d578181015183820152602001610065565b50505050905090810190601f1680156100aa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6100436100e0565b604051806040016040528060048152602001635452554560e01b81525081565b6040518060400160405280601681526020017546554e4445445f4245464f52455f444541444c494e4560501b8152508156fea2646970667358221220cd80251ffa0687a6f9b27f1cd8eeef2b47148ae670962c85644ca300b76c411664736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/CommonToken.json b/contracts/0.1.2-rc.8/CommonToken.json new file mode 100644 index 00000000..5ae13a34 --- /dev/null +++ b/contracts/0.1.2-rc.8/CommonToken.json @@ -0,0 +1,388 @@ +{ + "contractName": "CommonToken", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_name", + "type": "string" + }, + { + "internalType": "string", + "name": "_symbol", + "type": "string" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506114b8806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a25780639dc29fac116100715780639dc29fac146103ba578063a457c2d7146103e6578063a9059cbb14610412578063dd62ed3e1461043e578063f2fde38b1461046c5761010b565b806370a0823114610360578063715018a6146103865780638da5cb5b1461038e57806395d89b41146103b25761010b565b806323b872dd116100de57806323b872dd146102b4578063313ce567146102ea578063395093511461030857806340c10f19146103345761010b565b806306fdde0314610110578063077f224a1461018d578063095ea7b31461025a57806318160ddd1461029a575b600080fd5b610118610492565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610258600480360360608110156101a357600080fd5b8101906020810181356401000000008111156101be57600080fd5b8201836020820111156101d057600080fd5b803590602001918460018302840111640100000000831117156101f257600080fd5b91939092909160208101903564010000000081111561021057600080fd5b82018360208201111561022257600080fd5b8035906020019184600183028401116401000000008311171561024457600080fd5b9193509150356001600160a01b0316610528565b005b6102866004803603604081101561027057600080fd5b506001600160a01b038135169060200135610653565b604080519115158252519081900360200190f35b6102a2610670565b60408051918252519081900360200190f35b610286600480360360608110156102ca57600080fd5b506001600160a01b03813581169160208101359091169060400135610676565b6102f26106fd565b6040805160ff9092168252519081900360200190f35b6102866004803603604081101561031e57600080fd5b506001600160a01b038135169060200135610706565b6102586004803603604081101561034a57600080fd5b506001600160a01b038135169060200135610754565b6102a26004803603602081101561037657600080fd5b50356001600160a01b03166107ba565b6102586107d5565b610396610877565b604080516001600160a01b039092168252519081900360200190f35b610118610886565b610258600480360360408110156103d057600080fd5b506001600160a01b0381351690602001356108e7565b610286600480360360408110156103fc57600080fd5b506001600160a01b038135169060200135610949565b6102866004803603604081101561042857600080fd5b506001600160a01b0381351690602001356109b1565b6102a26004803603604081101561045457600080fd5b506001600160a01b03813581169160200135166109c5565b6102586004803603602081101561048257600080fd5b50356001600160a01b03166109f0565b60688054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b600054610100900460ff16806105415750610541610ae9565b8061054f575060005460ff16155b61058a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113c6602e913960400191505060405180910390fd5b600054610100900460ff161580156105b5576000805460ff1961ff0019909116610100171660011790555b61062886868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250610aef92505050565b610630610bc8565b610639826109f0565b801561064b576000805461ff00191690555b505050505050565b6000610667610660610cc2565b8484610cc6565b50600192915050565b60675490565b6000610683848484610db2565b6106f38461068f610cc2565b6106ee8560405180606001604052806028815260200161137e602891396001600160a01b038a166000908152606660205260408120906106cd610cc2565b6001600160a01b031681526020810191909152604001600020549190610f0f565b610cc6565b5060019392505050565b606a5460ff1690565b6000610667610713610cc2565b846106ee8560666000610724610cc2565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610fa6565b61075c610cc2565b6097546001600160a01b039081169116146107ac576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6107b68282611007565b5050565b6001600160a01b031660009081526065602052604090205490565b6107dd610cc2565b6097546001600160a01b0390811691161461082d576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6097546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3609780546001600160a01b0319169055565b6097546001600160a01b031690565b60698054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561051e5780601f106104f35761010080835404028352916020019161051e565b6108ef610cc2565b6097546001600160a01b0390811691161461093f576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6107b682826110f9565b6000610667610956610cc2565b846106ee8560405180606001604052806025815260200161145e6025913960666000610980610cc2565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610f0f565b60006106676109be610cc2565b8484610db2565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b6109f8610cc2565b6097546001600160a01b03908116911614610a48576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6001600160a01b038116610a8d5760405162461bcd60e51b81526004018080602001828103825260268152602001806113106026913960400191505060405180910390fd5b6097546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3609780546001600160a01b0319166001600160a01b0392909216919091179055565b303b1590565b600054610100900460ff1680610b085750610b08610ae9565b80610b16575060005460ff16155b610b515760405162461bcd60e51b815260040180806020018281038252602e8152602001806113c6602e913960400191505060405180910390fd5b600054610100900460ff16158015610b7c576000805460ff1961ff0019909116610100171660011790555b8251610b8f906068906020860190611237565b508151610ba3906069906020850190611237565b50606a805460ff191660121790558015610bc3576000805461ff00191690555b505050565b600054610100900460ff1680610be15750610be1610ae9565b80610bef575060005460ff16155b610c2a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113c6602e913960400191505060405180910390fd5b600054610100900460ff16158015610c55576000805460ff1961ff0019909116610100171660011790555b6000610c5f610cc2565b609780546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610cbf576000805461ff00191690555b50565b3390565b6001600160a01b038316610d0b5760405162461bcd60e51b815260040180806020018281038252602481526020018061143a6024913960400191505060405180910390fd5b6001600160a01b038216610d505760405162461bcd60e51b81526004018080602001828103825260228152602001806113366022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610df75760405162461bcd60e51b81526004018080602001828103825260258152602001806114156025913960400191505060405180910390fd5b6001600160a01b038216610e3c5760405162461bcd60e51b81526004018080602001828103825260238152602001806112cb6023913960400191505060405180910390fd5b610e47838383610bc3565b610e8481604051806060016040528060268152602001611358602691396001600160a01b0386166000908152606560205260409020549190610f0f565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610eb39082610fa6565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610f9e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f63578181015183820152602001610f4b565b50505050905090810190601f168015610f905780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015611000576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611062576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61106e60008383610bc3565b60675461107b9082610fa6565b6067556001600160a01b0382166000908152606560205260409020546110a19082610fa6565b6001600160a01b03831660008181526065602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b03821661113e5760405162461bcd60e51b81526004018080602001828103825260218152602001806113f46021913960400191505060405180910390fd5b61114a82600083610bc3565b611187816040518060600160405280602281526020016112ee602291396001600160a01b0385166000908152606560205260409020549190610f0f565b6001600160a01b0383166000908152606560205260409020556067546111ad90826111f5565b6067556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b600061100083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f0f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061127857805160ff19168380011785556112a5565b828001600101855582156112a5579182015b828111156112a557825182559160200191906001019061128a565b506112b19291506112b5565b5090565b5b808211156112b157600081556001016112b656fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656445524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212209ac03525230bab98365e0f2ace69d003e42315c811e3c2790ac48e7c7c265f8464736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a25780639dc29fac116100715780639dc29fac146103ba578063a457c2d7146103e6578063a9059cbb14610412578063dd62ed3e1461043e578063f2fde38b1461046c5761010b565b806370a0823114610360578063715018a6146103865780638da5cb5b1461038e57806395d89b41146103b25761010b565b806323b872dd116100de57806323b872dd146102b4578063313ce567146102ea578063395093511461030857806340c10f19146103345761010b565b806306fdde0314610110578063077f224a1461018d578063095ea7b31461025a57806318160ddd1461029a575b600080fd5b610118610492565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015257818101518382015260200161013a565b50505050905090810190601f16801561017f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610258600480360360608110156101a357600080fd5b8101906020810181356401000000008111156101be57600080fd5b8201836020820111156101d057600080fd5b803590602001918460018302840111640100000000831117156101f257600080fd5b91939092909160208101903564010000000081111561021057600080fd5b82018360208201111561022257600080fd5b8035906020019184600183028401116401000000008311171561024457600080fd5b9193509150356001600160a01b0316610528565b005b6102866004803603604081101561027057600080fd5b506001600160a01b038135169060200135610653565b604080519115158252519081900360200190f35b6102a2610670565b60408051918252519081900360200190f35b610286600480360360608110156102ca57600080fd5b506001600160a01b03813581169160208101359091169060400135610676565b6102f26106fd565b6040805160ff9092168252519081900360200190f35b6102866004803603604081101561031e57600080fd5b506001600160a01b038135169060200135610706565b6102586004803603604081101561034a57600080fd5b506001600160a01b038135169060200135610754565b6102a26004803603602081101561037657600080fd5b50356001600160a01b03166107ba565b6102586107d5565b610396610877565b604080516001600160a01b039092168252519081900360200190f35b610118610886565b610258600480360360408110156103d057600080fd5b506001600160a01b0381351690602001356108e7565b610286600480360360408110156103fc57600080fd5b506001600160a01b038135169060200135610949565b6102866004803603604081101561042857600080fd5b506001600160a01b0381351690602001356109b1565b6102a26004803603604081101561045457600080fd5b506001600160a01b03813581169160200135166109c5565b6102586004803603602081101561048257600080fd5b50356001600160a01b03166109f0565b60688054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b600054610100900460ff16806105415750610541610ae9565b8061054f575060005460ff16155b61058a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113c6602e913960400191505060405180910390fd5b600054610100900460ff161580156105b5576000805460ff1961ff0019909116610100171660011790555b61062886868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881529250889150879081908401838280828437600092019190915250610aef92505050565b610630610bc8565b610639826109f0565b801561064b576000805461ff00191690555b505050505050565b6000610667610660610cc2565b8484610cc6565b50600192915050565b60675490565b6000610683848484610db2565b6106f38461068f610cc2565b6106ee8560405180606001604052806028815260200161137e602891396001600160a01b038a166000908152606660205260408120906106cd610cc2565b6001600160a01b031681526020810191909152604001600020549190610f0f565b610cc6565b5060019392505050565b606a5460ff1690565b6000610667610713610cc2565b846106ee8560666000610724610cc2565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610fa6565b61075c610cc2565b6097546001600160a01b039081169116146107ac576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6107b68282611007565b5050565b6001600160a01b031660009081526065602052604090205490565b6107dd610cc2565b6097546001600160a01b0390811691161461082d576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6097546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3609780546001600160a01b0319169055565b6097546001600160a01b031690565b60698054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561051e5780601f106104f35761010080835404028352916020019161051e565b6108ef610cc2565b6097546001600160a01b0390811691161461093f576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6107b682826110f9565b6000610667610956610cc2565b846106ee8560405180606001604052806025815260200161145e6025913960666000610980610cc2565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610f0f565b60006106676109be610cc2565b8484610db2565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b6109f8610cc2565b6097546001600160a01b03908116911614610a48576040805162461bcd60e51b815260206004820181905260248201526000805160206113a6833981519152604482015290519081900360640190fd5b6001600160a01b038116610a8d5760405162461bcd60e51b81526004018080602001828103825260268152602001806113106026913960400191505060405180910390fd5b6097546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3609780546001600160a01b0319166001600160a01b0392909216919091179055565b303b1590565b600054610100900460ff1680610b085750610b08610ae9565b80610b16575060005460ff16155b610b515760405162461bcd60e51b815260040180806020018281038252602e8152602001806113c6602e913960400191505060405180910390fd5b600054610100900460ff16158015610b7c576000805460ff1961ff0019909116610100171660011790555b8251610b8f906068906020860190611237565b508151610ba3906069906020850190611237565b50606a805460ff191660121790558015610bc3576000805461ff00191690555b505050565b600054610100900460ff1680610be15750610be1610ae9565b80610bef575060005460ff16155b610c2a5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113c6602e913960400191505060405180910390fd5b600054610100900460ff16158015610c55576000805460ff1961ff0019909116610100171660011790555b6000610c5f610cc2565b609780546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610cbf576000805461ff00191690555b50565b3390565b6001600160a01b038316610d0b5760405162461bcd60e51b815260040180806020018281038252602481526020018061143a6024913960400191505060405180910390fd5b6001600160a01b038216610d505760405162461bcd60e51b81526004018080602001828103825260228152602001806113366022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610df75760405162461bcd60e51b81526004018080602001828103825260258152602001806114156025913960400191505060405180910390fd5b6001600160a01b038216610e3c5760405162461bcd60e51b81526004018080602001828103825260238152602001806112cb6023913960400191505060405180910390fd5b610e47838383610bc3565b610e8481604051806060016040528060268152602001611358602691396001600160a01b0386166000908152606560205260409020549190610f0f565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610eb39082610fa6565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610f9e5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f63578181015183820152602001610f4b565b50505050905090810190601f168015610f905780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015611000576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611062576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b61106e60008383610bc3565b60675461107b9082610fa6565b6067556001600160a01b0382166000908152606560205260409020546110a19082610fa6565b6001600160a01b03831660008181526065602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b03821661113e5760405162461bcd60e51b81526004018080602001828103825260218152602001806113f46021913960400191505060405180910390fd5b61114a82600083610bc3565b611187816040518060600160405280602281526020016112ee602291396001600160a01b0385166000908152606560205260409020549190610f0f565b6001600160a01b0383166000908152606560205260409020556067546111ad90826111f5565b6067556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b600061100083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f0f565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061127857805160ff19168380011785556112a5565b828001600101855582156112a5579182015b828111156112a557825182559160200191906001019061128a565b506112b19291506112b5565b5090565b5b808211156112b157600081556001016112b656fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656445524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212209ac03525230bab98365e0f2ace69d003e42315c811e3c2790ac48e7c7c265f8464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Competition.json b/contracts/0.1.2-rc.8/Competition.json new file mode 100644 index 00000000..99061d49 --- /dev/null +++ b/contracts/0.1.2-rc.8/Competition.json @@ -0,0 +1,508 @@ +{ + "contractName": "Competition", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numberOfWinners", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "_rewardSplit", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_startTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_votingStartTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_suggestionsEndTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_endTime", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_maxNumberOfVotesPerVoter", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address payable", + "name": "_contributionRewardExt", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "name": "NewCompetitionProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": true, + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "NewSuggestion", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "NewVote", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_rewardPercentage", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_snapshotBlock", + "type": "uint256" + } + ], + "name": "SnapshotBlock", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_NUMBER_OF_WINNERS", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "REDEMPTION_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "contributionRewardExt", + "outputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + } + ], + "name": "getOrderedIndexOfSuggestion", + "outputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "_contributionRewardExt", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "uint256", + "name": "numberOfWinners", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "votingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "suggestionsEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxNumberOfVotesPerVoter", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "contributionRewardExt", + "type": "address" + }, + { + "internalType": "uint256", + "name": "snapshotBlock", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "ethReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + }, + { + "internalType": "address", + "name": "admin", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "internalType": "uint256[3]", + "name": "_rewards", + "type": "uint256[3]" + }, + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "_rewardSplit", + "type": "uint256[]" + }, + { + "internalType": "uint256[5]", + "name": "_competitionParams", + "type": "uint256[5]" + }, + { + "internalType": "bool", + "name": "_proposerIsAdmin", + "type": "bool" + } + ], + "name": "proposeCompetition", + "outputs": [ + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + } + ], + "name": "redeem", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "sendLeftOverFunds", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "setSnapshotBlock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "suggest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "suggestions", + "outputs": [ + { + "internalType": "uint256", + "name": "totalVotes", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "beneficiary", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "suggestionsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_suggestionId", + "type": "uint256" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506125ad806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063ae0a97391161008c578063cffc84ba11610066578063cffc84ba14610400578063d5c8cc5214610408578063db006a7514610410578063eba9e6331461042d576100ea565b8063ae0a97391461033b578063bd9317d91461035a578063c4d66de8146103da576100ea565b8063516b9d37116100c8578063516b9d37146101fd5780635d474a00146102f2578063a65cd35a146102fa578063ab4c981c1461031e576100ea565b80630121b93f146100ef578063302a2a461461012057806332ed5b1214610164575b600080fd5b61010c6004803603602081101561010557600080fd5b503561044a565b604080519115158252519081900360200190f35b61013d6004803603602081101561013657600080fd5b503561089e565b6040805193845260208401929092526001600160a01b031682820152519081900360600190f35b6101816004803603602081101561017a57600080fd5b50356108c8565b604051808e81526020018d81526020018c81526020018b81526020018a8152602001898152602001886001600160a01b03168152602001878152602001868152602001858152602001848152602001838152602001826001600160a01b031681526020019d505050505050505050505050505060405180910390f35b6102e060048036036101a081101561021457600080fd5b81019060208101813564010000000081111561022f57600080fd5b82018360208201111561024157600080fd5b8035906020019184600183028401116401000000008311171561026357600080fd5b9193909282359260208101926001600160a01b0360808301351692909160c081019060a0013564010000000081111561029b57600080fd5b8201836020820111156102ad57600080fd5b803590602001918460208302840111640100000000831117156102cf57600080fd5b919350915060a0810135151561093a565b60408051918252519081900360200190f35b6102e0610f09565b610302610f10565b604080516001600160a01b039092168252519081900360200190f35b6102e06004803603602081101561033457600080fd5b5035610f1f565b6103586004803603602081101561035157600080fd5b5035611044565b005b6102e06004803603606081101561037057600080fd5b8135919081019060408101602082013564010000000081111561039257600080fd5b8201836020820111156103a457600080fd5b803590602001918460018302840111640100000000831117156103c657600080fd5b9193509150356001600160a01b0316611452565b610358600480360360208110156103f057600080fd5b50356001600160a01b0316611670565b6102e0611773565b6102e0611779565b6103586004803603602081101561042657600080fd5b503561177e565b6103586004803603602081101561044357600080fd5b5035611dab565b600081815260346020526040812060010154806104aa576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6104b381611dab565b60365460408051632d77bef360e11b815290516000926001600160a01b031691635aef7de6916004808301926020929190829003018186803b1580156104f857600080fd5b505afa15801561050c573d6000803e3d6000fd5b505050506040513d602081101561052257600080fd5b50516040805163089ae1c960e41b815290519192506000916001600160a01b038416916389ae1c90916004808301926020929190829003018186803b15801561056a57600080fd5b505afa15801561057e573d6000803e3d6000fd5b505050506040513d602081101561059457600080fd5b505160008481526033602090815260409182902060080154825163277166bf60e11b8152336004820152602481019190915291516001600160a01b0390931692634ee2cd7e926044808201939291829003018186803b1580156105f657600080fd5b505afa15801561060a573d6000803e3d6000fd5b505050506040513d602081101561062057600080fd5b50519050806106605760405162461bcd60e51b815260040180806020018281038252602f815260200180612359602f913960400191505060405180910390fd5b6000838152603360205260409020600581015442106106ba576040805162461bcd60e51b815260206004820152601160248201527018dbdb5c195d1a5d1a5bdb88195b991959607a1b604482015290519081900360640190fd5b600086815260346020908152604080832033845260038101909252909120541561072b576040805162461bcd60e51b815260206004820181905260248201527f616c726561647920766f746564206f6e20746869732073756767657374696f6e604482015290519081900360640190fd5b600682015433600090815260108401602052604090205410610794576040805162461bcd60e51b815260206004820152601e60248201527f657863656564206e756d626572206f6620766f74657320616c6c6f7765640000604482015290519081900360640190fd5b3360009081526010830160205260409020546107b1906001611ed4565b3360009081526010840160205260409020558054156107fc5780546000908152600f830160205260409020546107e8906001611f37565b81546000908152600f840160205260409020555b80546108089084611ed4565b8082556000908152600f83016020526040902054610827906001611ed4565b81546000908152600f84016020908152604080832093909355338252600384019052208390556108578588611f79565b6040805184815290513391899188917fd7d2b1fb5e87b2ff063bc53d745b1f45a5cdbb2f9b277888d590021844fd483e919081900360200190a45060019695505050505050565b6034602052600090815260409020805460018201546002909201549091906001600160a01b031683565b6033602052600090815260409020805460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600b8b0154600c8c0154600e909c01549a9b999a98999798969795966001600160a01b0395861696949593949293919291168d565b6000838335806109475750425b428110156109865760405162461bcd60e51b815260040180806020018281038252602f8152602001806123e7602f913960400191505060405180910390fd5b60648211156109c65760405162461bcd60e51b815260040180806020018281038252602a81526020018061252b602a913960400191505060405180910390fd5b6040850135602086013510610a0c5760405162461bcd60e51b81526004018080602001828103825260278152602001806124726027913960400191505060405180910390fd5b6020850135811115610a4f5760405162461bcd60e51b81526004018080602001828103825260298152602001806124c76029913960400191505060405180910390fd5b6060850135610a8f5760405162461bcd60e51b81526004018080602001828103825260318152602001806123076031913960400191505060405180910390fd5b604085013560808601351115610ad65760405162461bcd60e51b815260040180806020018281038252603b8152602001806124f0603b913960400191505060405180910390fd5b60808501358110610b185760405162461bcd60e51b815260040180806020018281038252603b815260200180612416603b913960400191505060405180910390fd5b604089013515610b7d576001600160a01b038816610b7d576040805162461bcd60e51b815260206004820152601c60248201527f657874656e616c20746f6b656e2063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b60008a1215610bbd5760405162461bcd60e51b815260040180806020018281038252603b815260200180612388603b913960400191505060405180910390fd5b6000805b83811015610bf857610bee898983818110610bd857fe5b9050602002013583611ed490919063ffffffff16565b9150600101610bc1565b5080606414610c4e576040805162461bcd60e51b815260206004820152601f60248201527f746f74616c20726577617264732073706c6974206973206e6f74203130302500604482015290519081900360640190fd5b6036546040516310ca123760e21b8152602481018d90526001600160a01b039091169063432848dc908f908f908f908f908f908790339060048101908190604401866060808284376000838201526001600160a01b03808916601f909201601f19169093019081528683166020820152918516604083015250828103606090810183528101899052608001898980828437600081840152601f19601f82011690508083019250505098505050505050505050602060405180830381600087803b158015610d1a57600080fd5b505af1158015610d2e573d6000803e3d6000fd5b505050506040513d6020811015610d4457600080fd5b50516000818152603360205260409020848155909450610d689060010189896122a6565b5060008481526033602090815260408083206002810186905589830135600382015589820135600582015560608a0135600682015560808a01356004820155600981018f90558d35600b820155918d0135600a8301558c0135600c820155600801558415610df2576000848152603360205260409020600e0180546001600160a01b031916331790555b6000848152603360209081526040918290206003810154600482015460058301546006840154603654600e86015488518c81529889018b9052606089018690526080890185905260a0890184905260c089018390526001600160a01b0391821660e08a018190529116610100890181905261012097890188815260019097018054988a018990528d997fcf5b519fd1c8161005ac36adf44ad5e13159b7931b236d11507e30cb053c20f0998e9992988e98909790969095909490939092916101408301908b908015610ee357602002820191906000526020600020905b815481526020019060010190808311610ecf575b50509a505050505050505050505060405180910390a25050509998505050505050505050565b6276a70081565b6036546001600160a01b031681565b60008181526034602052604081206001015480610f7f576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b600081815260336020908152604091829020600d01805483518184028101840190945280845260609392830182828015610fd857602002820191906000526020600020905b815481526020019060010190808311610fc4575b5050505050905060005b815181101561103c576000858152603460208190526040822054845190929085908590811061100d57fe5b60200260200101518152602001908152602001600020600001541115611034576001909301925b600101610fe2565b505050919050565b6000818152603360205260409020600501544290611065906276a700611ed4565b106110b7576040805162461bcd60e51b815260206004820152601d60248201527f726564656d7074696f6e20706572696f64206973207374696c6c206f6e000000604482015290519081900360640190fd5b600081815260336020526040902060060154611114576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b8061115b576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b6036546040805163d8145e2d60e01b8152600481018490529051600092839283926001600160a01b039092169163d8145e2d9160248082019261016092909190829003018186803b1580156111af57600080fd5b505afa1580156111c3573d6000803e3d6000fd5b505050506040513d6101608110156111da57600080fd5b5060c08101516101008201516101209092015160365460408051632d77bef360e11b815290519397509395509093506000926001600160a01b0390911691635aef7de691600480820192602092909190829003018186803b15801561123e57600080fd5b505afa158015611252573d6000803e3d6000fd5b505050506040513d602081101561126857600080fd5b505160365460408051636f4d4abd60e11b8152600481018990526001600160a01b03808516602483015260448201879052915193945091169163de9a957a9160648082019260009290919082900301818387803b1580156112c857600080fd5b505af11580156112dc573d6000803e3d6000fd5b50505050603660009054906101000a90046001600160a01b03166001600160a01b0316632ac8c1b286836001600160a01b031663fbfa77cf6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133e57600080fd5b505afa158015611352573d6000803e3d6000fd5b505050506040513d602081101561136857600080fd5b5051604080516001600160e01b031960e086901b16815260048101939093526001600160a01b0390911660248301526044820187905251606480830192600092919082900301818387803b1580156113bf57600080fd5b505af11580156113d3573d6000803e3d6000fd5b505060365460408051630dd14c3160e31b8152600481018a90526001600160a01b038681166024830152604482018a90529151919092169350636e8a61889250606480830192600092919082900301818387803b15801561143357600080fd5b505af1158015611447573d6000803e3d6000fd5b505050505050505050565b6000848152603360205260408120600e01546001600160a01b0316156114d9576000858152603360205260409020600e01546001600160a01b031633146114d9576040805162461bcd60e51b81526020600482015260166024820152751bdb9b1e4818591b5a5b8818d85b881cdd59d9d95cdd60521b604482015290519081900360640190fd5b60008581526033602052604090206002015442101561153f576040805162461bcd60e51b815260206004820152601b60248201527f636f6d7065746974696f6e206e6f742073746172746564207965740000000000604482015290519081900360640190fd5b600085815260336020526040902060040154421061158e5760405162461bcd60e51b81526004018080602001828103825260238152602001806125556023913960400191505060405180910390fd5b60355461159c906001611ed4565b603581905560009081526034602052604081206001018690556001600160a01b0383166115ca5750336115cd565b50815b6035805460009081526034602090815260409182902060020180546001600160a01b0319166001600160a01b038616908117909155925482518281529182018890529189917fd49d50e437830c78dfc56d998083bd2d5280b983038730ff7ca14c6a329dc549918a918a9181908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a45050603554949350505050565b600054610100900460ff16806116895750611689612109565b80611697575060005460ff16155b6116d25760405162461bcd60e51b815260040180806020018281038252602e815260200180612499602e913960400191505060405180910390fd5b600054610100900460ff161580156116fd576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166117425760405162461bcd60e51b81526004018080602001828103825260248152602001806123c36024913960400191505060405180910390fd5b603680546001600160a01b0319166001600160a01b038416179055801561176f576000805461ff00191690555b5050565b60355481565b606481565b600081815260346020526040902060010154806117d7576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b60008181526033602052604090208261182e576040805162461bcd60e51b815260206004820152601460248201527373756767657374696f6e4964206973207a65726f60601b604482015290519081900360640190fd5b42816005015410611886576040805162461bcd60e51b815260206004820152601760248201527f636f6d7065746974696f6e206973207374696c6c206f6e000000000000000000604482015290519081900360640190fd5b6005810154429061189a906276a700611ed4565b116118ec576040805162461bcd60e51b815260206004820152601960248201527f726564656d7074696f6e20706572696f64206973206f76657200000000000000604482015290519081900360640190fd5b600081600601541161193f576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b6000838152603460205260409020600201546001600160a01b03166119ab576040805162461bcd60e51b815260206004820152601f60248201527f73756767657374696f6e2077617320616c72656164792072656465656d656400604482015290519081900360640190fd5b6000838152603460205260408120600201546001600160a01b0316906119d085610f1f565b600d8401549091508110611a155760405162461bcd60e51b81526004018080602001828103825260218152602001806123386021913960400191505060405180910390fd5b60008581526034602090815260408083206002810180546001600160a01b0319169055548352600f8601909152812054825b81840181108015611a585750855481105b15611a9357611a89866001018281548110611a6f57fe5b906000526020600020015484611ed490919063ffffffff16565b9250600101611a47565b611a9d838361210f565b8654600d8801549194506000911015611b1857600d87015491505b8654821015611afa57611aed876001018381548110611ad357fe5b906000526020600020015482611ed490919063ffffffff16565b6001909201919050611ab8565b600d870154611b1590611b0e90839061210f565b8590611ed4565b93505b6000611b3c6064611b36878b600c015461215190919063ffffffff16565b9061210f565b60365460408051636f4d4abd60e11b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163de9a957a9160648082019260009290919082900301818387803b158015611b9a57600080fd5b505af1158015611bae573d6000803e3d6000fd5b50505050611bce6064611b36878b6009015461215190919063ffffffff16565b6036546040805163c4a17ec960e01b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163c4a17ec99160648082019260009290919082900301818387803b158015611c2c57600080fd5b505af1158015611c40573d6000803e3d6000fd5b50505050611c606064611b36878b600a015461215190919063ffffffff16565b6036546040805163156460d960e11b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691632ac8c1b29160648082019260009290919082900301818387803b158015611cbe57600080fd5b505af1158015611cd2573d6000803e3d6000fd5b50505050611cf26064611b36878b600b015461215190919063ffffffff16565b60365460408051630dd14c3160e31b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691636e8a61889160648082019260009290919082900301818387803b158015611d5057600080fd5b505af1158015611d64573d6000803e3d6000fd5b50506040805188815290518d93508c92507febd129592de98831789a95ee9465fa6d4c6cf79d4788ac8d7effc6c8205768d69181900360200190a350505050505050505050565b6000818152603360205260409020600301544211611e10576040805162461bcd60e51b815260206004820152601d60248201527f766f74696e6720706572696f64206e6f74207374617274656420796574000000604482015290519081900360640190fd5b600081815260336020526040902060060154611e6d576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b600081815260336020526040902060080154611ed1576000818152603360209081526040918290204360089091018190558251908152915183927f4169469c5791d1acd84c8c616355c70799ea61c4b680d68e2587e7693259233992908290030190a25b50565b600082820183811015611f2e576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000611f2e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506121aa565b6000828152603360205260408120600d810180549154909290821015611fed575060005b81811015611fd35783838281548110611fb257fe5b90600052602060002001541415611fcb5750505061176f565b600101611f9d565b825460018101845560008481526020902001849055612102565b506000805b6000868152603360205260409020548210156120a1576034600085838154811061201857fe5b90600052602060002001548152602001908152602001600020600001546034600086858154811061204557fe5b9060005260206000200154815260200190815260200160002060000154101561206f575080612096565b8484838154811061207c57fe5b90600052602060002001541415612096575050505061176f565b600190910190611ff2565b600085815260346020819052604082205486549092908790859081106120c357fe5b9060005260206000200154815260200190815260200160002060000154101561210057848482815481106120f357fe5b6000918252602090912001555b505b5050505050565b303b1590565b6000611f2e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612241565b60008261216057506000611f31565b8282028284828161216d57fe5b0414611f2e5760405162461bcd60e51b81526004018080602001828103825260218152602001806124516021913960400191505060405180910390fd5b600081848411156122395760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156121fe5781810151838201526020016121e6565b50505050905090810190601f16801561222b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836122905760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156121fe5781810151838201526020016121e6565b50600083858161229c57fe5b0495945050505050565b8280548282559060005260206000209081019282156122e1579160200282015b828111156122e15782358255916020019190600101906122c6565b506122ed9291506122f1565b5090565b5b808211156122ed57600081556001016122f256fe6d61784e756d6265724f66566f746573506572566f7465722073686f756c642062652067726561746572207468616e203073756767657374696f6e206973206e6f7420696e2077696e6e657273206c697374766f74657220686164206e6f2072657075746174696f6e207768656e20736e617073686f74207761732074616b656e6e656761746976652072657075746174696f6e206368616e6765206973206e6f7420616c6c6f77656420666f72206120636f6d7065746974696f6e636f6e747269627574696f6e5265776172644578742063616e6e6f74206265207a65726f737461727454696d652073686f756c642062652067726561746572207468616e2070726f706f73696e672074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206c61746572207468616e2070726f706f73616c2073746172742074696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77766f74696e672073746172742074696d652067726561746572207468616e20656e642074696d65436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564766f74696e672073746172742074696d6520736d616c6c6572207468616e2073746172742074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206561726c696572207468616e2070726f706f73616c20656e642074696d656e756d626572206f662077696e6e6572732067726561746572207468616e206d617820616c6c6f77656473756767657374696f6e73207375626d697373696f6e2074696d65206973206f766572a264697066735822122082593e41c04bba91e83e1153e0aa78435d7739f30b518fcc4204987eaf02d3da64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063ae0a97391161008c578063cffc84ba11610066578063cffc84ba14610400578063d5c8cc5214610408578063db006a7514610410578063eba9e6331461042d576100ea565b8063ae0a97391461033b578063bd9317d91461035a578063c4d66de8146103da576100ea565b8063516b9d37116100c8578063516b9d37146101fd5780635d474a00146102f2578063a65cd35a146102fa578063ab4c981c1461031e576100ea565b80630121b93f146100ef578063302a2a461461012057806332ed5b1214610164575b600080fd5b61010c6004803603602081101561010557600080fd5b503561044a565b604080519115158252519081900360200190f35b61013d6004803603602081101561013657600080fd5b503561089e565b6040805193845260208401929092526001600160a01b031682820152519081900360600190f35b6101816004803603602081101561017a57600080fd5b50356108c8565b604051808e81526020018d81526020018c81526020018b81526020018a8152602001898152602001886001600160a01b03168152602001878152602001868152602001858152602001848152602001838152602001826001600160a01b031681526020019d505050505050505050505050505060405180910390f35b6102e060048036036101a081101561021457600080fd5b81019060208101813564010000000081111561022f57600080fd5b82018360208201111561024157600080fd5b8035906020019184600183028401116401000000008311171561026357600080fd5b9193909282359260208101926001600160a01b0360808301351692909160c081019060a0013564010000000081111561029b57600080fd5b8201836020820111156102ad57600080fd5b803590602001918460208302840111640100000000831117156102cf57600080fd5b919350915060a0810135151561093a565b60408051918252519081900360200190f35b6102e0610f09565b610302610f10565b604080516001600160a01b039092168252519081900360200190f35b6102e06004803603602081101561033457600080fd5b5035610f1f565b6103586004803603602081101561035157600080fd5b5035611044565b005b6102e06004803603606081101561037057600080fd5b8135919081019060408101602082013564010000000081111561039257600080fd5b8201836020820111156103a457600080fd5b803590602001918460018302840111640100000000831117156103c657600080fd5b9193509150356001600160a01b0316611452565b610358600480360360208110156103f057600080fd5b50356001600160a01b0316611670565b6102e0611773565b6102e0611779565b6103586004803603602081101561042657600080fd5b503561177e565b6103586004803603602081101561044357600080fd5b5035611dab565b600081815260346020526040812060010154806104aa576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6104b381611dab565b60365460408051632d77bef360e11b815290516000926001600160a01b031691635aef7de6916004808301926020929190829003018186803b1580156104f857600080fd5b505afa15801561050c573d6000803e3d6000fd5b505050506040513d602081101561052257600080fd5b50516040805163089ae1c960e41b815290519192506000916001600160a01b038416916389ae1c90916004808301926020929190829003018186803b15801561056a57600080fd5b505afa15801561057e573d6000803e3d6000fd5b505050506040513d602081101561059457600080fd5b505160008481526033602090815260409182902060080154825163277166bf60e11b8152336004820152602481019190915291516001600160a01b0390931692634ee2cd7e926044808201939291829003018186803b1580156105f657600080fd5b505afa15801561060a573d6000803e3d6000fd5b505050506040513d602081101561062057600080fd5b50519050806106605760405162461bcd60e51b815260040180806020018281038252602f815260200180612359602f913960400191505060405180910390fd5b6000838152603360205260409020600581015442106106ba576040805162461bcd60e51b815260206004820152601160248201527018dbdb5c195d1a5d1a5bdb88195b991959607a1b604482015290519081900360640190fd5b600086815260346020908152604080832033845260038101909252909120541561072b576040805162461bcd60e51b815260206004820181905260248201527f616c726561647920766f746564206f6e20746869732073756767657374696f6e604482015290519081900360640190fd5b600682015433600090815260108401602052604090205410610794576040805162461bcd60e51b815260206004820152601e60248201527f657863656564206e756d626572206f6620766f74657320616c6c6f7765640000604482015290519081900360640190fd5b3360009081526010830160205260409020546107b1906001611ed4565b3360009081526010840160205260409020558054156107fc5780546000908152600f830160205260409020546107e8906001611f37565b81546000908152600f840160205260409020555b80546108089084611ed4565b8082556000908152600f83016020526040902054610827906001611ed4565b81546000908152600f84016020908152604080832093909355338252600384019052208390556108578588611f79565b6040805184815290513391899188917fd7d2b1fb5e87b2ff063bc53d745b1f45a5cdbb2f9b277888d590021844fd483e919081900360200190a45060019695505050505050565b6034602052600090815260409020805460018201546002909201549091906001600160a01b031683565b6033602052600090815260409020805460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600b8b0154600c8c0154600e909c01549a9b999a98999798969795966001600160a01b0395861696949593949293919291168d565b6000838335806109475750425b428110156109865760405162461bcd60e51b815260040180806020018281038252602f8152602001806123e7602f913960400191505060405180910390fd5b60648211156109c65760405162461bcd60e51b815260040180806020018281038252602a81526020018061252b602a913960400191505060405180910390fd5b6040850135602086013510610a0c5760405162461bcd60e51b81526004018080602001828103825260278152602001806124726027913960400191505060405180910390fd5b6020850135811115610a4f5760405162461bcd60e51b81526004018080602001828103825260298152602001806124c76029913960400191505060405180910390fd5b6060850135610a8f5760405162461bcd60e51b81526004018080602001828103825260318152602001806123076031913960400191505060405180910390fd5b604085013560808601351115610ad65760405162461bcd60e51b815260040180806020018281038252603b8152602001806124f0603b913960400191505060405180910390fd5b60808501358110610b185760405162461bcd60e51b815260040180806020018281038252603b815260200180612416603b913960400191505060405180910390fd5b604089013515610b7d576001600160a01b038816610b7d576040805162461bcd60e51b815260206004820152601c60248201527f657874656e616c20746f6b656e2063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b60008a1215610bbd5760405162461bcd60e51b815260040180806020018281038252603b815260200180612388603b913960400191505060405180910390fd5b6000805b83811015610bf857610bee898983818110610bd857fe5b9050602002013583611ed490919063ffffffff16565b9150600101610bc1565b5080606414610c4e576040805162461bcd60e51b815260206004820152601f60248201527f746f74616c20726577617264732073706c6974206973206e6f74203130302500604482015290519081900360640190fd5b6036546040516310ca123760e21b8152602481018d90526001600160a01b039091169063432848dc908f908f908f908f908f908790339060048101908190604401866060808284376000838201526001600160a01b03808916601f909201601f19169093019081528683166020820152918516604083015250828103606090810183528101899052608001898980828437600081840152601f19601f82011690508083019250505098505050505050505050602060405180830381600087803b158015610d1a57600080fd5b505af1158015610d2e573d6000803e3d6000fd5b505050506040513d6020811015610d4457600080fd5b50516000818152603360205260409020848155909450610d689060010189896122a6565b5060008481526033602090815260408083206002810186905589830135600382015589820135600582015560608a0135600682015560808a01356004820155600981018f90558d35600b820155918d0135600a8301558c0135600c820155600801558415610df2576000848152603360205260409020600e0180546001600160a01b031916331790555b6000848152603360209081526040918290206003810154600482015460058301546006840154603654600e86015488518c81529889018b9052606089018690526080890185905260a0890184905260c089018390526001600160a01b0391821660e08a018190529116610100890181905261012097890188815260019097018054988a018990528d997fcf5b519fd1c8161005ac36adf44ad5e13159b7931b236d11507e30cb053c20f0998e9992988e98909790969095909490939092916101408301908b908015610ee357602002820191906000526020600020905b815481526020019060010190808311610ecf575b50509a505050505050505050505060405180910390a25050509998505050505050505050565b6276a70081565b6036546001600160a01b031681565b60008181526034602052604081206001015480610f7f576040805162461bcd60e51b81526020600482015260196024820152781cdd59d9d95cdd1a5bdb88191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b600081815260336020908152604091829020600d01805483518184028101840190945280845260609392830182828015610fd857602002820191906000526020600020905b815481526020019060010190808311610fc4575b5050505050905060005b815181101561103c576000858152603460208190526040822054845190929085908590811061100d57fe5b60200260200101518152602001908152602001600020600001541115611034576001909301925b600101610fe2565b505050919050565b6000818152603360205260409020600501544290611065906276a700611ed4565b106110b7576040805162461bcd60e51b815260206004820152601d60248201527f726564656d7074696f6e20706572696f64206973207374696c6c206f6e000000604482015290519081900360640190fd5b600081815260336020526040902060060154611114576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b8061115b576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b6036546040805163d8145e2d60e01b8152600481018490529051600092839283926001600160a01b039092169163d8145e2d9160248082019261016092909190829003018186803b1580156111af57600080fd5b505afa1580156111c3573d6000803e3d6000fd5b505050506040513d6101608110156111da57600080fd5b5060c08101516101008201516101209092015160365460408051632d77bef360e11b815290519397509395509093506000926001600160a01b0390911691635aef7de691600480820192602092909190829003018186803b15801561123e57600080fd5b505afa158015611252573d6000803e3d6000fd5b505050506040513d602081101561126857600080fd5b505160365460408051636f4d4abd60e11b8152600481018990526001600160a01b03808516602483015260448201879052915193945091169163de9a957a9160648082019260009290919082900301818387803b1580156112c857600080fd5b505af11580156112dc573d6000803e3d6000fd5b50505050603660009054906101000a90046001600160a01b03166001600160a01b0316632ac8c1b286836001600160a01b031663fbfa77cf6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133e57600080fd5b505afa158015611352573d6000803e3d6000fd5b505050506040513d602081101561136857600080fd5b5051604080516001600160e01b031960e086901b16815260048101939093526001600160a01b0390911660248301526044820187905251606480830192600092919082900301818387803b1580156113bf57600080fd5b505af11580156113d3573d6000803e3d6000fd5b505060365460408051630dd14c3160e31b8152600481018a90526001600160a01b038681166024830152604482018a90529151919092169350636e8a61889250606480830192600092919082900301818387803b15801561143357600080fd5b505af1158015611447573d6000803e3d6000fd5b505050505050505050565b6000848152603360205260408120600e01546001600160a01b0316156114d9576000858152603360205260409020600e01546001600160a01b031633146114d9576040805162461bcd60e51b81526020600482015260166024820152751bdb9b1e4818591b5a5b8818d85b881cdd59d9d95cdd60521b604482015290519081900360640190fd5b60008581526033602052604090206002015442101561153f576040805162461bcd60e51b815260206004820152601b60248201527f636f6d7065746974696f6e206e6f742073746172746564207965740000000000604482015290519081900360640190fd5b600085815260336020526040902060040154421061158e5760405162461bcd60e51b81526004018080602001828103825260238152602001806125556023913960400191505060405180910390fd5b60355461159c906001611ed4565b603581905560009081526034602052604081206001018690556001600160a01b0383166115ca5750336115cd565b50815b6035805460009081526034602090815260409182902060020180546001600160a01b0319166001600160a01b038616908117909155925482518281529182018890529189917fd49d50e437830c78dfc56d998083bd2d5280b983038730ff7ca14c6a329dc549918a918a9181908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a45050603554949350505050565b600054610100900460ff16806116895750611689612109565b80611697575060005460ff16155b6116d25760405162461bcd60e51b815260040180806020018281038252602e815260200180612499602e913960400191505060405180910390fd5b600054610100900460ff161580156116fd576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166117425760405162461bcd60e51b81526004018080602001828103825260248152602001806123c36024913960400191505060405180910390fd5b603680546001600160a01b0319166001600160a01b038416179055801561176f576000805461ff00191690555b5050565b60355481565b606481565b600081815260346020526040902060010154806117d7576040805162461bcd60e51b815260206004820152601260248201527170726f706f73616c4964206973207a65726f60701b604482015290519081900360640190fd5b60008181526033602052604090208261182e576040805162461bcd60e51b815260206004820152601460248201527373756767657374696f6e4964206973207a65726f60601b604482015290519081900360640190fd5b42816005015410611886576040805162461bcd60e51b815260206004820152601760248201527f636f6d7065746974696f6e206973207374696c6c206f6e000000000000000000604482015290519081900360640190fd5b6005810154429061189a906276a700611ed4565b116118ec576040805162461bcd60e51b815260206004820152601960248201527f726564656d7074696f6e20706572696f64206973206f76657200000000000000604482015290519081900360640190fd5b600081600601541161193f576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b6000838152603460205260409020600201546001600160a01b03166119ab576040805162461bcd60e51b815260206004820152601f60248201527f73756767657374696f6e2077617320616c72656164792072656465656d656400604482015290519081900360640190fd5b6000838152603460205260408120600201546001600160a01b0316906119d085610f1f565b600d8401549091508110611a155760405162461bcd60e51b81526004018080602001828103825260218152602001806123386021913960400191505060405180910390fd5b60008581526034602090815260408083206002810180546001600160a01b0319169055548352600f8601909152812054825b81840181108015611a585750855481105b15611a9357611a89866001018281548110611a6f57fe5b906000526020600020015484611ed490919063ffffffff16565b9250600101611a47565b611a9d838361210f565b8654600d8801549194506000911015611b1857600d87015491505b8654821015611afa57611aed876001018381548110611ad357fe5b906000526020600020015482611ed490919063ffffffff16565b6001909201919050611ab8565b600d870154611b1590611b0e90839061210f565b8590611ed4565b93505b6000611b3c6064611b36878b600c015461215190919063ffffffff16565b9061210f565b60365460408051636f4d4abd60e11b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163de9a957a9160648082019260009290919082900301818387803b158015611b9a57600080fd5b505af1158015611bae573d6000803e3d6000fd5b50505050611bce6064611b36878b6009015461215190919063ffffffff16565b6036546040805163c4a17ec960e01b8152600481018d90526001600160a01b038b8116602483015260448201859052915193945091169163c4a17ec99160648082019260009290919082900301818387803b158015611c2c57600080fd5b505af1158015611c40573d6000803e3d6000fd5b50505050611c606064611b36878b600a015461215190919063ffffffff16565b6036546040805163156460d960e11b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691632ac8c1b29160648082019260009290919082900301818387803b158015611cbe57600080fd5b505af1158015611cd2573d6000803e3d6000fd5b50505050611cf26064611b36878b600b015461215190919063ffffffff16565b60365460408051630dd14c3160e31b8152600481018d90526001600160a01b038b81166024830152604482018590529151939450911691636e8a61889160648082019260009290919082900301818387803b158015611d5057600080fd5b505af1158015611d64573d6000803e3d6000fd5b50506040805188815290518d93508c92507febd129592de98831789a95ee9465fa6d4c6cf79d4788ac8d7effc6c8205768d69181900360200190a350505050505050505050565b6000818152603360205260409020600301544211611e10576040805162461bcd60e51b815260206004820152601d60248201527f766f74696e6720706572696f64206e6f74207374617274656420796574000000604482015290519081900360640190fd5b600081815260336020526040902060060154611e6d576040805162461bcd60e51b81526020600482015260176024820152761c1c9bdc1bdcd85b08191bd95cc81b9bdd08195e1a5cdd604a1b604482015290519081900360640190fd5b600081815260336020526040902060080154611ed1576000818152603360209081526040918290204360089091018190558251908152915183927f4169469c5791d1acd84c8c616355c70799ea61c4b680d68e2587e7693259233992908290030190a25b50565b600082820183811015611f2e576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6000611f2e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506121aa565b6000828152603360205260408120600d810180549154909290821015611fed575060005b81811015611fd35783838281548110611fb257fe5b90600052602060002001541415611fcb5750505061176f565b600101611f9d565b825460018101845560008481526020902001849055612102565b506000805b6000868152603360205260409020548210156120a1576034600085838154811061201857fe5b90600052602060002001548152602001908152602001600020600001546034600086858154811061204557fe5b9060005260206000200154815260200190815260200160002060000154101561206f575080612096565b8484838154811061207c57fe5b90600052602060002001541415612096575050505061176f565b600190910190611ff2565b600085815260346020819052604082205486549092908790859081106120c357fe5b9060005260206000200154815260200190815260200160002060000154101561210057848482815481106120f357fe5b6000918252602090912001555b505b5050505050565b303b1590565b6000611f2e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612241565b60008261216057506000611f31565b8282028284828161216d57fe5b0414611f2e5760405162461bcd60e51b81526004018080602001828103825260218152602001806124516021913960400191505060405180910390fd5b600081848411156122395760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156121fe5781810151838201526020016121e6565b50505050905090810190601f16801561222b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836122905760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156121fe5781810151838201526020016121e6565b50600083858161229c57fe5b0495945050505050565b8280548282559060005260206000209081019282156122e1579160200282015b828111156122e15782358255916020019190600101906122c6565b506122ed9291506122f1565b5090565b5b808211156122ed57600081556001016122f256fe6d61784e756d6265724f66566f746573506572566f7465722073686f756c642062652067726561746572207468616e203073756767657374696f6e206973206e6f7420696e2077696e6e657273206c697374766f74657220686164206e6f2072657075746174696f6e207768656e20736e617073686f74207761732074616b656e6e656761746976652072657075746174696f6e206368616e6765206973206e6f7420616c6c6f77656420666f72206120636f6d7065746974696f6e636f6e747269627574696f6e5265776172644578742063616e6e6f74206265207a65726f737461727454696d652073686f756c642062652067726561746572207468616e2070726f706f73696e672074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206c61746572207468616e2070726f706f73616c2073746172742074696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77766f74696e672073746172742074696d652067726561746572207468616e20656e642074696d65436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564766f74696e672073746172742074696d6520736d616c6c6572207468616e2073746172742074696d6573756767657374696f6e73456e6454696d652073686f756c64206265206561726c696572207468616e2070726f706f73616c20656e642074696d656e756d626572206f662077696e6e6572732067726561746572207468616e206d617820616c6c6f77656473756767657374696f6e73207375626d697373696f6e2074696d65206973206f766572a264697066735822122082593e41c04bba91e83e1153e0aa78435d7739f30b518fcc4204987eaf02d3da64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Context.json b/contracts/0.1.2-rc.8/Context.json new file mode 100644 index 00000000..5513f05c --- /dev/null +++ b/contracts/0.1.2-rc.8/Context.json @@ -0,0 +1,595 @@ +{ + "contractName": "Context", + "abi": [ + { + "inputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + } + ], + "metadata": "{\"compiler\":{\"version\":\"0.5.15+commit.6a57276f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":\"Context\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x0d4306da5305cb78f09c70c18ec86dbc66f22fa5ade90edc20e1ab88e16d4d10\",\"urls\":[\"bzz-raw://c89dee1b8e96cb83f529b8b5c93be6b420c1913363a3fed01241942f08cc968f\",\"dweb:/ipfs/QmfWWwzg9hah3YwZRFWvAwq91HLjCHkKnxXqP6uLGURUou\"]}},\"version\":1}", + "bytecode": "0x", + "deployedBytecode": "0x", + "sourceMap": "", + "deployedSourceMap": "", + "source": "pragma solidity ^0.5.0;\n\n/*\n * @dev Provides information about the current execution context, including the\n * sender of the transaction and its data. While these are generally available\n * via msg.sender and msg.data, they not should not be accessed in such a direct\n * manner, since when dealing with GSN meta-transactions the account sending and\n * paying for execution may not be the actual sender (as far as an application\n * is concerned).\n *\n * This contract is only required for intermediate, library-like contracts.\n */\ncontract Context {\n // Empty internal constructor, to prevent people from mistakenly deploying\n // an instance of this contract, with should be used via inheritance.\n constructor () internal { }\n // solhint-disable-previous-line no-empty-blocks\n\n function _msgSender() internal view returns (address) {\n return msg.sender;\n }\n\n function _msgData() internal view returns (bytes memory) {\n this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691\n return msg.data;\n }\n}\n", + "sourcePath": "@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol", + "ast": { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol", + "exportedSymbols": { + "Context": [ + 170 + ] + }, + "id": 171, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 145, + "literals": [ + "solidity", + "^", + "0.5", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 170, + "linearizedBaseContracts": [ + 170 + ], + "name": "Context", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 148, + "nodeType": "Block", + "src": "729:3:2", + "statements": [] + }, + "documentation": null, + "id": 149, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 146, + "nodeType": "ParameterList", + "parameters": [], + "src": "717:2:2" + }, + "returnParameters": { + "id": 147, + "nodeType": "ParameterList", + "parameters": [], + "src": "729:0:2" + }, + "scope": 170, + "src": "705:27:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 157, + "nodeType": "Block", + "src": "845:34:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 154, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "862:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "862:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 153, + "id": 156, + "nodeType": "Return", + "src": "855:17:2" + } + ] + }, + "documentation": null, + "id": 158, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_msgSender", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 150, + "nodeType": "ParameterList", + "parameters": [], + "src": "810:2:2" + }, + "returnParameters": { + "id": 153, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 152, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 158, + "src": "836:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 151, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "836:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "835:9:2" + }, + "scope": 170, + "src": "791:88:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 168, + "nodeType": "Block", + "src": "942:165:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 163, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "952:4:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Context_$170", + "typeString": "contract Context" + } + }, + "id": 164, + "nodeType": "ExpressionStatement", + "src": "952:4:2" + }, + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 165, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "1092:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1092:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "functionReturnParameters": 162, + "id": 167, + "nodeType": "Return", + "src": "1085:15:2" + } + ] + }, + "documentation": null, + "id": 169, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_msgData", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 159, + "nodeType": "ParameterList", + "parameters": [], + "src": "902:2:2" + }, + "returnParameters": { + "id": 162, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 161, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 169, + "src": "928:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 160, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "928:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "927:14:2" + }, + "scope": 170, + "src": "885:222:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 171, + "src": "529:580:2" + } + ], + "src": "0:1110:2" + }, + "legacyAST": { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol", + "exportedSymbols": { + "Context": [ + 170 + ] + }, + "id": 171, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 145, + "literals": [ + "solidity", + "^", + "0.5", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 170, + "linearizedBaseContracts": [ + 170 + ], + "name": "Context", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 148, + "nodeType": "Block", + "src": "729:3:2", + "statements": [] + }, + "documentation": null, + "id": 149, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 146, + "nodeType": "ParameterList", + "parameters": [], + "src": "717:2:2" + }, + "returnParameters": { + "id": 147, + "nodeType": "ParameterList", + "parameters": [], + "src": "729:0:2" + }, + "scope": 170, + "src": "705:27:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 157, + "nodeType": "Block", + "src": "845:34:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 154, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "862:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "862:10:2", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 153, + "id": 156, + "nodeType": "Return", + "src": "855:17:2" + } + ] + }, + "documentation": null, + "id": 158, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_msgSender", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 150, + "nodeType": "ParameterList", + "parameters": [], + "src": "810:2:2" + }, + "returnParameters": { + "id": 153, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 152, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 158, + "src": "836:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 151, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "836:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "835:9:2" + }, + "scope": 170, + "src": "791:88:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + }, + { + "body": { + "id": 168, + "nodeType": "Block", + "src": "942:165:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 163, + "name": "this", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "952:4:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Context_$170", + "typeString": "contract Context" + } + }, + "id": 164, + "nodeType": "ExpressionStatement", + "src": "952:4:2" + }, + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 165, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "1092:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "data", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1092:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes calldata" + } + }, + "functionReturnParameters": 162, + "id": 167, + "nodeType": "Return", + "src": "1085:15:2" + } + ] + }, + "documentation": null, + "id": 169, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_msgData", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 159, + "nodeType": "ParameterList", + "parameters": [], + "src": "902:2:2" + }, + "returnParameters": { + "id": 162, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 161, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 169, + "src": "928:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 160, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "928:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "927:14:2" + }, + "scope": 170, + "src": "885:222:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "internal" + } + ], + "scope": 171, + "src": "529:580:2" + } + ], + "src": "0:1110:2" + }, + "compiler": { + "name": "solc", + "version": "0.5.15+commit.6a57276f.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.20", + "updatedAt": "2019-12-22T14:03:18.970Z", + "devdoc": { + "methods": {} + }, + "userdoc": { + "methods": {} + } +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ContextUpgradeSafe.json b/contracts/0.1.2-rc.8/ContextUpgradeSafe.json new file mode 100644 index 00000000..fee6a5a1 --- /dev/null +++ b/contracts/0.1.2-rc.8/ContextUpgradeSafe.json @@ -0,0 +1,6 @@ +{ + "contractName": "ContextUpgradeSafe", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220fe661dc0dd617e81159088fc26a41d59a4fedf80e359a6e9bf5410ffb407ea6f64736f6c634300060c0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220fe661dc0dd617e81159088fc26a41d59a4fedf80e359a6e9bf5410ffb407ea6f64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ContinuousLocking4Reputation.json b/contracts/0.1.2-rc.8/ContinuousLocking4Reputation.json new file mode 100644 index 00000000..9eb76e37 --- /dev/null +++ b/contracts/0.1.2-rc.8/ContinuousLocking4Reputation.json @@ -0,0 +1,596 @@ +{ + "contractName": "ContinuousLocking4Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_extendPeriod", + "type": "uint256" + } + ], + "name": "ExtendLocking", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "LockToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_batchIndex", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_LOCKING_BATCHES_HARDCAP", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "batchTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "batches", + "outputs": [ + { + "internalType": "uint256", + "name": "totalScore", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "batchesIndexCap", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_extendPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchIndexToLockIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "extendLocking", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_batchIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + } + ], + "name": "getLockingIdScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_batchIndex", + "type": "uint256" + } + ], + "name": "getRepRewardPerBatch", + "outputs": [ + { + "internalType": "uint256", + "name": "repReward", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_startTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxLockingBatches", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_repRewardConstA", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_repRewardConstB", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchesIndexCap", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_period", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_batchIndexToLockIn", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "lock", + "outputs": [ + { + "internalType": "uint256", + "name": "lockingId", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "lockCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lockingTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "period", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxLockingBatches", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_lockingId", + "type": "uint256" + } + ], + "name": "release", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "repRewardConstA", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "repRewardConstB", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "startTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "token", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611beb806100206000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c80636c9d43b6116100de578063a6e1a54c11610097578063c348a24b11610071578063c348a24b14610352578063ef5a3e4a1461035a578063f6a740011461037d578063fc0c546a146103e757610173565b8063a6e1a54c146102e3578063afe0e33c1461032d578063b32c4d8d1461033557610173565b80636c9d43b6146102635780636e57307b1461026b578063746c0a601461029c57806378e97925146102a45780637b3e46f8146102ac5780638db564c2146102db57610173565b80634ea2c7ec116101305780634ea2c7ec14610233578063591451f71461023b5780635aef7de6146102435780635b42f48b1461024b5780635eff3f2914610253578063696da9211461025b57610173565b8063029489a9146101785780630357371d146101a757806303840c6c146101d35780631e9a6950146101db5780633d1678f4146102075780633edf7ca11461020f575b600080fd5b6101956004803603602081101561018e57600080fd5b50356103ef565b60408051918252519081900360200190f35b610195600480360360408110156101bd57600080fd5b506001600160a01b038135169060200135610422565b61019561057a565b610195600480360360408110156101f157600080fd5b506001600160a01b038135169060200135610580565b61019561094b565b610217610951565b604080516001600160a01b039092168252519081900360200190f35b610195610960565b610195610966565b61021761096c565b61019561097b565b610195610981565b610195610986565b61019561098c565b61029a6004803603608081101561028157600080fd5b5080359060208101359060408101359060600135610992565b005b610195610c94565b610195610c9a565b610195600480360360808110156102c257600080fd5b5080359060208101359060408101359060600135610ca0565b610195610fa1565b61030f600480360360408110156102f957600080fd5b506001600160a01b038135169060200135610fa7565b60408051938452602084019290925282820152519081900360600190f35b610195610fd3565b6101956004803603602081101561034b57600080fd5b5035610fd9565b610195610feb565b6101956004803603604081101561037057600080fd5b5080359060200135610ff1565b61029a600480360361016081101561039457600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c08201359160e08101359161010082013591610120810135909116906101400135611015565b61021761122e565b6000604354821161041d5761041a6041546104158460425461123d90919063ffffffff16565b61128e565b90505b919050565b6001600160a01b038216600090815260376020908152604080832084845290915281208054610498576040805162461bcd60e51b815260206004820152601860248201527f6e6f20616d6f756e74206c65667420746f20756e6c6f636b0000000000000000604482015290519081900360640190fd5b805460008255603d54600283015460018401549294506104b99291026112f2565b421161050c576040805162461bcd60e51b815260206004820152601e60248201527f6c6f636b696e6720706572696f64206973207374696c6c206163746976650000604482015290519081900360640190fd5b6040546105199083611353565b604055603e54610533906001600160a01b03168584611395565b6040805183815290516001600160a01b0386169185917fe332e9963bc980fb82ccd3e7e181d76bddde349eec46b4ba393f3444529cd17f9181900360200190a35092915050565b60425481565b6000603b5442116105d1576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038316600090815260376020908152604080832085845290915290206001810154610646576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6000603d54603a548360010154038161065b57fe5b0490506000603d54603a5442038161066f57fe5b049050600061069561068e8560020154856112f290919063ffffffff16565b83906113ec565b90505b808310156107875760008381526038602090815260408083208984526001810190925290912054801561077a57600088815260018301602052604081208190556106e1866103ef565b905060006106f76106f184611402565b8361128e565b905060006107118261070c8760000154611402565b611417565b905061071d8a826112f2565b99508b6001600160a01b03168b7facf9103edd7d12d169ab5037ce643ee56e59d5986362a9e903d86f2544fefcaa61075484611430565b604080516001600160d81b03929092168252602082018d90528051918290030190a35050505b5050600190920191610698565b61079085611430565b6001600160d81b03169450600085116107f0576040805162461bcd60e51b815260206004820152601960248201527f72657075746174696f6e20746f2072656465656d206973203000000000000000604482015290519081900360640190fd5b6039546107fd9086611353565b60395560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561084557600080fd5b505afa158015610859573d6000803e3d6000fd5b505050506040513d602081101561086f57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b038a811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156108c457600080fd5b505af11580156108d8573d6000803e3d6000fd5b505050506040513d60208110156108ee57600080fd5b5051610941576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b5050505092915050565b603b5481565b6035546001600160a01b031681565b60365481565b60415481565b6034546001600160a01b031681565b603c5481565b601881565b60005490565b603d5481565b8060005481146109d35760405162461bcd60e51b8152600401808060200182810382526028815260200180611a726028913960400191505060405180910390fd5b33600090815260376020908152604080832086845290915290206001810154610a3f576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6000610a8186603d54610a73603a54610a6d603d5488600201540288600101546112f290919063ffffffff16565b90611353565b81610a7a57fe5b0490611353565b90506000610a8f82896112f2565b9050603c54811115610ad25760405162461bcd60e51b815260040180806020018281038252602a815260200180611999602a913960400191505060405180910390fd5b60008811610b27576040805162461bcd60e51b815260206004820152601960248201527f5f657874656e64506572696f64206d757374206265203e203000000000000000604482015290519081900360640190fd5b604354610b3488836112f2565b1115610b715760405162461bcd60e51b8152600401808060200182810382526028815260200180611af66028913960400191505060405180910390fd5b6000603d54603a54420381610b8257fe5b049050878114610bd1576040805162461bcd60e51b81526020600482015260156024820152746c6f636b696e67206973206e6f742061637469766560581b604482015290519081900360640190fd5b60005b82811015610c3d5781810160009081526038602052604081208654909190610bff908487039061143a565b60008b81526001840160205260409020548354919250610c2391610a6d90846112f2565b825560008a81526001928301602052604090205501610bd4565b506002840154610c4d908a6112f2565b6002850155604080518a81529051889133917fbf1612e584a5355572c05134f25811613efa611499c6597f74d7dde53adc104c9181900360200190a3505050505050505050565b60435481565b603a5481565b6000816000548114610ce35760405162461bcd60e51b8152600401808060200182810382526028815260200180611a726028913960400191505060405180910390fd5b60008611610d30576040805162461bcd60e51b815260206004820152601560248201527405f616d6f756e742073686f756c64206265203e203605c1b604482015290519081900360640190fd5b603a54421015610d715760405162461bcd60e51b8152600401808060200182810382526033815260200180611a126033913960400191505060405180910390fd5b603c54851115610db25760405162461bcd60e51b8152600401808060200182810382526022815260200180611a9a6022913960400191505060405180910390fd5b60008511610dfd576040805162461bcd60e51b815260206004820152601360248201527205f706572696f64206d757374206265203e203606c1b604482015290519081900360640190fd5b604354610e0a85876112f2565b1115610e475760405162461bcd60e51b81526004018080602001828103825260388152602001806119186038913960400191505060405180910390fd5b603f54610e559060016112f2565b603f819055336000818152603760209081526040808320858452909152902088815560028101889055426001820155603e5492945091610ea2916001600160a01b0390911690308a611493565b6000603d54603a54420381610eb357fe5b049050858114610ef45760405162461bcd60e51b8152600401808060200182810382526044815260200180611b726044913960600191505060405180910390fd5b60005b87811015610f4657818101600090815260386020526040812090610f1d838b038c61143a565b8254909150610f2c90826112f2565b825560008781526001928301602052604090205501610ef7565b50604054610f5490896112f2565b60409081558051898152602081018990528151869233927fe24d345c42b1d6b6d4bdaf4acbd768c1dfdfb0242ff6df221c68ce443b8c2d0d929081900390910190a3505050949350505050565b603f5481565b603760209081526000928352604080842090915290825290208054600182015460029092015490919083565b60395481565b60386020526000908152604090205481565b60405481565b60008281526038602090815260408083208484526001019091529020545b92915050565b61101e8b6114f3565b600f8811611073576040805162461bcd60e51b815260206004820152601860248201527f626174636854696d652073686f756c64206265203e2031350000000000000000604482015290519081900360640190fd5b60188611156110b35760405162461bcd60e51b815260040180806020018281038252603a815260200180611abc603a913960400191505060405180910390fd5b6110bd89896112f2565b8710156110fb5760405162461bcd60e51b815260040180806020018281038252602a815260200180611b48602a913960400191505060405180910390fd5b606483111561113b5760405162461bcd60e51b81526004018080602001828103825260288152602001806119506028913960400191505060405180910390fd5b603e80546001600160a01b0319166001600160a01b038416179055603a89905560398a9055603b879055603c869055603d8890556103e884106111af5760405162461bcd60e51b81526004018080602001828103825260218152602001806119786021913960400191505060405180910390fd5b89604154106111ef5760405162461bcd60e51b815260040180806020018281038252602d815260200180611a45602d913960400191505060405180910390fd5b6111f885611402565b6041556112106001600160d81b0385166103e861160b565b60425560438390556112218161162c565b5050505050505050505050565b603e546001600160a01b031681565b60008282600160281b5b811561128557816001166001141561126657611263818461128e565b90505b60019190911c9081156112805761127d838461128e565b92505b611247565b95945050505050565b60008282028284828161129d57fe5b04146112e8576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b60008282018381101561134c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600061134c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611686565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526113e790849061171d565b505050565b60008183106113fb578161134c565b5090919050565b6001600160d81b038116600160281b02919050565b600081600160281b84028161142857fe5b049392505050565b600160281b900490565b6000826114495750600061100f565b8282028284828161145657fe5b041461134c5760405162461bcd60e51b81526004018080602001828103825260218152602001806119c36021913960400191505060405180910390fd5b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526114ed90859061171d565b50505050565b600154610100900460ff168061150c575061150c6118d5565b8061151a575060015460ff16155b6115555760405162461bcd60e51b815260040180806020018281038252602e8152602001806119e4602e913960400191505060405180910390fd5b600154610100900460ff1615801561157f576001805460ff1961ff00199091166101001716811790555b6001600160a01b0382166115da576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015611607576001805461ff00191690555b5050565b600061134c6001600160d81b03808516600160281b90810291851602611417565b60005415611681576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b600081848411156117155760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156116da5781810151838201526020016116c2565b50505050905090810190601f1680156117075780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b61172f826001600160a01b03166118db565b611780576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106117be5780518252601f19909201916020918201910161179f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611820576040519150601f19603f3d011682016040523d82523d6000602084013e611825565b606091505b50915091508161187c576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156114ed5780806020019051602081101561189857600080fd5b50516114ed5760405162461bcd60e51b815260040180806020018281038252602a815260200180611b1e602a913960400191505060405180910390fd5b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061190f57508115155b94935050505056fe5f6261746368496e646578546f4c6f636b496e202b205f706572696f6420657863656564206d617820616c6c6f77656420626174636865735f62617463686573496e646578436170203e20424154434845535f494e4445585f484152444341505f726570526577617264436f6e7374422073686f756c64206265203c20313030306c6f636b696e6720706572696f64206578636565647320746865206d6178696d756d20616c6c6f776564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e67206973206e6f7420656e61626c656420796574202869742073746172747320617420737461727454696d6529726570526577617264436f6e7374412073686f756c64206265203c205f72657075746174696f6e52657761726453656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173685f706572696f642065786365656420746865206d6178696d756d20616c6c6f7765646d61784c6f636b696e67426174636865732073686f756c64206265203c3d204d41585f4c4f434b494e475f424154434845535f484152444341505f657874656e64506572696f6420657863656564206d617820616c6c6f77656420626174636865735361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645f72656465656d456e61626c6554696d65203e3d205f737461727454696d652b5f626174636854696d655f6261746368496e646578546f4c6f636b496e206d75737420626520746865206f6e6520636f72726573706f6e64696e6720746f207468652063757272656e74206f6e65a2646970667358221220a46aaaad74b807beef2de948e59bbdda2573214d7e0cd386b53ffc1ece0cd1e564736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101735760003560e01c80636c9d43b6116100de578063a6e1a54c11610097578063c348a24b11610071578063c348a24b14610352578063ef5a3e4a1461035a578063f6a740011461037d578063fc0c546a146103e757610173565b8063a6e1a54c146102e3578063afe0e33c1461032d578063b32c4d8d1461033557610173565b80636c9d43b6146102635780636e57307b1461026b578063746c0a601461029c57806378e97925146102a45780637b3e46f8146102ac5780638db564c2146102db57610173565b80634ea2c7ec116101305780634ea2c7ec14610233578063591451f71461023b5780635aef7de6146102435780635b42f48b1461024b5780635eff3f2914610253578063696da9211461025b57610173565b8063029489a9146101785780630357371d146101a757806303840c6c146101d35780631e9a6950146101db5780633d1678f4146102075780633edf7ca11461020f575b600080fd5b6101956004803603602081101561018e57600080fd5b50356103ef565b60408051918252519081900360200190f35b610195600480360360408110156101bd57600080fd5b506001600160a01b038135169060200135610422565b61019561057a565b610195600480360360408110156101f157600080fd5b506001600160a01b038135169060200135610580565b61019561094b565b610217610951565b604080516001600160a01b039092168252519081900360200190f35b610195610960565b610195610966565b61021761096c565b61019561097b565b610195610981565b610195610986565b61019561098c565b61029a6004803603608081101561028157600080fd5b5080359060208101359060408101359060600135610992565b005b610195610c94565b610195610c9a565b610195600480360360808110156102c257600080fd5b5080359060208101359060408101359060600135610ca0565b610195610fa1565b61030f600480360360408110156102f957600080fd5b506001600160a01b038135169060200135610fa7565b60408051938452602084019290925282820152519081900360600190f35b610195610fd3565b6101956004803603602081101561034b57600080fd5b5035610fd9565b610195610feb565b6101956004803603604081101561037057600080fd5b5080359060200135610ff1565b61029a600480360361016081101561039457600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c08201359160e08101359161010082013591610120810135909116906101400135611015565b61021761122e565b6000604354821161041d5761041a6041546104158460425461123d90919063ffffffff16565b61128e565b90505b919050565b6001600160a01b038216600090815260376020908152604080832084845290915281208054610498576040805162461bcd60e51b815260206004820152601860248201527f6e6f20616d6f756e74206c65667420746f20756e6c6f636b0000000000000000604482015290519081900360640190fd5b805460008255603d54600283015460018401549294506104b99291026112f2565b421161050c576040805162461bcd60e51b815260206004820152601e60248201527f6c6f636b696e6720706572696f64206973207374696c6c206163746976650000604482015290519081900360640190fd5b6040546105199083611353565b604055603e54610533906001600160a01b03168584611395565b6040805183815290516001600160a01b0386169185917fe332e9963bc980fb82ccd3e7e181d76bddde349eec46b4ba393f3444529cd17f9181900360200190a35092915050565b60425481565b6000603b5442116105d1576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038316600090815260376020908152604080832085845290915290206001810154610646576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6000603d54603a548360010154038161065b57fe5b0490506000603d54603a5442038161066f57fe5b049050600061069561068e8560020154856112f290919063ffffffff16565b83906113ec565b90505b808310156107875760008381526038602090815260408083208984526001810190925290912054801561077a57600088815260018301602052604081208190556106e1866103ef565b905060006106f76106f184611402565b8361128e565b905060006107118261070c8760000154611402565b611417565b905061071d8a826112f2565b99508b6001600160a01b03168b7facf9103edd7d12d169ab5037ce643ee56e59d5986362a9e903d86f2544fefcaa61075484611430565b604080516001600160d81b03929092168252602082018d90528051918290030190a35050505b5050600190920191610698565b61079085611430565b6001600160d81b03169450600085116107f0576040805162461bcd60e51b815260206004820152601960248201527f72657075746174696f6e20746f2072656465656d206973203000000000000000604482015290519081900360640190fd5b6039546107fd9086611353565b60395560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561084557600080fd5b505afa158015610859573d6000803e3d6000fd5b505050506040513d602081101561086f57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b038a811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156108c457600080fd5b505af11580156108d8573d6000803e3d6000fd5b505050506040513d60208110156108ee57600080fd5b5051610941576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b5050505092915050565b603b5481565b6035546001600160a01b031681565b60365481565b60415481565b6034546001600160a01b031681565b603c5481565b601881565b60005490565b603d5481565b8060005481146109d35760405162461bcd60e51b8152600401808060200182810382526028815260200180611a726028913960400191505060405180910390fd5b33600090815260376020908152604080832086845290915290206001810154610a3f576040805162461bcd60e51b815260206004820152601960248201527817db1bd8dada5b99d25908191bd95cc81b9bdd08195e1a5cdd603a1b604482015290519081900360640190fd5b6000610a8186603d54610a73603a54610a6d603d5488600201540288600101546112f290919063ffffffff16565b90611353565b81610a7a57fe5b0490611353565b90506000610a8f82896112f2565b9050603c54811115610ad25760405162461bcd60e51b815260040180806020018281038252602a815260200180611999602a913960400191505060405180910390fd5b60008811610b27576040805162461bcd60e51b815260206004820152601960248201527f5f657874656e64506572696f64206d757374206265203e203000000000000000604482015290519081900360640190fd5b604354610b3488836112f2565b1115610b715760405162461bcd60e51b8152600401808060200182810382526028815260200180611af66028913960400191505060405180910390fd5b6000603d54603a54420381610b8257fe5b049050878114610bd1576040805162461bcd60e51b81526020600482015260156024820152746c6f636b696e67206973206e6f742061637469766560581b604482015290519081900360640190fd5b60005b82811015610c3d5781810160009081526038602052604081208654909190610bff908487039061143a565b60008b81526001840160205260409020548354919250610c2391610a6d90846112f2565b825560008a81526001928301602052604090205501610bd4565b506002840154610c4d908a6112f2565b6002850155604080518a81529051889133917fbf1612e584a5355572c05134f25811613efa611499c6597f74d7dde53adc104c9181900360200190a3505050505050505050565b60435481565b603a5481565b6000816000548114610ce35760405162461bcd60e51b8152600401808060200182810382526028815260200180611a726028913960400191505060405180910390fd5b60008611610d30576040805162461bcd60e51b815260206004820152601560248201527405f616d6f756e742073686f756c64206265203e203605c1b604482015290519081900360640190fd5b603a54421015610d715760405162461bcd60e51b8152600401808060200182810382526033815260200180611a126033913960400191505060405180910390fd5b603c54851115610db25760405162461bcd60e51b8152600401808060200182810382526022815260200180611a9a6022913960400191505060405180910390fd5b60008511610dfd576040805162461bcd60e51b815260206004820152601360248201527205f706572696f64206d757374206265203e203606c1b604482015290519081900360640190fd5b604354610e0a85876112f2565b1115610e475760405162461bcd60e51b81526004018080602001828103825260388152602001806119186038913960400191505060405180910390fd5b603f54610e559060016112f2565b603f819055336000818152603760209081526040808320858452909152902088815560028101889055426001820155603e5492945091610ea2916001600160a01b0390911690308a611493565b6000603d54603a54420381610eb357fe5b049050858114610ef45760405162461bcd60e51b8152600401808060200182810382526044815260200180611b726044913960600191505060405180910390fd5b60005b87811015610f4657818101600090815260386020526040812090610f1d838b038c61143a565b8254909150610f2c90826112f2565b825560008781526001928301602052604090205501610ef7565b50604054610f5490896112f2565b60409081558051898152602081018990528151869233927fe24d345c42b1d6b6d4bdaf4acbd768c1dfdfb0242ff6df221c68ce443b8c2d0d929081900390910190a3505050949350505050565b603f5481565b603760209081526000928352604080842090915290825290208054600182015460029092015490919083565b60395481565b60386020526000908152604090205481565b60405481565b60008281526038602090815260408083208484526001019091529020545b92915050565b61101e8b6114f3565b600f8811611073576040805162461bcd60e51b815260206004820152601860248201527f626174636854696d652073686f756c64206265203e2031350000000000000000604482015290519081900360640190fd5b60188611156110b35760405162461bcd60e51b815260040180806020018281038252603a815260200180611abc603a913960400191505060405180910390fd5b6110bd89896112f2565b8710156110fb5760405162461bcd60e51b815260040180806020018281038252602a815260200180611b48602a913960400191505060405180910390fd5b606483111561113b5760405162461bcd60e51b81526004018080602001828103825260288152602001806119506028913960400191505060405180910390fd5b603e80546001600160a01b0319166001600160a01b038416179055603a89905560398a9055603b879055603c869055603d8890556103e884106111af5760405162461bcd60e51b81526004018080602001828103825260218152602001806119786021913960400191505060405180910390fd5b89604154106111ef5760405162461bcd60e51b815260040180806020018281038252602d815260200180611a45602d913960400191505060405180910390fd5b6111f885611402565b6041556112106001600160d81b0385166103e861160b565b60425560438390556112218161162c565b5050505050505050505050565b603e546001600160a01b031681565b60008282600160281b5b811561128557816001166001141561126657611263818461128e565b90505b60019190911c9081156112805761127d838461128e565b92505b611247565b95945050505050565b60008282028284828161129d57fe5b04146112e8576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b60008282018381101561134c576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b600061134c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611686565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526113e790849061171d565b505050565b60008183106113fb578161134c565b5090919050565b6001600160d81b038116600160281b02919050565b600081600160281b84028161142857fe5b049392505050565b600160281b900490565b6000826114495750600061100f565b8282028284828161145657fe5b041461134c5760405162461bcd60e51b81526004018080602001828103825260218152602001806119c36021913960400191505060405180910390fd5b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526114ed90859061171d565b50505050565b600154610100900460ff168061150c575061150c6118d5565b8061151a575060015460ff16155b6115555760405162461bcd60e51b815260040180806020018281038252602e8152602001806119e4602e913960400191505060405180910390fd5b600154610100900460ff1615801561157f576001805460ff1961ff00199091166101001716811790555b6001600160a01b0382166115da576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015611607576001805461ff00191690555b5050565b600061134c6001600160d81b03808516600160281b90810291851602611417565b60005415611681576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b600081848411156117155760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156116da5781810151838201526020016116c2565b50505050905090810190601f1680156117075780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b61172f826001600160a01b03166118db565b611780576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106117be5780518252601f19909201916020918201910161179f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611820576040519150601f19603f3d011682016040523d82523d6000602084013e611825565b606091505b50915091508161187c576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156114ed5780806020019051602081101561189857600080fd5b50516114ed5760405162461bcd60e51b815260040180806020018281038252602a815260200180611b1e602a913960400191505060405180910390fd5b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061190f57508115155b94935050505056fe5f6261746368496e646578546f4c6f636b496e202b205f706572696f6420657863656564206d617820616c6c6f77656420626174636865735f62617463686573496e646578436170203e20424154434845535f494e4445585f484152444341505f726570526577617264436f6e7374422073686f756c64206265203c20313030306c6f636b696e6720706572696f64206578636565647320746865206d6178696d756d20616c6c6f776564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e67206973206e6f7420656e61626c656420796574202869742073746172747320617420737461727454696d6529726570526577617264436f6e7374412073686f756c64206265203c205f72657075746174696f6e52657761726453656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173685f706572696f642065786365656420746865206d6178696d756d20616c6c6f7765646d61784c6f636b696e67426174636865732073686f756c64206265203c3d204d41585f4c4f434b494e475f424154434845535f484152444341505f657874656e64506572696f6420657863656564206d617820616c6c6f77656420626174636865735361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645f72656465656d456e61626c6554696d65203e3d205f737461727454696d652b5f626174636854696d655f6261746368496e646578546f4c6f636b496e206d75737420626520746865206f6e6520636f72726573706f6e64696e6720746f207468652063757272656e74206f6e65a2646970667358221220a46aaaad74b807beef2de948e59bbdda2573214d7e0cd386b53ffc1ece0cd1e564736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ContributionReward.json b/contracts/0.1.2-rc.8/ContributionReward.json new file mode 100644 index 00000000..9c587beb --- /dev/null +++ b/contracts/0.1.2-rc.8/ContributionReward.json @@ -0,0 +1,822 @@ +{ + "contractName": "ContributionReward", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256[5]", + "name": "_rewards", + "type": "uint256[5]" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "NewContributionProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemExternalToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemNativeToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_amount", + "type": "int256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_redeemType", + "type": "uint256" + } + ], + "name": "getPeriodsToPay", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalEthReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalExecutionTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalExternalToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalExternalTokenReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_redeemType", + "type": "uint256" + } + ], + "name": "getRedeemedPeriods", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "reputationChange", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "ethReward", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "externalToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "periodLength", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "numberOfPeriods", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "executionTime", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "internalType": "uint256[5]", + "name": "_rewards", + "type": "uint256[5]" + }, + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "proposeContributionReward", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "bool[4]", + "name": "_whatToRedeem", + "type": "bool[4]" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "int256", + "name": "reputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "etherReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemEther", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemExternalToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemNativeToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemReputation", + "outputs": [ + { + "internalType": "int256", + "name": "reputation", + "type": "int256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50612eb9806100206000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c80635d353bef116100de5780639f874c9911610097578063c7916cf911610071578063c7916cf914610587578063d29b5d2f146105a4578063d8145e2d146105d6578063f81f8bf61461064757610173565b80639f874c9914610511578063b551c3731461052e578063bea75f281461054b57610173565b80635d353bef1461042b5780636b8eb403146104485780637a5cb92c146104745780637e078b55146104915780639588378e146104ae5780639d4c162d146104da57610173565b80633edf7ca1116101305780633edf7ca1146103755780634ea2c7ec1461039957806352717a5e146103a1578063540fbeb3146103be57806358243213146104065780635aef7de61461042357610173565b806303e722d1146101785780630743ec07146102795780632108d7a71461029c57806334f24352146102bf5780633a0284ff146102dc5780633c2163dc14610358575b600080fd5b610267600480360361012081101561018f57600080fd5b8101906020810181356401000000008111156101aa57600080fd5b8201836020820111156101bc57600080fd5b803590602001918460018302840111640100000000831117156101de57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160a081810190925293968535969095909460c0820194509250602001906005908390839080828437600092019190915250919450505080356001600160a01b03908116925060209091013516610679565b60408051918252519081900360200190f35b6102676004803603604081101561028f57600080fd5b5080359060200135610ac6565b610267600480360360408110156102b257600080fd5b5080359060200135610c8b565b610267600480360360208110156102d557600080fd5b5035610cb0565b610332600480360360a08110156102f257600080fd5b604080516080818101909252833593928301929160a08301919060208401906004908390839080828437600092019190915250919450610f7d9350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b6102676004803603602081101561036e57600080fd5b5035610fe5565b61037d6112ed565b604080516001600160a01b039092168252519081900360200190f35b6102676112fc565b610267600480360360208110156103b757600080fd5b5035611302565b61040460048036036101e08110156103d557600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c00135611317565b005b6102676004803603602081101561041c57600080fd5b50356113f5565b61037d6116cc565b6102676004803603602081101561044157600080fd5b50356116db565b6102676004803603604081101561045e57600080fd5b506001600160a01b0381351690602001356116f0565b6102676004803603602081101561048a57600080fd5b50356117ca565b61037d600480360360208110156104a757600080fd5b50356117dc565b610267600480360360408110156104c457600080fd5b506001600160a01b0381351690602001356117fa565b6104fd600480360360408110156104f057600080fd5b508035906020013561192b565b604080519115158252519081900360200190f35b6102676004803603602081101561052757600080fd5b5035611a30565b6102676004803603602081101561054457600080fd5b5035611a45565b6104fd6004803603608081101561056157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611cdc565b6102676004803603602081101561059d57600080fd5b5035611e40565b6104fd600480360360608110156105ba57600080fd5b508035906001600160a01b03602082013516906040013561222f565b6105f3600480360360208110156105ec57600080fd5b503561238a565b60408051998a5260208a0198909852888801969096526001600160a01b0394851660608901526080880193909352921660a086015260c085019190915260e084015261010083015251908190036101200190f35b6104fd6004803603606081101561065d57600080fd5b508035906001600160a01b0360208201351690604001356123e1565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156106be57600080fd5b505afa1580156106d2573d6000803e3d6000fd5b505050506040513d60208110156106e857600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561073257600080fd5b505afa158015610746573d6000803e3d6000fd5b505050506040513d602081101561075c57600080fd5b50516107aa576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6107b48585612507565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561081f57600080fd5b505af1158015610833573d6000803e3d6000fd5b505050506040513d602081101561084957600080fd5b50519050826001600160a01b03811661085f5750335b610867612c16565b60408051610140810182528851815260208082018b9052890151818301526001600160a01b03888116606080840191909152928a01516080830152841660a08201529088015160c082015260e08101886004602090810291909101518252600082820181905260408051608080820183528382528185018490528183018490526060808301859052958301919091528883526037845291819020855181559285015160018401558401516002830155918301516003820180546001600160a01b039283166001600160a01b0319918216179091559284015160048084019190915560a085015160058401805491909316941693909317905560c0830151600682015560e08301516007820155610100830151600882015561012083015192935083929091610999916009840191612c80565b505060345460335460408051602081018d90526001600160a01b0393841694508793909216917fcbdcbf9aaeb1e9eff0f75d74e1c1e044bc87110164baec7d18d825b0450d97df918e918e918e918e918b9190819081018560a080838360005b83811015610a115781810151838201526020016109f9565b50505050905001846001600160a01b03168152602001836001600160a01b03168152602001828103825287818151815260200191508051906020019080838360005b83811015610a6b578181015183820152602001610a53565b50505050905090810190601f168015610a985780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a4505060008181526036602052604090204390559695505050505050565b60006003821115610b085760405162461bcd60e51b8152600401808060200182810382526026815260200180612e2a6026913960400191505060405180910390fd5b610b10612c16565b6000848152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b815481526020019060010190808311610bb057505050505081525050905080610100015160001415610be6576000915050610c85565b60c081015160009015610c145760c0820151610100830151610c099042906126f8565b81610c1057fe5b0490505b60008260c0015160001480610c2d57508260e001518210155b15610c5d57610c568361012001518660048110610c4657fe5b602002015160e0850151906126f8565b9050610c80565b610c7d8361012001518660048110610c7157fe5b602002015183906126f8565b90505b925050505b92915050565b60008281526037602052604081206009018260048110610ca757fe5b01549392505050565b6000610cba612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b815481526020019060010190808311610d5a57505050919092525050506000848152603760205260409020600881015491925090610ddb576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b6000610de8856001610ac6565b600083558351909150610dfc908290612741565b93508315610f7357603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e5257600080fd5b505afa158015610e66573d6000803e3d6000fd5b505050506040513d6020811015610e7c57600080fd5b505160a084015160408051630218b66560e31b8152600481018890526001600160a01b039283166024820152905191909216916310c5b3289160448083019260209291908290030181600087803b158015610ed657600080fd5b505af1158015610eea573d6000803e3d6000fd5b505050506040513d6020811015610f0057600080fd5b5051610f0b57600080fd5b610f1e816009840160015b01549061279a565b600983016001015560a08301516033546040805187815290516001600160a01b0393841693899316917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e919081900360200190a45b5090519055919050565b60008080808481602002015115610f9a57610f9786611e40565b93505b602085015115610fb057610fad86610cb0565b92505b604085015115610fc657610fc3866113f5565b91505b606085015115610fdc57610fd986610fe5565b90505b92959194509250565b6000610fef612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b81548152602001906001019080831161108f57505050919092525050506000848152603760205260409020600881015491925090611110576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b600061111d856003610ac6565b6000600484015560038301549091506001600160a01b031615801590611147575060008360800151115b156112db57608083015161115c908290612741565b935083156112db57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111b257600080fd5b505afa1580156111c6573d6000803e3d6000fd5b505050506040513d60208110156111dc57600080fd5b5051606084015160a08501516040805163dab0efff60e01b81526001600160a01b03938416600482015291831660248301526044820188905251919092169163dab0efff9160648083019260209291908290030181600087803b15801561124257600080fd5b505af1158015611256573d6000803e3d6000fd5b505050506040513d602081101561126c57600080fd5b505161127757600080fd5b61128681600984016003610f16565b600983016003015560a08301516033546040805187815290516001600160a01b0393841693899316917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd1988374919081900360200190a45b50608090910151600490910155919050565b6034546001600160a01b031681565b60355481565b60009081526037602052604090206004015490565b600054610100900460ff168061133057506113306127f4565b8061133e575060005460ff16155b6113795760405162461bcd60e51b815260040180806020018281038252602e815260200180612dcb602e913960400191505060405180910390fd5b600054610100900460ff161580156113a4576000805460ff1961ff0019909116610100171660011790555b6113db86868487600b806020026040519081016040528092919082600b602002808284376000920191909152508991506127fa9050565b80156113ed576000805461ff00191690555b505050505050565b60006113ff612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b81548152602001906001019080831161149f57505050919092525050506000848152603760205260409020600881015491925090611520576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b600061152d856002610ac6565b600060028401556040840151909150611547908290612741565b935083156116ba57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561159d57600080fd5b505afa1580156115b1573d6000803e3d6000fd5b505050506040513d60208110156115c757600080fd5b505160a08401516040805163658b6a5160e11b8152600481018890526001600160a01b0392831660248201529051919092169163cb16d4a29160448083019260209291908290030181600087803b15801561162157600080fd5b505af1158015611635573d6000803e3d6000fd5b505050506040513d602081101561164b57600080fd5b505161165657600080fd5b61166581600984016002610f16565b600983016002015560a08301516033546040805187815290516001600160a01b0393841693899316917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b87919081900360200190a45b50604090910151600290910155919050565b6033546001600160a01b031681565b60009081526037602052604090206008015490565b60345460009082906001600160a01b03163314611749576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561179657600080fd5b505afa1580156117aa573d6000803e3d6000fd5b505050506040513d60208110156117c057600080fd5b5051949350505050565b60366020526000908152604090205481565b6000908152603760205260409020600301546001600160a01b031690565b60345460009082906001600160a01b03163314611853576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156118a157600080fd5b505afa1580156118b5573d6000803e3d6000fd5b505050506040513d60208110156118cb57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561179657600080fd5b60345460009083906001600160a01b03163314611984576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b600084815260376020526040902060080154156119a057600080fd5b6000848152603760205260409020600501546001600160a01b03166119c457600080fd5b82600114156119e3576000848152603760205260409020426008909101555b60335460408051858152905186926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a35060019392505050565b60009081526037602052604090206002015490565b60345460009082906001600160a01b03163314611a9e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611aec57600080fd5b505afa158015611b00573d6000803e3d6000fd5b505050506040513d6020811015611b1657600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611b6057600080fd5b505afa158015611b74573d6000803e3d6000fd5b505050506040513d6020811015611b8a57600080fd5b5051611bd8576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611c2657600080fd5b505afa158015611c3a573d6000803e3d6000fd5b505050506040513d6020811015611c5057600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611ca957600080fd5b505afa158015611cbd573d6000803e3d6000fd5b505050506040513d6020811015611cd357600080fd5b50519392505050565b60345460009082906001600160a01b03163314611d35576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d8357600080fd5b505afa158015611d97573d6000803e3d6000fd5b505050506040513d6020811015611dad57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611e0a57600080fd5b505af1158015611e1e573d6000803e3d6000fd5b505050506040513d6020811015611e3457600080fd5b50519695505050505050565b6000611e4a612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b815481526020019060010190808311611eea57505050919092525050506000848152603760205260409020600881015491925090611f6b576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b6000611f78856000610ac6565b6000600184018190556020850151820295509091508413156120a057603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611fe257600080fd5b505afa158015611ff6573d6000803e3d6000fd5b505050506040513d602081101561200c57600080fd5b505160a08401516040805163dea9e24d60e01b8152600481018890526001600160a01b0392831660248201529051919092169163dea9e24d9160448083019260209291908290030181600087803b15801561206657600080fd5b505af115801561207a573d6000803e3d6000fd5b505050506040513d602081101561209057600080fd5b505161209b57600080fd5b6121b3565b60008412156121b357603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156120f757600080fd5b505afa15801561210b573d6000803e3d6000fd5b505050506040513d602081101561212157600080fd5b505160a08401516040805163ddbfcc6b60e01b8152600088810360048301526001600160a01b0393841660248301529151929093169263ddbfcc6b9260448083019360209383900390910190829087803b15801561217e57600080fd5b505af1158015612192573d6000803e3d6000fd5b505050506040513d60208110156121a857600080fd5b50516121b357600080fd5b831561221d576121c881600984016000610f16565b600983016000015560a08301516033546040805187815290516001600160a01b0393841693899316917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee919081900360200190a45b50602090910151600190910155919050565b60345460009082906001600160a01b03163314612288576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156122d657600080fd5b505afa1580156122ea573d6000803e3d6000fd5b505050506040513d602081101561230057600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561235557600080fd5b505af1158015612369573d6000803e3d6000fd5b505050506040513d602081101561237f57600080fd5b505195945050505050565b6037602052600090815260409020805460018201546002830154600384015460048501546005860154600687015460078801546008909801549697959694956001600160a01b039485169593949092169290919089565b60345460009082906001600160a01b0316331461243a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561248857600080fd5b505afa15801561249c573d6000803e3d6000fd5b505050506040513d60208110156124b257600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561235557600080fd5b606081015115158061251d575060808101516001145b6125585760405162461bcd60e51b8152600401808060200182810382526034815260200180612cf26034913960400191505060405180910390fd5b6080810151156126f457608081015160001914801561257a575081600160ff1b145b156125b65760405162461bcd60e51b8152600401808060200182810382526031815260200180612df96031913960400191505060405180910390fd5b60808101518290808202816125c757fe5b05146126045760405162461bcd60e51b8152600401808060200182810382526030815260200180612d516030913960400191505060405180910390fd5b805160808201518082028161261557fe5b04146126525760405162461bcd60e51b815260040180806020018281038252602b815260200180612d26602b913960400191505060405180910390fd5b602081015160808201518082028161266657fe5b04146126a35760405162461bcd60e51b8152600401808060200182810382526029815260200180612d816029913960400191505060405180910390fd5b60408101516080820151808202816126b757fe5b04146126f45760405162461bcd60e51b8152600401808060200182810382526034815260200180612e506034913960400191505060405180910390fd5b5050565b600061273a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612a67565b9392505050565b60008261275057506000610c85565b8282028284828161275d57fe5b041461273a5760405162461bcd60e51b8152600401808060200182810382526021815260200180612daa6021913960400191505060405180910390fd5b60008282018381101561273a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b303b1590565b6001600160a01b038416612855576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61285e85612afe565b603480546001600160a01b0319166001600160a01b03861617905582612a5a576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156128c85781810151838201526020016128b0565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156128fa57600080fd5b505afa15801561290e573d6000803e3d6000fd5b505050506040513d602081101561292457600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561297657600080fd5b505afa15801561298a573d6000803e3d6000fd5b505050506040513d6101a08110156129a157600080fd5b5051905080612a5357604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156129f25781810151838201526020016129da565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015612a2657600080fd5b505af1158015612a3a573d6000803e3d6000fd5b505050506040513d6020811015612a5057600080fd5b50505b5050612a60565b60358390555b5050505050565b60008184841115612af65760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612abb578181015183820152602001612aa3565b50505050905090810190601f168015612ae85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600054610100900460ff1680612b175750612b176127f4565b80612b25575060005460ff16155b612b605760405162461bcd60e51b815260040180806020018281038252602e815260200180612dcb602e913960400191505060405180910390fd5b600054610100900460ff16158015612b8b576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216612be6576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b03841617905580156126f4576000805461ff00191690555050565b60405180610140016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001612c7b612cbe565b905290565b8260048101928215612cae579160200282015b82811115612cae578251825591602001919060010190612c93565b50612cba929150612cdc565b5090565b60405180608001604052806004906020820280368337509192915050565b5b80821115612cba5760008155600101612cdd56fe706572696f644c656e67746820657175616c20302072657175697265206e756d6265724f66506572696f647320746f20626520316e756d6265724f66506572696f6473202a20746f6b656e5265776172642077696c6c206f766572666c6f776e756d6265724f66506572696f6473202a2072657075746174696f6e4368616e67652077696c6c206f766572666c6f776e756d6265724f66506572696f6473202a206574685265776172642077696c6c206f766572666c6f77536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646e756d6265724f66506572696f6473202a205f72657075746174696f6e4368616e67652077696c6c206f766572666c6f7773686f756c6420626520696e207468652072656465656d6564506572696f64732072616e67656e756d6265724f66506572696f6473202a207465787465726e616c546f6b656e5265776172642077696c6c206f766572666c6f77a264697066735822122019c20f62955b19d7fd3bbc9fa9773a73d0dfcebe9bc015211017e06ba885068264736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101735760003560e01c80635d353bef116100de5780639f874c9911610097578063c7916cf911610071578063c7916cf914610587578063d29b5d2f146105a4578063d8145e2d146105d6578063f81f8bf61461064757610173565b80639f874c9914610511578063b551c3731461052e578063bea75f281461054b57610173565b80635d353bef1461042b5780636b8eb403146104485780637a5cb92c146104745780637e078b55146104915780639588378e146104ae5780639d4c162d146104da57610173565b80633edf7ca1116101305780633edf7ca1146103755780634ea2c7ec1461039957806352717a5e146103a1578063540fbeb3146103be57806358243213146104065780635aef7de61461042357610173565b806303e722d1146101785780630743ec07146102795780632108d7a71461029c57806334f24352146102bf5780633a0284ff146102dc5780633c2163dc14610358575b600080fd5b610267600480360361012081101561018f57600080fd5b8101906020810181356401000000008111156101aa57600080fd5b8201836020820111156101bc57600080fd5b803590602001918460018302840111640100000000831117156101de57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160a081810190925293968535969095909460c0820194509250602001906005908390839080828437600092019190915250919450505080356001600160a01b03908116925060209091013516610679565b60408051918252519081900360200190f35b6102676004803603604081101561028f57600080fd5b5080359060200135610ac6565b610267600480360360408110156102b257600080fd5b5080359060200135610c8b565b610267600480360360208110156102d557600080fd5b5035610cb0565b610332600480360360a08110156102f257600080fd5b604080516080818101909252833593928301929160a08301919060208401906004908390839080828437600092019190915250919450610f7d9350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b6102676004803603602081101561036e57600080fd5b5035610fe5565b61037d6112ed565b604080516001600160a01b039092168252519081900360200190f35b6102676112fc565b610267600480360360208110156103b757600080fd5b5035611302565b61040460048036036101e08110156103d557600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c00135611317565b005b6102676004803603602081101561041c57600080fd5b50356113f5565b61037d6116cc565b6102676004803603602081101561044157600080fd5b50356116db565b6102676004803603604081101561045e57600080fd5b506001600160a01b0381351690602001356116f0565b6102676004803603602081101561048a57600080fd5b50356117ca565b61037d600480360360208110156104a757600080fd5b50356117dc565b610267600480360360408110156104c457600080fd5b506001600160a01b0381351690602001356117fa565b6104fd600480360360408110156104f057600080fd5b508035906020013561192b565b604080519115158252519081900360200190f35b6102676004803603602081101561052757600080fd5b5035611a30565b6102676004803603602081101561054457600080fd5b5035611a45565b6104fd6004803603608081101561056157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611cdc565b6102676004803603602081101561059d57600080fd5b5035611e40565b6104fd600480360360608110156105ba57600080fd5b508035906001600160a01b03602082013516906040013561222f565b6105f3600480360360208110156105ec57600080fd5b503561238a565b60408051998a5260208a0198909852888801969096526001600160a01b0394851660608901526080880193909352921660a086015260c085019190915260e084015261010083015251908190036101200190f35b6104fd6004803603606081101561065d57600080fd5b508035906001600160a01b0360208201351690604001356123e1565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156106be57600080fd5b505afa1580156106d2573d6000803e3d6000fd5b505050506040513d60208110156106e857600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561073257600080fd5b505afa158015610746573d6000803e3d6000fd5b505050506040513d602081101561075c57600080fd5b50516107aa576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6107b48585612507565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561081f57600080fd5b505af1158015610833573d6000803e3d6000fd5b505050506040513d602081101561084957600080fd5b50519050826001600160a01b03811661085f5750335b610867612c16565b60408051610140810182528851815260208082018b9052890151818301526001600160a01b03888116606080840191909152928a01516080830152841660a08201529088015160c082015260e08101886004602090810291909101518252600082820181905260408051608080820183528382528185018490528183018490526060808301859052958301919091528883526037845291819020855181559285015160018401558401516002830155918301516003820180546001600160a01b039283166001600160a01b0319918216179091559284015160048084019190915560a085015160058401805491909316941693909317905560c0830151600682015560e08301516007820155610100830151600882015561012083015192935083929091610999916009840191612c80565b505060345460335460408051602081018d90526001600160a01b0393841694508793909216917fcbdcbf9aaeb1e9eff0f75d74e1c1e044bc87110164baec7d18d825b0450d97df918e918e918e918e918b9190819081018560a080838360005b83811015610a115781810151838201526020016109f9565b50505050905001846001600160a01b03168152602001836001600160a01b03168152602001828103825287818151815260200191508051906020019080838360005b83811015610a6b578181015183820152602001610a53565b50505050905090810190601f168015610a985780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a4505060008181526036602052604090204390559695505050505050565b60006003821115610b085760405162461bcd60e51b8152600401808060200182810382526026815260200180612e2a6026913960400191505060405180910390fd5b610b10612c16565b6000848152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b815481526020019060010190808311610bb057505050505081525050905080610100015160001415610be6576000915050610c85565b60c081015160009015610c145760c0820151610100830151610c099042906126f8565b81610c1057fe5b0490505b60008260c0015160001480610c2d57508260e001518210155b15610c5d57610c568361012001518660048110610c4657fe5b602002015160e0850151906126f8565b9050610c80565b610c7d8361012001518660048110610c7157fe5b602002015183906126f8565b90505b925050505b92915050565b60008281526037602052604081206009018260048110610ca757fe5b01549392505050565b6000610cba612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b815481526020019060010190808311610d5a57505050919092525050506000848152603760205260409020600881015491925090610ddb576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b6000610de8856001610ac6565b600083558351909150610dfc908290612741565b93508315610f7357603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e5257600080fd5b505afa158015610e66573d6000803e3d6000fd5b505050506040513d6020811015610e7c57600080fd5b505160a084015160408051630218b66560e31b8152600481018890526001600160a01b039283166024820152905191909216916310c5b3289160448083019260209291908290030181600087803b158015610ed657600080fd5b505af1158015610eea573d6000803e3d6000fd5b505050506040513d6020811015610f0057600080fd5b5051610f0b57600080fd5b610f1e816009840160015b01549061279a565b600983016001015560a08301516033546040805187815290516001600160a01b0393841693899316917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e919081900360200190a45b5090519055919050565b60008080808481602002015115610f9a57610f9786611e40565b93505b602085015115610fb057610fad86610cb0565b92505b604085015115610fc657610fc3866113f5565b91505b606085015115610fdc57610fd986610fe5565b90505b92959194509250565b6000610fef612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b81548152602001906001019080831161108f57505050919092525050506000848152603760205260409020600881015491925090611110576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b600061111d856003610ac6565b6000600484015560038301549091506001600160a01b031615801590611147575060008360800151115b156112db57608083015161115c908290612741565b935083156112db57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111b257600080fd5b505afa1580156111c6573d6000803e3d6000fd5b505050506040513d60208110156111dc57600080fd5b5051606084015160a08501516040805163dab0efff60e01b81526001600160a01b03938416600482015291831660248301526044820188905251919092169163dab0efff9160648083019260209291908290030181600087803b15801561124257600080fd5b505af1158015611256573d6000803e3d6000fd5b505050506040513d602081101561126c57600080fd5b505161127757600080fd5b61128681600984016003610f16565b600983016003015560a08301516033546040805187815290516001600160a01b0393841693899316917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd1988374919081900360200190a45b50608090910151600490910155919050565b6034546001600160a01b031681565b60355481565b60009081526037602052604090206004015490565b600054610100900460ff168061133057506113306127f4565b8061133e575060005460ff16155b6113795760405162461bcd60e51b815260040180806020018281038252602e815260200180612dcb602e913960400191505060405180910390fd5b600054610100900460ff161580156113a4576000805460ff1961ff0019909116610100171660011790555b6113db86868487600b806020026040519081016040528092919082600b602002808284376000920191909152508991506127fa9050565b80156113ed576000805461ff00191690555b505050505050565b60006113ff612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b81548152602001906001019080831161149f57505050919092525050506000848152603760205260409020600881015491925090611520576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b600061152d856002610ac6565b600060028401556040840151909150611547908290612741565b935083156116ba57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561159d57600080fd5b505afa1580156115b1573d6000803e3d6000fd5b505050506040513d60208110156115c757600080fd5b505160a08401516040805163658b6a5160e11b8152600481018890526001600160a01b0392831660248201529051919092169163cb16d4a29160448083019260209291908290030181600087803b15801561162157600080fd5b505af1158015611635573d6000803e3d6000fd5b505050506040513d602081101561164b57600080fd5b505161165657600080fd5b61166581600984016002610f16565b600983016002015560a08301516033546040805187815290516001600160a01b0393841693899316917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b87919081900360200190a45b50604090910151600290910155919050565b6033546001600160a01b031681565b60009081526037602052604090206008015490565b60345460009082906001600160a01b03163314611749576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561179657600080fd5b505afa1580156117aa573d6000803e3d6000fd5b505050506040513d60208110156117c057600080fd5b5051949350505050565b60366020526000908152604090205481565b6000908152603760205260409020600301546001600160a01b031690565b60345460009082906001600160a01b03163314611853576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156118a157600080fd5b505afa1580156118b5573d6000803e3d6000fd5b505050506040513d60208110156118cb57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561179657600080fd5b60345460009083906001600160a01b03163314611984576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b600084815260376020526040902060080154156119a057600080fd5b6000848152603760205260409020600501546001600160a01b03166119c457600080fd5b82600114156119e3576000848152603760205260409020426008909101555b60335460408051858152905186926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a35060019392505050565b60009081526037602052604090206002015490565b60345460009082906001600160a01b03163314611a9e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611aec57600080fd5b505afa158015611b00573d6000803e3d6000fd5b505050506040513d6020811015611b1657600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611b6057600080fd5b505afa158015611b74573d6000803e3d6000fd5b505050506040513d6020811015611b8a57600080fd5b5051611bd8576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611c2657600080fd5b505afa158015611c3a573d6000803e3d6000fd5b505050506040513d6020811015611c5057600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611ca957600080fd5b505afa158015611cbd573d6000803e3d6000fd5b505050506040513d6020811015611cd357600080fd5b50519392505050565b60345460009082906001600160a01b03163314611d35576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d8357600080fd5b505afa158015611d97573d6000803e3d6000fd5b505050506040513d6020811015611dad57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611e0a57600080fd5b505af1158015611e1e573d6000803e3d6000fd5b505050506040513d6020811015611e3457600080fd5b50519695505050505050565b6000611e4a612c16565b6000838152603760209081526040918290208251610140810184528154815260018201549281019290925260028101548284015260038101546001600160a01b039081166060840152600480830154608080860191909152600584015490921660a0850152600683015460c0850152600783015460e085015260088301546101008501528451918201948590529293919261012085019260098501919082845b815481526020019060010190808311611eea57505050919092525050506000848152603760205260409020600881015491925090611f6b576040805162461bcd60e51b81526020600482015260196024820152781c1c9bdc1bdcd85b081b9bdd08195e1958dd5d1959081e595d603a1b604482015290519081900360640190fd5b6000611f78856000610ac6565b6000600184018190556020850151820295509091508413156120a057603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611fe257600080fd5b505afa158015611ff6573d6000803e3d6000fd5b505050506040513d602081101561200c57600080fd5b505160a08401516040805163dea9e24d60e01b8152600481018890526001600160a01b0392831660248201529051919092169163dea9e24d9160448083019260209291908290030181600087803b15801561206657600080fd5b505af115801561207a573d6000803e3d6000fd5b505050506040513d602081101561209057600080fd5b505161209b57600080fd5b6121b3565b60008412156121b357603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156120f757600080fd5b505afa15801561210b573d6000803e3d6000fd5b505050506040513d602081101561212157600080fd5b505160a08401516040805163ddbfcc6b60e01b8152600088810360048301526001600160a01b0393841660248301529151929093169263ddbfcc6b9260448083019360209383900390910190829087803b15801561217e57600080fd5b505af1158015612192573d6000803e3d6000fd5b505050506040513d60208110156121a857600080fd5b50516121b357600080fd5b831561221d576121c881600984016000610f16565b600983016000015560a08301516033546040805187815290516001600160a01b0393841693899316917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee919081900360200190a45b50602090910151600190910155919050565b60345460009082906001600160a01b03163314612288576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156122d657600080fd5b505afa1580156122ea573d6000803e3d6000fd5b505050506040513d602081101561230057600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561235557600080fd5b505af1158015612369573d6000803e3d6000fd5b505050506040513d602081101561237f57600080fd5b505195945050505050565b6037602052600090815260409020805460018201546002830154600384015460048501546005860154600687015460078801546008909801549697959694956001600160a01b039485169593949092169290919089565b60345460009082906001600160a01b0316331461243a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561248857600080fd5b505afa15801561249c573d6000803e3d6000fd5b505050506040513d60208110156124b257600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561235557600080fd5b606081015115158061251d575060808101516001145b6125585760405162461bcd60e51b8152600401808060200182810382526034815260200180612cf26034913960400191505060405180910390fd5b6080810151156126f457608081015160001914801561257a575081600160ff1b145b156125b65760405162461bcd60e51b8152600401808060200182810382526031815260200180612df96031913960400191505060405180910390fd5b60808101518290808202816125c757fe5b05146126045760405162461bcd60e51b8152600401808060200182810382526030815260200180612d516030913960400191505060405180910390fd5b805160808201518082028161261557fe5b04146126525760405162461bcd60e51b815260040180806020018281038252602b815260200180612d26602b913960400191505060405180910390fd5b602081015160808201518082028161266657fe5b04146126a35760405162461bcd60e51b8152600401808060200182810382526029815260200180612d816029913960400191505060405180910390fd5b60408101516080820151808202816126b757fe5b04146126f45760405162461bcd60e51b8152600401808060200182810382526034815260200180612e506034913960400191505060405180910390fd5b5050565b600061273a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612a67565b9392505050565b60008261275057506000610c85565b8282028284828161275d57fe5b041461273a5760405162461bcd60e51b8152600401808060200182810382526021815260200180612daa6021913960400191505060405180910390fd5b60008282018381101561273a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b303b1590565b6001600160a01b038416612855576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61285e85612afe565b603480546001600160a01b0319166001600160a01b03861617905582612a5a576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156128c85781810151838201526020016128b0565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156128fa57600080fd5b505afa15801561290e573d6000803e3d6000fd5b505050506040513d602081101561292457600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561297657600080fd5b505afa15801561298a573d6000803e3d6000fd5b505050506040513d6101a08110156129a157600080fd5b5051905080612a5357604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156129f25781810151838201526020016129da565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015612a2657600080fd5b505af1158015612a3a573d6000803e3d6000fd5b505050506040513d6020811015612a5057600080fd5b50505b5050612a60565b60358390555b5050505050565b60008184841115612af65760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612abb578181015183820152602001612aa3565b50505050905090810190601f168015612ae85780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600054610100900460ff1680612b175750612b176127f4565b80612b25575060005460ff16155b612b605760405162461bcd60e51b815260040180806020018281038252602e815260200180612dcb602e913960400191505060405180910390fd5b600054610100900460ff16158015612b8b576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216612be6576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b03841617905580156126f4576000805461ff00191690555050565b60405180610140016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001612c7b612cbe565b905290565b8260048101928215612cae579160200282015b82811115612cae578251825591602001919060010190612c93565b50612cba929150612cdc565b5090565b60405180608001604052806004906020820280368337509192915050565b5b80821115612cba5760008155600101612cdd56fe706572696f644c656e67746820657175616c20302072657175697265206e756d6265724f66506572696f647320746f20626520316e756d6265724f66506572696f6473202a20746f6b656e5265776172642077696c6c206f766572666c6f776e756d6265724f66506572696f6473202a2072657075746174696f6e4368616e67652077696c6c206f766572666c6f776e756d6265724f66506572696f6473202a206574685265776172642077696c6c206f766572666c6f77536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646e756d6265724f66506572696f6473202a205f72657075746174696f6e4368616e67652077696c6c206f766572666c6f7773686f756c6420626520696e207468652072656465656d6564506572696f64732072616e67656e756d6265724f66506572696f6473202a207465787465726e616c546f6b656e5265776172642077696c6c206f766572666c6f77a264697066735822122019c20f62955b19d7fd3bbc9fa9773a73d0dfcebe9bc015211017e06ba885068264736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ContributionRewardExt.json b/contracts/0.1.2-rc.8/ContributionRewardExt.json new file mode 100644 index 00000000..b19a7e30 --- /dev/null +++ b/contracts/0.1.2-rc.8/ContributionRewardExt.json @@ -0,0 +1,966 @@ +{ + "contractName": "ContributionRewardExt", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256[3]", + "name": "_rewards", + "type": "uint256[3]" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + } + ], + "name": "NewContributionProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemExternalToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemNativeToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_amount", + "type": "int256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalAcceptedByVotingMachine", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalEthReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalExternalToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalExternalTokenReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalNativeTokenReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalReputationReward", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + }, + { + "internalType": "contract DAOFactory", + "name": "_daoFactory", + "type": "address" + }, + { + "internalType": "uint64[3]", + "name": "_packageVersion", + "type": "uint64[3]" + }, + { + "internalType": "string", + "name": "_rewarderName", + "type": "string" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "reputationChange", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "ethReward", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "externalToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nativeTokenRewardLeft", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reputationChangeLeft", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "ethRewardLeft", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenRewardLeft", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "acceptedByVotingMachine", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "int256", + "name": "_reputationChange", + "type": "int256" + }, + { + "internalType": "uint256[3]", + "name": "_rewards", + "type": "uint256[3]" + }, + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + } + ], + "name": "proposeContributionReward", + "outputs": [ + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "bool[4]", + "name": "_whatToRedeem", + "type": "bool[4]" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "int256", + "name": "reputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "nativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "etherReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "externalTokenReward", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemEther", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemEtherByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemExternalToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemExternalTokenByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemNativeToken", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemNativeTokenByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemReputation", + "outputs": [ + { + "internalType": "int256", + "name": "reputation", + "type": "int256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "redeemReputationByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "rewarder", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "vault", + "outputs": [ + { + "internalType": "contract Vault", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50613b00806100206000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c80639d4c162d1161010f578063cbba1f5a116100a2578063de9a957a11610071578063de9a957a146107b2578063f3f4b048146107e4578063f81f8bf614610801578063fbfa77cf14610833576101e5565b8063cbba1f5a146106d7578063d29b5d2f146106f4578063d8145e2d14610726578063dcc3e06e146107aa576101e5565b8063bea75f28116100de578063bea75f281461059b578063c4a17ec9146105d7578063c595b55014610609578063c7916cf9146106ba576101e5565b80639d4c162d1461050d5780639f874c9914610544578063b551c37314610561578063b5b8b8651461057e576101e5565b806352717a5e116101875780636e8a6188116101565780636e8a6188146104755780637a5cb92c146104a75780637e078b55146104c45780639588378e146104e1576101e5565b806352717a5e1461040757806358243213146104245780635aef7de6146104415780636b8eb40314610449576101e5565b80633c2163dc116101c35780633c2163dc146102c95780633edf7ca1146102e6578063432848dc1461030a5780634ea2c7ec146103ff576101e5565b80632ac8c1b2146101ea57806334f243521461021e5780633a0284ff1461024d575b600080fd5b61021c6004803603606081101561020057600080fd5b508035906001600160a01b03602082013516906040013561083b565b005b61023b6004803603602081101561023457600080fd5b50356109dd565b60408051918252519081900360200190f35b6102a3600480360360a081101561026357600080fd5b604080516080818101909252833593928301929160a08301919060208401906004908390839080828437600092019190915250919450610bbc9350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b61023b600480360360208110156102df57600080fd5b5035610c24565b6102ee610e2a565b604080516001600160a01b039092168252519081900360200190f35b61023b600480360361010081101561032157600080fd5b81019060208101813564010000000081111561033c57600080fd5b82018360208201111561034e57600080fd5b8035906020019184600183028401116401000000008311171561037057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160608181019092529396853596909590946080820194509250602001906003908390839080828437600092019190915250919450506001600160a01b03823581169350602083013581169260400135169050610e39565b61023b611336565b61023b6004803603602081101561041d57600080fd5b503561133c565b61023b6004803603602081101561043a57600080fd5b5035611351565b6102ee611543565b61023b6004803603604081101561045f57600080fd5b506001600160a01b038135169060200135611552565b61021c6004803603606081101561048b57600080fd5b508035906001600160a01b03602082013516906040013561162c565b61023b600480360360208110156104bd57600080fd5b50356117da565b6102ee600480360360208110156104da57600080fd5b50356117ec565b61023b600480360360408110156104f757600080fd5b506001600160a01b03813516906020013561180a565b6105306004803603604081101561052357600080fd5b508035906020013561193b565b604080519115158252519081900360200190f35b61023b6004803603602081101561055a57600080fd5b5035611a4a565b61023b6004803603602081101561057757600080fd5b5035611a5f565b61023b6004803603602081101561059457600080fd5b5035611cf6565b610530600480360360808110156105b157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611d08565b61021c600480360360608110156105ed57600080fd5b508035906001600160a01b036020820135169060400135611e6c565b61021c600480360361028081101561062057600080fd5b6001600160a01b038235811692602081013582169260408201926101a08301358116926101c0810135926101e08201359092169161020082019190810190610280810161026082013564010000000081111561067b57600080fd5b82018360208201111561068d57600080fd5b803590602001918460018302840111640100000000831117156106af57600080fd5b509092509050612084565b61023b600480360360208110156106d057600080fd5b5035612305565b610530600480360360208110156106ed57600080fd5b5035612615565b6105306004803603606081101561070a57600080fd5b508035906001600160a01b03602082013516906040013561262d565b6107436004803603602081101561073c57600080fd5b5035612788565b604080519b8c5260208c019a909a528a8a01989098526001600160a01b0396871660608b015260808a01959095529290941660a088015260c087015260e0860192909252610100850191909152610120840152151561014083015251908190036101600190f35b6102ee6127f0565b61021c600480360360608110156107c857600080fd5b508035906001600160a01b0360208201351690604001356127ff565b61023b600480360360208110156107fa57600080fd5b503561294a565b6105306004803603606081101561081757600080fd5b508035906001600160a01b03602082013516906040013561295f565b6102ee612a85565b6038546001600160a01b03163314610888576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff166108d95760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b61090282604051806080016040528060568152602001613a756056913960088401549190612a94565b600882015581156109d7576039546040805163658b6a5160e11b8152600481018590526001600160a01b0386811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b15801561096357600080fd5b505af1158015610977573d6000803e3d6000fd5b505050506040513d602081101561098d57600080fd5b50506033546040805184815290516001600160a01b038087169388939116917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b879181900360200190a45b50505050565b6000818152603760205260408120600a81015460ff16610a2e5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610a54576006810154610a5457805460068201555b80546000825591508115610bb657603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ab057600080fd5b505afa158015610ac4573d6000803e3d6000fd5b505050506040513d6020811015610ada57600080fd5b5051600582015460408051630218b66560e31b8152600481018690526001600160a01b039283166024820152905191909216916310c5b3289160448083019260209291908290030181600087803b158015610b3457600080fd5b505af1158015610b48573d6000803e3d6000fd5b505050506040513d6020811015610b5e57600080fd5b5051610b6957600080fd5b60058101546033546040805185815290516001600160a01b0393841693879316917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e919081900360200190a45b50919050565b60008080808481602002015115610bd957610bd686612305565b93505b602085015115610bef57610bec866109dd565b92505b604085015115610c0557610c0286611351565b91505b606085015115610c1b57610c1886610c24565b90505b92959194509250565b6000818152603760205260408120600a81015460ff16610c755760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610c9e576009810154610c9e57600481015460098201555b60038101546001600160a01b031615801590610cbe575060008160040154115b15610bb65760048082018054600090915560335460408051638da5cb5b60e01b815290519295506001600160a01b0390911692638da5cb5b928282019260209290829003018186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b5051600382015460058301546040805163dab0efff60e01b81526001600160a01b03938416600482015291831660248301526044820186905251919092169163dab0efff9160648083019260209291908290030181600087803b158015610da357600080fd5b505af1158015610db7573d6000803e3d6000fd5b505050506040513d6020811015610dcd57600080fd5b5051610dd857600080fd5b60058101546033546040805185815290516001600160a01b0393841693879316917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd1988374919081900360200190a450919050565b6034546001600160a01b031681565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610ef257600080fd5b505afa158015610f06573d6000803e3d6000fd5b505050506040513d6020811015610f1c57600080fd5b5051610f6a576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b038116610f7c5750335b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093526001600160a01b0385811660448501529182166064840152519216916388737b5e916084808201926020929091908290030181600087803b158015610fe657600080fd5b505af1158015610ffa573d6000803e3d6000fd5b505050506040513d602081101561101057600080fd5b50519150836001600160a01b0381166110265750335b6001600160a01b0381163014156110775760008812156110775760405162461bcd60e51b815260040180806020018281038252602d8152602001806139c1602d913960400191505060405180910390fd5b61107f613102565b60408051610160810182528951815260208082018c90528a0151918101919091526001600160a01b03881660608201526080810189600260200201518152602001836001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600015158152509050806037600086815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060c0820151816006015560e082015181600701556101008201518160080155610120820151816009015561014082015181600a0160006101000a81548160ff021916908315150217905550905050603460009054906101000a90046001600160a01b03166001600160a01b031684603360009054906101000a90046001600160a01b03166001600160a01b03167ffc38e03bef8d47e8c970c106660459b8a9db8eb045bd1281ef4cc50c16e032278d8d8d8d898b604051808060200187815260200186600360200280838360005b83811015611270578181015183820152602001611258565b50505050905001856001600160a01b03168152602001846001600160a01b03168152602001836001600160a01b03168152602001828103825288818151815260200191508051906020019080838360005b838110156112d95781810151838201526020016112c1565b50505050905090810190601f1680156113065780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a450505060008181526036602052604090204390559695505050505050565b60355481565b60009081526037602052604090206004015490565b6000818152603760205260408120600a81015460ff166113a25760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316308114156113da5760088201546113cc57600282015460088301555b506039546001600160a01b03165b60028201805460009091559250821561153c57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561143b57600080fd5b505afa15801561144f573d6000803e3d6000fd5b505050506040513d602081101561146557600080fd5b50516040805163658b6a5160e11b8152600481018690526001600160a01b0384811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b1580156114ba57600080fd5b505af11580156114ce573d6000803e3d6000fd5b505050506040513d60208110156114e457600080fd5b50516114ef57600080fd5b60058201546033546040805186815290516001600160a01b0393841693889316917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b87919081900360200190a45b5050919050565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146115ab576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156115f857600080fd5b505afa15801561160c573d6000803e3d6000fd5b505050506040513d602081101561162257600080fd5b5051949350505050565b6038546001600160a01b03163314611679576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff166116ca5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b6116f3826040518060800160405280605d81526020016139ee605d913960068401549190612a94565b600682015581156109d75761178d8383603360009054906101000a90046001600160a01b03166001600160a01b031663e1758bd86040518163ffffffff1660e01b815260040160206040518083038186803b15801561175157600080fd5b505afa158015611765573d6000803e3d6000fd5b505050506040513d602081101561177b57600080fd5b50516001600160a01b03169190612b2b565b6033546040805184815290516001600160a01b038087169388939116917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e9181900360200190a450505050565b60366020526000908152604090205481565b6000908152603760205260409020600301546001600160a01b031690565b60345460009082906001600160a01b03163314611863576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156118b157600080fd5b505afa1580156118c5573d6000803e3d6000fd5b505050506040513d60208110156118db57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156115f857600080fd5b60345460009083906001600160a01b03163314611994576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152603760205260409020600a015460ff16156119b357600080fd5b6000848152603760205260409020600501546001600160a01b03166119d757600080fd5b82600114156119fd576000848152603760205260409020600a01805460ff191660011790555b60335460408051858152905186926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a35060019392505050565b60009081526037602052604090206002015490565b60345460009082906001600160a01b03163314611ab8576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b0657600080fd5b505afa158015611b1a573d6000803e3d6000fd5b505050506040513d6020811015611b3057600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611b7a57600080fd5b505afa158015611b8e573d6000803e3d6000fd5b505050506040513d6020811015611ba457600080fd5b5051611bf2576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611c4057600080fd5b505afa158015611c54573d6000803e3d6000fd5b505050506040513d6020811015611c6a57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611cc357600080fd5b505afa158015611cd7573d6000803e3d6000fd5b505050506040513d6020811015611ced57600080fd5b50519392505050565b60009081526037602052604090205490565b60345460009082906001600160a01b03163314611d61576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611daf57600080fd5b505afa158015611dc3573d6000803e3d6000fd5b505050506040513d6020811015611dd957600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611e3657600080fd5b505af1158015611e4a573d6000803e3d6000fd5b505050506040513d6020811015611e6057600080fd5b50519695505050505050565b6038546001600160a01b03163314611eb9576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff16611f0a5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b611f33826040518060800160405280606081526020016138b46060913960078401549190612a94565b600782015560335460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b158015611f7d57600080fd5b505afa158015611f91573d6000803e3d6000fd5b505050506040513d6020811015611fa757600080fd5b50516040805163dea9e24d60e01b8152600481018590526001600160a01b0386811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015611ffc57600080fd5b505af1158015612010573d6000803e3d6000fd5b505050506040513d602081101561202657600080fd5b505161203157600080fd5b81156109d7576033546040805184815290516001600160a01b038087169388939116917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee9181900360200190a450505050565b6120bb8989878a600b806020026040519081016040528092919082600b602002808284376000920191909152508c9150612b829050565b6040516120c790613170565b604051809103906000f0801580156120e3573d6000803e3d6000fd5b50603980546001600160a01b0319166001600160a01b0392831617908190556040805163189acdbd60e31b81523060048201529051919092169163c4d66de891602480830192600092919082900301818387803b15801561214357600080fd5b505af1158015612157573d6000803e3d6000fd5b5050821591506122fa905057603354604080513060248083019190915282518083039091018152604490910182526020810180516001600160e01b031663189acdbd60e31b1790529051634b6c2f7760e11b81526001600160a01b03808816936396d85eee938893889388931691906004018086606080828437600081840152601f19601f82011690508083019250505080602001846001600160a01b031681526020018060200183810383528787828181526020019250808284376000838201819052601f909101601f191690920185810384528651815286516020918201939188019250908190849084905b8381101561225d578181015183820152602001612245565b50505050905090810190601f16801561228a5780820380516001836020036101000a031916815260200191505b50975050505050505050602060405180830381600087803b1580156122ae57600080fd5b505af11580156122c2573d6000803e3d6000fd5b505050506040513d60208110156122d857600080fd5b5051603880546001600160a01b0319166001600160a01b039092169190911790555b505050505050505050565b6000818152603760205260408120600a81015460ff166123565760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415612389576007810154612384576001810180546007830155600090555b610bb6565b60018101805460009182905592508213156124aa57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156123ec57600080fd5b505afa158015612400573d6000803e3d6000fd5b505050506040513d602081101561241657600080fd5b505160058201546040805163dea9e24d60e01b8152600481018690526001600160a01b0392831660248201529051919092169163dea9e24d9160448083019260209291908290030181600087803b15801561247057600080fd5b505af1158015612484573d6000803e3d6000fd5b505050506040513d602081101561249a57600080fd5b50516124a557600080fd5b6125bd565b60008212156125bd57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561250157600080fd5b505afa158015612515573d6000803e3d6000fd5b505050506040513d602081101561252b57600080fd5b505160058201546040805163ddbfcc6b60e01b8152600086810360048301526001600160a01b0393841660248301529151929093169263ddbfcc6b9260448083019360209383900390910190829087803b15801561258857600080fd5b505af115801561259c573d6000803e3d6000fd5b505050506040513d60208110156125b257600080fd5b50516125bd57600080fd5b8115610bb65760058101546033546040805185815290516001600160a01b0393841693879316917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee919081900360200190a450919050565b6000908152603760205260409020600a015460ff1690565b60345460009082906001600160a01b03163314612686576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156126d457600080fd5b505afa1580156126e8573d6000803e3d6000fd5b505050506040513d60208110156126fe57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561275357600080fd5b505af1158015612767573d6000803e3d6000fd5b505050506040513d602081101561277d57600080fd5b505195945050505050565b603760205260009081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a909a01549899979896976001600160a01b03968716979596909416949293919290919060ff168b565b6038546001600160a01b031681565b6038546001600160a01b0316331461284c576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff1661289d5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b6128c6826040518060800160405280605f8152602001613934605f913960098401549190612a94565b600982015560038101546001600160a01b0316156109d75781156109d75760038101546128fd906001600160a01b03168484612b2b565b6033546040805184815290516001600160a01b038087169388939116917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd19883749181900360200190a450505050565b60009081526037602052604090206001015490565b60345460009082906001600160a01b031633146129b8576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612a0657600080fd5b505afa158015612a1a573d6000803e3d6000fd5b505050506040513d6020811015612a3057600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561275357600080fd5b6039546001600160a01b031681565b60008184841115612b235760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612ae8578181015183820152602001612ad0565b50505050905090810190601f168015612b155780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612b7d908490612def565b505050565b6001600160a01b038416612bdd576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b612be685612fa7565b603480546001600160a01b0319166001600160a01b03861617905582612de2576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015612c50578181015183820152602001612c38565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b158015612c8257600080fd5b505afa158015612c96573d6000803e3d6000fd5b505050506040513d6020811015612cac57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015612cfe57600080fd5b505afa158015612d12573d6000803e3d6000fd5b505050506040513d6101a0811015612d2957600080fd5b5051905080612ddb57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015612d7a578181015183820152602001612d62565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015612dae57600080fd5b505af1158015612dc2573d6000803e3d6000fd5b505050506040513d6020811015612dd857600080fd5b50505b5050612de8565b60358390555b5050505050565b612e01826001600160a01b03166130c0565b612e52576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310612e905780518252601f199092019160209182019101612e71565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612ef2576040519150601f19603f3d011682016040523d82523d6000602084013e612ef7565b606091505b509150915081612f4e576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156109d757808060200190516020811015612f6a57600080fd5b50516109d75760405162461bcd60e51b815260040180806020018281038252602a815260200180613a4b602a913960400191505060405180910390fd5b600054610100900460ff1680612fc05750612fc06130fc565b80612fce575060005460ff16155b6130095760405162461bcd60e51b815260040180806020018281038252602e815260200180613993602e913960400191505060405180910390fd5b600054610100900460ff16158015613034576000805460ff1961ff0019909116610100171660011790555b6001600160a01b03821661308f576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b03841617905580156130bc576000805461ff00191690555b5050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906130f457508115155b949350505050565b303b1590565b60405180610160016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081526020016000151581525090565b6107078061317e8339019056fe608060405234801561001057600080fd5b506106e7806100206000396000f3fe60806040526004361061004e5760003560e01c8063715018a6146100905780638da5cb5b146100a7578063c4d66de8146100d8578063cb16d4a21461010b578063f2fde38b146101585761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100a561018b565b005b3480156100b357600080fd5b506100bc61023f565b604080516001600160a01b039092168252519081900360200190f35b3480156100e457600080fd5b506100a5600480360360208110156100fb57600080fd5b50356001600160a01b031661024e565b34801561011757600080fd5b506101446004803603604081101561012e57600080fd5b50803590602001356001600160a01b0316610302565b604080519115158252519081900360200190f35b34801561016457600080fd5b506100a56004803603602081101561017b57600080fd5b50356001600160a01b031661044e565b610193610559565b6065546001600160a01b039081169116146101f5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff1680610267575061026761055d565b80610275575060005460ff16155b6102b05760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156102db576000805460ff1961ff0019909116610100171660011790555b6102e3610563565b6102ec8261044e565b80156102fe576000805461ff00191690555b5050565b600061030c610559565b6065546001600160a01b0390811691161461036e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6040516000906001600160a01b0384169085908381818185875af1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5050905080610408576040805162461bcd60e51b815260206004820152601160248201527039b2b73222ba3432b9103330b4b632b21760791b604482015290519081900360640190fd5b6040805185815290516001600160a01b038516917f5cf9c3dc0403b88750b3ce5ea792cdca787ff26128f6d508b99b2d3853ae13ec919081900360200190a25092915050565b610456610559565b6065546001600160a01b039081169116146104b8576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104fd5760405162461bcd60e51b815260040180806020018281038252602681526020018061065e6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061057c575061057c61055d565b8061058a575060005460ff16155b6105c55760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156105f0576000805460ff1961ff0019909116610100171660011790555b60006105fa610559565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561065a576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220157c7771cc4a87a41a603a3d9de8b49468f6f837834ee592668d5dde0c6c763e64736f6c634300060c003370726f706f73616c20776173206e6f742061636365707465642062792074686520766f74696e67206d616368696e6563616e6e6f742072656465656d206d6f72652072657075746174696f6e207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d52657075746174696f6e207761732063616c6c65646d73672e73656e646572206973206e6f7420617574686f72697a65640000000063616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d45787465726e616c546f6b656e207761732063616c6c6564436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646e6567617469766520726570206368616e6765206e6f7420616c6c6f77656420666f722074686973206361736563616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4e6174697665546f6b656e207761732063616c6c65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f74207375636365656463616e6e6f742072656465656d206d6f7265204574686572207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4574686572207761732063616c6c6564a26469706673582212206c3e0103124f5173a21678bc0018c01d94b6d3a05fb477a81deee66b356ab25d64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c80639d4c162d1161010f578063cbba1f5a116100a2578063de9a957a11610071578063de9a957a146107b2578063f3f4b048146107e4578063f81f8bf614610801578063fbfa77cf14610833576101e5565b8063cbba1f5a146106d7578063d29b5d2f146106f4578063d8145e2d14610726578063dcc3e06e146107aa576101e5565b8063bea75f28116100de578063bea75f281461059b578063c4a17ec9146105d7578063c595b55014610609578063c7916cf9146106ba576101e5565b80639d4c162d1461050d5780639f874c9914610544578063b551c37314610561578063b5b8b8651461057e576101e5565b806352717a5e116101875780636e8a6188116101565780636e8a6188146104755780637a5cb92c146104a75780637e078b55146104c45780639588378e146104e1576101e5565b806352717a5e1461040757806358243213146104245780635aef7de6146104415780636b8eb40314610449576101e5565b80633c2163dc116101c35780633c2163dc146102c95780633edf7ca1146102e6578063432848dc1461030a5780634ea2c7ec146103ff576101e5565b80632ac8c1b2146101ea57806334f243521461021e5780633a0284ff1461024d575b600080fd5b61021c6004803603606081101561020057600080fd5b508035906001600160a01b03602082013516906040013561083b565b005b61023b6004803603602081101561023457600080fd5b50356109dd565b60408051918252519081900360200190f35b6102a3600480360360a081101561026357600080fd5b604080516080818101909252833593928301929160a08301919060208401906004908390839080828437600092019190915250919450610bbc9350505050565b604080519485526020850193909352838301919091526060830152519081900360800190f35b61023b600480360360208110156102df57600080fd5b5035610c24565b6102ee610e2a565b604080516001600160a01b039092168252519081900360200190f35b61023b600480360361010081101561032157600080fd5b81019060208101813564010000000081111561033c57600080fd5b82018360208201111561034e57600080fd5b8035906020019184600183028401116401000000008311171561037057600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040805160608181019092529396853596909590946080820194509250602001906003908390839080828437600092019190915250919450506001600160a01b03823581169350602083013581169260400135169050610e39565b61023b611336565b61023b6004803603602081101561041d57600080fd5b503561133c565b61023b6004803603602081101561043a57600080fd5b5035611351565b6102ee611543565b61023b6004803603604081101561045f57600080fd5b506001600160a01b038135169060200135611552565b61021c6004803603606081101561048b57600080fd5b508035906001600160a01b03602082013516906040013561162c565b61023b600480360360208110156104bd57600080fd5b50356117da565b6102ee600480360360208110156104da57600080fd5b50356117ec565b61023b600480360360408110156104f757600080fd5b506001600160a01b03813516906020013561180a565b6105306004803603604081101561052357600080fd5b508035906020013561193b565b604080519115158252519081900360200190f35b61023b6004803603602081101561055a57600080fd5b5035611a4a565b61023b6004803603602081101561057757600080fd5b5035611a5f565b61023b6004803603602081101561059457600080fd5b5035611cf6565b610530600480360360808110156105b157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611d08565b61021c600480360360608110156105ed57600080fd5b508035906001600160a01b036020820135169060400135611e6c565b61021c600480360361028081101561062057600080fd5b6001600160a01b038235811692602081013582169260408201926101a08301358116926101c0810135926101e08201359092169161020082019190810190610280810161026082013564010000000081111561067b57600080fd5b82018360208201111561068d57600080fd5b803590602001918460018302840111640100000000831117156106af57600080fd5b509092509050612084565b61023b600480360360208110156106d057600080fd5b5035612305565b610530600480360360208110156106ed57600080fd5b5035612615565b6105306004803603606081101561070a57600080fd5b508035906001600160a01b03602082013516906040013561262d565b6107436004803603602081101561073c57600080fd5b5035612788565b604080519b8c5260208c019a909a528a8a01989098526001600160a01b0396871660608b015260808a01959095529290941660a088015260c087015260e0860192909252610100850191909152610120840152151561014083015251908190036101600190f35b6102ee6127f0565b61021c600480360360608110156107c857600080fd5b508035906001600160a01b0360208201351690604001356127ff565b61023b600480360360208110156107fa57600080fd5b503561294a565b6105306004803603606081101561081757600080fd5b508035906001600160a01b03602082013516906040013561295f565b6102ee612a85565b6038546001600160a01b03163314610888576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff166108d95760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b61090282604051806080016040528060568152602001613a756056913960088401549190612a94565b600882015581156109d7576039546040805163658b6a5160e11b8152600481018590526001600160a01b0386811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b15801561096357600080fd5b505af1158015610977573d6000803e3d6000fd5b505050506040513d602081101561098d57600080fd5b50506033546040805184815290516001600160a01b038087169388939116917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b879181900360200190a45b50505050565b6000818152603760205260408120600a81015460ff16610a2e5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610a54576006810154610a5457805460068201555b80546000825591508115610bb657603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ab057600080fd5b505afa158015610ac4573d6000803e3d6000fd5b505050506040513d6020811015610ada57600080fd5b5051600582015460408051630218b66560e31b8152600481018690526001600160a01b039283166024820152905191909216916310c5b3289160448083019260209291908290030181600087803b158015610b3457600080fd5b505af1158015610b48573d6000803e3d6000fd5b505050506040513d6020811015610b5e57600080fd5b5051610b6957600080fd5b60058101546033546040805185815290516001600160a01b0393841693879316917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e919081900360200190a45b50919050565b60008080808481602002015115610bd957610bd686612305565b93505b602085015115610bef57610bec866109dd565b92505b604085015115610c0557610c0286611351565b91505b606085015115610c1b57610c1886610c24565b90505b92959194509250565b6000818152603760205260408120600a81015460ff16610c755760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415610c9e576009810154610c9e57600481015460098201555b60038101546001600160a01b031615801590610cbe575060008160040154115b15610bb65760048082018054600090915560335460408051638da5cb5b60e01b815290519295506001600160a01b0390911692638da5cb5b928282019260209290829003018186803b158015610d1357600080fd5b505afa158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b5051600382015460058301546040805163dab0efff60e01b81526001600160a01b03938416600482015291831660248301526044820186905251919092169163dab0efff9160648083019260209291908290030181600087803b158015610da357600080fd5b505af1158015610db7573d6000803e3d6000fd5b505050506040513d6020811015610dcd57600080fd5b5051610dd857600080fd5b60058101546033546040805185815290516001600160a01b0393841693879316917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd1988374919081900360200190a450919050565b6034546001600160a01b031681565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610e7e57600080fd5b505afa158015610e92573d6000803e3d6000fd5b505050506040513d6020811015610ea857600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610ef257600080fd5b505afa158015610f06573d6000803e3d6000fd5b505050506040513d6020811015610f1c57600080fd5b5051610f6a576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b816001600160a01b038116610f7c5750335b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093526001600160a01b0385811660448501529182166064840152519216916388737b5e916084808201926020929091908290030181600087803b158015610fe657600080fd5b505af1158015610ffa573d6000803e3d6000fd5b505050506040513d602081101561101057600080fd5b50519150836001600160a01b0381166110265750335b6001600160a01b0381163014156110775760008812156110775760405162461bcd60e51b815260040180806020018281038252602d8152602001806139c1602d913960400191505060405180910390fd5b61107f613102565b60408051610160810182528951815260208082018c90528a0151918101919091526001600160a01b03881660608201526080810189600260200201518152602001836001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600015158152509050806037600086815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060c0820151816006015560e082015181600701556101008201518160080155610120820151816009015561014082015181600a0160006101000a81548160ff021916908315150217905550905050603460009054906101000a90046001600160a01b03166001600160a01b031684603360009054906101000a90046001600160a01b03166001600160a01b03167ffc38e03bef8d47e8c970c106660459b8a9db8eb045bd1281ef4cc50c16e032278d8d8d8d898b604051808060200187815260200186600360200280838360005b83811015611270578181015183820152602001611258565b50505050905001856001600160a01b03168152602001846001600160a01b03168152602001836001600160a01b03168152602001828103825288818151815260200191508051906020019080838360005b838110156112d95781810151838201526020016112c1565b50505050905090810190601f1680156113065780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a450505060008181526036602052604090204390559695505050505050565b60355481565b60009081526037602052604090206004015490565b6000818152603760205260408120600a81015460ff166113a25760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316308114156113da5760088201546113cc57600282015460088301555b506039546001600160a01b03165b60028201805460009091559250821561153c57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561143b57600080fd5b505afa15801561144f573d6000803e3d6000fd5b505050506040513d602081101561146557600080fd5b50516040805163658b6a5160e11b8152600481018690526001600160a01b0384811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b1580156114ba57600080fd5b505af11580156114ce573d6000803e3d6000fd5b505050506040513d60208110156114e457600080fd5b50516114ef57600080fd5b60058201546033546040805186815290516001600160a01b0393841693889316917f7dd55ea53ce2c347b544c257b778e1dd6638f232fa6b94320e740440e72b4b87919081900360200190a45b5050919050565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146115ab576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156115f857600080fd5b505afa15801561160c573d6000803e3d6000fd5b505050506040513d602081101561162257600080fd5b5051949350505050565b6038546001600160a01b03163314611679576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff166116ca5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b6116f3826040518060800160405280605d81526020016139ee605d913960068401549190612a94565b600682015581156109d75761178d8383603360009054906101000a90046001600160a01b03166001600160a01b031663e1758bd86040518163ffffffff1660e01b815260040160206040518083038186803b15801561175157600080fd5b505afa158015611765573d6000803e3d6000fd5b505050506040513d602081101561177b57600080fd5b50516001600160a01b03169190612b2b565b6033546040805184815290516001600160a01b038087169388939116917f13f7471cab9806ac4ff5d80ae879babfbf1081e240d05c4450b75f69c626cb2e9181900360200190a450505050565b60366020526000908152604090205481565b6000908152603760205260409020600301546001600160a01b031690565b60345460009082906001600160a01b03163314611863576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156118b157600080fd5b505afa1580156118c5573d6000803e3d6000fd5b505050506040513d60208110156118db57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156115f857600080fd5b60345460009083906001600160a01b03163314611994576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152603760205260409020600a015460ff16156119b357600080fd5b6000848152603760205260409020600501546001600160a01b03166119d757600080fd5b82600114156119fd576000848152603760205260409020600a01805460ff191660011790555b60335460408051858152905186926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a35060019392505050565b60009081526037602052604090206002015490565b60345460009082906001600160a01b03163314611ab8576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611b0657600080fd5b505afa158015611b1a573d6000803e3d6000fd5b505050506040513d6020811015611b3057600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611b7a57600080fd5b505afa158015611b8e573d6000803e3d6000fd5b505050506040513d6020811015611ba457600080fd5b5051611bf2576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611c4057600080fd5b505afa158015611c54573d6000803e3d6000fd5b505050506040513d6020811015611c6a57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611cc357600080fd5b505afa158015611cd7573d6000803e3d6000fd5b505050506040513d6020811015611ced57600080fd5b50519392505050565b60009081526037602052604090205490565b60345460009082906001600160a01b03163314611d61576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611daf57600080fd5b505afa158015611dc3573d6000803e3d6000fd5b505050506040513d6020811015611dd957600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611e3657600080fd5b505af1158015611e4a573d6000803e3d6000fd5b505050506040513d6020811015611e6057600080fd5b50519695505050505050565b6038546001600160a01b03163314611eb9576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff16611f0a5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b611f33826040518060800160405280606081526020016138b46060913960078401549190612a94565b600782015560335460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b158015611f7d57600080fd5b505afa158015611f91573d6000803e3d6000fd5b505050506040513d6020811015611fa757600080fd5b50516040805163dea9e24d60e01b8152600481018590526001600160a01b0386811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015611ffc57600080fd5b505af1158015612010573d6000803e3d6000fd5b505050506040513d602081101561202657600080fd5b505161203157600080fd5b81156109d7576033546040805184815290516001600160a01b038087169388939116917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee9181900360200190a450505050565b6120bb8989878a600b806020026040519081016040528092919082600b602002808284376000920191909152508c9150612b829050565b6040516120c790613170565b604051809103906000f0801580156120e3573d6000803e3d6000fd5b50603980546001600160a01b0319166001600160a01b0392831617908190556040805163189acdbd60e31b81523060048201529051919092169163c4d66de891602480830192600092919082900301818387803b15801561214357600080fd5b505af1158015612157573d6000803e3d6000fd5b5050821591506122fa905057603354604080513060248083019190915282518083039091018152604490910182526020810180516001600160e01b031663189acdbd60e31b1790529051634b6c2f7760e11b81526001600160a01b03808816936396d85eee938893889388931691906004018086606080828437600081840152601f19601f82011690508083019250505080602001846001600160a01b031681526020018060200183810383528787828181526020019250808284376000838201819052601f909101601f191690920185810384528651815286516020918201939188019250908190849084905b8381101561225d578181015183820152602001612245565b50505050905090810190601f16801561228a5780820380516001836020036101000a031916815260200191505b50975050505050505050602060405180830381600087803b1580156122ae57600080fd5b505af11580156122c2573d6000803e3d6000fd5b505050506040513d60208110156122d857600080fd5b5051603880546001600160a01b0319166001600160a01b039092169190911790555b505050505050505050565b6000818152603760205260408120600a81015460ff166123565760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b60058101546001600160a01b0316301415612389576007810154612384576001810180546007830155600090555b610bb6565b60018101805460009182905592508213156124aa57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156123ec57600080fd5b505afa158015612400573d6000803e3d6000fd5b505050506040513d602081101561241657600080fd5b505160058201546040805163dea9e24d60e01b8152600481018690526001600160a01b0392831660248201529051919092169163dea9e24d9160448083019260209291908290030181600087803b15801561247057600080fd5b505af1158015612484573d6000803e3d6000fd5b505050506040513d602081101561249a57600080fd5b50516124a557600080fd5b6125bd565b60008212156125bd57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561250157600080fd5b505afa158015612515573d6000803e3d6000fd5b505050506040513d602081101561252b57600080fd5b505160058201546040805163ddbfcc6b60e01b8152600086810360048301526001600160a01b0393841660248301529151929093169263ddbfcc6b9260448083019360209383900390910190829087803b15801561258857600080fd5b505af115801561259c573d6000803e3d6000fd5b505050506040513d60208110156125b257600080fd5b50516125bd57600080fd5b8115610bb65760058101546033546040805185815290516001600160a01b0393841693879316917feab8bc4bf2fd6ce5634b8e75023e0e48367e68249ce2aa2c0ef7c0efe5648bee919081900360200190a450919050565b6000908152603760205260409020600a015460ff1690565b60345460009082906001600160a01b03163314612686576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156126d457600080fd5b505afa1580156126e8573d6000803e3d6000fd5b505050506040513d60208110156126fe57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561275357600080fd5b505af1158015612767573d6000803e3d6000fd5b505050506040513d602081101561277d57600080fd5b505195945050505050565b603760205260009081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a909a01549899979896976001600160a01b03968716979596909416949293919290919060ff168b565b6038546001600160a01b031681565b6038546001600160a01b0316331461284c576040805162461bcd60e51b815260206004820152601c6024820152600080516020613914833981519152604482015290519081900360640190fd5b6000838152603760205260409020600a81015460ff1661289d5760405162461bcd60e51b815260040180806020018281038252602f815260200180613885602f913960400191505060405180910390fd5b6128c6826040518060800160405280605f8152602001613934605f913960098401549190612a94565b600982015560038101546001600160a01b0316156109d75781156109d75760038101546128fd906001600160a01b03168484612b2b565b6033546040805184815290516001600160a01b038087169388939116917f5a66e28cdcd3bc22082d9f07be2b6bed5f50f349e5d89f655d750ecdd19883749181900360200190a450505050565b60009081526037602052604090206001015490565b60345460009082906001600160a01b031633146129b8576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612a0657600080fd5b505afa158015612a1a573d6000803e3d6000fd5b505050506040513d6020811015612a3057600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561275357600080fd5b6039546001600160a01b031681565b60008184841115612b235760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612ae8578181015183820152602001612ad0565b50505050905090810190601f168015612b155780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052612b7d908490612def565b505050565b6001600160a01b038416612bdd576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b612be685612fa7565b603480546001600160a01b0319166001600160a01b03861617905582612de2576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015612c50578181015183820152602001612c38565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b158015612c8257600080fd5b505afa158015612c96573d6000803e3d6000fd5b505050506040513d6020811015612cac57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015612cfe57600080fd5b505afa158015612d12573d6000803e3d6000fd5b505050506040513d6101a0811015612d2957600080fd5b5051905080612ddb57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015612d7a578181015183820152602001612d62565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015612dae57600080fd5b505af1158015612dc2573d6000803e3d6000fd5b505050506040513d6020811015612dd857600080fd5b50505b5050612de8565b60358390555b5050505050565b612e01826001600160a01b03166130c0565b612e52576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310612e905780518252601f199092019160209182019101612e71565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612ef2576040519150601f19603f3d011682016040523d82523d6000602084013e612ef7565b606091505b509150915081612f4e576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156109d757808060200190516020811015612f6a57600080fd5b50516109d75760405162461bcd60e51b815260040180806020018281038252602a815260200180613a4b602a913960400191505060405180910390fd5b600054610100900460ff1680612fc05750612fc06130fc565b80612fce575060005460ff16155b6130095760405162461bcd60e51b815260040180806020018281038252602e815260200180613993602e913960400191505060405180910390fd5b600054610100900460ff16158015613034576000805460ff1961ff0019909116610100171660011790555b6001600160a01b03821661308f576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b03841617905580156130bc576000805461ff00191690555b5050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906130f457508115155b949350505050565b303b1590565b60405180610160016040528060008152602001600081526020016000815260200160006001600160a01b031681526020016000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081526020016000151581525090565b6107078061317e8339019056fe608060405234801561001057600080fd5b506106e7806100206000396000f3fe60806040526004361061004e5760003560e01c8063715018a6146100905780638da5cb5b146100a7578063c4d66de8146100d8578063cb16d4a21461010b578063f2fde38b146101585761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100a561018b565b005b3480156100b357600080fd5b506100bc61023f565b604080516001600160a01b039092168252519081900360200190f35b3480156100e457600080fd5b506100a5600480360360208110156100fb57600080fd5b50356001600160a01b031661024e565b34801561011757600080fd5b506101446004803603604081101561012e57600080fd5b50803590602001356001600160a01b0316610302565b604080519115158252519081900360200190f35b34801561016457600080fd5b506100a56004803603602081101561017b57600080fd5b50356001600160a01b031661044e565b610193610559565b6065546001600160a01b039081169116146101f5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff1680610267575061026761055d565b80610275575060005460ff16155b6102b05760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156102db576000805460ff1961ff0019909116610100171660011790555b6102e3610563565b6102ec8261044e565b80156102fe576000805461ff00191690555b5050565b600061030c610559565b6065546001600160a01b0390811691161461036e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6040516000906001600160a01b0384169085908381818185875af1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5050905080610408576040805162461bcd60e51b815260206004820152601160248201527039b2b73222ba3432b9103330b4b632b21760791b604482015290519081900360640190fd5b6040805185815290516001600160a01b038516917f5cf9c3dc0403b88750b3ce5ea792cdca787ff26128f6d508b99b2d3853ae13ec919081900360200190a25092915050565b610456610559565b6065546001600160a01b039081169116146104b8576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104fd5760405162461bcd60e51b815260040180806020018281038252602681526020018061065e6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061057c575061057c61055d565b8061058a575060005460ff16155b6105c55760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156105f0576000805460ff1961ff0019909116610100171660011790555b60006105fa610559565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561065a576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220157c7771cc4a87a41a603a3d9de8b49468f6f837834ee592668d5dde0c6c763e64736f6c634300060c003370726f706f73616c20776173206e6f742061636365707465642062792074686520766f74696e67206d616368696e6563616e6e6f742072656465656d206d6f72652072657075746174696f6e207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d52657075746174696f6e207761732063616c6c65646d73672e73656e646572206973206e6f7420617574686f72697a65640000000063616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d45787465726e616c546f6b656e207761732063616c6c6564436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646e6567617469766520726570206368616e6765206e6f7420616c6c6f77656420666f722074686973206361736563616e6e6f742072656465656d206d6f726520746f6b656e73207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4e6174697665546f6b656e207761732063616c6c65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f74207375636365656463616e6e6f742072656465656d206d6f7265204574686572207468616e20616c6c6f636174656420666f7220746869732070726f706f73616c206f72206e6f2072656465656d4574686572207761732063616c6c6564a26469706673582212206c3e0103124f5173a21678bc0018c01d94b6d3a05fb477a81deee66b356ab25d64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Controller.json b/contracts/0.1.2-rc.8/Controller.json new file mode 100644 index 00000000..e3c2ad6d --- /dev/null +++ b/contracts/0.1.2-rc.8/Controller.json @@ -0,0 +1,792 @@ +{ + "contractName": "Controller", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "indexed": false, + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "_when", + "type": "uint8" + } + ], + "name": "AddGlobalConstraint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "BurnReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "MintReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "MintTokens", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_scheme", + "type": "address" + } + ], + "name": "RegisterScheme", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_index", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_isPre", + "type": "bool" + } + ], + "name": "RemoveGlobalConstraint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_scheme", + "type": "address" + } + ], + "name": "UnregisterScheme", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_oldController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_newController", + "type": "address" + } + ], + "name": "UpgradeController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + } + ], + "name": "addGlobalConstraint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenApproval", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_externalToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "externalTokenTransferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "globalConstraintsCount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "globalConstraintsPost", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "globalConstraintsPre", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "globalConstraintsRegisterPost", + "outputs": [ + { + "internalType": "bool", + "name": "isRegistered", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "globalConstraintsRegisterPre", + "outputs": [ + { + "internalType": "bool", + "name": "isRegistered", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "initialScheme", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + } + ], + "name": "isGlobalConstraintRegistered", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + } + ], + "name": "isSchemeRegistered", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_metaData", + "type": "string" + } + ], + "name": "metaData", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "mintTokens", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "nativeReputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nativeToken", + "outputs": [ + { + "internalType": "contract DAOToken", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "newController", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + } + ], + "name": "registerScheme", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_globalConstraint", + "type": "address" + } + ], + "name": "removeGlobalConstraint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "schemesPermissions", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amountInWei", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "_to", + "type": "address" + } + ], + "name": "sendEther", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_key", + "type": "string" + }, + { + "internalType": "string", + "name": "_value", + "type": "string" + } + ], + "name": "setDBValue", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + } + ], + "name": "unregisterScheme", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "unregisterSelf", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newController", + "type": "address" + } + ], + "name": "upgradeController", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50613bbf806100206000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c806381d064c411610104578063b9c2ee82116100a2578063ddbfcc6b11610071578063ddbfcc6b14610781578063dea9e24d146107ad578063e1758bd8146107d9578063e8c98b22146107e1576101cf565b8063b9c2ee82146106d8578063cb16d4a2146106fe578063d5210f601461072a578063dab0efff1461074b576101cf565b806389ae1c90116100de57806389ae1c90146105a05780639c9c7326146105a8578063ab751f7114610666578063b756d5a21461069c576101cf565b806381d064c4146104c957806384da77f5146104ef578063890ac46c14610532576101cf565b8063488b3814116101715780635f30e5811161014b5780635f30e5811461044f578063653915e5146104755780636bafaa591461049b578063814784f6146104a3576101cf565b8063488b3814146103eb5780635aef7de6146104115780635d1da8cb14610419576101cf565b80633a02263c116101ad5780633a02263c1461035457806341443cea146103785780634422d3721461039e578063485cc955146103bb576101cf565b806310c5b328146101d4578063177eebb0146102145780632bf1645814610255575b600080fd5b610200600480360360408110156101ea57600080fd5b50803590602001356001600160a01b03166107fe565b604080519115158252519081900360200190f35b61023a6004803603602081101561022a57600080fd5b50356001600160a01b0316610b0a565b60408051921515835260208301919091528051918290030190f35b6102d36004803603606081101561026b57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029557600080fd5b8201836020820111156102a757600080fd5b803590602001918460018302840111600160201b831117156102c857600080fd5b919350915035610b29565b60405180831515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610318578181015183820152602001610300565b50505050905090810190601f1680156103455780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61035c610f0e565b604080516001600160a01b039092168252519081900360200190f35b6102006004803603602081101561038e57600080fd5b50356001600160a01b0316610f1d565b61035c600480360360208110156103b457600080fd5b5035610f62565b6103e9600480360360408110156103d157600080fd5b506001600160a01b0381358116916020013516610f89565b005b6102006004803603602081101561040157600080fd5b50356001600160a01b031661119d565b61035c611586565b6102006004803603604081101561042f57600080fd5b5080356001600160a01b031690602001356001600160e01b031916611595565b6102006004803603602081101561046557600080fd5b50356001600160a01b03166118f7565b6102006004803603602081101561048b57600080fd5b50356001600160a01b0316611ba8565b610200611ed0565b61023a600480360360208110156104b957600080fd5b50356001600160a01b0316611f2f565b610200600480360360208110156104df57600080fd5b50356001600160a01b0316611f4e565b6105156004803603602081101561050557600080fd5b50356001600160a01b0316611f59565b604080516001600160e01b03199092168252519081900360200190f35b6102006004803603602081101561054857600080fd5b810190602081018135600160201b81111561056257600080fd5b82018360208201111561057457600080fd5b803590602001918460018302840111600160201b8311171561059557600080fd5b509092509050611f6e565b61035c612085565b610200600480360360408110156105be57600080fd5b810190602081018135600160201b8111156105d857600080fd5b8201836020820111156105ea57600080fd5b803590602001918460018302840111600160201b8311171561060b57600080fd5b919390929091602081019035600160201b81111561062857600080fd5b82018360208201111561063a57600080fd5b803590602001918460018302840111600160201b8311171561065b57600080fd5b509092509050612094565b6102006004803603606081101561067c57600080fd5b506001600160a01b038135811691602081013590911690604001356121ca565b610200600480360360808110156106b257600080fd5b506001600160a01b038135811691602081013582169160408201351690606001356124b2565b610200600480360360208110156106ee57600080fd5b50356001600160a01b03166127a3565b6102006004803603604081101561071457600080fd5b50803590602001356001600160a01b0316612d9e565b610732613061565b6040805192835260208301919091528051918290030190f35b6102006004803603606081101561076157600080fd5b506001600160a01b0381358116916020810135909116906040013561306b565b6102006004803603604081101561079757600080fd5b50803590602001356001600160a01b0316613342565b610200600480360360408110156107c357600080fd5b50803590602001356001600160a01b031661364a565b61035c613952565b61035c600480360360208110156107f757600080fd5b5035613961565b3360009081526033602052604081205460e01b600160e01b90811614610859576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b696d696e74546f6b656e7360b01b60005b603854811015610952576038818154811061088157fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b1580156108df57600080fd5b505af11580156108f3573d6000803e3d6000fd5b505050506040513d602081101561090957600080fd5b505161094a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161086a565b6040805186815290516001600160a01b0386169133917f21f9c9a1a1f9a311a50f15fec5c1faa9e21fc9edf964f0fdecba5bd490484c5e9181900360200190a3603554604080516340c10f1960e01b81526001600160a01b03878116600483015260248201899052915191909216916340c10f199160448083019260209291908290030181600087803b1580156109e857600080fd5b505af11580156109fc573d6000803e3d6000fd5b505050506040513d6020811015610a1257600080fd5b505192505060005b603954811015610b025760398181548110610a3157fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015610a8f57600080fd5b505af1158015610aa3573d6000803e3d6000fd5b505050506040513d6020811015610ab957600080fd5b5051610afa576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101610a1a565b505092915050565b603a602052600090815260409020805460019091015460ff9091169082565b3360009081526033602052604081205460609060e01b600160e41b90811614610b99576040805162461bcd60e51b815260206004820152601e60248201527f73656e646572206973206e6f7420612047656e6572696320536368656d650000604482015290519081900360640190fd5b6a19d95b995c9a58d0d85b1b60aa1b60005b603854811015610c935760388181548110610bc257fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b158015610c2057600080fd5b505af1158015610c34573d6000803e3d6000fd5b505050506040513d6020811015610c4a57600080fd5b5051610c8b576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101610bab565b60345460405163057e2c8b60e31b81526001600160a01b038a81166004830190815260448301899052606060248401908152606484018b90529190931692632bf16458928c928c928c928c9290608401858580828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610d2157600080fd5b505af1158015610d35573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610d5e57600080fd5b815160208301805160405192949293830192919084600160201b821115610d8457600080fd5b908301906020820185811115610d9957600080fd5b8251600160201b811182820188101715610db257600080fd5b82525081516020918201929091019080838360005b83811015610ddf578181015183820152602001610dc7565b50505050905090810190601f168015610e0c5780820380516001836020036101000a031916815260200191505b50604052505050935093505060005b603954811015610f035760398181548110610e3257fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015610e9057600080fd5b505af1158015610ea4573d6000803e3d6000fd5b505050506040513d6020811015610eba57600080fd5b5051610efb576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101610e1b565b505094509492505050565b6037546001600160a01b031681565b6001600160a01b0381166000908152603a602052604081205460ff1680610f5c57506001600160a01b0382166000908152603b602052604090205460ff165b92915050565b60388181548110610f6f57fe5b6000918252602090912001546001600160a01b0316905081565b600054610100900460ff1680610fa25750610fa261396e565b80610fb0575060005460ff16155b610feb5760405162461bcd60e51b815260040180806020018281038252602e815260200180613ad8602e913960400191505060405180910390fd5b600054610100900460ff16158015611016576000805460ff1961ff0019909116610100171660011790555b603480546001600160a01b0319166001600160a01b03858116919091179182905560408051631c2eb17b60e31b81529051929091169163e1758bd891600480820192602092909190829003018186803b15801561107257600080fd5b505afa158015611086573d6000803e3d6000fd5b505050506040513d602081101561109c57600080fd5b5051603580546001600160a01b0319166001600160a01b039283161790556034546040805163089ae1c960e41b8152905191909216916389ae1c90916004808301926020929190829003018186803b1580156110f757600080fd5b505afa15801561110b573d6000803e3d6000fd5b505050506040513d602081101561112157600080fd5b5051603680546001600160a01b039283166001600160a01b03199091161790558216600081815260336020526040808220805463ffffffff1916601f1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a38015611198576000805461ff00191690555b505050565b3360009081526033602052604081205460e01b600160e21b908116146111f45760405162461bcd60e51b8152600401808060200182810382526025815260200180613a936025913960400191505060405180910390fd5b6111fc61399d565b600080846001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561123a57600080fd5b505af115801561124e573d6000803e3d6000fd5b505050506040513d602081101561126457600080fd5b5051905060008082600281111561127757fe5b148061128e5750600282600281111561128c57fe5b145b156113c4576001600160a01b0386166000908152603a60209081526040918290208251808401909352805460ff161580158452600190910154918301919091529094506113c4576001603880549050038460200151101561136b576038805460001981019081106112fb57fe5b9060005260206000200160009054906101000a90046001600160a01b0316925082603885602001518154811061132d57fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055868101519286168252603a905260409020600101555b603880548061137657fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b0388168252603a905260408120805460ff1916815560019081019190915590505b60018260028111156113d257fe5b14806113e9575060028260028111156113e757fe5b145b1561151f576001600160a01b0386166000908152603b60209081526040918290208251808401909352805460ff1615801584526001909101549183019190915290945061151f57600160398054905003846020015110156114c65760398054600019810190811061145657fe5b9060005260206000200160009054906101000a90046001600160a01b0316925082603985602001518154811061148857fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055868101519286168252603b905260409020600101555b60398054806114d157fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b0388168252603b905260408120805460ff1916815560019081019190915590505b801561157d5760208401516001600160a01b038716907fcdf1a50ea6b7de555bd409f8a4a53ea43c6dc6b4caa961889da9e005f21bbaa990600085600281111561156557fe5b60408051938452911460208301528051918290030190a25b95945050505050565b6034546001600160a01b031681565b3360009081526033602052604081205460e01b600160e11b908116146115ec5760405162461bcd60e51b8152600401808060200182810382526025815260200180613a4e6025913960400191505060405180910390fd5b6d7265676973746572536368656d6560901b60005b6038548110156116e9576038818154811061161857fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561167657600080fd5b505af115801561168a573d6000803e3d6000fd5b505050506040513d60208110156116a057600080fd5b50516116e1576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101611601565b6001600160a01b0385166000908152603360205260408082205433835291205460e091821b9186831891901b1916601f60e01b16156117595760405162461bcd60e51b81526004018080602001828103825260248152602001806139b56024913960400191505060405180910390fd5b3360009081526033602052604090205460e01b198116601f60e01b16156117b15760405162461bcd60e51b81526004018080602001828103825260248152602001806139b56024913960400191505060405180910390fd5b6001600160a01b038616600081815260336020526040808220805463ffffffff1916600160e01b8a1760e01c1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a360019350505060005b603954811015610b02576039818154811061182657fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b15801561188457600080fd5b505af1158015611898573d6000803e3d6000fd5b505050506040513d60208110156118ae57600080fd5b50516118ef576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161180f565b3360009081526033602052604081205460e01b600160e21b9081161461194e5760405162461bcd60e51b8152600401808060200182810382526025815260200180613a936025913960400191505060405180910390fd5b6000826001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561198b57600080fd5b505af115801561199f573d6000803e3d6000fd5b505050506040513d60208110156119b557600080fd5b5051905060008160028111156119c757fe5b14806119de575060028160028111156119dc57fe5b145b15611a86576001600160a01b0383166000908152603a602052604090205460ff16611a865760388054600180820183557f38395c5dceade9603479b177b68959049485df8aa97b39f3533039af5f45619990910180546001600160a01b0319166001600160a01b03871690811790915560408051808201825283815293546000190160208086019182526000938452603a905291209251835460ff1916901515178355519101555b6001816002811115611a9457fe5b1480611aab57506002816002811115611aa957fe5b145b15611b53576001600160a01b0383166000908152603b602052604090205460ff16611b535760398054600180820183557fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d390910180546001600160a01b0319166001600160a01b03871690811790915560408051808201825283815293546000190160208086019182526000938452603b905291209251835460ff1916901515178355519101555b826001600160a01b03167fbe8cc209a3d881fa6ea5b12c6a389bbea620f5f0c1bcc2955a7961d0c5846ead8260405180826002811115611b8f57fe5b815260200191505060405180910390a250600192915050565b3360009081526033602052604081205460e01b600160e11b90811614611bff5760405162461bcd60e51b8152600401808060200182810382526025815260200180613a4e6025913960400191505060405180910390fd5b6f756e7265676973746572536368656d6560801b60005b603854811015611cfe5760388181548110611c2d57fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b158015611c8b57600080fd5b505af1158015611c9f573d6000803e3d6000fd5b505050506040513d6020811015611cb557600080fd5b5051611cf6576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101611c16565b611d0784613974565b611d145760009250611ddd565b33600090815260336020526040808220546001600160a01b038716835291205460e091821b19911b16601f60e01b1615611d7f5760405162461bcd60e51b8152600401808060200182810382526027815260200180613b636027913960400191505060405180910390fd5b6040516001600160a01b0385169033907f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf90600090a36001600160a01b0384166000908152603360205260409020805463ffffffff19169055600192505b5060005b603954811015611ec95760398181548110611df857fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015611e5657600080fd5b505af1158015611e6a573d6000803e3d6000fd5b505050506040513d6020811015611e8057600080fd5b5051611ec1576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101611de1565b5050919050565b6000611edb33613974565b611ee757506000611f2c565b33600081815260336020526040808220805463ffffffff191690555182917f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf91a35060015b90565b603b602052600090815260409020805460019091015460ff9091169082565b6000610f5c82613974565b60336020526000908152604090205460e01b81565b3360009081526033602052604081205460e01b600160e41b90811614611fdb576040805162461bcd60e51b815260206004820152601f60248201527f73656e646572206973206e6f742061204d6574614461746120536368656d6500604482015290519081900360640190fd5b603454604051632242b11b60e21b8152602060048201908152602482018590526001600160a01b039092169163890ac46c91869186918190604401848480828437600081840152601f19601f8201169050808301925050509350505050602060405180830381600087803b15801561205257600080fd5b505af1158015612066573d6000803e3d6000fd5b505050506040513d602081101561207c57600080fd5b50519392505050565b6036546001600160a01b031681565b3360009081526033602052604081205460e01b600160e01b908116146120ef576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b60345460408051634e4e399360e11b815260048101918252604481018790526001600160a01b0390921691639c9c73269188918891889188919081906024810190606401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f8201169050808301925050509650505050505050602060405180830381600087803b15801561219557600080fd5b505af11580156121a9573d6000803e3d6000fd5b505050506040513d60208110156121bf57600080fd5b505195945050505050565b3360009081526033602052604081205460e01b600160e01b90811614612225576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b7f65787465726e616c546f6b656e496e637265617365417070726f76616c00000060005b603854811015612331576038818154811061226057fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b1580156122be57600080fd5b505af11580156122d2573d6000803e3d6000fd5b505050506040513d60208110156122e857600080fd5b5051612329576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612249565b6034546040805163ab751f7160e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163ab751f719160648083019260209291908290030181600087803b15801561238f57600080fd5b505af11580156123a3573d6000803e3d6000fd5b505050506040513d60208110156123b957600080fd5b505192505060005b6039548110156124a957603981815481106123d857fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b15801561243657600080fd5b505af115801561244a573d6000803e3d6000fd5b505050506040513d602081101561246057600080fd5b50516124a1576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016123c1565b50509392505050565b3360009081526033602052604081205460e01b600160e01b9081161461250d576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b7f65787465726e616c546f6b656e5472616e7366657246726f6d0000000000000060005b603854811015612619576038818154811061254857fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b1580156125a657600080fd5b505af11580156125ba573d6000803e3d6000fd5b505050506040513d60208110156125d057600080fd5b5051612611576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612531565b60345460408051635bab6ad160e11b81526001600160a01b038a8116600483015289811660248301528881166044830152606482018890529151919092169163b756d5a29160848083019260209291908290030181600087803b15801561267f57600080fd5b505af1158015612693573d6000803e3d6000fd5b505050506040513d60208110156126a957600080fd5b505192505060005b60395481101561279957603981815481106126c857fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b15801561272657600080fd5b505af115801561273a573d6000803e3d6000fd5b505050506040513d602081101561275057600080fd5b5051612791576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016126b1565b5050949350505050565b3360009081526033602052604081205460e01b600160e31b90811614612810576040805162461bcd60e51b815260206004820152601d60248201527f73656e646572206973206e6f7420557067726164696e67536368656d65000000604482015290519081900360640190fd5b6037546001600160a01b0316156128585760405162461bcd60e51b8152600401808060200182810382526024815260200180613b066024913960400191505060405180910390fd5b6001600160a01b0382166128b3576040805162461bcd60e51b815260206004820152601a60248201527f6e657720636f6e74726f6c6c65722063616e6e6f742062652030000000000000604482015290519081900360640190fd5b603780546001600160a01b0319166001600160a01b038481169182179092556034546040805163f2fde38b60e01b815260048101939093525192169163f2fde38b9160248082019260009290919082900301818387803b15801561291657600080fd5b505af115801561292a573d6000803e3d6000fd5b50505050816001600160a01b0316603460009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561298657600080fd5b505afa15801561299a573d6000803e3d6000fd5b505050506040513d60208110156129b057600080fd5b50516001600160a01b0316146129f75760405162461bcd60e51b8152600401808060200182810382526039815260200180613b2a6039913960400191505060405180910390fd5b60355460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015612a3b57600080fd5b505afa158015612a4f573d6000803e3d6000fd5b505050506040513d6020811015612a6557600080fd5b50516001600160a01b03161415612ba5576035546040805163f2fde38b60e01b81526001600160a01b0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015612ac457600080fd5b505af1158015612ad8573d6000803e3d6000fd5b50505050816001600160a01b0316603560009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612b3457600080fd5b505afa158015612b48573d6000803e3d6000fd5b505050506040513d6020811015612b5e57600080fd5b50516001600160a01b031614612ba55760405162461bcd60e51b8152600401808060200182810382526038815260200180613a166038913960400191505060405180910390fd5b60365460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015612be957600080fd5b505afa158015612bfd573d6000803e3d6000fd5b505050506040513d6020811015612c1357600080fd5b50516001600160a01b03161415612d53576036546040805163f2fde38b60e01b81526001600160a01b0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015612c7257600080fd5b505af1158015612c86573d6000803e3d6000fd5b50505050816001600160a01b0316603660009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612ce257600080fd5b505afa158015612cf6573d6000803e3d6000fd5b505050506040513d6020811015612d0c57600080fd5b50516001600160a01b031614612d535760405162461bcd60e51b815260040180806020018281038252603d8152602001806139d9603d913960400191505060405180910390fd5b603754604080516001600160a01b039290921682525130917fdb7cbacf8df312d794506c0cc9af07f64d29ca075796ea2e950a3832cc9a63dd919081900360200190a2506001919050565b3360009081526033602052604081205460e01b600160e01b90811614612df9576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b6839b2b73222ba3432b960b91b60005b603854811015612ef15760388181548110612e2057fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b158015612e7e57600080fd5b505af1158015612e92573d6000803e3d6000fd5b505050506040513d6020811015612ea857600080fd5b5051612ee9576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612e09565b6034546040805163658b6a5160e11b8152600481018890526001600160a01b0387811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b158015612f4757600080fd5b505af1158015612f5b573d6000803e3d6000fd5b505050506040513d6020811015612f7157600080fd5b505192505060005b603954811015610b025760398181548110612f9057fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015612fee57600080fd5b505af1158015613002573d6000803e3d6000fd5b505050506040513d602081101561301857600080fd5b5051613059576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612f79565b6038546039549091565b3360009081526033602052604081205460e01b600160e01b908116146130c6576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b7432bc3a32b93730b62a37b5b2b72a3930b739b332b960591b60005b6038548110156131ca57603881815481106130f957fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561315757600080fd5b505af115801561316b573d6000803e3d6000fd5b505050506040513d602081101561318157600080fd5b50516131c2576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016130e2565b6034546040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561322857600080fd5b505af115801561323c573d6000803e3d6000fd5b505050506040513d602081101561325257600080fd5b505192505060005b6039548110156124a9576039818154811061327157fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b1580156132cf57600080fd5b505af11580156132e3573d6000803e3d6000fd5b505050506040513d60208110156132f957600080fd5b505161333a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161325a565b3360009081526033602052604081205460e01b600160e01b9081161461339d576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b6d313ab9372932b83aba30ba34b7b760911b60005b60385481101561349a57603881815481106133c957fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561342757600080fd5b505af115801561343b573d6000803e3d6000fd5b505050506040513d602081101561345157600080fd5b5051613492576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016133b2565b6040805186815290516001600160a01b0386169133917f186d8887e1b22f9d9b16849c36baa748950d09d9c9b67a4a6ea140eaad00c21c9181900360200190a360365460408051632770a7eb60e21b81526001600160a01b0387811660048301526024820189905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561353057600080fd5b505af1158015613544573d6000803e3d6000fd5b505050506040513d602081101561355a57600080fd5b505192505060005b603954811015610b02576039818154811061357957fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b1580156135d757600080fd5b505af11580156135eb573d6000803e3d6000fd5b505050506040513d602081101561360157600080fd5b5051613642576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101613562565b3360009081526033602052604081205460e01b600160e01b908116146136a5576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b6d36b4b73a2932b83aba30ba34b7b760911b60005b6038548110156137a257603881815481106136d157fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561372f57600080fd5b505af1158015613743573d6000803e3d6000fd5b505050506040513d602081101561375957600080fd5b505161379a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016136ba565b6040805186815290516001600160a01b0386169133917f837f2931e3df0592458212be4e470025f197feb7a8e39deb5b7f1f1d42e6f2629181900360200190a3603654604080516340c10f1960e01b81526001600160a01b03878116600483015260248201899052915191909216916340c10f199160448083019260209291908290030181600087803b15801561383857600080fd5b505af115801561384c573d6000803e3d6000fd5b505050506040513d602081101561386257600080fd5b505192505060005b603954811015610b02576039818154811061388157fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b1580156138df57600080fd5b505af11580156138f3573d6000803e3d6000fd5b505050506040513d602081101561390957600080fd5b505161394a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161386a565b6035546001600160a01b031681565b60398181548110610f6f57fe5b303b1590565b6001600160a01b03811660009081526033602052604090205460e01b600160e01b161515919050565b60408051808201909152600080825260208201529056fe73656e64657220756e6175746f72697a6520746f20726567697374657220736368656d656661696c656420746f207472616e736665722072657075746174696f6e206f776e65727368697020746f20746865206e657720636f6e74726f6c6c65726661696c656420746f207472616e7366657220746f6b656e206f776e65727368697020746f20746865206e657720636f6e74726f6c6c657273656e64657220756e6175746f72697a656420746f20726567697374657220736368656d656e6f7420616c6c6f77656420627920676c6f62616c436f6e73747261696e740073656e646572206973206e6f7420676c6f62616c436f6e73747261696e7420736368656d6573656e646572206973206e6f74207265676973746572656420736368656d6500436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65647468697320636f6e74726f6c6c65722077617320616c72656164792075706772616465646661696c656420746f207472616e7366657220617661746172206f776e65727368697020746f20746865206e657720636f6e74726f6c6c657273656e64657220756e6175746f72697a656420746f20756e726567697374657220736368656d65a26469706673582212206b2015d9aa8c5a2b408929f409432d78d4a7ef3cd13eab59329938781f24d71164736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101cf5760003560e01c806381d064c411610104578063b9c2ee82116100a2578063ddbfcc6b11610071578063ddbfcc6b14610781578063dea9e24d146107ad578063e1758bd8146107d9578063e8c98b22146107e1576101cf565b8063b9c2ee82146106d8578063cb16d4a2146106fe578063d5210f601461072a578063dab0efff1461074b576101cf565b806389ae1c90116100de57806389ae1c90146105a05780639c9c7326146105a8578063ab751f7114610666578063b756d5a21461069c576101cf565b806381d064c4146104c957806384da77f5146104ef578063890ac46c14610532576101cf565b8063488b3814116101715780635f30e5811161014b5780635f30e5811461044f578063653915e5146104755780636bafaa591461049b578063814784f6146104a3576101cf565b8063488b3814146103eb5780635aef7de6146104115780635d1da8cb14610419576101cf565b80633a02263c116101ad5780633a02263c1461035457806341443cea146103785780634422d3721461039e578063485cc955146103bb576101cf565b806310c5b328146101d4578063177eebb0146102145780632bf1645814610255575b600080fd5b610200600480360360408110156101ea57600080fd5b50803590602001356001600160a01b03166107fe565b604080519115158252519081900360200190f35b61023a6004803603602081101561022a57600080fd5b50356001600160a01b0316610b0a565b60408051921515835260208301919091528051918290030190f35b6102d36004803603606081101561026b57600080fd5b6001600160a01b038235169190810190604081016020820135600160201b81111561029557600080fd5b8201836020820111156102a757600080fd5b803590602001918460018302840111600160201b831117156102c857600080fd5b919350915035610b29565b60405180831515815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610318578181015183820152602001610300565b50505050905090810190601f1680156103455780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61035c610f0e565b604080516001600160a01b039092168252519081900360200190f35b6102006004803603602081101561038e57600080fd5b50356001600160a01b0316610f1d565b61035c600480360360208110156103b457600080fd5b5035610f62565b6103e9600480360360408110156103d157600080fd5b506001600160a01b0381358116916020013516610f89565b005b6102006004803603602081101561040157600080fd5b50356001600160a01b031661119d565b61035c611586565b6102006004803603604081101561042f57600080fd5b5080356001600160a01b031690602001356001600160e01b031916611595565b6102006004803603602081101561046557600080fd5b50356001600160a01b03166118f7565b6102006004803603602081101561048b57600080fd5b50356001600160a01b0316611ba8565b610200611ed0565b61023a600480360360208110156104b957600080fd5b50356001600160a01b0316611f2f565b610200600480360360208110156104df57600080fd5b50356001600160a01b0316611f4e565b6105156004803603602081101561050557600080fd5b50356001600160a01b0316611f59565b604080516001600160e01b03199092168252519081900360200190f35b6102006004803603602081101561054857600080fd5b810190602081018135600160201b81111561056257600080fd5b82018360208201111561057457600080fd5b803590602001918460018302840111600160201b8311171561059557600080fd5b509092509050611f6e565b61035c612085565b610200600480360360408110156105be57600080fd5b810190602081018135600160201b8111156105d857600080fd5b8201836020820111156105ea57600080fd5b803590602001918460018302840111600160201b8311171561060b57600080fd5b919390929091602081019035600160201b81111561062857600080fd5b82018360208201111561063a57600080fd5b803590602001918460018302840111600160201b8311171561065b57600080fd5b509092509050612094565b6102006004803603606081101561067c57600080fd5b506001600160a01b038135811691602081013590911690604001356121ca565b610200600480360360808110156106b257600080fd5b506001600160a01b038135811691602081013582169160408201351690606001356124b2565b610200600480360360208110156106ee57600080fd5b50356001600160a01b03166127a3565b6102006004803603604081101561071457600080fd5b50803590602001356001600160a01b0316612d9e565b610732613061565b6040805192835260208301919091528051918290030190f35b6102006004803603606081101561076157600080fd5b506001600160a01b0381358116916020810135909116906040013561306b565b6102006004803603604081101561079757600080fd5b50803590602001356001600160a01b0316613342565b610200600480360360408110156107c357600080fd5b50803590602001356001600160a01b031661364a565b61035c613952565b61035c600480360360208110156107f757600080fd5b5035613961565b3360009081526033602052604081205460e01b600160e01b90811614610859576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b696d696e74546f6b656e7360b01b60005b603854811015610952576038818154811061088157fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b1580156108df57600080fd5b505af11580156108f3573d6000803e3d6000fd5b505050506040513d602081101561090957600080fd5b505161094a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161086a565b6040805186815290516001600160a01b0386169133917f21f9c9a1a1f9a311a50f15fec5c1faa9e21fc9edf964f0fdecba5bd490484c5e9181900360200190a3603554604080516340c10f1960e01b81526001600160a01b03878116600483015260248201899052915191909216916340c10f199160448083019260209291908290030181600087803b1580156109e857600080fd5b505af11580156109fc573d6000803e3d6000fd5b505050506040513d6020811015610a1257600080fd5b505192505060005b603954811015610b025760398181548110610a3157fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015610a8f57600080fd5b505af1158015610aa3573d6000803e3d6000fd5b505050506040513d6020811015610ab957600080fd5b5051610afa576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101610a1a565b505092915050565b603a602052600090815260409020805460019091015460ff9091169082565b3360009081526033602052604081205460609060e01b600160e41b90811614610b99576040805162461bcd60e51b815260206004820152601e60248201527f73656e646572206973206e6f7420612047656e6572696320536368656d650000604482015290519081900360640190fd5b6a19d95b995c9a58d0d85b1b60aa1b60005b603854811015610c935760388181548110610bc257fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b158015610c2057600080fd5b505af1158015610c34573d6000803e3d6000fd5b505050506040513d6020811015610c4a57600080fd5b5051610c8b576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101610bab565b60345460405163057e2c8b60e31b81526001600160a01b038a81166004830190815260448301899052606060248401908152606484018b90529190931692632bf16458928c928c928c928c9290608401858580828437600081840152601f19601f82011690508083019250505095505050505050600060405180830381600087803b158015610d2157600080fd5b505af1158015610d35573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610d5e57600080fd5b815160208301805160405192949293830192919084600160201b821115610d8457600080fd5b908301906020820185811115610d9957600080fd5b8251600160201b811182820188101715610db257600080fd5b82525081516020918201929091019080838360005b83811015610ddf578181015183820152602001610dc7565b50505050905090810190601f168015610e0c5780820380516001836020036101000a031916815260200191505b50604052505050935093505060005b603954811015610f035760398181548110610e3257fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015610e9057600080fd5b505af1158015610ea4573d6000803e3d6000fd5b505050506040513d6020811015610eba57600080fd5b5051610efb576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101610e1b565b505094509492505050565b6037546001600160a01b031681565b6001600160a01b0381166000908152603a602052604081205460ff1680610f5c57506001600160a01b0382166000908152603b602052604090205460ff165b92915050565b60388181548110610f6f57fe5b6000918252602090912001546001600160a01b0316905081565b600054610100900460ff1680610fa25750610fa261396e565b80610fb0575060005460ff16155b610feb5760405162461bcd60e51b815260040180806020018281038252602e815260200180613ad8602e913960400191505060405180910390fd5b600054610100900460ff16158015611016576000805460ff1961ff0019909116610100171660011790555b603480546001600160a01b0319166001600160a01b03858116919091179182905560408051631c2eb17b60e31b81529051929091169163e1758bd891600480820192602092909190829003018186803b15801561107257600080fd5b505afa158015611086573d6000803e3d6000fd5b505050506040513d602081101561109c57600080fd5b5051603580546001600160a01b0319166001600160a01b039283161790556034546040805163089ae1c960e41b8152905191909216916389ae1c90916004808301926020929190829003018186803b1580156110f757600080fd5b505afa15801561110b573d6000803e3d6000fd5b505050506040513d602081101561112157600080fd5b5051603680546001600160a01b039283166001600160a01b03199091161790558216600081815260336020526040808220805463ffffffff1916601f1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a38015611198576000805461ff00191690555b505050565b3360009081526033602052604081205460e01b600160e21b908116146111f45760405162461bcd60e51b8152600401808060200182810382526025815260200180613a936025913960400191505060405180910390fd5b6111fc61399d565b600080846001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561123a57600080fd5b505af115801561124e573d6000803e3d6000fd5b505050506040513d602081101561126457600080fd5b5051905060008082600281111561127757fe5b148061128e5750600282600281111561128c57fe5b145b156113c4576001600160a01b0386166000908152603a60209081526040918290208251808401909352805460ff161580158452600190910154918301919091529094506113c4576001603880549050038460200151101561136b576038805460001981019081106112fb57fe5b9060005260206000200160009054906101000a90046001600160a01b0316925082603885602001518154811061132d57fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055868101519286168252603a905260409020600101555b603880548061137657fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b0388168252603a905260408120805460ff1916815560019081019190915590505b60018260028111156113d257fe5b14806113e9575060028260028111156113e757fe5b145b1561151f576001600160a01b0386166000908152603b60209081526040918290208251808401909352805460ff1615801584526001909101549183019190915290945061151f57600160398054905003846020015110156114c65760398054600019810190811061145657fe5b9060005260206000200160009054906101000a90046001600160a01b0316925082603985602001518154811061148857fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055868101519286168252603b905260409020600101555b60398054806114d157fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b0388168252603b905260408120805460ff1916815560019081019190915590505b801561157d5760208401516001600160a01b038716907fcdf1a50ea6b7de555bd409f8a4a53ea43c6dc6b4caa961889da9e005f21bbaa990600085600281111561156557fe5b60408051938452911460208301528051918290030190a25b95945050505050565b6034546001600160a01b031681565b3360009081526033602052604081205460e01b600160e11b908116146115ec5760405162461bcd60e51b8152600401808060200182810382526025815260200180613a4e6025913960400191505060405180910390fd5b6d7265676973746572536368656d6560901b60005b6038548110156116e9576038818154811061161857fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561167657600080fd5b505af115801561168a573d6000803e3d6000fd5b505050506040513d60208110156116a057600080fd5b50516116e1576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101611601565b6001600160a01b0385166000908152603360205260408082205433835291205460e091821b9186831891901b1916601f60e01b16156117595760405162461bcd60e51b81526004018080602001828103825260248152602001806139b56024913960400191505060405180910390fd5b3360009081526033602052604090205460e01b198116601f60e01b16156117b15760405162461bcd60e51b81526004018080602001828103825260248152602001806139b56024913960400191505060405180910390fd5b6001600160a01b038616600081815260336020526040808220805463ffffffff1916600160e01b8a1760e01c1790555133917f546816e99403df442acb68ef69562682a50762c20a3fb6b472f7af9923736cfc91a360019350505060005b603954811015610b02576039818154811061182657fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b15801561188457600080fd5b505af1158015611898573d6000803e3d6000fd5b505050506040513d60208110156118ae57600080fd5b50516118ef576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161180f565b3360009081526033602052604081205460e01b600160e21b9081161461194e5760405162461bcd60e51b8152600401808060200182810382526025815260200180613a936025913960400191505060405180910390fd5b6000826001600160a01b031663e2b0caef6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561198b57600080fd5b505af115801561199f573d6000803e3d6000fd5b505050506040513d60208110156119b557600080fd5b5051905060008160028111156119c757fe5b14806119de575060028160028111156119dc57fe5b145b15611a86576001600160a01b0383166000908152603a602052604090205460ff16611a865760388054600180820183557f38395c5dceade9603479b177b68959049485df8aa97b39f3533039af5f45619990910180546001600160a01b0319166001600160a01b03871690811790915560408051808201825283815293546000190160208086019182526000938452603a905291209251835460ff1916901515178355519101555b6001816002811115611a9457fe5b1480611aab57506002816002811115611aa957fe5b145b15611b53576001600160a01b0383166000908152603b602052604090205460ff16611b535760398054600180820183557fdc16fef70f8d5ddbc01ee3d903d1e69c18a3c7be080eb86a81e0578814ee58d390910180546001600160a01b0319166001600160a01b03871690811790915560408051808201825283815293546000190160208086019182526000938452603b905291209251835460ff1916901515178355519101555b826001600160a01b03167fbe8cc209a3d881fa6ea5b12c6a389bbea620f5f0c1bcc2955a7961d0c5846ead8260405180826002811115611b8f57fe5b815260200191505060405180910390a250600192915050565b3360009081526033602052604081205460e01b600160e11b90811614611bff5760405162461bcd60e51b8152600401808060200182810382526025815260200180613a4e6025913960400191505060405180910390fd5b6f756e7265676973746572536368656d6560801b60005b603854811015611cfe5760388181548110611c2d57fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b158015611c8b57600080fd5b505af1158015611c9f573d6000803e3d6000fd5b505050506040513d6020811015611cb557600080fd5b5051611cf6576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101611c16565b611d0784613974565b611d145760009250611ddd565b33600090815260336020526040808220546001600160a01b038716835291205460e091821b19911b16601f60e01b1615611d7f5760405162461bcd60e51b8152600401808060200182810382526027815260200180613b636027913960400191505060405180910390fd5b6040516001600160a01b0385169033907f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf90600090a36001600160a01b0384166000908152603360205260409020805463ffffffff19169055600192505b5060005b603954811015611ec95760398181548110611df857fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015611e5657600080fd5b505af1158015611e6a573d6000803e3d6000fd5b505050506040513d6020811015611e8057600080fd5b5051611ec1576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101611de1565b5050919050565b6000611edb33613974565b611ee757506000611f2c565b33600081815260336020526040808220805463ffffffff191690555182917f10bb2cf04cb8b902a8e736d494f1a51003be6d4b16ef6fb95ce62c38445023bf91a35060015b90565b603b602052600090815260409020805460019091015460ff9091169082565b6000610f5c82613974565b60336020526000908152604090205460e01b81565b3360009081526033602052604081205460e01b600160e41b90811614611fdb576040805162461bcd60e51b815260206004820152601f60248201527f73656e646572206973206e6f742061204d6574614461746120536368656d6500604482015290519081900360640190fd5b603454604051632242b11b60e21b8152602060048201908152602482018590526001600160a01b039092169163890ac46c91869186918190604401848480828437600081840152601f19601f8201169050808301925050509350505050602060405180830381600087803b15801561205257600080fd5b505af1158015612066573d6000803e3d6000fd5b505050506040513d602081101561207c57600080fd5b50519392505050565b6036546001600160a01b031681565b3360009081526033602052604081205460e01b600160e01b908116146120ef576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b60345460408051634e4e399360e11b815260048101918252604481018790526001600160a01b0390921691639c9c73269188918891889188919081906024810190606401878780828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f8201169050808301925050509650505050505050602060405180830381600087803b15801561219557600080fd5b505af11580156121a9573d6000803e3d6000fd5b505050506040513d60208110156121bf57600080fd5b505195945050505050565b3360009081526033602052604081205460e01b600160e01b90811614612225576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b7f65787465726e616c546f6b656e496e637265617365417070726f76616c00000060005b603854811015612331576038818154811061226057fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b1580156122be57600080fd5b505af11580156122d2573d6000803e3d6000fd5b505050506040513d60208110156122e857600080fd5b5051612329576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612249565b6034546040805163ab751f7160e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163ab751f719160648083019260209291908290030181600087803b15801561238f57600080fd5b505af11580156123a3573d6000803e3d6000fd5b505050506040513d60208110156123b957600080fd5b505192505060005b6039548110156124a957603981815481106123d857fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b15801561243657600080fd5b505af115801561244a573d6000803e3d6000fd5b505050506040513d602081101561246057600080fd5b50516124a1576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016123c1565b50509392505050565b3360009081526033602052604081205460e01b600160e01b9081161461250d576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b7f65787465726e616c546f6b656e5472616e7366657246726f6d0000000000000060005b603854811015612619576038818154811061254857fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b1580156125a657600080fd5b505af11580156125ba573d6000803e3d6000fd5b505050506040513d60208110156125d057600080fd5b5051612611576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612531565b60345460408051635bab6ad160e11b81526001600160a01b038a8116600483015289811660248301528881166044830152606482018890529151919092169163b756d5a29160848083019260209291908290030181600087803b15801561267f57600080fd5b505af1158015612693573d6000803e3d6000fd5b505050506040513d60208110156126a957600080fd5b505192505060005b60395481101561279957603981815481106126c857fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b15801561272657600080fd5b505af115801561273a573d6000803e3d6000fd5b505050506040513d602081101561275057600080fd5b5051612791576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016126b1565b5050949350505050565b3360009081526033602052604081205460e01b600160e31b90811614612810576040805162461bcd60e51b815260206004820152601d60248201527f73656e646572206973206e6f7420557067726164696e67536368656d65000000604482015290519081900360640190fd5b6037546001600160a01b0316156128585760405162461bcd60e51b8152600401808060200182810382526024815260200180613b066024913960400191505060405180910390fd5b6001600160a01b0382166128b3576040805162461bcd60e51b815260206004820152601a60248201527f6e657720636f6e74726f6c6c65722063616e6e6f742062652030000000000000604482015290519081900360640190fd5b603780546001600160a01b0319166001600160a01b038481169182179092556034546040805163f2fde38b60e01b815260048101939093525192169163f2fde38b9160248082019260009290919082900301818387803b15801561291657600080fd5b505af115801561292a573d6000803e3d6000fd5b50505050816001600160a01b0316603460009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561298657600080fd5b505afa15801561299a573d6000803e3d6000fd5b505050506040513d60208110156129b057600080fd5b50516001600160a01b0316146129f75760405162461bcd60e51b8152600401808060200182810382526039815260200180613b2a6039913960400191505060405180910390fd5b60355460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015612a3b57600080fd5b505afa158015612a4f573d6000803e3d6000fd5b505050506040513d6020811015612a6557600080fd5b50516001600160a01b03161415612ba5576035546040805163f2fde38b60e01b81526001600160a01b0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015612ac457600080fd5b505af1158015612ad8573d6000803e3d6000fd5b50505050816001600160a01b0316603560009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612b3457600080fd5b505afa158015612b48573d6000803e3d6000fd5b505050506040513d6020811015612b5e57600080fd5b50516001600160a01b031614612ba55760405162461bcd60e51b8152600401808060200182810382526038815260200180613a166038913960400191505060405180910390fd5b60365460408051638da5cb5b60e01b8152905130926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015612be957600080fd5b505afa158015612bfd573d6000803e3d6000fd5b505050506040513d6020811015612c1357600080fd5b50516001600160a01b03161415612d53576036546040805163f2fde38b60e01b81526001600160a01b0385811660048301529151919092169163f2fde38b91602480830192600092919082900301818387803b158015612c7257600080fd5b505af1158015612c86573d6000803e3d6000fd5b50505050816001600160a01b0316603660009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015612ce257600080fd5b505afa158015612cf6573d6000803e3d6000fd5b505050506040513d6020811015612d0c57600080fd5b50516001600160a01b031614612d535760405162461bcd60e51b815260040180806020018281038252603d8152602001806139d9603d913960400191505060405180910390fd5b603754604080516001600160a01b039290921682525130917fdb7cbacf8df312d794506c0cc9af07f64d29ca075796ea2e950a3832cc9a63dd919081900360200190a2506001919050565b3360009081526033602052604081205460e01b600160e01b90811614612df9576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b6839b2b73222ba3432b960b91b60005b603854811015612ef15760388181548110612e2057fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b158015612e7e57600080fd5b505af1158015612e92573d6000803e3d6000fd5b505050506040513d6020811015612ea857600080fd5b5051612ee9576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612e09565b6034546040805163658b6a5160e11b8152600481018890526001600160a01b0387811660248301529151919092169163cb16d4a29160448083019260209291908290030181600087803b158015612f4757600080fd5b505af1158015612f5b573d6000803e3d6000fd5b505050506040513d6020811015612f7157600080fd5b505192505060005b603954811015610b025760398181548110612f9057fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b158015612fee57600080fd5b505af1158015613002573d6000803e3d6000fd5b505050506040513d602081101561301857600080fd5b5051613059576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101612f79565b6038546039549091565b3360009081526033602052604081205460e01b600160e01b908116146130c6576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b7432bc3a32b93730b62a37b5b2b72a3930b739b332b960591b60005b6038548110156131ca57603881815481106130f957fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561315757600080fd5b505af115801561316b573d6000803e3d6000fd5b505050506040513d602081101561318157600080fd5b50516131c2576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016130e2565b6034546040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561322857600080fd5b505af115801561323c573d6000803e3d6000fd5b505050506040513d602081101561325257600080fd5b505192505060005b6039548110156124a9576039818154811061327157fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b1580156132cf57600080fd5b505af11580156132e3573d6000803e3d6000fd5b505050506040513d60208110156132f957600080fd5b505161333a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161325a565b3360009081526033602052604081205460e01b600160e01b9081161461339d576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b6d313ab9372932b83aba30ba34b7b760911b60005b60385481101561349a57603881815481106133c957fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561342757600080fd5b505af115801561343b573d6000803e3d6000fd5b505050506040513d602081101561345157600080fd5b5051613492576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016133b2565b6040805186815290516001600160a01b0386169133917f186d8887e1b22f9d9b16849c36baa748950d09d9c9b67a4a6ea140eaad00c21c9181900360200190a360365460408051632770a7eb60e21b81526001600160a01b0387811660048301526024820189905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561353057600080fd5b505af1158015613544573d6000803e3d6000fd5b505050506040513d602081101561355a57600080fd5b505192505060005b603954811015610b02576039818154811061357957fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b1580156135d757600080fd5b505af11580156135eb573d6000803e3d6000fd5b505050506040513d602081101561360157600080fd5b5051613642576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b600101613562565b3360009081526033602052604081205460e01b600160e01b908116146136a5576040805162461bcd60e51b815260206004820152601f6024820152600080516020613ab8833981519152604482015290519081900360640190fd5b6d36b4b73a2932b83aba30ba34b7b760911b60005b6038548110156137a257603881815481106136d157fe5b60009182526020808320909101546040805163c63b7d0960e01b81523360048201526024810187905290516001600160a01b039092169363c63b7d099360448084019491939192918390030190829087803b15801561372f57600080fd5b505af1158015613743573d6000803e3d6000fd5b505050506040513d602081101561375957600080fd5b505161379a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b6001016136ba565b6040805186815290516001600160a01b0386169133917f837f2931e3df0592458212be4e470025f197feb7a8e39deb5b7f1f1d42e6f2629181900360200190a3603654604080516340c10f1960e01b81526001600160a01b03878116600483015260248201899052915191909216916340c10f199160448083019260209291908290030181600087803b15801561383857600080fd5b505af115801561384c573d6000803e3d6000fd5b505050506040513d602081101561386257600080fd5b505192505060005b603954811015610b02576039818154811061388157fe5b600091825260208083209091015460408051636abd2c7d60e11b81523360048201526024810187905290516001600160a01b039092169363d57a58fa9360448084019491939192918390030190829087803b1580156138df57600080fd5b505af11580156138f3573d6000803e3d6000fd5b505050506040513d602081101561390957600080fd5b505161394a576040805162461bcd60e51b815260206004820152601f6024820152600080516020613a73833981519152604482015290519081900360640190fd5b60010161386a565b6035546001600160a01b031681565b60398181548110610f6f57fe5b303b1590565b6001600160a01b03811660009081526033602052604090205460e01b600160e01b161515919050565b60408051808201909152600080825260208201529056fe73656e64657220756e6175746f72697a6520746f20726567697374657220736368656d656661696c656420746f207472616e736665722072657075746174696f6e206f776e65727368697020746f20746865206e657720636f6e74726f6c6c65726661696c656420746f207472616e7366657220746f6b656e206f776e65727368697020746f20746865206e657720636f6e74726f6c6c657273656e64657220756e6175746f72697a656420746f20726567697374657220736368656d656e6f7420616c6c6f77656420627920676c6f62616c436f6e73747261696e740073656e646572206973206e6f7420676c6f62616c436f6e73747261696e7420736368656d6573656e646572206973206e6f74207265676973746572656420736368656d6500436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65647468697320636f6e74726f6c6c65722077617320616c72656164792075706772616465646661696c656420746f207472616e7366657220617661746172206f776e65727368697020746f20746865206e657720636f6e74726f6c6c657273656e64657220756e6175746f72697a656420746f20756e726567697374657220736368656d65a26469706673582212206b2015d9aa8c5a2b408929f409432d78d4a7ef3cd13eab59329938781f24d71164736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ControllerUpgradeScheme.json b/contracts/0.1.2-rc.8/ControllerUpgradeScheme.json new file mode 100644 index 00000000..6e7eb693 --- /dev/null +++ b/contracts/0.1.2-rc.8/ControllerUpgradeScheme.json @@ -0,0 +1,471 @@ +{ + "contractName": "ControllerUpgradeScheme", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_newControllerUpgradeScheme", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "ChangeControllerUpgradeSchemeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_newController", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewControllerUpgradeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "address", + "name": "upgradeContract", + "type": "address" + }, + { + "internalType": "uint256", + "name": "proposalType", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeChangeControllerUpgradingScheme", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newController", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeUpgrade", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611b52806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80637a5cb92c11610097578063bea75f2811610066578063bea75f28146103bd578063d29b5d2f146103f9578063d8145e2d1461042b578063f81f8bf61461046b576100f5565b80637a5cb92c146103205780639588378e1461033d5780639d4c162d14610369578063b551c373146103a0576100f5565b80634ea2c7ec116100d35780634ea2c7ec1461029c578063540fbeb3146102a45780635aef7de6146102ec5780636b8eb403146102f4576100f5565b806325edd5ce146100fa5780633edf7ca1146101c2578063406cb9ec146101e6575b600080fd5b6101b06004803603604081101561011057600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561013b57600080fd5b82018360208201111561014d57600080fd5b8035906020019184600183028401116401000000008311171561016f57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061049d945050505050565b60408051918252519081900360200190f35b6101ca610785565b604080516001600160a01b039092168252519081900360200190f35b6101b0600480360360408110156101fc57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561022757600080fd5b82018360208201111561023957600080fd5b8035906020019184600183028401116401000000008311171561025b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610794945050505050565b6101b0610a46565b6102ea60048036036101e08110156102bb57600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c00135610a4c565b005b6101ca610a8a565b6101b06004803603604081101561030a57600080fd5b506001600160a01b038135169060200135610a99565b6101b06004803603602081101561033657600080fd5b5035610b73565b6101b06004803603604081101561035357600080fd5b506001600160a01b038135169060200135610b85565b61038c6004803603604081101561037f57600080fd5b5080359060200135610cb6565b604080519115158252519081900360200190f35b6101b0600480360360208110156103b657600080fd5b50356110ae565b61038c600480360360808110156103d357600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611345565b61038c6004803603606081101561040f57600080fd5b508035906001600160a01b0360208201351690604001356114a9565b6104486004803603602081101561044157600080fd5b5035611604565b604080516001600160a01b03909316835260208301919091528051918290030190f35b61038c6004803603606081101561048157600080fd5b508035906001600160a01b036020820135169060400135611629565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156104e257600080fd5b505afa1580156104f6573d6000803e3d6000fd5b505050506040513d602081101561050c57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561055657600080fd5b505afa15801561056a573d6000803e3d6000fd5b505050506040513d602081101561058057600080fd5b50516105ce576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561063957600080fd5b505af115801561064d573d6000803e3d6000fd5b505050506040513d602081101561066357600080fd5b5051905061066f611ad7565b506040805180820182526001600160a01b0386811680835260016020808501828152600088815260378352878120875181546001600160a01b0319169088161781559151919093015560345460335487519485528483018881528b51988601989098528a51969791861696899691909116947fd50e60806a38edf7d7787387e0fbb10a1fd59ea820ee07d99182da8b8ccd26f5948d948d9492936060850192918601918190849084905b83811015610731578181015183820152602001610719565b50505050905090810190601f16801561075e5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a45060008181526036602052604090204390559392505050565b6034546001600160a01b031681565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107d957600080fd5b505afa1580156107ed573d6000803e3d6000fd5b505050506040513d602081101561080357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561084d57600080fd5b505afa158015610861573d6000803e3d6000fd5b505050506040513d602081101561087757600080fd5b50516108c5576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561093057600080fd5b505af1158015610944573d6000803e3d6000fd5b505050506040513d602081101561095a57600080fd5b50516000818152603760205260409020600101549091501561097b57600080fd5b610983611ad7565b506040805180820182526001600160a01b0386811680835260026020808501918252600087815260378252868120865181546001600160a01b031916908716178155925160019093019290925560345460335487519485528483018881528b51988601989098528a51969791861696899691909116947fe871423df7e53d312542e06fc83f49bfceb218742acf148e61b31cc8a62ee91c948d948d9492936060850192918601918190849084908315610731578181015183820152602001610719565b60355481565b610a8385858386600b806020026040519081016040528092919082600b6020028082843760009201919091525088915061174f9050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610af2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610b3f57600080fd5b505afa158015610b53573d6000803e3d6000fd5b505050506040513d6020811015610b6957600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610bde576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2c57600080fd5b505afa158015610c40573d6000803e3d6000fd5b505050506040513d6020811015610c5657600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610b3f57600080fd5b60345460009083906001600160a01b03163314610d0f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610d17611ad7565b50600084815260376020908152604091829020825180840190935280546001600160a01b0316835260010154908201819052610d5257600080fd5b60008581526037602052604080822080546001600160a01b0319168155600101829055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a383600114156110605760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610df957600080fd5b505afa158015610e0d573d6000803e3d6000fd5b505050506040513d6020811015610e2357600080fd5b5051602083015190915060011415610ebd57806001600160a01b031663b9c2ee8283600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b158015610e8857600080fd5b505af1158015610e9c573d6000803e3d6000fd5b505050506040513d6020811015610eb257600080fd5b5051610ebd57600080fd5b81602001516002141561105e576000816001600160a01b03166384da77f5306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610f1957600080fd5b505afa158015610f2d573d6000803e3d6000fd5b505050506040513d6020811015610f4357600080fd5b5051835160408051635d1da8cb60e01b81526001600160a01b0392831660048201526001600160e01b031984166024820152905192935090841691635d1da8cb916044808201926020929091908290030181600087803b158015610fa657600080fd5b505af1158015610fba573d6000803e3d6000fd5b505050506040513d6020811015610fd057600080fd5b5051610fdb57600080fd5b82516001600160a01b0316301461105c57816001600160a01b0316636bafaa596040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561102757600080fd5b505af115801561103b573d6000803e3d6000fd5b505050506040513d602081101561105157600080fd5b505161105c57600080fd5b505b505b60335460408051868152905187926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a3506001949350505050565b60345460009082906001600160a01b03163314611107576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561115557600080fd5b505afa158015611169573d6000803e3d6000fd5b505050506040513d602081101561117f57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156111c957600080fd5b505afa1580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b5051611241576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561128f57600080fd5b505afa1580156112a3573d6000803e3d6000fd5b505050506040513d60208110156112b957600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561131257600080fd5b505afa158015611326573d6000803e3d6000fd5b505050506040513d602081101561133c57600080fd5b50519392505050565b60345460009082906001600160a01b0316331461139e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113ec57600080fd5b505afa158015611400573d6000803e3d6000fd5b505050506040513d602081101561141657600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561147357600080fd5b505af1158015611487573d6000803e3d6000fd5b505050506040513d602081101561149d57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611502576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561155057600080fd5b505afa158015611564573d6000803e3d6000fd5b505050506040513d602081101561157a57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156115cf57600080fd5b505af11580156115e3573d6000803e3d6000fd5b505050506040513d60208110156115f957600080fd5b505195945050505050565b603760205260009081526040902080546001909101546001600160a01b039091169082565b60345460009082906001600160a01b03163314611682576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156116d057600080fd5b505afa1580156116e4573d6000803e3d6000fd5b505050506040513d60208110156116fa57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b1580156115cf57600080fd5b6001600160a01b0384166117aa576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6117b3856119b8565b603480546001600160a01b0319166001600160a01b038616179055826119af576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561181d578181015183820152602001611805565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561184f57600080fd5b505afa158015611863573d6000803e3d6000fd5b505050506040513d602081101561187957600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b1580156118cb57600080fd5b505afa1580156118df573d6000803e3d6000fd5b505050506040513d6101a08110156118f657600080fd5b50519050806119a857604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561194757818101518382015260200161192f565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561197b57600080fd5b505af115801561198f573d6000803e3d6000fd5b505050506040513d60208110156119a557600080fd5b50505b5050610a83565b50506035555050565b600054610100900460ff16806119d157506119d1611ad1565b806119df575060005460ff16155b611a1a5760405162461bcd60e51b815260040180806020018281038252602e815260200180611aef602e913960400191505060405180910390fd5b600054610100900460ff16158015611a45576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611aa0576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611acd576000805461ff00191690555b5050565b303b1590565b60408051808201909152600080825260208201529056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212203bfae93ebaafed2f0936d409bc8801197c2587417764158a268356dc39842bf764736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80637a5cb92c11610097578063bea75f2811610066578063bea75f28146103bd578063d29b5d2f146103f9578063d8145e2d1461042b578063f81f8bf61461046b576100f5565b80637a5cb92c146103205780639588378e1461033d5780639d4c162d14610369578063b551c373146103a0576100f5565b80634ea2c7ec116100d35780634ea2c7ec1461029c578063540fbeb3146102a45780635aef7de6146102ec5780636b8eb403146102f4576100f5565b806325edd5ce146100fa5780633edf7ca1146101c2578063406cb9ec146101e6575b600080fd5b6101b06004803603604081101561011057600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561013b57600080fd5b82018360208201111561014d57600080fd5b8035906020019184600183028401116401000000008311171561016f57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061049d945050505050565b60408051918252519081900360200190f35b6101ca610785565b604080516001600160a01b039092168252519081900360200190f35b6101b0600480360360408110156101fc57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561022757600080fd5b82018360208201111561023957600080fd5b8035906020019184600183028401116401000000008311171561025b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610794945050505050565b6101b0610a46565b6102ea60048036036101e08110156102bb57600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c00135610a4c565b005b6101ca610a8a565b6101b06004803603604081101561030a57600080fd5b506001600160a01b038135169060200135610a99565b6101b06004803603602081101561033657600080fd5b5035610b73565b6101b06004803603604081101561035357600080fd5b506001600160a01b038135169060200135610b85565b61038c6004803603604081101561037f57600080fd5b5080359060200135610cb6565b604080519115158252519081900360200190f35b6101b0600480360360208110156103b657600080fd5b50356110ae565b61038c600480360360808110156103d357600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611345565b61038c6004803603606081101561040f57600080fd5b508035906001600160a01b0360208201351690604001356114a9565b6104486004803603602081101561044157600080fd5b5035611604565b604080516001600160a01b03909316835260208301919091528051918290030190f35b61038c6004803603606081101561048157600080fd5b508035906001600160a01b036020820135169060400135611629565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156104e257600080fd5b505afa1580156104f6573d6000803e3d6000fd5b505050506040513d602081101561050c57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561055657600080fd5b505afa15801561056a573d6000803e3d6000fd5b505050506040513d602081101561058057600080fd5b50516105ce576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561063957600080fd5b505af115801561064d573d6000803e3d6000fd5b505050506040513d602081101561066357600080fd5b5051905061066f611ad7565b506040805180820182526001600160a01b0386811680835260016020808501828152600088815260378352878120875181546001600160a01b0319169088161781559151919093015560345460335487519485528483018881528b51988601989098528a51969791861696899691909116947fd50e60806a38edf7d7787387e0fbb10a1fd59ea820ee07d99182da8b8ccd26f5948d948d9492936060850192918601918190849084905b83811015610731578181015183820152602001610719565b50505050905090810190601f16801561075e5780820380516001836020036101000a031916815260200191505b50935050505060405180910390a45060008181526036602052604090204390559392505050565b6034546001600160a01b031681565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107d957600080fd5b505afa1580156107ed573d6000803e3d6000fd5b505050506040513d602081101561080357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561084d57600080fd5b505afa158015610861573d6000803e3d6000fd5b505050506040513d602081101561087757600080fd5b50516108c5576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561093057600080fd5b505af1158015610944573d6000803e3d6000fd5b505050506040513d602081101561095a57600080fd5b50516000818152603760205260409020600101549091501561097b57600080fd5b610983611ad7565b506040805180820182526001600160a01b0386811680835260026020808501918252600087815260378252868120865181546001600160a01b031916908716178155925160019093019290925560345460335487519485528483018881528b51988601989098528a51969791861696899691909116947fe871423df7e53d312542e06fc83f49bfceb218742acf148e61b31cc8a62ee91c948d948d9492936060850192918601918190849084908315610731578181015183820152602001610719565b60355481565b610a8385858386600b806020026040519081016040528092919082600b6020028082843760009201919091525088915061174f9050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610af2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610b3f57600080fd5b505afa158015610b53573d6000803e3d6000fd5b505050506040513d6020811015610b6957600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610bde576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2c57600080fd5b505afa158015610c40573d6000803e3d6000fd5b505050506040513d6020811015610c5657600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610b3f57600080fd5b60345460009083906001600160a01b03163314610d0f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610d17611ad7565b50600084815260376020908152604091829020825180840190935280546001600160a01b0316835260010154908201819052610d5257600080fd5b60008581526037602052604080822080546001600160a01b0319168155600101829055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a383600114156110605760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610df957600080fd5b505afa158015610e0d573d6000803e3d6000fd5b505050506040513d6020811015610e2357600080fd5b5051602083015190915060011415610ebd57806001600160a01b031663b9c2ee8283600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b158015610e8857600080fd5b505af1158015610e9c573d6000803e3d6000fd5b505050506040513d6020811015610eb257600080fd5b5051610ebd57600080fd5b81602001516002141561105e576000816001600160a01b03166384da77f5306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610f1957600080fd5b505afa158015610f2d573d6000803e3d6000fd5b505050506040513d6020811015610f4357600080fd5b5051835160408051635d1da8cb60e01b81526001600160a01b0392831660048201526001600160e01b031984166024820152905192935090841691635d1da8cb916044808201926020929091908290030181600087803b158015610fa657600080fd5b505af1158015610fba573d6000803e3d6000fd5b505050506040513d6020811015610fd057600080fd5b5051610fdb57600080fd5b82516001600160a01b0316301461105c57816001600160a01b0316636bafaa596040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561102757600080fd5b505af115801561103b573d6000803e3d6000fd5b505050506040513d602081101561105157600080fd5b505161105c57600080fd5b505b505b60335460408051868152905187926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a3506001949350505050565b60345460009082906001600160a01b03163314611107576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561115557600080fd5b505afa158015611169573d6000803e3d6000fd5b505050506040513d602081101561117f57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156111c957600080fd5b505afa1580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b5051611241576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561128f57600080fd5b505afa1580156112a3573d6000803e3d6000fd5b505050506040513d60208110156112b957600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561131257600080fd5b505afa158015611326573d6000803e3d6000fd5b505050506040513d602081101561133c57600080fd5b50519392505050565b60345460009082906001600160a01b0316331461139e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113ec57600080fd5b505afa158015611400573d6000803e3d6000fd5b505050506040513d602081101561141657600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561147357600080fd5b505af1158015611487573d6000803e3d6000fd5b505050506040513d602081101561149d57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611502576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561155057600080fd5b505afa158015611564573d6000803e3d6000fd5b505050506040513d602081101561157a57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156115cf57600080fd5b505af11580156115e3573d6000803e3d6000fd5b505050506040513d60208110156115f957600080fd5b505195945050505050565b603760205260009081526040902080546001909101546001600160a01b039091169082565b60345460009082906001600160a01b03163314611682576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156116d057600080fd5b505afa1580156116e4573d6000803e3d6000fd5b505050506040513d60208110156116fa57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b1580156115cf57600080fd5b6001600160a01b0384166117aa576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6117b3856119b8565b603480546001600160a01b0319166001600160a01b038616179055826119af576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561181d578181015183820152602001611805565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561184f57600080fd5b505afa158015611863573d6000803e3d6000fd5b505050506040513d602081101561187957600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b1580156118cb57600080fd5b505afa1580156118df573d6000803e3d6000fd5b505050506040513d6101a08110156118f657600080fd5b50519050806119a857604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561194757818101518382015260200161192f565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561197b57600080fd5b505af115801561198f573d6000803e3d6000fd5b505050506040513d60208110156119a557600080fd5b50505b5050610a83565b50506035555050565b600054610100900460ff16806119d157506119d1611ad1565b806119df575060005460ff16155b611a1a5760405162461bcd60e51b815260040180806020018281038252602e815260200180611aef602e913960400191505060405180910390fd5b600054610100900460ff16158015611a45576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611aa0576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611acd576000805461ff00191690555b5050565b303b1590565b60408051808201909152600080825260208201529056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212203bfae93ebaafed2f0936d409bc8801197c2587417764158a268356dc39842bf764736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/CurveInterface.json b/contracts/0.1.2-rc.8/CurveInterface.json new file mode 100644 index 00000000..3397fe73 --- /dev/null +++ b/contracts/0.1.2-rc.8/CurveInterface.json @@ -0,0 +1,26 @@ +{ + "contractName": "CurveInterface", + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "calc", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/DAOFactory.json b/contracts/0.1.2-rc.8/DAOFactory.json new file mode 100644 index 00000000..6d42ecb2 --- /dev/null +++ b/contracts/0.1.2-rc.8/DAOFactory.json @@ -0,0 +1,341 @@ +{ + "contractName": "DAOFactory", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "InitialSchemesSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_reputation", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_daotoken", + "type": "address" + } + ], + "name": "NewOrg", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_proxy", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_implementation", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_contractName", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint64[3]", + "name": "_version", + "type": "uint64[3]" + } + ], + "name": "ProxyCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_name", + "type": "string" + } + ], + "name": "SchemeInstance", + "type": "event" + }, + { + "inputs": [], + "name": "PACKAGE_NAME", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address[]", + "name": "_founders", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_foundersTokenAmount", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "_foundersReputationAmount", + "type": "uint256[]" + } + ], + "name": "addFounders", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "app", + "outputs": [ + { + "internalType": "contract App", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "_packageVersion", + "type": "uint64[3]" + }, + { + "internalType": "string", + "name": "_contractName", + "type": "string" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "createInstance", + "outputs": [ + { + "internalType": "contract AdminUpgradeabilityProxy", + "name": "", + "type": "address" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "_packageVersion", + "type": "uint64[3]" + }, + { + "internalType": "string", + "name": "_contractName", + "type": "string" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "createNonUpgradableInstance", + "outputs": [ + { + "internalType": "contract UpgradeabilityProxy", + "name": "", + "type": "address" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_encodedForgeOrgParams", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "_encodedSetSchemesParams", + "type": "bytes" + } + ], + "name": "forgeOrg", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "_version", + "type": "uint64[3]" + }, + { + "internalType": "string", + "name": "_contractName", + "type": "string" + } + ], + "name": "getImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "_version", + "type": "uint64[3]" + } + ], + "name": "getPackageVersion", + "outputs": [ + { + "internalType": "uint64[3]", + "name": "version", + "type": "uint64[3]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_appContractAddress", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "locks", + "outputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_encodedSetSchemesParams", + "type": "bytes" + } + ], + "name": "setSchemes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061368b806100206000396000f3fe608060405260043610620000aa5760003560e01c806361fe0613116200006d57806361fe061314620001835780636cf00fa414620001b757806396d85eee14620001dc578063b76564bd14620001f3578063c4d66de8146200020b578063d052ec0f146200023057620000aa565b80632346e68b14620000af57806331e3f2f214620000ec5780634da5fa371462000103578063571084bd146200012a5780635de9a137146200015e575b600080fd5b348015620000bc57600080fd5b50620000d4620000ce366004620020cd565b62000257565b604051620000e39190620025a4565b60405180910390f35b620000d4620000fd366004620021b0565b62000414565b3480156200011057600080fd5b5062000128620001223660046200236f565b620004c7565b005b3480156200013757600080fd5b506200014f62000149366004620022bb565b620005fe565b604051620000e39190620026b9565b3480156200016b57600080fd5b50620000d46200017d36600462001f96565b620009b2565b3480156200019057600080fd5b50620001a8620001a2366004620020af565b620009cd565b604051620000e39190620026a9565b348015620001c457600080fd5b50620000d4620001d63660046200224c565b62000be1565b620000d4620001ed3660046200211f565b62000cd6565b3480156200020057600080fd5b50620000d462000d8c565b3480156200021857600080fd5b50620001286200022a36600462001f96565b62000d9b565b3480156200023d57600080fd5b506200024862000e43565b604051620000e39190620026c4565b603454604080518082018252600881526744414f737461636b60c01b602082015290516387c6048360e01b815260009283926001600160a01b03909116916387c6048391620002a991600401620026c4565b60806040518083038186803b158015620002c257600080fd5b505afa158015620002d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fd9190620023c7565b5090506000816001600160a01b0316631df40eaa866040518263ffffffff1660e01b8152600401620003309190620026a9565b60206040518083038186803b1580156200034957600080fd5b505afa1580156200035e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000384919062001fb5565b6040516335b41c4b60e11b81529091506001600160a01b03821690636b68389690620003b5908790600401620026c4565b60206040518083038186803b158015620003ce57600080fd5b505afa158015620003e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000409919062001fb5565b925050505b92915050565b60006200042062001b15565b6200042b85620009cd565b905060006200043b828662000257565b90506000348286604051620004509062001b33565b6200045d92919062002662565b6040518091039082f09050801580156200047b573d6000803e3d6000fd5b5090507f3918796d81cd197899a48fa2babaac969d1125c889cfbcc3a0f12cdc93c87a5981838886604051620004b59493929190620025d2565b60405180910390a19695505050505050565b6001600160a01b038381166000908152603360205260409020541633146200050c5760405162461bcd60e51b8152600401620005039062002859565b60405180910390fd5b620005c18383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506001600160a01b038a16815260336020526040808220815160608101928390529550600101935060039250908390855b82829054906101000a90046001600160401b03166001600160401b03168152602001906008019060208260070104928301926001038202915080841162000573579050505050505062000e67565b6001600160a01b038316600090815260336020526040812080546001600160a01b031916815590620005f7600183018262001b41565b5050505050565b6000858414620006225760405162461bcd60e51b815260040162000503906200280c565b858214620006445760405162461bcd60e51b815260040162000503906200293a565b85620006645760405162461bcd60e51b8152600401620005039062002915565b6001600160a01b03888116600090815260336020526040902054163314620006a05760405162461bcd60e51b8152600401620005039062002859565b60005b86811015620009a3576000888883818110620006bb57fe5b9050602002016020810190620006d2919062001f96565b6001600160a01b03161415620006fc5760405162461bcd60e51b815260040162000503906200275c565b60008686838181106200070b57fe5b9050602002013511156200084b57886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200075357600080fd5b505afa15801562000768573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200078e919062001fb5565b6001600160a01b03166310c5b328878784818110620007a957fe5b905060200201358a8a85818110620007bd57fe5b9050602002016020810190620007d4919062001f96565b6040518363ffffffff1660e01b8152600401620007f39291906200298c565b602060405180830381600087803b1580156200080e57600080fd5b505af115801562000823573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200084991906200222a565b505b60008484838181106200085a57fe5b9050602002013511156200099a57886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015620008a257600080fd5b505afa158015620008b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008dd919062001fb5565b6001600160a01b031663dea9e24d858584818110620008f857fe5b905060200201358a8a858181106200090c57fe5b905060200201602081019062000923919062001f96565b6040518363ffffffff1660e01b8152600401620009429291906200298c565b602060405180830381600087803b1580156200095d57600080fd5b505af115801562000972573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099891906200222a565b505b600101620006a3565b50600198975050505050505050565b6033602052600090815260409020546001600160a01b031681565b620009d762001b15565b6000620009e362001b15565b603454604080518082018252600881526744414f737461636b60c01b602082015290516387c6048360e01b81526001600160a01b03909216916387c604839162000a3091600401620026c4565b60806040518083038186803b15801562000a4957600080fd5b505afa15801562000a5e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a849190620023c7565b604051630efa075560e11b815291935091506000906001600160a01b03841690631df40eaa9062000aba908890600401620026a9565b60206040518083038186803b15801562000ad357600080fd5b505afa15801562000ae8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b0e919062001fb5565b6001600160a01b0316141562000bd657604051630efa075560e11b81526000906001600160a01b03841690631df40eaa9062000b4f908590600401620026a9565b60206040518083038186803b15801562000b6857600080fd5b505afa15801562000b7d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ba3919062001fb5565b6001600160a01b0316141562000bcd5760405162461bcd60e51b8152600401620005039062002717565b80925062000bda565b8392505b5050919050565b6000606080606080606062000bf562001b15565b62000c038a8c018c62002454565b95509550955095509550955062000c1962001b15565b62000c2482620009cd565b9050600062000c3888888888888762001282565b9050891562000c8b5762000c85818c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925062000e67915050565b62000cc6565b6001600160a01b038116600090815260336020526040902080546001600160a01b0319163317815562000cc49060010183600362001b48565b505b9c9b505050505050505050505050565b600062000ce262001b15565b62000ced86620009cd565b9050600062000cfd828762000257565b905060003482878760405162000d139062001bf4565b62000d219392919062002611565b6040518091039082f090508015801562000d3f573d6000803e3d6000fd5b5090507f3918796d81cd197899a48fa2babaac969d1125c889cfbcc3a0f12cdc93c87a598183898660405162000d799493929190620025d2565b60405180910390a1979650505050505050565b6034546001600160a01b031681565b600054610100900460ff168062000db7575062000db76200189f565b8062000dc6575060005460ff16155b62000de55760405162461bcd60e51b81526004016200050390620028c7565b600054610100900460ff1615801562000e11576000805460ff1961ff0019909116610100171660011790555b603480546001600160a01b0319166001600160a01b038416179055801562000e3f576000805461ff00191690555b5050565b6040518060400160405280600881526020016744414f737461636b60c01b81525081565b60608060608060608680602001905181019062000e85919062001fd4565b945094509450945094506000886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801562000ecb57600080fd5b505afa15801562000ee0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f06919062001fb5565b90506000805b87518110156200114457606062000f438388848151811062000f2a57fe5b60200260200101518a620018a59092919063ffffffff16565b9050600481511062000ff05762000f5e8160006004620018a5565b905062000f8f8c60405160200162000f779190620025a4565b60408051601f1981840301815291905282906200193c565b905062000fed62000fe56024808a868151811062000fa957fe5b60200260200101510362000fdd878c888151811062000fc457fe5b60200260200101518e620018a59092919063ffffffff16565b9190620018a5565b82906200193c565b90505b60006200101e8b620010168c86815181106200100857fe5b6020026020010151620019bd565b8f8562000cd6565b9050806001600160a01b03167fd7aeea804cd95f56138ce36cac2d6e5099e9a2fb7cd120f8d474e5479c2297386200105c8c86815181106200100857fe5b6040516200106b9190620026c4565b60405180910390a2846001600160a01b0316635d1da8cb828986815181106200109057fe5b60200260200101516040518363ffffffff1660e01b8152600401620010b79291906200263f565b602060405180830381600087803b158015620010d257600080fd5b505af1158015620010e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200110d91906200222a565b50620011378884815181106200111f57fe5b60200260200101518562001ae690919063ffffffff16565b9350505060010162000f0c565b50604051632242b11b60e21b81526001600160a01b0383169063890ac46c9062001173908690600401620026c4565b602060405180830381600087803b1580156200118e57600080fd5b505af1158015620011a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011c991906200222a565b50816001600160a01b0316636bafaa596040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156200120657600080fd5b505af11580156200121b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200124191906200222a565b506040516001600160a01b038b16907f9007c9042f12be953f7dbe3909f56c3f088e9fe294dbebbef4a67afa63462b6a90600090a250505050505050505050565b60008351855114620012a85760405162461bcd60e51b815260040162000503906200280c565b8251855114620012cc5760405162461bcd60e51b815260040162000503906200293a565b6000620012fb83604051806040016040528060088152602001672220a7aa37b5b2b760c11b8152508962000414565b905060006200136b846040518060400160405280600a8152602001692932b83aba30ba34b7b760b11b81525030306040516024016200133b9190620025a4565b60408051601f198184030181529190526020810180516001600160e01b031663189acdbd60e31b17905262000cd6565b90506000620013dd856040518060400160405280600681526020016520bb30ba30b960d11b815250308d878730604051602401620013ad9493929190620026d9565b60408051601f198184030181529190526020810180516001600160e01b0316633cd208ad60e21b17905262000cd6565b6040516308f2839760e41b81529091506001600160a01b03831690638f283970906200140e908490600401620025a4565b600060405180830381600087803b1580156200142957600080fd5b505af11580156200143e573d6000803e3d6000fd5b50506040516308f2839760e41b81526001600160a01b0384169250638f283970915062001470908490600401620025a4565b600060405180830381600087803b1580156200148b57600080fd5b505af1158015620014a0573d6000803e3d6000fd5b5050505060005b8851811015620016a05760006001600160a01b0316898281518110620014c957fe5b60200260200101516001600160a01b03161415620014fb5760405162461bcd60e51b8152600401620005039062002890565b60008882815181106200150a57fe5b60200260200101511115620015c957836001600160a01b03166340c10f198a83815181106200153557fe5b60200260200101518a84815181106200154a57fe5b60200260200101516040518363ffffffff1660e01b81526004016200157192919062002690565b602060405180830381600087803b1580156200158c57600080fd5b505af1158015620015a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015c791906200222a565b505b6000878281518110620015d857fe5b602002602001015111156200169757826001600160a01b03166340c10f198a83815181106200160357fe5b60200260200101518984815181106200161857fe5b60200260200101516040518363ffffffff1660e01b81526004016200163f92919062002690565b602060405180830381600087803b1580156200165a57600080fd5b505af11580156200166f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200169591906200222a565b505b600101620014a7565b50600062001711866040518060400160405280600a81526020016921b7b73a3937b63632b960b11b815250848530604051602401620016e1929190620025b8565b60408051601f198184030181529190526020810180516001600160e01b031663485cc95560e01b17905262000cd6565b60405163f2fde38b60e01b81529091506001600160a01b0383169063f2fde38b9062001742908490600401620025a4565b600060405180830381600087803b1580156200175d57600080fd5b505af115801562001772573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b038716925063f2fde38b9150620017a4908490600401620025a4565b600060405180830381600087803b158015620017bf57600080fd5b505af1158015620017d4573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b038616925063f2fde38b915062001806908490600401620025a4565b600060405180830381600087803b1580156200182157600080fd5b505af115801562001836573d6000803e3d6000fd5b50505050826001600160a01b0316816001600160a01b0316836001600160a01b03167f7c9ce34d490425d6909c8542650b59e8c11074274a3ff906359b4edc3d69505187604051620018899190620025a4565b60405180910390a4509998505050505050505050565b303b1590565b6060620018b3838362001ae6565b84511015620018d65760405162461bcd60e51b81526004016200050390620027ca565b606082158015620018e75762001933565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156200192257805183526020928301920162001908565b5050858452601f01601f1916604052505b50949350505050565b6060806040519050835180825260208201818101602087015b818310156200196f57805183526020928301920162001955565b50855184518101855292509050808201602086015b818310156200199e57805183526020928301920162001984565b508651929092011591909101601f01601f191660405250905092915050565b6040805160208082528183019092526060918291906020820181803683370190505090506000805b602081101562001a3f576008810260020a85026001600160f81b031981161562001a35578084848151811062001a1757fe5b60200101906001600160f81b031916908160001a9053506001909201915b50600101620019e5565b6060826001600160401b038111801562001a5857600080fd5b506040519080825280601f01601f19166020018201604052801562001a84576020820181803683370190505b509050600091505b8282101562001add5783828151811062001aa257fe5b602001015160f81c60f81b81838151811062001aba57fe5b60200101906001600160f81b031916908160001a90535060019091019062001a8c565b95945050505050565b60008282018381101562001b0e5760405162461bcd60e51b8152600401620005039062002793565b9392505050565b60405180606001604052806003906020820280368337509192915050565b6103178062002a6d83390190565b5060009055565b60018301918390821562001be25791602002820160005b8382111562001bab57835183826101000a8154816001600160401b0302191690836001600160401b03160217905550926020019260080160208160070104928301926001030262001b5f565b801562001be05782816101000a8154906001600160401b03021916905560080160208160070104928301926001030262001bab565b505b5062001bf092915062001c02565b5090565b6108d28062002d8483390190565b5b8082111562001bf057805467ffffffffffffffff1916815560010162001c03565b60008083601f84011262001c36578182fd5b5081356001600160401b0381111562001c4d578182fd5b602083019150836020808302850101111562001c6857600080fd5b9250929050565b600082601f83011262001c80578081fd5b813562001c9762001c9182620029ca565b620029a3565b81815291506020808301908481018184028601820187101562001cb957600080fd5b60005b8481101562001ce557813562001cd28162002a3d565b8452928201929082019060010162001cbc565b505050505092915050565b600082601f83011262001d01578081fd5b815162001d1262001c9182620029ca565b81815291506020808301908481018184028601820187101562001d3457600080fd5b60005b8481101562001ce55781518452928201929082019060010162001d37565b600082601f83011262001d66578081fd5b815162001d7762001c9182620029ca565b81815291506020808301908481018184028601820187101562001d9957600080fd5b6000805b8581101562001dd15782516001600160e01b03198116811462001dbe578283fd5b8552938301939183019160010162001d9d565b50505050505092915050565b600082601f83011262001dee578081fd5b813562001dff62001c9182620029ca565b81815291506020808301908481018184028601820187101562001e2157600080fd5b60005b8481101562001ce55781358452928201929082019060010162001e24565b600082601f83011262001e53578081fd5b62001e5f6060620029a3565b905080828460608501111562001e7457600080fd5b60005b600381101562001ea457813562001e8e8162002a56565b8352602092830192919091019060010162001e77565b50505092915050565b60008083601f84011262001ebf578182fd5b5081356001600160401b0381111562001ed6578182fd5b60208301915083602082850101111562001c6857600080fd5b600082601f83011262001f00578081fd5b813562001f1162001c9182620029ea565b915080825283602082850101111562001f2957600080fd5b8060208401602084013760009082016020015292915050565b600082601f83011262001f53578081fd5b815162001f6462001c9182620029ea565b915080825283602082850101111562001f7c57600080fd5b62001f8f81602084016020860162002a0e565b5092915050565b60006020828403121562001fa8578081fd5b813562001b0e8162002a3d565b60006020828403121562001fc7578081fd5b815162001b0e8162002a3d565b600080600080600060a0868803121562001fec578081fd5b85516001600160401b038082111562002003578283fd5b6200201189838a0162001cf0565b9650602088015191508082111562002027578283fd5b6200203589838a0162001f42565b955060408801519150808211156200204b578283fd5b6200205989838a0162001cf0565b945060608801519150808211156200206f578283fd5b6200207d89838a0162001d55565b9350608088015191508082111562002093578283fd5b50620020a28882890162001f42565b9150509295509295909350565b600060608284031215620020c1578081fd5b62001b0e838362001e42565b60008060808385031215620020e0578182fd5b620020ec848462001e42565b915060608301356001600160401b0381111562002107578182fd5b620021158582860162001eef565b9150509250929050565b60008060008060c0858703121562002135578182fd5b62002141868662001e42565b935060608501356001600160401b03808211156200215d578384fd5b6200216b8883890162001eef565b9450608087013591506200217f8262002a3d565b90925060a0860135908082111562002195578283fd5b50620021a48782880162001eef565b91505092959194509250565b600080600060a08486031215620021c5578081fd5b620021d1858562001e42565b925060608401356001600160401b0380821115620021ed578283fd5b620021fb8783880162001eef565b9350608086013591508082111562002211578283fd5b50620022208682870162001eef565b9150509250925092565b6000602082840312156200223c578081fd5b8151801515811462001b0e578182fd5b6000806000806040858703121562002262578182fd5b84356001600160401b038082111562002279578384fd5b620022878883890162001ead565b90965094506020870135915080821115620022a0578384fd5b50620022af8782880162001ead565b95989497509550505050565b60008060008060008060006080888a031215620022d6578485fd5b8735620022e38162002a3d565b965060208801356001600160401b0380821115620022ff578687fd5b6200230d8b838c0162001c24565b909850965060408a013591508082111562002326578384fd5b620023348b838c0162001c24565b909650945060608a01359150808211156200234d578384fd5b506200235c8a828b0162001c24565b989b979a50959850939692959293505050565b60008060006040848603121562002384578081fd5b8335620023918162002a3d565b925060208401356001600160401b03811115620023ac578182fd5b620023ba8682870162001ead565b9497909650939450505050565b60008060808385031215620023da578182fd5b8251620023e78162002a3d565b91506020603f84018513620023fa578182fd5b620024066060620029a3565b80828601876080880111156200241a578485fd5b845b600381101562002446578151620024338162002a56565b845292840192908401906001016200241c565b509497909650945050505050565b60008060008060008061010087890312156200246e578384fd5b86356001600160401b038082111562002485578586fd5b620024938a838b0162001eef565b97506020890135915080821115620024a9578586fd5b620024b78a838b0162001eef565b96506040890135915080821115620024cd578586fd5b620024db8a838b0162001c6f565b95506060890135915080821115620024f1578384fd5b620024ff8a838b0162001ddd565b9450608089013591508082111562002515578384fd5b506200252489828a0162001ddd565b925050620025368860a0890162001e42565b90509295509295509295565b8060005b6003811015620025705781516001600160401b031684526020938401939091019060010162002546565b50505050565b600081518084526200259081602086016020860162002a0e565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0385811682528416602082015260c060408201819052600090620026009083018562002576565b905062001add606083018462002542565b6001600160a01b0384811682528316602082015260606040820181905260009062001add9083018462002576565b6001600160a01b039290921682526001600160e01b031916602082015260400190565b6001600160a01b0383168152604060208201819052600090620026889083018462002576565b949350505050565b6001600160a01b03929092168252602082015260400190565b606081016200040e828462002542565b901515815260200190565b60006020825262001b0e602083018462002576565b600060808252620026ee608083018762002576565b6001600160a01b0395861660208401529385166040830152509216606090920191909152919050565b60208082526025908201527f496d706c656d656e746174696f6e50726f766964657220646f6573206e6f7420604082015264195e1a5cdd60da1b606082015260800190565b6020808252601b908201527f666f756e64657220616464726573732063616e6e6f7420626520300000000000604082015260600190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526022908201527f5f62797465732e6c656e677468203c20285f7374617274202b205f6c656e6774604082015261682960f01b606082015260800190565b6020808252602d908201527f5f666f756e6465726c656e67746820213d205f666f756e64657273546f6b656e60408201526c082dadeeadce85cd8cadccee8d609b1b606082015260800190565b6020808252601e908201527f73656e646572206973206e6f7420686f6c64696e6720746865206c6f636b0000604082015260600190565b6020808252601e908201527f666f756e64657220616464726573732063616e6e6f74206265207a65726f0000604082015260600190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252600b908201526a6e6f20666f756e6465727360a81b604082015260600190565b60208082526032908201527f5f666f756e6465726c656e67746820213d205f666f756e6465727352657075746040820152710c2e8d2dedc82dadeeadce85cd8cadccee8d60731b606082015260800190565b9182526001600160a01b0316602082015260400190565b6040518181016001600160401b0381118282101715620029c257600080fd5b604052919050565b60006001600160401b03821115620029e0578081fd5b5060209081020190565b60006001600160401b0382111562002a00578081fd5b50601f01601f191660200190565b60005b8381101562002a2b57818101518382015260200162002a11565b83811115620025705750506000910152565b6001600160a01b038116811462002a5357600080fd5b50565b6001600160401b038116811462002a5357600080fdfe60806040526040516103173803806103178339818101604052604081101561002657600080fd5b81516020830180516040519294929383019291908464010000000082111561004d57600080fd5b90830190602082018581111561006257600080fd5b825164010000000081118282018810171561007c57600080fd5b82525081516020918201929091019080838360005b838110156100a9578181015183820152602001610091565b50505050905090810190601f1680156100d65780820380516001836020036101000a031916815260200191505b50604052506100e3915050565b6100ec826101ab565b8051156101a4576000826001600160a01b0316826040518082805190602001908083835b6020831061012f5780518252601f199092019160209182019101610110565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d806000811461018f576040519150601f19603f3d011682016040523d82523d6000602084013e610194565b606091505b50509050806101a257600080fd5b505b5050610223565b6101be8161021d60201b6100271760201c565b6101f95760405162461bcd60e51b815260040180806020018281038252603b8152602001806102dc603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b151590565b60ab806102316000396000f3fe608060405236601057600e6013565b005b600e5b60196025565b60256021602d565b6052565b565b3b151590565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156070573d6000f35b3d6000fdfea2646970667358221220877db6715e40b6844f466e62b7dae9653d964f1cda4f0d5e77f1fbf6c2076fa864736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e7472616374206164647265737360806040526040516108d23803806108d28339818101604052606081101561002657600080fd5b8151602083015160408085018051915193959294830192918464010000000082111561005157600080fd5b90830190602082018581111561006657600080fd5b825164010000000081118282018810171561008057600080fd5b82525081516020918201929091019080838360005b838110156100ad578181015183820152602001610095565b50505050905090810190601f1680156100da5780820380516001836020036101000a031916815260200191505b50604052508491508290506100ee826101bf565b8051156101a6576000826001600160a01b0316826040518082805190602001908083835b602083106101315780518252601f199092019160209182019101610112565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610191576040519150601f19603f3d011682016040523d82523d6000602084013e610196565b606091505b50509050806101a457600080fd5b505b506101ae9050565b6101b782610231565b50505061025b565b6101d28161025560201b6103b41760201c565b61020d5760405162461bcd60e51b815260040180806020018281038252603b815260200180610897603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b3b151590565b61062d8061026a6000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996103ba565b6101a96101a461041a565b61043f565b565b6101b3610463565b6001600160a01b0316336001600160a01b031614156101da576101d581610488565b6101e2565b6101e2610191565b50565b6101ed610463565b6001600160a01b0316336001600160a01b031614156102855761020f83610488565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd61041a565b90506102cc565b6102cc610191565b90565b6102d7610463565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806105876036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e610463565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d5816104c8565b6000610393610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd610463565b3b151590565b6103c2610463565b6001600160a01b0316336001600160a01b031614156104125760405162461bcd60e51b81526004018080602001828103825260328152602001806105556032913960400191505060405180910390fd5b6101a96101a9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e80801561045e573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610491816104ec565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6104f5816103b4565b6105305760405162461bcd60e51b815260040180806020018281038252603b8152602001806105bd603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203ca74514dac320135b43e4097015fc2191283471651cff1fc022edd468f3874764736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212205155d234cd50f913ffdeb28b77a2572533bbd754388c5d490c1395864927948564736f6c634300060c0033", + "deployedBytecode": "0x608060405260043610620000aa5760003560e01c806361fe0613116200006d57806361fe061314620001835780636cf00fa414620001b757806396d85eee14620001dc578063b76564bd14620001f3578063c4d66de8146200020b578063d052ec0f146200023057620000aa565b80632346e68b14620000af57806331e3f2f214620000ec5780634da5fa371462000103578063571084bd146200012a5780635de9a137146200015e575b600080fd5b348015620000bc57600080fd5b50620000d4620000ce366004620020cd565b62000257565b604051620000e39190620025a4565b60405180910390f35b620000d4620000fd366004620021b0565b62000414565b3480156200011057600080fd5b5062000128620001223660046200236f565b620004c7565b005b3480156200013757600080fd5b506200014f62000149366004620022bb565b620005fe565b604051620000e39190620026b9565b3480156200016b57600080fd5b50620000d46200017d36600462001f96565b620009b2565b3480156200019057600080fd5b50620001a8620001a2366004620020af565b620009cd565b604051620000e39190620026a9565b348015620001c457600080fd5b50620000d4620001d63660046200224c565b62000be1565b620000d4620001ed3660046200211f565b62000cd6565b3480156200020057600080fd5b50620000d462000d8c565b3480156200021857600080fd5b50620001286200022a36600462001f96565b62000d9b565b3480156200023d57600080fd5b506200024862000e43565b604051620000e39190620026c4565b603454604080518082018252600881526744414f737461636b60c01b602082015290516387c6048360e01b815260009283926001600160a01b03909116916387c6048391620002a991600401620026c4565b60806040518083038186803b158015620002c257600080fd5b505afa158015620002d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002fd9190620023c7565b5090506000816001600160a01b0316631df40eaa866040518263ffffffff1660e01b8152600401620003309190620026a9565b60206040518083038186803b1580156200034957600080fd5b505afa1580156200035e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000384919062001fb5565b6040516335b41c4b60e11b81529091506001600160a01b03821690636b68389690620003b5908790600401620026c4565b60206040518083038186803b158015620003ce57600080fd5b505afa158015620003e3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000409919062001fb5565b925050505b92915050565b60006200042062001b15565b6200042b85620009cd565b905060006200043b828662000257565b90506000348286604051620004509062001b33565b6200045d92919062002662565b6040518091039082f09050801580156200047b573d6000803e3d6000fd5b5090507f3918796d81cd197899a48fa2babaac969d1125c889cfbcc3a0f12cdc93c87a5981838886604051620004b59493929190620025d2565b60405180910390a19695505050505050565b6001600160a01b038381166000908152603360205260409020541633146200050c5760405162461bcd60e51b8152600401620005039062002859565b60405180910390fd5b620005c18383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506001600160a01b038a16815260336020526040808220815160608101928390529550600101935060039250908390855b82829054906101000a90046001600160401b03166001600160401b03168152602001906008019060208260070104928301926001038202915080841162000573579050505050505062000e67565b6001600160a01b038316600090815260336020526040812080546001600160a01b031916815590620005f7600183018262001b41565b5050505050565b6000858414620006225760405162461bcd60e51b815260040162000503906200280c565b858214620006445760405162461bcd60e51b815260040162000503906200293a565b85620006645760405162461bcd60e51b8152600401620005039062002915565b6001600160a01b03888116600090815260336020526040902054163314620006a05760405162461bcd60e51b8152600401620005039062002859565b60005b86811015620009a3576000888883818110620006bb57fe5b9050602002016020810190620006d2919062001f96565b6001600160a01b03161415620006fc5760405162461bcd60e51b815260040162000503906200275c565b60008686838181106200070b57fe5b9050602002013511156200084b57886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200075357600080fd5b505afa15801562000768573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200078e919062001fb5565b6001600160a01b03166310c5b328878784818110620007a957fe5b905060200201358a8a85818110620007bd57fe5b9050602002016020810190620007d4919062001f96565b6040518363ffffffff1660e01b8152600401620007f39291906200298c565b602060405180830381600087803b1580156200080e57600080fd5b505af115801562000823573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200084991906200222a565b505b60008484838181106200085a57fe5b9050602002013511156200099a57886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015620008a257600080fd5b505afa158015620008b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008dd919062001fb5565b6001600160a01b031663dea9e24d858584818110620008f857fe5b905060200201358a8a858181106200090c57fe5b905060200201602081019062000923919062001f96565b6040518363ffffffff1660e01b8152600401620009429291906200298c565b602060405180830381600087803b1580156200095d57600080fd5b505af115801562000972573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200099891906200222a565b505b600101620006a3565b50600198975050505050505050565b6033602052600090815260409020546001600160a01b031681565b620009d762001b15565b6000620009e362001b15565b603454604080518082018252600881526744414f737461636b60c01b602082015290516387c6048360e01b81526001600160a01b03909216916387c604839162000a3091600401620026c4565b60806040518083038186803b15801562000a4957600080fd5b505afa15801562000a5e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a849190620023c7565b604051630efa075560e11b815291935091506000906001600160a01b03841690631df40eaa9062000aba908890600401620026a9565b60206040518083038186803b15801562000ad357600080fd5b505afa15801562000ae8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b0e919062001fb5565b6001600160a01b0316141562000bd657604051630efa075560e11b81526000906001600160a01b03841690631df40eaa9062000b4f908590600401620026a9565b60206040518083038186803b15801562000b6857600080fd5b505afa15801562000b7d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ba3919062001fb5565b6001600160a01b0316141562000bcd5760405162461bcd60e51b8152600401620005039062002717565b80925062000bda565b8392505b5050919050565b6000606080606080606062000bf562001b15565b62000c038a8c018c62002454565b95509550955095509550955062000c1962001b15565b62000c2482620009cd565b9050600062000c3888888888888762001282565b9050891562000c8b5762000c85818c8c8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525087925062000e67915050565b62000cc6565b6001600160a01b038116600090815260336020526040902080546001600160a01b0319163317815562000cc49060010183600362001b48565b505b9c9b505050505050505050505050565b600062000ce262001b15565b62000ced86620009cd565b9050600062000cfd828762000257565b905060003482878760405162000d139062001bf4565b62000d219392919062002611565b6040518091039082f090508015801562000d3f573d6000803e3d6000fd5b5090507f3918796d81cd197899a48fa2babaac969d1125c889cfbcc3a0f12cdc93c87a598183898660405162000d799493929190620025d2565b60405180910390a1979650505050505050565b6034546001600160a01b031681565b600054610100900460ff168062000db7575062000db76200189f565b8062000dc6575060005460ff16155b62000de55760405162461bcd60e51b81526004016200050390620028c7565b600054610100900460ff1615801562000e11576000805460ff1961ff0019909116610100171660011790555b603480546001600160a01b0319166001600160a01b038416179055801562000e3f576000805461ff00191690555b5050565b6040518060400160405280600881526020016744414f737461636b60c01b81525081565b60608060608060608680602001905181019062000e85919062001fd4565b945094509450945094506000886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801562000ecb57600080fd5b505afa15801562000ee0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f06919062001fb5565b90506000805b87518110156200114457606062000f438388848151811062000f2a57fe5b60200260200101518a620018a59092919063ffffffff16565b9050600481511062000ff05762000f5e8160006004620018a5565b905062000f8f8c60405160200162000f779190620025a4565b60408051601f1981840301815291905282906200193c565b905062000fed62000fe56024808a868151811062000fa957fe5b60200260200101510362000fdd878c888151811062000fc457fe5b60200260200101518e620018a59092919063ffffffff16565b9190620018a5565b82906200193c565b90505b60006200101e8b620010168c86815181106200100857fe5b6020026020010151620019bd565b8f8562000cd6565b9050806001600160a01b03167fd7aeea804cd95f56138ce36cac2d6e5099e9a2fb7cd120f8d474e5479c2297386200105c8c86815181106200100857fe5b6040516200106b9190620026c4565b60405180910390a2846001600160a01b0316635d1da8cb828986815181106200109057fe5b60200260200101516040518363ffffffff1660e01b8152600401620010b79291906200263f565b602060405180830381600087803b158015620010d257600080fd5b505af1158015620010e7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200110d91906200222a565b50620011378884815181106200111f57fe5b60200260200101518562001ae690919063ffffffff16565b9350505060010162000f0c565b50604051632242b11b60e21b81526001600160a01b0383169063890ac46c9062001173908690600401620026c4565b602060405180830381600087803b1580156200118e57600080fd5b505af1158015620011a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011c991906200222a565b50816001600160a01b0316636bafaa596040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156200120657600080fd5b505af11580156200121b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200124191906200222a565b506040516001600160a01b038b16907f9007c9042f12be953f7dbe3909f56c3f088e9fe294dbebbef4a67afa63462b6a90600090a250505050505050505050565b60008351855114620012a85760405162461bcd60e51b815260040162000503906200280c565b8251855114620012cc5760405162461bcd60e51b815260040162000503906200293a565b6000620012fb83604051806040016040528060088152602001672220a7aa37b5b2b760c11b8152508962000414565b905060006200136b846040518060400160405280600a8152602001692932b83aba30ba34b7b760b11b81525030306040516024016200133b9190620025a4565b60408051601f198184030181529190526020810180516001600160e01b031663189acdbd60e31b17905262000cd6565b90506000620013dd856040518060400160405280600681526020016520bb30ba30b960d11b815250308d878730604051602401620013ad9493929190620026d9565b60408051601f198184030181529190526020810180516001600160e01b0316633cd208ad60e21b17905262000cd6565b6040516308f2839760e41b81529091506001600160a01b03831690638f283970906200140e908490600401620025a4565b600060405180830381600087803b1580156200142957600080fd5b505af11580156200143e573d6000803e3d6000fd5b50506040516308f2839760e41b81526001600160a01b0384169250638f283970915062001470908490600401620025a4565b600060405180830381600087803b1580156200148b57600080fd5b505af1158015620014a0573d6000803e3d6000fd5b5050505060005b8851811015620016a05760006001600160a01b0316898281518110620014c957fe5b60200260200101516001600160a01b03161415620014fb5760405162461bcd60e51b8152600401620005039062002890565b60008882815181106200150a57fe5b60200260200101511115620015c957836001600160a01b03166340c10f198a83815181106200153557fe5b60200260200101518a84815181106200154a57fe5b60200260200101516040518363ffffffff1660e01b81526004016200157192919062002690565b602060405180830381600087803b1580156200158c57600080fd5b505af1158015620015a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015c791906200222a565b505b6000878281518110620015d857fe5b602002602001015111156200169757826001600160a01b03166340c10f198a83815181106200160357fe5b60200260200101518984815181106200161857fe5b60200260200101516040518363ffffffff1660e01b81526004016200163f92919062002690565b602060405180830381600087803b1580156200165a57600080fd5b505af11580156200166f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200169591906200222a565b505b600101620014a7565b50600062001711866040518060400160405280600a81526020016921b7b73a3937b63632b960b11b815250848530604051602401620016e1929190620025b8565b60408051601f198184030181529190526020810180516001600160e01b031663485cc95560e01b17905262000cd6565b60405163f2fde38b60e01b81529091506001600160a01b0383169063f2fde38b9062001742908490600401620025a4565b600060405180830381600087803b1580156200175d57600080fd5b505af115801562001772573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b038716925063f2fde38b9150620017a4908490600401620025a4565b600060405180830381600087803b158015620017bf57600080fd5b505af1158015620017d4573d6000803e3d6000fd5b505060405163f2fde38b60e01b81526001600160a01b038616925063f2fde38b915062001806908490600401620025a4565b600060405180830381600087803b1580156200182157600080fd5b505af115801562001836573d6000803e3d6000fd5b50505050826001600160a01b0316816001600160a01b0316836001600160a01b03167f7c9ce34d490425d6909c8542650b59e8c11074274a3ff906359b4edc3d69505187604051620018899190620025a4565b60405180910390a4509998505050505050505050565b303b1590565b6060620018b3838362001ae6565b84511015620018d65760405162461bcd60e51b81526004016200050390620027ca565b606082158015620018e75762001933565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156200192257805183526020928301920162001908565b5050858452601f01601f1916604052505b50949350505050565b6060806040519050835180825260208201818101602087015b818310156200196f57805183526020928301920162001955565b50855184518101855292509050808201602086015b818310156200199e57805183526020928301920162001984565b508651929092011591909101601f01601f191660405250905092915050565b6040805160208082528183019092526060918291906020820181803683370190505090506000805b602081101562001a3f576008810260020a85026001600160f81b031981161562001a35578084848151811062001a1757fe5b60200101906001600160f81b031916908160001a9053506001909201915b50600101620019e5565b6060826001600160401b038111801562001a5857600080fd5b506040519080825280601f01601f19166020018201604052801562001a84576020820181803683370190505b509050600091505b8282101562001add5783828151811062001aa257fe5b602001015160f81c60f81b81838151811062001aba57fe5b60200101906001600160f81b031916908160001a90535060019091019062001a8c565b95945050505050565b60008282018381101562001b0e5760405162461bcd60e51b8152600401620005039062002793565b9392505050565b60405180606001604052806003906020820280368337509192915050565b6103178062002a6d83390190565b5060009055565b60018301918390821562001be25791602002820160005b8382111562001bab57835183826101000a8154816001600160401b0302191690836001600160401b03160217905550926020019260080160208160070104928301926001030262001b5f565b801562001be05782816101000a8154906001600160401b03021916905560080160208160070104928301926001030262001bab565b505b5062001bf092915062001c02565b5090565b6108d28062002d8483390190565b5b8082111562001bf057805467ffffffffffffffff1916815560010162001c03565b60008083601f84011262001c36578182fd5b5081356001600160401b0381111562001c4d578182fd5b602083019150836020808302850101111562001c6857600080fd5b9250929050565b600082601f83011262001c80578081fd5b813562001c9762001c9182620029ca565b620029a3565b81815291506020808301908481018184028601820187101562001cb957600080fd5b60005b8481101562001ce557813562001cd28162002a3d565b8452928201929082019060010162001cbc565b505050505092915050565b600082601f83011262001d01578081fd5b815162001d1262001c9182620029ca565b81815291506020808301908481018184028601820187101562001d3457600080fd5b60005b8481101562001ce55781518452928201929082019060010162001d37565b600082601f83011262001d66578081fd5b815162001d7762001c9182620029ca565b81815291506020808301908481018184028601820187101562001d9957600080fd5b6000805b8581101562001dd15782516001600160e01b03198116811462001dbe578283fd5b8552938301939183019160010162001d9d565b50505050505092915050565b600082601f83011262001dee578081fd5b813562001dff62001c9182620029ca565b81815291506020808301908481018184028601820187101562001e2157600080fd5b60005b8481101562001ce55781358452928201929082019060010162001e24565b600082601f83011262001e53578081fd5b62001e5f6060620029a3565b905080828460608501111562001e7457600080fd5b60005b600381101562001ea457813562001e8e8162002a56565b8352602092830192919091019060010162001e77565b50505092915050565b60008083601f84011262001ebf578182fd5b5081356001600160401b0381111562001ed6578182fd5b60208301915083602082850101111562001c6857600080fd5b600082601f83011262001f00578081fd5b813562001f1162001c9182620029ea565b915080825283602082850101111562001f2957600080fd5b8060208401602084013760009082016020015292915050565b600082601f83011262001f53578081fd5b815162001f6462001c9182620029ea565b915080825283602082850101111562001f7c57600080fd5b62001f8f81602084016020860162002a0e565b5092915050565b60006020828403121562001fa8578081fd5b813562001b0e8162002a3d565b60006020828403121562001fc7578081fd5b815162001b0e8162002a3d565b600080600080600060a0868803121562001fec578081fd5b85516001600160401b038082111562002003578283fd5b6200201189838a0162001cf0565b9650602088015191508082111562002027578283fd5b6200203589838a0162001f42565b955060408801519150808211156200204b578283fd5b6200205989838a0162001cf0565b945060608801519150808211156200206f578283fd5b6200207d89838a0162001d55565b9350608088015191508082111562002093578283fd5b50620020a28882890162001f42565b9150509295509295909350565b600060608284031215620020c1578081fd5b62001b0e838362001e42565b60008060808385031215620020e0578182fd5b620020ec848462001e42565b915060608301356001600160401b0381111562002107578182fd5b620021158582860162001eef565b9150509250929050565b60008060008060c0858703121562002135578182fd5b62002141868662001e42565b935060608501356001600160401b03808211156200215d578384fd5b6200216b8883890162001eef565b9450608087013591506200217f8262002a3d565b90925060a0860135908082111562002195578283fd5b50620021a48782880162001eef565b91505092959194509250565b600080600060a08486031215620021c5578081fd5b620021d1858562001e42565b925060608401356001600160401b0380821115620021ed578283fd5b620021fb8783880162001eef565b9350608086013591508082111562002211578283fd5b50620022208682870162001eef565b9150509250925092565b6000602082840312156200223c578081fd5b8151801515811462001b0e578182fd5b6000806000806040858703121562002262578182fd5b84356001600160401b038082111562002279578384fd5b620022878883890162001ead565b90965094506020870135915080821115620022a0578384fd5b50620022af8782880162001ead565b95989497509550505050565b60008060008060008060006080888a031215620022d6578485fd5b8735620022e38162002a3d565b965060208801356001600160401b0380821115620022ff578687fd5b6200230d8b838c0162001c24565b909850965060408a013591508082111562002326578384fd5b620023348b838c0162001c24565b909650945060608a01359150808211156200234d578384fd5b506200235c8a828b0162001c24565b989b979a50959850939692959293505050565b60008060006040848603121562002384578081fd5b8335620023918162002a3d565b925060208401356001600160401b03811115620023ac578182fd5b620023ba8682870162001ead565b9497909650939450505050565b60008060808385031215620023da578182fd5b8251620023e78162002a3d565b91506020603f84018513620023fa578182fd5b620024066060620029a3565b80828601876080880111156200241a578485fd5b845b600381101562002446578151620024338162002a56565b845292840192908401906001016200241c565b509497909650945050505050565b60008060008060008061010087890312156200246e578384fd5b86356001600160401b038082111562002485578586fd5b620024938a838b0162001eef565b97506020890135915080821115620024a9578586fd5b620024b78a838b0162001eef565b96506040890135915080821115620024cd578586fd5b620024db8a838b0162001c6f565b95506060890135915080821115620024f1578384fd5b620024ff8a838b0162001ddd565b9450608089013591508082111562002515578384fd5b506200252489828a0162001ddd565b925050620025368860a0890162001e42565b90509295509295509295565b8060005b6003811015620025705781516001600160401b031684526020938401939091019060010162002546565b50505050565b600081518084526200259081602086016020860162002a0e565b601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b0385811682528416602082015260c060408201819052600090620026009083018562002576565b905062001add606083018462002542565b6001600160a01b0384811682528316602082015260606040820181905260009062001add9083018462002576565b6001600160a01b039290921682526001600160e01b031916602082015260400190565b6001600160a01b0383168152604060208201819052600090620026889083018462002576565b949350505050565b6001600160a01b03929092168252602082015260400190565b606081016200040e828462002542565b901515815260200190565b60006020825262001b0e602083018462002576565b600060808252620026ee608083018762002576565b6001600160a01b0395861660208401529385166040830152509216606090920191909152919050565b60208082526025908201527f496d706c656d656e746174696f6e50726f766964657220646f6573206e6f7420604082015264195e1a5cdd60da1b606082015260800190565b6020808252601b908201527f666f756e64657220616464726573732063616e6e6f7420626520300000000000604082015260600190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b60208082526022908201527f5f62797465732e6c656e677468203c20285f7374617274202b205f6c656e6774604082015261682960f01b606082015260800190565b6020808252602d908201527f5f666f756e6465726c656e67746820213d205f666f756e64657273546f6b656e60408201526c082dadeeadce85cd8cadccee8d609b1b606082015260800190565b6020808252601e908201527f73656e646572206973206e6f7420686f6c64696e6720746865206c6f636b0000604082015260600190565b6020808252601e908201527f666f756e64657220616464726573732063616e6e6f74206265207a65726f0000604082015260600190565b6020808252602e908201527f436f6e747261637420696e7374616e63652068617320616c726561647920626560408201526d195b881a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252600b908201526a6e6f20666f756e6465727360a81b604082015260600190565b60208082526032908201527f5f666f756e6465726c656e67746820213d205f666f756e6465727352657075746040820152710c2e8d2dedc82dadeeadce85cd8cadccee8d60731b606082015260800190565b9182526001600160a01b0316602082015260400190565b6040518181016001600160401b0381118282101715620029c257600080fd5b604052919050565b60006001600160401b03821115620029e0578081fd5b5060209081020190565b60006001600160401b0382111562002a00578081fd5b50601f01601f191660200190565b60005b8381101562002a2b57818101518382015260200162002a11565b83811115620025705750506000910152565b6001600160a01b038116811462002a5357600080fd5b50565b6001600160401b038116811462002a5357600080fdfe60806040526040516103173803806103178339818101604052604081101561002657600080fd5b81516020830180516040519294929383019291908464010000000082111561004d57600080fd5b90830190602082018581111561006257600080fd5b825164010000000081118282018810171561007c57600080fd5b82525081516020918201929091019080838360005b838110156100a9578181015183820152602001610091565b50505050905090810190601f1680156100d65780820380516001836020036101000a031916815260200191505b50604052506100e3915050565b6100ec826101ab565b8051156101a4576000826001600160a01b0316826040518082805190602001908083835b6020831061012f5780518252601f199092019160209182019101610110565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d806000811461018f576040519150601f19603f3d011682016040523d82523d6000602084013e610194565b606091505b50509050806101a257600080fd5b505b5050610223565b6101be8161021d60201b6100271760201c565b6101f95760405162461bcd60e51b815260040180806020018281038252603b8152602001806102dc603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b151590565b60ab806102316000396000f3fe608060405236601057600e6013565b005b600e5b60196025565b60256021602d565b6052565b565b3b151590565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156070573d6000f35b3d6000fdfea2646970667358221220877db6715e40b6844f466e62b7dae9653d964f1cda4f0d5e77f1fbf6c2076fa864736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e7472616374206164647265737360806040526040516108d23803806108d28339818101604052606081101561002657600080fd5b8151602083015160408085018051915193959294830192918464010000000082111561005157600080fd5b90830190602082018581111561006657600080fd5b825164010000000081118282018810171561008057600080fd5b82525081516020918201929091019080838360005b838110156100ad578181015183820152602001610095565b50505050905090810190601f1680156100da5780820380516001836020036101000a031916815260200191505b50604052508491508290506100ee826101bf565b8051156101a6576000826001600160a01b0316826040518082805190602001908083835b602083106101315780518252601f199092019160209182019101610112565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114610191576040519150601f19603f3d011682016040523d82523d6000602084013e610196565b606091505b50509050806101a457600080fd5b505b506101ae9050565b6101b782610231565b50505061025b565b6101d28161025560201b6103b41760201c565b61020d5760405162461bcd60e51b815260040180806020018281038252603b815260200180610897603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b3b151590565b61062d8061026a6000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100985780635c60da1b146101185780638f28397014610149578063f851a4401461017c5761005d565b3661005d5761005b610191565b005b61005b610191565b34801561007157600080fd5b5061005b6004803603602081101561008857600080fd5b50356001600160a01b03166101ab565b61005b600480360360408110156100ae57600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156100d957600080fd5b8201836020820111156100eb57600080fd5b8035906020019184600183028401116401000000008311171561010d57600080fd5b5090925090506101e5565b34801561012457600080fd5b5061012d610292565b604080516001600160a01b039092168252519081900360200190f35b34801561015557600080fd5b5061005b6004803603602081101561016c57600080fd5b50356001600160a01b03166102cf565b34801561018857600080fd5b5061012d610389565b6101996103ba565b6101a96101a461041a565b61043f565b565b6101b3610463565b6001600160a01b0316336001600160a01b031614156101da576101d581610488565b6101e2565b6101e2610191565b50565b6101ed610463565b6001600160a01b0316336001600160a01b031614156102855761020f83610488565b6000836001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d806000811461026c576040519150601f19603f3d011682016040523d82523d6000602084013e610271565b606091505b505090508061027f57600080fd5b5061028d565b61028d610191565b505050565b600061029c610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd61041a565b90506102cc565b6102cc610191565b90565b6102d7610463565b6001600160a01b0316336001600160a01b031614156101da576001600160a01b0381166103355760405162461bcd60e51b81526004018080602001828103825260368152602001806105876036913960400191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f61035e610463565b604080516001600160a01b03928316815291841660208301528051918290030190a16101d5816104c8565b6000610393610463565b6001600160a01b0316336001600160a01b031614156102c4576102bd610463565b3b151590565b6103c2610463565b6001600160a01b0316336001600160a01b031614156104125760405162461bcd60e51b81526004018080602001828103825260328152602001806105556032913960400191505060405180910390fd5b6101a96101a9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e80801561045e573d6000f35b3d6000fd5b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b610491816104ec565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355565b6104f5816103b4565b6105305760405162461bcd60e51b815260040180806020018281038252603b8152602001806105bd603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5556fe43616e6e6f742063616c6c2066616c6c6261636b2066756e6374696f6e2066726f6d207468652070726f78792061646d696e43616e6e6f74206368616e6765207468652061646d696e206f6620612070726f787920746f20746865207a65726f206164647265737343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212203ca74514dac320135b43e4097015fc2191283471651cff1fc022edd468f3874764736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373a26469706673582212205155d234cd50f913ffdeb28b77a2572533bbd754388c5d490c1395864927948564736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/DAORegistry.json b/contracts/0.1.2-rc.8/DAORegistry.json new file mode 100644 index 00000000..da7e2bea --- /dev/null +++ b/contracts/0.1.2-rc.8/DAORegistry.json @@ -0,0 +1,2281 @@ +{ + "contractName": "DAORegistry", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "Propose", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_name", + "type": "string" + } + ], + "name": "Register", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "UnRegister", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "propose", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "string", + "name": "_name", + "type": "string" + } + ], + "name": "register", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "unRegister", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "internalType": "string", + "name": "_name", + "type": "string" + } + ], + "name": "isRegister", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "metadata": "{\"compiler\":{\"version\":\"0.5.15+commit.6a57276f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_avatar\",\"type\":\"address\"}],\"name\":\"Propose\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_avatar\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"}],\"name\":\"Register\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_avatar\",\"type\":\"address\"}],\"name\":\"UnRegister\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"}],\"name\":\"isRegister\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_avatar\",\"type\":\"address\"}],\"name\":\"propose\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_avatar\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"}],\"name\":\"register\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"_avatar\",\"type\":\"address\"}],\"name\":\"unRegister\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/oren/daostack/arc-hive/contracts/DAORegistry.sol\":\"DAORegistry\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/oren/daostack/arc-hive/contracts/DAORegistry.sol\":{\"keccak256\":\"0x36573afbb3e6b5d75f46ac42b81e5179244d8ee1e7e1c0b5740c9b665ee992bc\",\"urls\":[\"bzz-raw://70794fe35048190cc8ebd3ad7508ed9dd928c4f2bc3738b40dbd70d35610d6ec\",\"dweb:/ipfs/QmQ9wHPqXJV8iag7Rerabi1NKiXSe7kUYTTb59PVX3awUH\"]},\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x0d4306da5305cb78f09c70c18ec86dbc66f22fa5ade90edc20e1ab88e16d4d10\",\"urls\":[\"bzz-raw://c89dee1b8e96cb83f529b8b5c93be6b420c1913363a3fed01241942f08cc968f\",\"dweb:/ipfs/QmfWWwzg9hah3YwZRFWvAwq91HLjCHkKnxXqP6uLGURUou\"]},\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzz-raw://a3f816aa3e6161b4cf882ad34755673848d835f7fb964db49bcef9df14570cef\",\"dweb:/ipfs/QmQACSH1W7pKQnqTAqpuEP8ychp3PvosfnyondLaLE1nVq\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0xf79d9851c085aa8412e87d7a26d3485488fe12538ecb4e317ce41fc1f2c3a16a\",\"urls\":[\"bzz-raw://6af1a35ad6aed2169ce9f44095438b3192cd6066903908f769d5c49a06a0caf8\",\"dweb:/ipfs/QmaH41CwJ7WrMQwSnbfCKuL2pd8bxF7sbGSLPZb6JaHBFF\"]}},\"version\":1}", + "bytecode": "0x608060405261091e806100136000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063715018a611610066578063715018a6146102565780638da5cb5b1461025e5780638f32d59b14610282578063c4d66de81461028a578063f2fde38b146102b057610093565b80630126795114610098578063178d680d146100c057806327c956251461017a57806332434a2e146101a0575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b03166102d6565b005b610166600480360360208110156100d657600080fd5b8101906020810181356401000000008111156100f157600080fd5b82018360208201111561010357600080fd5b8035906020019184600183028401116401000000008311171561012557600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061030d945050505050565b604080519115158252519081900360200190f35b6100be6004803603602081101561019057600080fd5b50356001600160a01b0316610378565b6100be600480360360408110156101b657600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101e157600080fd5b8201836020820111156101f357600080fd5b8035906020019184600183028401116401000000008311171561021557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103f6945050505050565b6100be6105bf565b610266610650565b604080516001600160a01b039092168252519081900360200190f35b61016661065f565b6100be600480360360208110156102a057600080fd5b50356001600160a01b0316610685565b6100be600480360360208110156102c657600080fd5b50356001600160a01b0316610777565b6040516001600160a01b038216907fd16d50d8d566a5c6f1f5d89ffcfa821adc9d9f4e780d153563abc82e943ff0e390600090a250565b60006066826040518082805190602001908083835b602083106103415780518252601f199092019160209182019101610322565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff16949350505050565b61038061065f565b6103bf576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6040516001600160a01b038216907f630f28bb6372d0a747db8dcdb1a523bd9d875ddd96649c705325e60b239fc3c390600090a250565b6103fe61065f565b61043d576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6066816040518082805190602001908083835b6020831061046f5780518252601f199092019160209182019101610450565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff161591506104ac905057600080fd5b60016066826040518082805190602001908083835b602083106104e05780518252601f1990920191602091820191016104c1565b51815160209384036101000a6000190180199092169116179052920194855250604080519485900382018520805460ff19169615159690961790955580845285518482015285516001600160a01b038816957f6ba0831d2f62ae5cbf7214bcc1d79c5da1d705f12811efda0beaa840006f874e9588955093508392908301919085019080838360005b83811015610581578181015183820152602001610569565b50505050905090810190601f1680156105ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b6105c761065f565b610606576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b6033546001600160a01b031690565b6033546000906001600160a01b03166106766107ca565b6001600160a01b031614905090565b600054610100900460ff168061069e575061069e6107ce565b806106ac575060005460ff16155b6106e75760405162461bcd60e51b815260040180806020018281038252602e8152602001806108bc602e913960400191505060405180910390fd5b600054610100900460ff16158015610712576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610773576000805461ff00191690555b5050565b61077f61065f565b6107be576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6107c7816107d4565b50565b3390565b303b1590565b6001600160a01b0381166108195760405162461bcd60e51b81526004018080602001828103825260268152602001806108766026913960400191505060405180910390fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a265627a7a72315820ecacf8451a314f6cd859ed4f338cc438c9eaf16622e66b43a5ac5bb33f5b02a064736f6c634300050f0032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063715018a611610066578063715018a6146102565780638da5cb5b1461025e5780638f32d59b14610282578063c4d66de81461028a578063f2fde38b146102b057610093565b80630126795114610098578063178d680d146100c057806327c956251461017a57806332434a2e146101a0575b600080fd5b6100be600480360360208110156100ae57600080fd5b50356001600160a01b03166102d6565b005b610166600480360360208110156100d657600080fd5b8101906020810181356401000000008111156100f157600080fd5b82018360208201111561010357600080fd5b8035906020019184600183028401116401000000008311171561012557600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061030d945050505050565b604080519115158252519081900360200190f35b6100be6004803603602081101561019057600080fd5b50356001600160a01b0316610378565b6100be600480360360408110156101b657600080fd5b6001600160a01b0382351691908101906040810160208201356401000000008111156101e157600080fd5b8201836020820111156101f357600080fd5b8035906020019184600183028401116401000000008311171561021557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103f6945050505050565b6100be6105bf565b610266610650565b604080516001600160a01b039092168252519081900360200190f35b61016661065f565b6100be600480360360208110156102a057600080fd5b50356001600160a01b0316610685565b6100be600480360360208110156102c657600080fd5b50356001600160a01b0316610777565b6040516001600160a01b038216907fd16d50d8d566a5c6f1f5d89ffcfa821adc9d9f4e780d153563abc82e943ff0e390600090a250565b60006066826040518082805190602001908083835b602083106103415780518252601f199092019160209182019101610322565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff16949350505050565b61038061065f565b6103bf576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6040516001600160a01b038216907f630f28bb6372d0a747db8dcdb1a523bd9d875ddd96649c705325e60b239fc3c390600090a250565b6103fe61065f565b61043d576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6066816040518082805190602001908083835b6020831061046f5780518252601f199092019160209182019101610450565b51815160209384036101000a600019018019909216911617905292019485525060405193849003019092205460ff161591506104ac905057600080fd5b60016066826040518082805190602001908083835b602083106104e05780518252601f1990920191602091820191016104c1565b51815160209384036101000a6000190180199092169116179052920194855250604080519485900382018520805460ff19169615159690961790955580845285518482015285516001600160a01b038816957f6ba0831d2f62ae5cbf7214bcc1d79c5da1d705f12811efda0beaa840006f874e9588955093508392908301919085019080838360005b83811015610581578181015183820152602001610569565b50505050905090810190601f1680156105ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b6105c761065f565b610606576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b6033546001600160a01b031690565b6033546000906001600160a01b03166106766107ca565b6001600160a01b031614905090565b600054610100900460ff168061069e575061069e6107ce565b806106ac575060005460ff16155b6106e75760405162461bcd60e51b815260040180806020018281038252602e8152602001806108bc602e913960400191505060405180910390fd5b600054610100900460ff16158015610712576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a38015610773576000805461ff00191690555b5050565b61077f61065f565b6107be576040805162461bcd60e51b8152602060048201819052602482015260008051602061089c833981519152604482015290519081900360640190fd5b6107c7816107d4565b50565b3390565b303b1590565b6001600160a01b0381166108195760405162461bcd60e51b81526004018080602001828103825260268152602001806108766026913960400191505060405180910390fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a265627a7a72315820ecacf8451a314f6cd859ed4f338cc438c9eaf16622e66b43a5ac5bb33f5b02a064736f6c634300050f0032", + "sourceMap": "110:820:0:-;;;;;;;;;", + "deployedSourceMap": "110:820:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;110:820:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;345:79;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;345:79:0;-1:-1:-1;;;;;345:79:0;;:::i;:::-;;821:106;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;821:106:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;821:106:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;821:106:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;821:106:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;821:106:0;;-1:-1:-1;821:106:0;;-1:-1:-1;;;;;821:106:0:i;:::-;;;;;;;;;;;;;;;;;;622:95;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;622:95:0;-1:-1:-1;;;;;622:95:0;;:::i;430:186::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;430:186:0;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;430:186:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;430:186:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;430:186:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;430:186:0;;-1:-1:-1;430:186:0;;-1:-1:-1;;;;;430:186:0:i;1746:137:3:-;;;:::i;959:77::-;;;:::i;:::-;;;;-1:-1:-1;;;;;959:77:3;;;;;;;;;;;;;;1310:92;;;:::i;741:142::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;741:142:3;-1:-1:-1;;;;;741:142:3;;:::i;2032:107::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2032:107:3;-1:-1:-1;;;;;2032:107:3;;:::i;345:79:0:-;401:16;;-1:-1:-1;;;;;401:16:0;;;;;;;;345:79;:::o;821:106::-;882:4;905:8;914:5;905:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;905:15:0;;;;;-1:-1:-1;905:15:0;;;;;;;;;;;;;;821:106;-1:-1:-1;;;;821:106:0:o;622:95::-;1163:9:3;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;1155:54:3;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:3;;;;;;;;;;;;;;;691:19:0;;-1:-1:-1;;;;;691:19:0;;;;;;;;622:95;:::o;430:186::-;1163:9:3;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;1155:54:3;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:3;;;;;;;;;;;;;;;522:8:0;531:5;522:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;522:15:0;;;;;-1:-1:-1;522:15:0;;;;;;;;;;;;;521:16;;-1:-1:-1;513:25:0;;-1:-1:-1;513:25:0;;;;;566:4;548:8;557:5;548:15;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;176:10;;164:23;;-1:-1;;139:12;;;;98:2;89:12;;;;114;36:153;;;299:10;344;;263:2;259:12;;;254:3;250:22;-1:-1;;246:30;311:9;;295:26;;;340:21;;377:20;365:33;;548:15:0;;;;;-1:-1:-1;548:15:0;;;;;;;;;;;:22;;-1:-1:-1;;548:22:0;;;;;;;;;;;585:24;;;;;;;;;;;-1:-1:-1;;;;;585:24:0;;;;;;;-1:-1:-1;548:15:0;-1:-1:-1;548:15:0;;585:24;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;585:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;430:186;;:::o;1746:137:3:-;1163:9;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;1155:54:3;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:3;;;;;;;;;;;;;;;1828:6;;1807:40;;1844:1;;-1:-1:-1;;;;;1828:6:3;;1807:40;;1844:1;;1807:40;1857:6;:19;;-1:-1:-1;;;;;;1857:19:3;;;1746:137::o;959:77::-;1023:6;;-1:-1:-1;;;;;1023:6:3;959:77;:::o;1310:92::-;1389:6;;1350:4;;-1:-1:-1;;;;;1389:6:3;1373:12;:10;:12::i;:::-;-1:-1:-1;;;;;1373:22:3;;1366:29;;1310:92;:::o;741:142::-;1024:12:4;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:4;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;1016:106:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1129:19;1152:12;;;;;;1151:13;1170:80;;;;1198:12;:19;;-1:-1:-1;;;;1198:19:4;;;;;1225:18;1213:4;1225:18;;;1170:80;806:6:3;:15;;-1:-1:-1;;;;;;806:15:3;-1:-1:-1;;;;;806:15:3;;;;;;;;;;;836:40;;869:6;;;-1:-1:-1;;836:40:3;;-1:-1:-1;;836:40:3;1268:14:4;1264:55;;;1307:5;1292:20;;-1:-1:-1;;1292:20:4;;;1264:55;741:142:3;;:::o;2032:107::-;1163:9;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;1155:54:3;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;1155:54:3;;;;;;;;;;;;;;;2104:28;2123:8;2104:18;:28::i;:::-;2032:107;:::o;791:88:2:-;862:10;791:88;:::o;1409:467:4:-;1842:7;1830:20;1864:7;1409:467;:::o;2240:225:3:-;-1:-1:-1;;;;;2313:22:3;;2305:73;;;;-1:-1:-1;;;2305:73:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2414:6;;2393:38;;-1:-1:-1;;;;;2393:38:3;;;;2414:6;;2393:38;;2414:6;;2393:38;2441:6;:17;;-1:-1:-1;;;;;;2441:17:3;-1:-1:-1;;;;;2441:17:3;;;;;;;;;;2240:225::o", + "source": "pragma solidity ^0.5.15;\n\nimport \"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\";\n\ncontract DAORegistry is Ownable {\n\n event Propose(address indexed _avatar);\n event Register(address indexed _avatar, string _name);\n event UnRegister(address indexed _avatar);\n\n mapping(string=>bool) private registry;\n\n function propose(address _avatar) public {\n emit Propose(_avatar);\n }\n\n function register(address _avatar, string memory _name) public onlyOwner {\n require(!registry[_name]);\n registry[_name] = true;\n emit Register(_avatar, _name);\n }\n\n function unRegister(address _avatar) public onlyOwner {\n emit UnRegister(_avatar);\n }\n\n //This getter is needed because Dynamically-sized keys for public mappings are not supported.\n function isRegister(string memory _name) public view returns(bool) {\n return registry[_name];\n }\n\n}\n", + "sourcePath": "/Users/oren/daostack/arc-hive/contracts/DAORegistry.sol", + "ast": { + "absolutePath": "/Users/oren/daostack/arc-hive/contracts/DAORegistry.sol", + "exportedSymbols": { + "DAORegistry": [ + 85 + ] + }, + "id": 86, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.5", + ".15" + ], + "nodeType": "PragmaDirective", + "src": "0:24:0" + }, + { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol", + "file": "@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol", + "id": 2, + "nodeType": "ImportDirective", + "scope": 86, + "sourceUnit": 295, + "src": "26:82:0", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 294, + "src": "134:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$294", + "typeString": "contract Ownable" + } + }, + "id": 4, + "nodeType": "InheritanceSpecifier", + "src": "134:7:0" + } + ], + "contractDependencies": [ + 170, + 294, + 357 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 85, + "linearizedBaseContracts": [ + 85, + 294, + 170, + 357 + ], + "name": "DAORegistry", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 8, + "name": "Propose", + "nodeType": "EventDefinition", + "parameters": { + "id": 7, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 8, + "src": "163:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "163:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "162:25:0" + }, + "src": "149:39:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 14, + "name": "Register", + "nodeType": "EventDefinition", + "parameters": { + "id": 13, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "208:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "208:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 12, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "233:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "233:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "207:39:0" + }, + "src": "193:54:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 18, + "name": "UnRegister", + "nodeType": "EventDefinition", + "parameters": { + "id": 17, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 18, + "src": "269:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "269:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "268:25:0" + }, + "src": "252:42:0" + }, + { + "constant": false, + "id": 22, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 85, + "src": "300:38:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "typeName": { + "id": 21, + "keyType": { + "id": 19, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "308:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "nodeType": "Mapping", + "src": "300:21:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "valueType": { + "id": 20, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "316:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "body": { + "id": 31, + "nodeType": "Block", + "src": "386:38:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 28, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24, + "src": "409:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27, + "name": "Propose", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8, + "src": "401:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 29, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "401:16:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30, + "nodeType": "EmitStatement", + "src": "396:21:0" + } + ] + }, + "documentation": null, + "id": 32, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "propose", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 25, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 32, + "src": "362:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "362:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "361:17:0" + }, + "returnParameters": { + "id": 26, + "nodeType": "ParameterList", + "parameters": [], + "src": "386:0:0" + }, + "scope": 85, + "src": "345:79:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 59, + "nodeType": "Block", + "src": "503:113:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 45, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "521:16:0", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 42, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "522:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 44, + "indexExpression": { + "argumentTypes": null, + "id": 43, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "531:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "522:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 41, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 375, + 376 + ], + "referencedDeclaration": 375, + "src": "513:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 46, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "513:25:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 47, + "nodeType": "ExpressionStatement", + "src": "513:25:0" + }, + { + "expression": { + "argumentTypes": null, + "id": 52, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 48, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "548:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 50, + "indexExpression": { + "argumentTypes": null, + "id": 49, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "557:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "548:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 51, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "566:4:0", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "548:22:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 53, + "nodeType": "ExpressionStatement", + "src": "548:22:0" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 55, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 34, + "src": "594:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 56, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "603:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 54, + "name": "Register", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "585:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 57, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "585:24:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 58, + "nodeType": "EmitStatement", + "src": "580:29:0" + } + ] + }, + "documentation": null, + "id": 60, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 39, + "modifierName": { + "argumentTypes": null, + "id": 38, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "493:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "493:9:0" + } + ], + "name": "register", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 37, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 34, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 60, + "src": "448:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 33, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "448:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 36, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 60, + "src": "465:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 35, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "465:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "447:38:0" + }, + "returnParameters": { + "id": 40, + "nodeType": "ParameterList", + "parameters": [], + "src": "503:0:0" + }, + "scope": 85, + "src": "430:186:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 71, + "nodeType": "Block", + "src": "676:41:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 68, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 62, + "src": "702:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 67, + "name": "UnRegister", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18, + "src": "691:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 69, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "691:19:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 70, + "nodeType": "EmitStatement", + "src": "686:24:0" + } + ] + }, + "documentation": null, + "id": 72, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 65, + "modifierName": { + "argumentTypes": null, + "id": 64, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "666:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "666:9:0" + } + ], + "name": "unRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 63, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 62, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 72, + "src": "642:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 61, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "642:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "641:17:0" + }, + "returnParameters": { + "id": 66, + "nodeType": "ParameterList", + "parameters": [], + "src": "676:0:0" + }, + "scope": 85, + "src": "622:95:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 83, + "nodeType": "Block", + "src": "888:39:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 79, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "905:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 81, + "indexExpression": { + "argumentTypes": null, + "id": 80, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "914:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "905:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 78, + "id": 82, + "nodeType": "Return", + "src": "898:22:0" + } + ] + }, + "documentation": null, + "id": 84, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 75, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 74, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 84, + "src": "841:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 73, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "841:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "840:21:0" + }, + "returnParameters": { + "id": 78, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 77, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 84, + "src": "882:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 76, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "882:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "881:6:0" + }, + "scope": 85, + "src": "821:106:0", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 86, + "src": "110:820:0" + } + ], + "src": "0:931:0" + }, + "legacyAST": { + "absolutePath": "/Users/oren/daostack/arc-hive/contracts/DAORegistry.sol", + "exportedSymbols": { + "DAORegistry": [ + 85 + ] + }, + "id": 86, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.5", + ".15" + ], + "nodeType": "PragmaDirective", + "src": "0:24:0" + }, + { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol", + "file": "@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol", + "id": 2, + "nodeType": "ImportDirective", + "scope": 86, + "sourceUnit": 295, + "src": "26:82:0", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3, + "name": "Ownable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 294, + "src": "134:7:0", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Ownable_$294", + "typeString": "contract Ownable" + } + }, + "id": 4, + "nodeType": "InheritanceSpecifier", + "src": "134:7:0" + } + ], + "contractDependencies": [ + 170, + 294, + 357 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 85, + "linearizedBaseContracts": [ + 85, + 294, + 170, + 357 + ], + "name": "DAORegistry", + "nodeType": "ContractDefinition", + "nodes": [ + { + "anonymous": false, + "documentation": null, + "id": 8, + "name": "Propose", + "nodeType": "EventDefinition", + "parameters": { + "id": 7, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 8, + "src": "163:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "163:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "162:25:0" + }, + "src": "149:39:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 14, + "name": "Register", + "nodeType": "EventDefinition", + "parameters": { + "id": 13, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "208:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "208:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 12, + "indexed": false, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "233:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "233:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "207:39:0" + }, + "src": "193:54:0" + }, + { + "anonymous": false, + "documentation": null, + "id": 18, + "name": "UnRegister", + "nodeType": "EventDefinition", + "parameters": { + "id": 17, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16, + "indexed": true, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 18, + "src": "269:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "269:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "268:25:0" + }, + "src": "252:42:0" + }, + { + "constant": false, + "id": 22, + "name": "registry", + "nodeType": "VariableDeclaration", + "scope": 85, + "src": "300:38:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "typeName": { + "id": 21, + "keyType": { + "id": 19, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "308:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "nodeType": "Mapping", + "src": "300:21:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string => bool)" + }, + "valueType": { + "id": 20, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "316:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "value": null, + "visibility": "private" + }, + { + "body": { + "id": 31, + "nodeType": "Block", + "src": "386:38:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 28, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 24, + "src": "409:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 27, + "name": "Propose", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8, + "src": "401:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 29, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "401:16:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 30, + "nodeType": "EmitStatement", + "src": "396:21:0" + } + ] + }, + "documentation": null, + "id": 32, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "propose", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 25, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 24, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 32, + "src": "362:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 23, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "362:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "361:17:0" + }, + "returnParameters": { + "id": 26, + "nodeType": "ParameterList", + "parameters": [], + "src": "386:0:0" + }, + "scope": 85, + "src": "345:79:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 59, + "nodeType": "Block", + "src": "503:113:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 45, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "521:16:0", + "subExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 42, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "522:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 44, + "indexExpression": { + "argumentTypes": null, + "id": 43, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "531:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "522:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 41, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 375, + 376 + ], + "referencedDeclaration": 375, + "src": "513:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 46, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "513:25:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 47, + "nodeType": "ExpressionStatement", + "src": "513:25:0" + }, + { + "expression": { + "argumentTypes": null, + "id": 52, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 48, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "548:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 50, + "indexExpression": { + "argumentTypes": null, + "id": 49, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "557:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "548:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 51, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "566:4:0", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "548:22:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 53, + "nodeType": "ExpressionStatement", + "src": "548:22:0" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 55, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 34, + "src": "594:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 56, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 36, + "src": "603:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 54, + "name": "Register", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14, + "src": "585:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (address,string memory)" + } + }, + "id": 57, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "585:24:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 58, + "nodeType": "EmitStatement", + "src": "580:29:0" + } + ] + }, + "documentation": null, + "id": 60, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 39, + "modifierName": { + "argumentTypes": null, + "id": 38, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "493:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "493:9:0" + } + ], + "name": "register", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 37, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 34, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 60, + "src": "448:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 33, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "448:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 36, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 60, + "src": "465:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 35, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "465:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "447:38:0" + }, + "returnParameters": { + "id": 40, + "nodeType": "ParameterList", + "parameters": [], + "src": "503:0:0" + }, + "scope": 85, + "src": "430:186:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 71, + "nodeType": "Block", + "src": "676:41:0", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 68, + "name": "_avatar", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 62, + "src": "702:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 67, + "name": "UnRegister", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18, + "src": "691:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 69, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "691:19:0", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 70, + "nodeType": "EmitStatement", + "src": "686:24:0" + } + ] + }, + "documentation": null, + "id": 72, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 65, + "modifierName": { + "argumentTypes": null, + "id": 64, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "666:9:0", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "666:9:0" + } + ], + "name": "unRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 63, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 62, + "name": "_avatar", + "nodeType": "VariableDeclaration", + "scope": 72, + "src": "642:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 61, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "642:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "641:17:0" + }, + "returnParameters": { + "id": 66, + "nodeType": "ParameterList", + "parameters": [], + "src": "676:0:0" + }, + "scope": 85, + "src": "622:95:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 83, + "nodeType": "Block", + "src": "888:39:0", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 79, + "name": "registry", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 22, + "src": "905:8:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_string_memory_$_t_bool_$", + "typeString": "mapping(string memory => bool)" + } + }, + "id": 81, + "indexExpression": { + "argumentTypes": null, + "id": 80, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "914:5:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "905:15:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 78, + "id": 82, + "nodeType": "Return", + "src": "898:22:0" + } + ] + }, + "documentation": null, + "id": 84, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isRegister", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 75, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 74, + "name": "_name", + "nodeType": "VariableDeclaration", + "scope": 84, + "src": "841:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 73, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "841:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "840:21:0" + }, + "returnParameters": { + "id": 78, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 77, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 84, + "src": "882:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 76, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "882:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "881:6:0" + }, + "scope": 85, + "src": "821:106:0", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 86, + "src": "110:820:0" + } + ], + "src": "0:931:0" + }, + "compiler": { + "name": "solc", + "version": "0.5.15+commit.6a57276f.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.20", + "updatedAt": "2019-12-22T14:03:18.968Z", + "devdoc": { + "methods": { + "initialize(address)": { + "details": "Initializes the contract setting the deployer as the initial owner." + }, + "isOwner()": { + "details": "Returns true if the caller is the current owner." + }, + "owner()": { + "details": "Returns the address of the current owner." + }, + "renounceOwnership()": { + "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + }, + "transferOwnership(address)": { + "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." + } + } + }, + "userdoc": { + "methods": {} + } +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/DAOToken.json b/contracts/0.1.2-rc.8/DAOToken.json new file mode 100644 index 00000000..237fa859 --- /dev/null +++ b/contracts/0.1.2-rc.8/DAOToken.json @@ -0,0 +1,425 @@ +{ + "contractName": "DAOToken", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "cap", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_name", + "type": "string" + }, + { + "internalType": "string", + "name": "_symbol", + "type": "string" + }, + { + "internalType": "uint256", + "name": "_cap", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506115a4806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad578063a457c2d711610071578063a457c2d714610356578063a9059cbb14610382578063bd3a13f6146103ae578063dd62ed3e1461047f578063f2fde38b146104ad57610121565b806370a08231146102d0578063715018a6146102f657806379cc6790146102fe5780638da5cb5b1461032a57806395d89b411461034e57610121565b8063313ce567116100f4578063313ce56714610233578063355274ea14610251578063395093511461025957806340c10f191461028557806342966c68146102b157610121565b806306fdde0314610126578063095ea7b3146101a357806318160ddd146101e357806323b872dd146101fd575b600080fd5b61012e6104d3565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b038135169060200135610569565b604080519115158252519081900360200190f35b6101eb610586565b60408051918252519081900360200190f35b6101cf6004803603606081101561021357600080fd5b506001600160a01b0381358116916020810135909116906040013561058c565b61023b610613565b6040805160ff9092168252519081900360200190f35b6101eb61061c565b6101cf6004803603604081101561026f57600080fd5b506001600160a01b038135169060200135610622565b6101cf6004803603604081101561029b57600080fd5b506001600160a01b038135169060200135610670565b6102ce600480360360208110156102c757600080fd5b5035610745565b005b6101eb600480360360208110156102e657600080fd5b50356001600160a01b0316610759565b6102ce610774565b6102ce6004803603604081101561031457600080fd5b506001600160a01b038135169060200135610828565b610332610882565b604080516001600160a01b039092168252519081900360200190f35b61012e610891565b6101cf6004803603604081101561036c57600080fd5b506001600160a01b0381351690602001356108f2565b6101cf6004803603604081101561039857600080fd5b506001600160a01b03813516906020013561095a565b6102ce600480360360808110156103c457600080fd5b8101906020810181356401000000008111156103df57600080fd5b8201836020820111156103f157600080fd5b8035906020019184600183028401116401000000008311171561041357600080fd5b91939092909160208101903564010000000081111561043157600080fd5b82018360208201111561044357600080fd5b8035906020019184600183028401116401000000008311171561046557600080fd5b9193509150803590602001356001600160a01b031661096e565b6101eb6004803603604081101561049557600080fd5b506001600160a01b0381358116916020013516610a9d565b6102ce600480360360208110156104c357600080fd5b50356001600160a01b0316610ac8565b60688054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561055f5780601f106105345761010080835404028352916020019161055f565b820191906000526020600020905b81548152906001019060200180831161054257829003601f168201915b5050505050905090565b600061057d610576610bd3565b8484610bd7565b50600192915050565b60675490565b6000610599848484610cc3565b610609846105a5610bd3565b61060485604051806060016040528060288152602001611466602891396001600160a01b038a166000908152606660205260408120906105e3610bd3565b6001600160a01b031681526020810191909152604001600020549190610e20565b610bd7565b5060019392505050565b606a5460ff1690565b60fb5481565b600061057d61062f610bd3565b846106048560666000610640610bd3565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610eb7565b600061067a610bd3565b60c9546001600160a01b039081169116146106dc576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60fb541561073b5760fb546106f9836106f3610586565b90610eb7565b111561073b576040805162461bcd60e51b815260206004820152600c60248201526b06f76657272696465206361760a41b604482015290519081900360640190fd5b61057d8383610f18565b610756610750610bd3565b8261100a565b50565b6001600160a01b031660009081526065602052604090205490565b61077c610bd3565b60c9546001600160a01b039081169116146107de576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60c9546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360c980546001600160a01b0319169055565b600061085f826040518060600160405280602481526020016114bc6024913961085886610853610bd3565b610a9d565b9190610e20565b90506108738361086d610bd3565b83610bd7565b61087d838361100a565b505050565b60c9546001600160a01b031690565b60698054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561055f5780601f106105345761010080835404028352916020019161055f565b600061057d6108ff610bd3565b846106048560405180606001604052806025815260200161154a6025913960666000610929610bd3565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610e20565b600061057d610967610bd3565b8484610cc3565b600054610100900460ff16806109875750610987611106565b80610995575060005460ff16155b6109d05760405162461bcd60e51b815260040180806020018281038252602e81526020018061148e602e913960400191505060405180910390fd5b600054610100900460ff161580156109fb576000805460ff1961ff0019909116610100171660011790555b60fb839055604080516020601f8901819004810282018101909252878152610a7191899089908190840183828082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525061110c92505050565b610a796111e4565b610a8282610ac8565b8015610a94576000805461ff00191690555b50505050505050565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b610ad0610bd3565b60c9546001600160a01b03908116911614610b32576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116610b775760405162461bcd60e51b81526004018080602001828103825260268152602001806113f86026913960400191505060405180910390fd5b60c9546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360c980546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b6001600160a01b038316610c1c5760405162461bcd60e51b81526004018080602001828103825260248152602001806115266024913960400191505060405180910390fd5b6001600160a01b038216610c615760405162461bcd60e51b815260040180806020018281038252602281526020018061141e6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610d085760405162461bcd60e51b81526004018080602001828103825260258152602001806115016025913960400191505060405180910390fd5b6001600160a01b038216610d4d5760405162461bcd60e51b81526004018080602001828103825260238152602001806113b36023913960400191505060405180910390fd5b610d5883838361087d565b610d9581604051806060016040528060268152602001611440602691396001600160a01b0386166000908152606560205260409020549190610e20565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610dc49082610eb7565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610eaf5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e74578181015183820152602001610e5c565b50505050905090810190601f168015610ea15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610f11576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610f73576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610f7f6000838361087d565b606754610f8c9082610eb7565b6067556001600160a01b038216600090815260656020526040902054610fb29082610eb7565b6001600160a01b03831660008181526065602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b03821661104f5760405162461bcd60e51b81526004018080602001828103825260218152602001806114e06021913960400191505060405180910390fd5b61105b8260008361087d565b611098816040518060600160405280602281526020016113d6602291396001600160a01b0385166000908152606560205260409020549190610e20565b6001600160a01b0383166000908152606560205260409020556067546110be90826112dd565b6067556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b303b1590565b600054610100900460ff16806111255750611125611106565b80611133575060005460ff16155b61116e5760405162461bcd60e51b815260040180806020018281038252602e81526020018061148e602e913960400191505060405180910390fd5b600054610100900460ff16158015611199576000805460ff1961ff0019909116610100171660011790555b82516111ac90606890602086019061131f565b5081516111c090606990602085019061131f565b50606a805460ff19166012179055801561087d576000805461ff0019169055505050565b600054610100900460ff16806111fd57506111fd611106565b8061120b575060005460ff16155b6112465760405162461bcd60e51b815260040180806020018281038252602e81526020018061148e602e913960400191505060405180910390fd5b600054610100900460ff16158015611271576000805460ff1961ff0019909116610100171660011790555b600061127b610bd3565b60c980546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610756576000805461ff001916905550565b6000610f1183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e20565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061136057805160ff191683800117855561138d565b8280016001018555821561138d579182015b8281111561138d578251825591602001919060010190611372565b5061139992915061139d565b5090565b5b80821115611399576000815560010161139e56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656445524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202a3faff7d4de0281b9c6fb5a0261d1eaf40c8e825f11f4e135556230b633b4d664736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad578063a457c2d711610071578063a457c2d714610356578063a9059cbb14610382578063bd3a13f6146103ae578063dd62ed3e1461047f578063f2fde38b146104ad57610121565b806370a08231146102d0578063715018a6146102f657806379cc6790146102fe5780638da5cb5b1461032a57806395d89b411461034e57610121565b8063313ce567116100f4578063313ce56714610233578063355274ea14610251578063395093511461025957806340c10f191461028557806342966c68146102b157610121565b806306fdde0314610126578063095ea7b3146101a357806318160ddd146101e357806323b872dd146101fd575b600080fd5b61012e6104d3565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b038135169060200135610569565b604080519115158252519081900360200190f35b6101eb610586565b60408051918252519081900360200190f35b6101cf6004803603606081101561021357600080fd5b506001600160a01b0381358116916020810135909116906040013561058c565b61023b610613565b6040805160ff9092168252519081900360200190f35b6101eb61061c565b6101cf6004803603604081101561026f57600080fd5b506001600160a01b038135169060200135610622565b6101cf6004803603604081101561029b57600080fd5b506001600160a01b038135169060200135610670565b6102ce600480360360208110156102c757600080fd5b5035610745565b005b6101eb600480360360208110156102e657600080fd5b50356001600160a01b0316610759565b6102ce610774565b6102ce6004803603604081101561031457600080fd5b506001600160a01b038135169060200135610828565b610332610882565b604080516001600160a01b039092168252519081900360200190f35b61012e610891565b6101cf6004803603604081101561036c57600080fd5b506001600160a01b0381351690602001356108f2565b6101cf6004803603604081101561039857600080fd5b506001600160a01b03813516906020013561095a565b6102ce600480360360808110156103c457600080fd5b8101906020810181356401000000008111156103df57600080fd5b8201836020820111156103f157600080fd5b8035906020019184600183028401116401000000008311171561041357600080fd5b91939092909160208101903564010000000081111561043157600080fd5b82018360208201111561044357600080fd5b8035906020019184600183028401116401000000008311171561046557600080fd5b9193509150803590602001356001600160a01b031661096e565b6101eb6004803603604081101561049557600080fd5b506001600160a01b0381358116916020013516610a9d565b6102ce600480360360208110156104c357600080fd5b50356001600160a01b0316610ac8565b60688054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561055f5780601f106105345761010080835404028352916020019161055f565b820191906000526020600020905b81548152906001019060200180831161054257829003601f168201915b5050505050905090565b600061057d610576610bd3565b8484610bd7565b50600192915050565b60675490565b6000610599848484610cc3565b610609846105a5610bd3565b61060485604051806060016040528060288152602001611466602891396001600160a01b038a166000908152606660205260408120906105e3610bd3565b6001600160a01b031681526020810191909152604001600020549190610e20565b610bd7565b5060019392505050565b606a5460ff1690565b60fb5481565b600061057d61062f610bd3565b846106048560666000610640610bd3565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610eb7565b600061067a610bd3565b60c9546001600160a01b039081169116146106dc576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60fb541561073b5760fb546106f9836106f3610586565b90610eb7565b111561073b576040805162461bcd60e51b815260206004820152600c60248201526b06f76657272696465206361760a41b604482015290519081900360640190fd5b61057d8383610f18565b610756610750610bd3565b8261100a565b50565b6001600160a01b031660009081526065602052604090205490565b61077c610bd3565b60c9546001600160a01b039081169116146107de576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60c9546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360c980546001600160a01b0319169055565b600061085f826040518060600160405280602481526020016114bc6024913961085886610853610bd3565b610a9d565b9190610e20565b90506108738361086d610bd3565b83610bd7565b61087d838361100a565b505050565b60c9546001600160a01b031690565b60698054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561055f5780601f106105345761010080835404028352916020019161055f565b600061057d6108ff610bd3565b846106048560405180606001604052806025815260200161154a6025913960666000610929610bd3565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610e20565b600061057d610967610bd3565b8484610cc3565b600054610100900460ff16806109875750610987611106565b80610995575060005460ff16155b6109d05760405162461bcd60e51b815260040180806020018281038252602e81526020018061148e602e913960400191505060405180910390fd5b600054610100900460ff161580156109fb576000805460ff1961ff0019909116610100171660011790555b60fb839055604080516020601f8901819004810282018101909252878152610a7191899089908190840183828082843760009201919091525050604080516020601f8b01819004810282018101909252898152925089915088908190840183828082843760009201919091525061110c92505050565b610a796111e4565b610a8282610ac8565b8015610a94576000805461ff00191690555b50505050505050565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b610ad0610bd3565b60c9546001600160a01b03908116911614610b32576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116610b775760405162461bcd60e51b81526004018080602001828103825260268152602001806113f86026913960400191505060405180910390fd5b60c9546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360c980546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b6001600160a01b038316610c1c5760405162461bcd60e51b81526004018080602001828103825260248152602001806115266024913960400191505060405180910390fd5b6001600160a01b038216610c615760405162461bcd60e51b815260040180806020018281038252602281526020018061141e6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610d085760405162461bcd60e51b81526004018080602001828103825260258152602001806115016025913960400191505060405180910390fd5b6001600160a01b038216610d4d5760405162461bcd60e51b81526004018080602001828103825260238152602001806113b36023913960400191505060405180910390fd5b610d5883838361087d565b610d9581604051806060016040528060268152602001611440602691396001600160a01b0386166000908152606560205260409020549190610e20565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610dc49082610eb7565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610eaf5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610e74578181015183820152602001610e5c565b50505050905090810190601f168015610ea15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610f11576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610f73576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610f7f6000838361087d565b606754610f8c9082610eb7565b6067556001600160a01b038216600090815260656020526040902054610fb29082610eb7565b6001600160a01b03831660008181526065602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b03821661104f5760405162461bcd60e51b81526004018080602001828103825260218152602001806114e06021913960400191505060405180910390fd5b61105b8260008361087d565b611098816040518060600160405280602281526020016113d6602291396001600160a01b0385166000908152606560205260409020549190610e20565b6001600160a01b0383166000908152606560205260409020556067546110be90826112dd565b6067556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b303b1590565b600054610100900460ff16806111255750611125611106565b80611133575060005460ff16155b61116e5760405162461bcd60e51b815260040180806020018281038252602e81526020018061148e602e913960400191505060405180910390fd5b600054610100900460ff16158015611199576000805460ff1961ff0019909116610100171660011790555b82516111ac90606890602086019061131f565b5081516111c090606990602085019061131f565b50606a805460ff19166012179055801561087d576000805461ff0019169055505050565b600054610100900460ff16806111fd57506111fd611106565b8061120b575060005460ff16155b6112465760405162461bcd60e51b815260040180806020018281038252602e81526020018061148e602e913960400191505060405180910390fd5b600054610100900460ff16158015611271576000805460ff1961ff0019909116610100171660011790555b600061127b610bd3565b60c980546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610756576000805461ff001916905550565b6000610f1183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e20565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061136057805160ff191683800117855561138d565b8280016001018555821561138d579182015b8281111561138d578251825591602001919060010190611372565b5061139992915061139d565b5090565b5b80821115611399576000815560010161139e56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656445524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202a3faff7d4de0281b9c6fb5a0261d1eaf40c8e825f11f4e135556230b633b4d664736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Debug.json b/contracts/0.1.2-rc.8/Debug.json new file mode 100644 index 00000000..d39f6272 --- /dev/null +++ b/contracts/0.1.2-rc.8/Debug.json @@ -0,0 +1,98 @@ +{ + "contractName": "Debug", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea26469706673582212202e18f320894c14282dca990652f6d40148cf7b37ac81f2c82e3907f425b7cf4564736f6c634300060c0033", + "deployedBytecode": "0x6080604052600080fdfea26469706673582212202e18f320894c14282dca990652f6d40148cf7b37ac81f2c82e3907f425b7cf4564736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Dictator.json b/contracts/0.1.2-rc.8/Dictator.json new file mode 100644 index 00000000..87648af0 --- /dev/null +++ b/contracts/0.1.2-rc.8/Dictator.json @@ -0,0 +1,103 @@ +{ + "contractName": "Dictator", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + } + ], + "name": "registerScheme", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610766806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c8063485cc955146100675780635aef7de614610097578063715018a6146100bb5780638da5cb5b146100c3578063af6d2791146100cb578063f2fde38b146100f1575b600080fd5b6100956004803603604081101561007d57600080fd5b506001600160a01b0381358116916020013516610117565b005b61009f610242565b604080516001600160a01b039092168252519081900360200190f35b610095610251565b61009f610305565b610095600480360360208110156100e157600080fd5b50356001600160a01b0316610314565b6100956004803603602081101561010757600080fd5b50356001600160a01b03166104ce565b600054610100900460ff168061013057506101306105d9565b8061013e575060005460ff16155b6101795760405162461bcd60e51b815260040180806020018281038252602e815260200180610703602e913960400191505060405180910390fd5b600054610100900460ff161580156101a4576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0383166101ff576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b609780546001600160a01b0319166001600160a01b0385161790556102226105df565b61022b826104ce565b801561023d576000805461ff00191690555b505050565b6097546001600160a01b031681565b6102596106d8565b6065546001600160a01b039081169116146102bb576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b61031c6106d8565b6065546001600160a01b0390811691161461037e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103cc57600080fd5b505afa1580156103e0573d6000803e3d6000fd5b505050506040513d60208110156103f657600080fd5b505160408051635d1da8cb60e01b81526001600160a01b038481166004830152601f60e01b602483015291519190921691635d1da8cb9160448083019260209291908290030181600087803b15801561044e57600080fd5b505af1158015610462573d6000803e3d6000fd5b505050506040513d602081101561047857600080fd5b50516104cb576040805162461bcd60e51b815260206004820152601760248201527f4661696c20746f20726567697374657220736368656d65000000000000000000604482015290519081900360640190fd5b50565b6104d66106d8565b6065546001600160a01b03908116911614610538576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661057d5760405162461bcd60e51b81526004018080602001828103825260268152602001806106dd6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b303b1590565b600054610100900460ff16806105f857506105f86105d9565b80610606575060005460ff16155b6106415760405162461bcd60e51b815260040180806020018281038252602e815260200180610703602e913960400191505060405180910390fd5b600054610100900460ff1615801561066c576000805460ff1961ff0019909116610100171660011790555b60006106766106d8565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156104cb576000805461ff001916905550565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212203a2d084d9e84baf6f5493eb457c4916d09efdbb3fbba06008e23c583905dfd4764736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c8063485cc955146100675780635aef7de614610097578063715018a6146100bb5780638da5cb5b146100c3578063af6d2791146100cb578063f2fde38b146100f1575b600080fd5b6100956004803603604081101561007d57600080fd5b506001600160a01b0381358116916020013516610117565b005b61009f610242565b604080516001600160a01b039092168252519081900360200190f35b610095610251565b61009f610305565b610095600480360360208110156100e157600080fd5b50356001600160a01b0316610314565b6100956004803603602081101561010757600080fd5b50356001600160a01b03166104ce565b600054610100900460ff168061013057506101306105d9565b8061013e575060005460ff16155b6101795760405162461bcd60e51b815260040180806020018281038252602e815260200180610703602e913960400191505060405180910390fd5b600054610100900460ff161580156101a4576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0383166101ff576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b609780546001600160a01b0319166001600160a01b0385161790556102226105df565b61022b826104ce565b801561023d576000805461ff00191690555b505050565b6097546001600160a01b031681565b6102596106d8565b6065546001600160a01b039081169116146102bb576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b61031c6106d8565b6065546001600160a01b0390811691161461037e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156103cc57600080fd5b505afa1580156103e0573d6000803e3d6000fd5b505050506040513d60208110156103f657600080fd5b505160408051635d1da8cb60e01b81526001600160a01b038481166004830152601f60e01b602483015291519190921691635d1da8cb9160448083019260209291908290030181600087803b15801561044e57600080fd5b505af1158015610462573d6000803e3d6000fd5b505050506040513d602081101561047857600080fd5b50516104cb576040805162461bcd60e51b815260206004820152601760248201527f4661696c20746f20726567697374657220736368656d65000000000000000000604482015290519081900360640190fd5b50565b6104d66106d8565b6065546001600160a01b03908116911614610538576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661057d5760405162461bcd60e51b81526004018080602001828103825260268152602001806106dd6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b303b1590565b600054610100900460ff16806105f857506105f86105d9565b80610606575060005460ff16155b6106415760405162461bcd60e51b815260040180806020018281038252602e815260200180610703602e913960400191505060405180910390fd5b600054610100900460ff1615801561066c576000805460ff1961ff0019909116610100171660011790555b60006106766106d8565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156104cb576000805461ff001916905550565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212203a2d084d9e84baf6f5493eb457c4916d09efdbb3fbba06008e23c583905dfd4764736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ECDSA.json b/contracts/0.1.2-rc.8/ECDSA.json new file mode 100644 index 00000000..5f313da4 --- /dev/null +++ b/contracts/0.1.2-rc.8/ECDSA.json @@ -0,0 +1,6 @@ +{ + "contractName": "ECDSA", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220912efcd1b68235356a648ed6218561c937555e7e75782439be1a2b90f4932ef864736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220912efcd1b68235356a648ed6218561c937555e7e75782439be1a2b90f4932ef864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC165UpgradeSafe.json b/contracts/0.1.2-rc.8/ERC165UpgradeSafe.json new file mode 100644 index 00000000..fa66d631 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC165UpgradeSafe.json @@ -0,0 +1,26 @@ +{ + "contractName": "ERC165UpgradeSafe", + "abi": [ + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6080604052348015600f57600080fd5b5060ba8061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c806301ffc9a714602d575b600080fd5b605160048036036020811015604157600080fd5b50356001600160e01b0319166065565b604080519115158252519081900360200190f35b6001600160e01b03191660009081526033602052604090205460ff169056fea2646970667358221220d71c5441bd86723bda383cc70fba6dfc5096d620a3f7e0487c4352c6ff101ade64736f6c634300060c0033", + "deployedBytecode": "0x6080604052348015600f57600080fd5b506004361060285760003560e01c806301ffc9a714602d575b600080fd5b605160048036036020811015604157600080fd5b50356001600160e01b0319166065565b604080519115158252519081900360200190f35b6001600160e01b03191660009081526033602052604090205460ff169056fea2646970667358221220d71c5441bd86723bda383cc70fba6dfc5096d620a3f7e0487c4352c6ff101ade64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC20BurnableUpgradeSafe.json b/contracts/0.1.2-rc.8/ERC20BurnableUpgradeSafe.json new file mode 100644 index 00000000..b2e0c3b5 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC20BurnableUpgradeSafe.json @@ -0,0 +1,308 @@ +{ + "contractName": "ERC20BurnableUpgradeSafe", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC20Mock.json b/contracts/0.1.2-rc.8/ERC20Mock.json new file mode 100644 index 00000000..88b12ad6 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC20Mock.json @@ -0,0 +1,293 @@ +{ + "contractName": "ERC20Mock", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialAccount", + "type": "address" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610bc0380380610bc08339818101604052604081101561003357600080fd5b508051602090910151610046828261004d565b50506101bd565b6001600160a01b0382166100a8576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6100b460008383610157565b6100cd8160675461015c60201b6105731790919060201c565b6067556001600160a01b0382166000908152606560209081526040909120546100ff91839061057361015c821b17901c565b6001600160a01b03831660008181526065602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b505050565b6000828201838110156101b6576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6109f4806101cc6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063395093511161007157806339509351146101d957806370a082311461020557806395d89b411461022b578063a457c2d714610233578063a9059cbb1461025f578063dd62ed3e1461028b576100a9565b806306fdde03146100ae578063095ea7b31461012b57806318160ddd1461016b57806323b872dd14610185578063313ce567146101bb575b600080fd5b6100b66102b9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100f05781810151838201526020016100d8565b50505050905090810190601f16801561011d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101576004803603604081101561014157600080fd5b506001600160a01b03813516906020013561034f565b604080519115158252519081900360200190f35b61017361036c565b60408051918252519081900360200190f35b6101576004803603606081101561019b57600080fd5b506001600160a01b03813581169160208101359091169060400135610372565b6101c36103f9565b6040805160ff9092168252519081900360200190f35b610157600480360360408110156101ef57600080fd5b506001600160a01b038135169060200135610402565b6101736004803603602081101561021b57600080fd5b50356001600160a01b0316610450565b6100b661046b565b6101576004803603604081101561024957600080fd5b506001600160a01b0381351690602001356104cc565b6101576004803603604081101561027557600080fd5b506001600160a01b038135169060200135610534565b610173600480360360408110156102a157600080fd5b506001600160a01b0381358116916020013516610548565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b820191906000526020600020905b81548152906001019060200180831161032857829003601f168201915b5050505050905090565b600061036361035c6105d4565b84846105d8565b50600192915050565b60675490565b600061037f8484846106c4565b6103ef8461038b6105d4565b6103ea85604051806060016040528060288152602001610929602891396001600160a01b038a166000908152606660205260408120906103c96105d4565b6001600160a01b031681526020810191909152604001600020549190610821565b6105d8565b5060019392505050565b606a5460ff1690565b600061036361040f6105d4565b846103ea85606660006104206105d4565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610573565b6001600160a01b031660009081526065602052604090205490565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b60006103636104d96105d4565b846103ea8560405180606001604052806025815260200161099a60259139606660006105036105d4565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610821565b60006103636105416105d4565b84846106c4565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b6000828201838110156105cd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b3390565b6001600160a01b03831661061d5760405162461bcd60e51b81526004018080602001828103825260248152602001806109766024913960400191505060405180910390fd5b6001600160a01b0382166106625760405162461bcd60e51b81526004018080602001828103825260228152602001806108e16022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166107095760405162461bcd60e51b81526004018080602001828103825260258152602001806109516025913960400191505060405180910390fd5b6001600160a01b03821661074e5760405162461bcd60e51b81526004018080602001828103825260238152602001806108be6023913960400191505060405180910390fd5b6107598383836108b8565b61079681604051806060016040528060268152602001610903602691396001600160a01b0386166000908152606560205260409020549190610821565b6001600160a01b0380851660009081526065602052604080822093909355908416815220546107c59082610573565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156108b05760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561087557818101518382015260200161085d565b50505050905090810190601f1680156108a25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122043a26174a051f399d8d0f74b663cb9ea030404aa7502f566440dbd573540fae064736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c8063395093511161007157806339509351146101d957806370a082311461020557806395d89b411461022b578063a457c2d714610233578063a9059cbb1461025f578063dd62ed3e1461028b576100a9565b806306fdde03146100ae578063095ea7b31461012b57806318160ddd1461016b57806323b872dd14610185578063313ce567146101bb575b600080fd5b6100b66102b9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100f05781810151838201526020016100d8565b50505050905090810190601f16801561011d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101576004803603604081101561014157600080fd5b506001600160a01b03813516906020013561034f565b604080519115158252519081900360200190f35b61017361036c565b60408051918252519081900360200190f35b6101576004803603606081101561019b57600080fd5b506001600160a01b03813581169160208101359091169060400135610372565b6101c36103f9565b6040805160ff9092168252519081900360200190f35b610157600480360360408110156101ef57600080fd5b506001600160a01b038135169060200135610402565b6101736004803603602081101561021b57600080fd5b50356001600160a01b0316610450565b6100b661046b565b6101576004803603604081101561024957600080fd5b506001600160a01b0381351690602001356104cc565b6101576004803603604081101561027557600080fd5b506001600160a01b038135169060200135610534565b610173600480360360408110156102a157600080fd5b506001600160a01b0381358116916020013516610548565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b820191906000526020600020905b81548152906001019060200180831161032857829003601f168201915b5050505050905090565b600061036361035c6105d4565b84846105d8565b50600192915050565b60675490565b600061037f8484846106c4565b6103ef8461038b6105d4565b6103ea85604051806060016040528060288152602001610929602891396001600160a01b038a166000908152606660205260408120906103c96105d4565b6001600160a01b031681526020810191909152604001600020549190610821565b6105d8565b5060019392505050565b606a5460ff1690565b600061036361040f6105d4565b846103ea85606660006104206105d4565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610573565b6001600160a01b031660009081526065602052604090205490565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b60006103636104d96105d4565b846103ea8560405180606001604052806025815260200161099a60259139606660006105036105d4565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610821565b60006103636105416105d4565b84846106c4565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b6000828201838110156105cd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b3390565b6001600160a01b03831661061d5760405162461bcd60e51b81526004018080602001828103825260248152602001806109766024913960400191505060405180910390fd5b6001600160a01b0382166106625760405162461bcd60e51b81526004018080602001828103825260228152602001806108e16022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166107095760405162461bcd60e51b81526004018080602001828103825260258152602001806109516025913960400191505060405180910390fd5b6001600160a01b03821661074e5760405162461bcd60e51b81526004018080602001828103825260238152602001806108be6023913960400191505060405180910390fd5b6107598383836108b8565b61079681604051806060016040528060268152602001610903602691396001600160a01b0386166000908152606560205260409020549190610821565b6001600160a01b0380851660009081526065602052604080822093909355908416815220546107c59082610573565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156108b05760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561087557818101518382015260200161085d565b50505050905090810190601f1680156108a25780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122043a26174a051f399d8d0f74b663cb9ea030404aa7502f566440dbd573540fae064736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC20UpgradeSafe.json b/contracts/0.1.2-rc.8/ERC20UpgradeSafe.json new file mode 100644 index 00000000..7f26c620 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC20UpgradeSafe.json @@ -0,0 +1,277 @@ +{ + "contractName": "ERC20UpgradeSafe", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506109f4806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063395093511161007157806339509351146101d957806370a082311461020557806395d89b411461022b578063a457c2d714610233578063a9059cbb1461025f578063dd62ed3e1461028b576100a9565b806306fdde03146100ae578063095ea7b31461012b57806318160ddd1461016b57806323b872dd14610185578063313ce567146101bb575b600080fd5b6100b66102b9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100f05781810151838201526020016100d8565b50505050905090810190601f16801561011d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101576004803603604081101561014157600080fd5b506001600160a01b03813516906020013561034f565b604080519115158252519081900360200190f35b61017361036c565b60408051918252519081900360200190f35b6101576004803603606081101561019b57600080fd5b506001600160a01b03813581169160208101359091169060400135610372565b6101c36103f9565b6040805160ff9092168252519081900360200190f35b610157600480360360408110156101ef57600080fd5b506001600160a01b038135169060200135610402565b6101736004803603602081101561021b57600080fd5b50356001600160a01b0316610450565b6100b661046b565b6101576004803603604081101561024957600080fd5b506001600160a01b0381351690602001356104cc565b6101576004803603604081101561027557600080fd5b506001600160a01b038135169060200135610534565b610173600480360360408110156102a157600080fd5b506001600160a01b0381358116916020013516610548565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b820191906000526020600020905b81548152906001019060200180831161032857829003601f168201915b5050505050905090565b600061036361035c610573565b8484610577565b50600192915050565b60675490565b600061037f848484610663565b6103ef8461038b610573565b6103ea85604051806060016040528060288152602001610929602891396001600160a01b038a166000908152606660205260408120906103c9610573565b6001600160a01b0316815260208101919091526040016000205491906107c0565b610577565b5060019392505050565b606a5460ff1690565b600061036361040f610573565b846103ea8560666000610420610573565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610857565b6001600160a01b031660009081526065602052604090205490565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b60006103636104d9610573565b846103ea8560405180606001604052806025815260200161099a6025913960666000610503610573565b6001600160a01b03908116825260208083019390935260409182016000908120918d168152925290205491906107c0565b6000610363610541610573565b8484610663565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b3390565b6001600160a01b0383166105bc5760405162461bcd60e51b81526004018080602001828103825260248152602001806109766024913960400191505060405180910390fd5b6001600160a01b0382166106015760405162461bcd60e51b81526004018080602001828103825260228152602001806108e16022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166106a85760405162461bcd60e51b81526004018080602001828103825260258152602001806109516025913960400191505060405180910390fd5b6001600160a01b0382166106ed5760405162461bcd60e51b81526004018080602001828103825260238152602001806108be6023913960400191505060405180910390fd5b6106f88383836108b8565b61073581604051806060016040528060268152602001610903602691396001600160a01b03861660009081526065602052604090205491906107c0565b6001600160a01b0380851660009081526065602052604080822093909355908416815220546107649082610857565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561084f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156108145781810151838201526020016107fc565b50505050905090810190601f1680156108415780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156108b1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220c7fd74186cd83c2f9624812f9931c9c6fc6249c317b1d8d8905a42035c5f2fdb64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c8063395093511161007157806339509351146101d957806370a082311461020557806395d89b411461022b578063a457c2d714610233578063a9059cbb1461025f578063dd62ed3e1461028b576100a9565b806306fdde03146100ae578063095ea7b31461012b57806318160ddd1461016b57806323b872dd14610185578063313ce567146101bb575b600080fd5b6100b66102b9565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100f05781810151838201526020016100d8565b50505050905090810190601f16801561011d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101576004803603604081101561014157600080fd5b506001600160a01b03813516906020013561034f565b604080519115158252519081900360200190f35b61017361036c565b60408051918252519081900360200190f35b6101576004803603606081101561019b57600080fd5b506001600160a01b03813581169160208101359091169060400135610372565b6101c36103f9565b6040805160ff9092168252519081900360200190f35b610157600480360360408110156101ef57600080fd5b506001600160a01b038135169060200135610402565b6101736004803603602081101561021b57600080fd5b50356001600160a01b0316610450565b6100b661046b565b6101576004803603604081101561024957600080fd5b506001600160a01b0381351690602001356104cc565b6101576004803603604081101561027557600080fd5b506001600160a01b038135169060200135610534565b610173600480360360408110156102a157600080fd5b506001600160a01b0381358116916020013516610548565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b820191906000526020600020905b81548152906001019060200180831161032857829003601f168201915b5050505050905090565b600061036361035c610573565b8484610577565b50600192915050565b60675490565b600061037f848484610663565b6103ef8461038b610573565b6103ea85604051806060016040528060288152602001610929602891396001600160a01b038a166000908152606660205260408120906103c9610573565b6001600160a01b0316815260208101919091526040016000205491906107c0565b610577565b5060019392505050565b606a5460ff1690565b600061036361040f610573565b846103ea8560666000610420610573565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610857565b6001600160a01b031660009081526065602052604090205490565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156103455780601f1061031a57610100808354040283529160200191610345565b60006103636104d9610573565b846103ea8560405180606001604052806025815260200161099a6025913960666000610503610573565b6001600160a01b03908116825260208083019390935260409182016000908120918d168152925290205491906107c0565b6000610363610541610573565b8484610663565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b3390565b6001600160a01b0383166105bc5760405162461bcd60e51b81526004018080602001828103825260248152602001806109766024913960400191505060405180910390fd5b6001600160a01b0382166106015760405162461bcd60e51b81526004018080602001828103825260228152602001806108e16022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166106a85760405162461bcd60e51b81526004018080602001828103825260258152602001806109516025913960400191505060405180910390fd5b6001600160a01b0382166106ed5760405162461bcd60e51b81526004018080602001828103825260238152602001806108be6023913960400191505060405180910390fd5b6106f88383836108b8565b61073581604051806060016040528060268152602001610903602691396001600160a01b03861660009081526065602052604090205491906107c0565b6001600160a01b0380851660009081526065602052604080822093909355908416815220546107649082610857565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561084f5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156108145781810151838201526020016107fc565b50505050905090810190601f1680156108415780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156108b1576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220c7fd74186cd83c2f9624812f9931c9c6fc6249c317b1d8d8905a42035c5f2fdb64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC721Mock.json b/contracts/0.1.2-rc.8/ERC721Mock.json new file mode 100644 index 00000000..12930b5e --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC721Mock.json @@ -0,0 +1,495 @@ +{ + "contractName": "ERC721Mock", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "baseURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_tokenId", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenOfOwnerByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506121ba806100206000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80636c0360eb116100b8578063a22cb4651161007c578063a22cb465146103c4578063b88d4fde146103f2578063c4d66de8146104b8578063c87b56dd146104de578063e985e9c5146104fb578063f2fde38b1461052957610142565b80636c0360eb1461037e57806370a0823114610386578063715018a6146103ac5780638da5cb5b146103b457806395d89b41146103bc57610142565b806323b872dd1161010a57806323b872dd146102805780632f745c59146102b657806340c10f19146102e257806342842e0e1461030e5780634f6ccce7146103445780636352211e1461036157610142565b806301ffc9a71461014757806306fdde0314610182578063081812fc146101ff578063095ea7b31461023857806318160ddd14610266575b600080fd5b61016e6004803603602081101561015d57600080fd5b50356001600160e01b03191661054f565b604080519115158252519081900360200190f35b61018a610572565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c45781810151838201526020016101ac565b50505050905090810190601f1680156101f15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61021c6004803603602081101561021557600080fd5b5035610608565b604080516001600160a01b039092168252519081900360200190f35b6102646004803603604081101561024e57600080fd5b506001600160a01b03813516906020013561066a565b005b61026e610745565b60408051918252519081900360200190f35b6102646004803603606081101561029657600080fd5b506001600160a01b03813581169160208101359091169060400135610756565b61026e600480360360408110156102cc57600080fd5b506001600160a01b0381351690602001356107ad565b61016e600480360360408110156102f857600080fd5b506001600160a01b0381351690602001356107d8565b6102646004803603606081101561032457600080fd5b506001600160a01b03813581169160208101359091169060400135610857565b61026e6004803603602081101561035a57600080fd5b5035610872565b61021c6004803603602081101561037757600080fd5b5035610888565b61018a6108b0565b61026e6004803603602081101561039c57600080fd5b50356001600160a01b0316610911565b610264610979565b61021c610a2d565b61018a610a3c565b610264600480360360408110156103da57600080fd5b506001600160a01b0381351690602001351515610a9d565b6102646004803603608081101561040857600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561044357600080fd5b82018360208201111561045557600080fd5b8035906020019184600183028401116401000000008311171561047757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610ba2945050505050565b610264600480360360208110156104ce57600080fd5b50356001600160a01b0316610c00565b61018a600480360360208110156104f457600080fd5b5035610cfb565b61016e6004803603604081101561051157600080fd5b506001600160a01b0381358116916020013516610fa2565b6102646004803603602081101561053f57600080fd5b50356001600160a01b0316610fd0565b6001600160e01b0319811660009081526065602052604090205460ff165b919050565b609c8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105fe5780601f106105d3576101008083540402835291602001916105fe565b820191906000526020600020905b8154815290600101906020018083116105e157829003601f168201915b5050505050905090565b6000610613826110db565b61064e5760405162461bcd60e51b815260040180806020018281038252602c815260200180612081602c913960400191505060405180910390fd5b506000908152609a60205260409020546001600160a01b031690565b600061067582610888565b9050806001600160a01b0316836001600160a01b031614156106c85760405162461bcd60e51b81526004018080602001828103825260218152602001806121336021913960400191505060405180910390fd5b806001600160a01b03166106da6110e8565b6001600160a01b031614806106fb57506106fb816106f66110e8565b610fa2565b6107365760405162461bcd60e51b8152600401808060200182810382526038815260200180611fd46038913960400191505060405180910390fd5b61074083836110ec565b505050565b6000610751609861115a565b905090565b6107676107616110e8565b82611165565b6107a25760405162461bcd60e51b81526004018080602001828103825260318152602001806121546031913960400191505060405180910390fd5b610740838383611209565b6001600160a01b03821660009081526097602052604081206107cf9083611355565b90505b92915050565b60006107e26110e8565b60c9546001600160a01b03908116911614610844576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61084e8383611361565b50600192915050565b61074083838360405180602001604052806000815250610ba2565b60008061088060988461148f565b509392505050565b60006107d28260405180606001604052806029815260200161203660299139609891906114ab565b609f8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105fe5780601f106105d3576101008083540402835291602001916105fe565b60006001600160a01b0382166109585760405162461bcd60e51b815260040180806020018281038252602a81526020018061200c602a913960400191505060405180910390fd5b6001600160a01b03821660009081526097602052604090206107d29061115a565b6109816110e8565b60c9546001600160a01b039081169116146109e3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60c9546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360c980546001600160a01b0319169055565b60c9546001600160a01b031690565b609d8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105fe5780601f106105d3576101008083540402835291602001916105fe565b610aa56110e8565b6001600160a01b0316826001600160a01b03161415610b0b576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b80609b6000610b186110e8565b6001600160a01b03908116825260208083019390935260409182016000908120918716808252919093529120805460ff191692151592909217909155610b5c6110e8565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b610bb3610bad6110e8565b83611165565b610bee5760405162461bcd60e51b81526004018080602001828103825260318152602001806121546031913960400191505060405180910390fd5b610bfa848484846114c2565b50505050565b600054610100900460ff1680610c195750610c19611514565b80610c27575060005460ff16155b610c625760405162461bcd60e51b815260040180806020018281038252602e8152602001806120ad602e913960400191505060405180910390fd5b600054610100900460ff16158015610c8d576000805460ff1961ff0019909116610100171660011790555b610cd46040518060400160405280600a8152602001694552433732314d6f636b60b01b8152506040518060400160405280600381526020016237323160e81b81525061151a565b610cdc611615565b610ce582610fd0565b8015610cf7576000805461ff00191690555b5050565b6060610d06826110db565b610d415760405162461bcd60e51b815260040180806020018281038252602f815260200180612104602f913960400191505060405180910390fd5b6000828152609e602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845260609392830182828015610dd65780601f10610dab57610100808354040283529160200191610dd6565b820191906000526020600020905b815481529060010190602001808311610db957829003601f168201915b5050609f5493945050505060026000196101006001841615020190911604610dff57905061056d565b805115610ed057609f816040516020018083805460018160011615610100020316600290048015610e675780601f10610e45576101008083540402835291820191610e67565b820191906000526020600020905b815481529060010190602001808311610e53575b5050825160208401908083835b60208310610e935780518252601f199092019160209182019101610e74565b6001836020036101000a0380198251168184511680821785525050505050509050019250505060405160208183030381529060405291505061056d565b609f610edb8461170f565b6040516020018083805460018160011615610100020316600290048015610f395780601f10610f17576101008083540402835291820191610f39565b820191906000526020600020905b815481529060010190602001808311610f25575b5050825160208401908083835b60208310610f655780518252601f199092019160209182019101610f46565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052915050919050565b6001600160a01b039182166000908152609b6020908152604080832093909416825291909152205460ff1690565b610fd86110e8565b60c9546001600160a01b0390811691161461103a576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661107f5760405162461bcd60e51b8152600401808060200182810382526026815260200180611f5e6026913960400191505060405180910390fd5b60c9546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360c980546001600160a01b0319166001600160a01b0392909216919091179055565b60006107d26098836117ea565b3390565b6000818152609a6020526040902080546001600160a01b0319166001600160a01b038416908117909155819061112182610888565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006107d2826117f6565b6000611170826110db565b6111ab5760405162461bcd60e51b815260040180806020018281038252602c815260200180611fa8602c913960400191505060405180910390fd5b60006111b683610888565b9050806001600160a01b0316846001600160a01b031614806111f15750836001600160a01b03166111e684610608565b6001600160a01b0316145b8061120157506112018185610fa2565b949350505050565b826001600160a01b031661121c82610888565b6001600160a01b0316146112615760405162461bcd60e51b81526004018080602001828103825260298152602001806120db6029913960400191505060405180910390fd5b6001600160a01b0382166112a65760405162461bcd60e51b8152600401808060200182810382526024815260200180611f846024913960400191505060405180910390fd5b6112b1838383610740565b6112bc6000826110ec565b6001600160a01b03831660009081526097602052604090206112de90826117fa565b506001600160a01b03821660009081526097602052604090206113019082611806565b5061130e60988284611812565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b60006107cf8383611828565b6001600160a01b0382166113bc576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6113c5816110db565b15611417576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b61142360008383610740565b6001600160a01b03821660009081526097602052604090206114459082611806565b5061145260988284611812565b5060405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600080808061149e868661188c565b9097909650945050505050565b60006114b8848484611907565b90505b9392505050565b6114cd848484611209565b6114d9848484846119d1565b610bfa5760405162461bcd60e51b8152600401808060200182810382526032815260200180611f2c6032913960400191505060405180910390fd5b303b1590565b600054610100900460ff16806115335750611533611514565b80611541575060005460ff16155b61157c5760405162461bcd60e51b815260040180806020018281038252602e8152602001806120ad602e913960400191505060405180910390fd5b600054610100900460ff161580156115a7576000805460ff1961ff0019909116610100171660011790555b82516115ba90609c906020860190611e76565b5081516115ce90609d906020850190611e76565b506115df6380ac58cd60e01b611bfa565b6115ef635b5e139f60e01b611bfa565b6115ff63780e9d6360e01b611bfa565b8015610740576000805461ff0019169055505050565b600054610100900460ff168061162e575061162e611514565b8061163c575060005460ff16155b6116775760405162461bcd60e51b815260040180806020018281038252602e8152602001806120ad602e913960400191505060405180910390fd5b600054610100900460ff161580156116a2576000805460ff1961ff0019909116610100171660011790555b60006116ac6110e8565b60c980546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561170c576000805461ff00191690555b50565b60608161173457506040805180820190915260018152600360fc1b602082015261056d565b8160005b811561174c57600101600a82049150611738565b60608167ffffffffffffffff8111801561176557600080fd5b506040519080825280601f01601f191660200182016040528015611790576020820181803683370190505b50859350905060001982015b83156117e157600a840660300160f81b828280600190039350815181106117bf57fe5b60200101906001600160f81b031916908160001a905350600a8404935061179c565b50949350505050565b60006107cf8383611c7e565b5490565b60006107cf8383611c96565b60006107cf8383611d5c565b60006114b884846001600160a01b038516611da6565b8154600090821061186a5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f0a6022913960400191505060405180910390fd5b82600001828154811061187957fe5b9060005260206000200154905092915050565b8154600090819083106118d05760405162461bcd60e51b815260040180806020018281038252602281526020018061205f6022913960400191505060405180910390fd5b60008460000184815481106118e157fe5b906000526020600020906002020190508060000154816001015492509250509250929050565b600082815260018401602052604081205482816119a25760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561196757818101518382015260200161194f565b50505050905090810190601f1680156119945780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b508460000160018203815481106119b557fe5b9060005260206000209060020201600101549150509392505050565b60006119e5846001600160a01b0316611e3d565b6119f157506001611201565b600060606001600160a01b038616630a85bd0160e11b611a0f6110e8565b89888860405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a76578181015183820152602001611a5e565b50505050905090810190601f168015611aa35780820380516001836020036101000a031916815260200191505b5060408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909a16999099178952518151919890975087965094509250829150849050835b60208310611b0b5780518252601f199092019160209182019101611aec565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611b6d576040519150601f19603f3d011682016040523d82523d6000602084013e611b72565b606091505b509150915081611bc357805115611b8c5780518082602001fd5b60405162461bcd60e51b8152600401808060200182810382526032815260200180611f2c6032913960400191505060405180910390fd5b6000818060200190516020811015611bda57600080fd5b50516001600160e01b031916630a85bd0160e11b14935061120192505050565b6001600160e01b03198082161415611c59576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152606560205260409020805460ff19166001179055565b60009081526001919091016020526040902054151590565b60008181526001830160205260408120548015611d525783546000198083019190810190600090879083908110611cc957fe5b9060005260206000200154905080876000018481548110611ce657fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611d1657fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506107d2565b60009150506107d2565b6000611d688383611c7e565b611d9e575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556107d2565b5060006107d2565b600082815260018401602052604081205480611e0b5750506040805180820182528381526020808201848152865460018181018955600089815284812095516002909302909501918255915190820155865486845281880190925292909120556114bb565b82856000016001830381548110611e1e57fe5b90600052602060002090600202016001018190555060009150506114bb565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611201575050151592915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611eb757805160ff1916838001178555611ee4565b82800160010185558215611ee4579182015b82811115611ee4578251825591602001919060010190611ec9565b50611ef0929150611ef4565b5090565b5b80821115611ef05760008155600101611ef556fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e64734552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65644552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a26469706673582212208799fe33886211e347259889da29f1fb80e222e8ad2f3c1124a129cc6494dcef64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101425760003560e01c80636c0360eb116100b8578063a22cb4651161007c578063a22cb465146103c4578063b88d4fde146103f2578063c4d66de8146104b8578063c87b56dd146104de578063e985e9c5146104fb578063f2fde38b1461052957610142565b80636c0360eb1461037e57806370a0823114610386578063715018a6146103ac5780638da5cb5b146103b457806395d89b41146103bc57610142565b806323b872dd1161010a57806323b872dd146102805780632f745c59146102b657806340c10f19146102e257806342842e0e1461030e5780634f6ccce7146103445780636352211e1461036157610142565b806301ffc9a71461014757806306fdde0314610182578063081812fc146101ff578063095ea7b31461023857806318160ddd14610266575b600080fd5b61016e6004803603602081101561015d57600080fd5b50356001600160e01b03191661054f565b604080519115158252519081900360200190f35b61018a610572565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c45781810151838201526020016101ac565b50505050905090810190601f1680156101f15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61021c6004803603602081101561021557600080fd5b5035610608565b604080516001600160a01b039092168252519081900360200190f35b6102646004803603604081101561024e57600080fd5b506001600160a01b03813516906020013561066a565b005b61026e610745565b60408051918252519081900360200190f35b6102646004803603606081101561029657600080fd5b506001600160a01b03813581169160208101359091169060400135610756565b61026e600480360360408110156102cc57600080fd5b506001600160a01b0381351690602001356107ad565b61016e600480360360408110156102f857600080fd5b506001600160a01b0381351690602001356107d8565b6102646004803603606081101561032457600080fd5b506001600160a01b03813581169160208101359091169060400135610857565b61026e6004803603602081101561035a57600080fd5b5035610872565b61021c6004803603602081101561037757600080fd5b5035610888565b61018a6108b0565b61026e6004803603602081101561039c57600080fd5b50356001600160a01b0316610911565b610264610979565b61021c610a2d565b61018a610a3c565b610264600480360360408110156103da57600080fd5b506001600160a01b0381351690602001351515610a9d565b6102646004803603608081101561040857600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561044357600080fd5b82018360208201111561045557600080fd5b8035906020019184600183028401116401000000008311171561047757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610ba2945050505050565b610264600480360360208110156104ce57600080fd5b50356001600160a01b0316610c00565b61018a600480360360208110156104f457600080fd5b5035610cfb565b61016e6004803603604081101561051157600080fd5b506001600160a01b0381358116916020013516610fa2565b6102646004803603602081101561053f57600080fd5b50356001600160a01b0316610fd0565b6001600160e01b0319811660009081526065602052604090205460ff165b919050565b609c8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105fe5780601f106105d3576101008083540402835291602001916105fe565b820191906000526020600020905b8154815290600101906020018083116105e157829003601f168201915b5050505050905090565b6000610613826110db565b61064e5760405162461bcd60e51b815260040180806020018281038252602c815260200180612081602c913960400191505060405180910390fd5b506000908152609a60205260409020546001600160a01b031690565b600061067582610888565b9050806001600160a01b0316836001600160a01b031614156106c85760405162461bcd60e51b81526004018080602001828103825260218152602001806121336021913960400191505060405180910390fd5b806001600160a01b03166106da6110e8565b6001600160a01b031614806106fb57506106fb816106f66110e8565b610fa2565b6107365760405162461bcd60e51b8152600401808060200182810382526038815260200180611fd46038913960400191505060405180910390fd5b61074083836110ec565b505050565b6000610751609861115a565b905090565b6107676107616110e8565b82611165565b6107a25760405162461bcd60e51b81526004018080602001828103825260318152602001806121546031913960400191505060405180910390fd5b610740838383611209565b6001600160a01b03821660009081526097602052604081206107cf9083611355565b90505b92915050565b60006107e26110e8565b60c9546001600160a01b03908116911614610844576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61084e8383611361565b50600192915050565b61074083838360405180602001604052806000815250610ba2565b60008061088060988461148f565b509392505050565b60006107d28260405180606001604052806029815260200161203660299139609891906114ab565b609f8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105fe5780601f106105d3576101008083540402835291602001916105fe565b60006001600160a01b0382166109585760405162461bcd60e51b815260040180806020018281038252602a81526020018061200c602a913960400191505060405180910390fd5b6001600160a01b03821660009081526097602052604090206107d29061115a565b6109816110e8565b60c9546001600160a01b039081169116146109e3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60c9546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a360c980546001600160a01b0319169055565b60c9546001600160a01b031690565b609d8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105fe5780601f106105d3576101008083540402835291602001916105fe565b610aa56110e8565b6001600160a01b0316826001600160a01b03161415610b0b576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b80609b6000610b186110e8565b6001600160a01b03908116825260208083019390935260409182016000908120918716808252919093529120805460ff191692151592909217909155610b5c6110e8565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b610bb3610bad6110e8565b83611165565b610bee5760405162461bcd60e51b81526004018080602001828103825260318152602001806121546031913960400191505060405180910390fd5b610bfa848484846114c2565b50505050565b600054610100900460ff1680610c195750610c19611514565b80610c27575060005460ff16155b610c625760405162461bcd60e51b815260040180806020018281038252602e8152602001806120ad602e913960400191505060405180910390fd5b600054610100900460ff16158015610c8d576000805460ff1961ff0019909116610100171660011790555b610cd46040518060400160405280600a8152602001694552433732314d6f636b60b01b8152506040518060400160405280600381526020016237323160e81b81525061151a565b610cdc611615565b610ce582610fd0565b8015610cf7576000805461ff00191690555b5050565b6060610d06826110db565b610d415760405162461bcd60e51b815260040180806020018281038252602f815260200180612104602f913960400191505060405180910390fd5b6000828152609e602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845260609392830182828015610dd65780601f10610dab57610100808354040283529160200191610dd6565b820191906000526020600020905b815481529060010190602001808311610db957829003601f168201915b5050609f5493945050505060026000196101006001841615020190911604610dff57905061056d565b805115610ed057609f816040516020018083805460018160011615610100020316600290048015610e675780601f10610e45576101008083540402835291820191610e67565b820191906000526020600020905b815481529060010190602001808311610e53575b5050825160208401908083835b60208310610e935780518252601f199092019160209182019101610e74565b6001836020036101000a0380198251168184511680821785525050505050509050019250505060405160208183030381529060405291505061056d565b609f610edb8461170f565b6040516020018083805460018160011615610100020316600290048015610f395780601f10610f17576101008083540402835291820191610f39565b820191906000526020600020905b815481529060010190602001808311610f25575b5050825160208401908083835b60208310610f655780518252601f199092019160209182019101610f46565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052915050919050565b6001600160a01b039182166000908152609b6020908152604080832093909416825291909152205460ff1690565b610fd86110e8565b60c9546001600160a01b0390811691161461103a576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661107f5760405162461bcd60e51b8152600401808060200182810382526026815260200180611f5e6026913960400191505060405180910390fd5b60c9546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a360c980546001600160a01b0319166001600160a01b0392909216919091179055565b60006107d26098836117ea565b3390565b6000818152609a6020526040902080546001600160a01b0319166001600160a01b038416908117909155819061112182610888565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006107d2826117f6565b6000611170826110db565b6111ab5760405162461bcd60e51b815260040180806020018281038252602c815260200180611fa8602c913960400191505060405180910390fd5b60006111b683610888565b9050806001600160a01b0316846001600160a01b031614806111f15750836001600160a01b03166111e684610608565b6001600160a01b0316145b8061120157506112018185610fa2565b949350505050565b826001600160a01b031661121c82610888565b6001600160a01b0316146112615760405162461bcd60e51b81526004018080602001828103825260298152602001806120db6029913960400191505060405180910390fd5b6001600160a01b0382166112a65760405162461bcd60e51b8152600401808060200182810382526024815260200180611f846024913960400191505060405180910390fd5b6112b1838383610740565b6112bc6000826110ec565b6001600160a01b03831660009081526097602052604090206112de90826117fa565b506001600160a01b03821660009081526097602052604090206113019082611806565b5061130e60988284611812565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b60006107cf8383611828565b6001600160a01b0382166113bc576040805162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015290519081900360640190fd5b6113c5816110db565b15611417576040805162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015290519081900360640190fd5b61142360008383610740565b6001600160a01b03821660009081526097602052604090206114459082611806565b5061145260988284611812565b5060405181906001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600080808061149e868661188c565b9097909650945050505050565b60006114b8848484611907565b90505b9392505050565b6114cd848484611209565b6114d9848484846119d1565b610bfa5760405162461bcd60e51b8152600401808060200182810382526032815260200180611f2c6032913960400191505060405180910390fd5b303b1590565b600054610100900460ff16806115335750611533611514565b80611541575060005460ff16155b61157c5760405162461bcd60e51b815260040180806020018281038252602e8152602001806120ad602e913960400191505060405180910390fd5b600054610100900460ff161580156115a7576000805460ff1961ff0019909116610100171660011790555b82516115ba90609c906020860190611e76565b5081516115ce90609d906020850190611e76565b506115df6380ac58cd60e01b611bfa565b6115ef635b5e139f60e01b611bfa565b6115ff63780e9d6360e01b611bfa565b8015610740576000805461ff0019169055505050565b600054610100900460ff168061162e575061162e611514565b8061163c575060005460ff16155b6116775760405162461bcd60e51b815260040180806020018281038252602e8152602001806120ad602e913960400191505060405180910390fd5b600054610100900460ff161580156116a2576000805460ff1961ff0019909116610100171660011790555b60006116ac6110e8565b60c980546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561170c576000805461ff00191690555b50565b60608161173457506040805180820190915260018152600360fc1b602082015261056d565b8160005b811561174c57600101600a82049150611738565b60608167ffffffffffffffff8111801561176557600080fd5b506040519080825280601f01601f191660200182016040528015611790576020820181803683370190505b50859350905060001982015b83156117e157600a840660300160f81b828280600190039350815181106117bf57fe5b60200101906001600160f81b031916908160001a905350600a8404935061179c565b50949350505050565b60006107cf8383611c7e565b5490565b60006107cf8383611c96565b60006107cf8383611d5c565b60006114b884846001600160a01b038516611da6565b8154600090821061186a5760405162461bcd60e51b8152600401808060200182810382526022815260200180611f0a6022913960400191505060405180910390fd5b82600001828154811061187957fe5b9060005260206000200154905092915050565b8154600090819083106118d05760405162461bcd60e51b815260040180806020018281038252602281526020018061205f6022913960400191505060405180910390fd5b60008460000184815481106118e157fe5b906000526020600020906002020190508060000154816001015492509250509250929050565b600082815260018401602052604081205482816119a25760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561196757818101518382015260200161194f565b50505050905090810190601f1680156119945780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b508460000160018203815481106119b557fe5b9060005260206000209060020201600101549150509392505050565b60006119e5846001600160a01b0316611e3d565b6119f157506001611201565b600060606001600160a01b038616630a85bd0160e11b611a0f6110e8565b89888860405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a76578181015183820152602001611a5e565b50505050905090810190601f168015611aa35780820380516001836020036101000a031916815260200191505b5060408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909a16999099178952518151919890975087965094509250829150849050835b60208310611b0b5780518252601f199092019160209182019101611aec565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611b6d576040519150601f19603f3d011682016040523d82523d6000602084013e611b72565b606091505b509150915081611bc357805115611b8c5780518082602001fd5b60405162461bcd60e51b8152600401808060200182810382526032815260200180611f2c6032913960400191505060405180910390fd5b6000818060200190516020811015611bda57600080fd5b50516001600160e01b031916630a85bd0160e11b14935061120192505050565b6001600160e01b03198082161415611c59576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152606560205260409020805460ff19166001179055565b60009081526001919091016020526040902054151590565b60008181526001830160205260408120548015611d525783546000198083019190810190600090879083908110611cc957fe5b9060005260206000200154905080876000018481548110611ce657fe5b600091825260208083209091019290925582815260018981019092526040902090840190558654879080611d1657fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506107d2565b60009150506107d2565b6000611d688383611c7e565b611d9e575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556107d2565b5060006107d2565b600082815260018401602052604081205480611e0b5750506040805180820182528381526020808201848152865460018181018955600089815284812095516002909302909501918255915190820155865486845281880190925292909120556114bb565b82856000016001830381548110611e1e57fe5b90600052602060002090600202016001018190555060009150506114bb565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611201575050151592915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611eb757805160ff1916838001178555611ee4565b82800160010185558215611ee4579182015b82811115611ee4578251825591602001919060010190611ec9565b50611ef0929150611ef4565b5090565b5b80821115611ef05760008155600101611ef556fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e64734552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65644552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a26469706673582212208799fe33886211e347259889da29f1fb80e222e8ad2f3c1124a129cc6494dcef64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC721UpgradeSafe.json b/contracts/0.1.2-rc.8/ERC721UpgradeSafe.json new file mode 100644 index 00000000..6b54cf40 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC721UpgradeSafe.json @@ -0,0 +1,406 @@ +{ + "contractName": "ERC721UpgradeSafe", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "baseURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenOfOwnerByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061191f806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80634f6ccce7116100a257806395d89b411161007157806395d89b4114610349578063a22cb46514610351578063b88d4fde1461037f578063c87b56dd14610445578063e985e9c5146104625761010b565b80634f6ccce7146102e15780636352211e146102fe5780636c0360eb1461031b57806370a08231146103235761010b565b806318160ddd116100de57806318160ddd1461022f57806323b872dd146102495780632f745c591461027f57806342842e0e146102ab5761010b565b806301ffc9a71461011057806306fdde031461014b578063081812fc146101c8578063095ea7b314610201575b600080fd5b6101376004803603602081101561012657600080fd5b50356001600160e01b031916610490565b604080519115158252519081900360200190f35b6101536104b3565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018d578181015183820152602001610175565b50505050905090810190601f1680156101ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101e5600480360360208110156101de57600080fd5b5035610549565b604080516001600160a01b039092168252519081900360200190f35b61022d6004803603604081101561021757600080fd5b506001600160a01b0381351690602001356105ab565b005b610237610686565b60408051918252519081900360200190f35b61022d6004803603606081101561025f57600080fd5b506001600160a01b03813581169160208101359091169060400135610697565b6102376004803603604081101561029557600080fd5b506001600160a01b0381351690602001356106ee565b61022d600480360360608110156102c157600080fd5b506001600160a01b03813581169160208101359091169060400135610719565b610237600480360360208110156102f757600080fd5b5035610734565b6101e56004803603602081101561031457600080fd5b503561074a565b610153610772565b6102376004803603602081101561033957600080fd5b50356001600160a01b03166107d3565b61015361083b565b61022d6004803603604081101561036757600080fd5b506001600160a01b038135169060200135151561089c565b61022d6004803603608081101561039557600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156103d057600080fd5b8201836020820111156103e257600080fd5b8035906020019184600183028401116401000000008311171561040457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109a1945050505050565b6101536004803603602081101561045b57600080fd5b50356109ff565b6101376004803603604081101561047857600080fd5b506001600160a01b0381358116916020013516610ca6565b6001600160e01b0319811660009081526065602052604090205460ff165b919050565b609c8054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561053f5780601f106105145761010080835404028352916020019161053f565b820191906000526020600020905b81548152906001019060200180831161052257829003601f168201915b5050505050905090565b600061055482610cd4565b61058f5760405162461bcd60e51b815260040180806020018281038252602c815260200180611814602c913960400191505060405180910390fd5b506000908152609a60205260409020546001600160a01b031690565b60006105b68261074a565b9050806001600160a01b0316836001600160a01b031614156106095760405162461bcd60e51b81526004018080602001828103825260218152602001806118986021913960400191505060405180910390fd5b806001600160a01b031661061b610ce1565b6001600160a01b0316148061063c575061063c81610637610ce1565b610ca6565b6106775760405162461bcd60e51b81526004018080602001828103825260388152602001806117676038913960400191505060405180910390fd5b6106818383610ce5565b505050565b60006106926098610d53565b905090565b6106a86106a2610ce1565b82610d5e565b6106e35760405162461bcd60e51b81526004018080602001828103825260318152602001806118b96031913960400191505060405180910390fd5b610681838383610e02565b6001600160a01b03821660009081526097602052604081206107109083610f4e565b90505b92915050565b610681838383604051806020016040528060008152506109a1565b600080610742609884610f5a565b509392505050565b6000610713826040518060600160405280602981526020016117c96029913960989190610f76565b609f8054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561053f5780601f106105145761010080835404028352916020019161053f565b60006001600160a01b03821661081a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061179f602a913960400191505060405180910390fd5b6001600160a01b038216600090815260976020526040902061071390610d53565b609d8054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561053f5780601f106105145761010080835404028352916020019161053f565b6108a4610ce1565b6001600160a01b0316826001600160a01b0316141561090a576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b80609b6000610917610ce1565b6001600160a01b03908116825260208083019390935260409182016000908120918716808252919093529120805460ff19169215159290921790915561095b610ce1565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b6109b26109ac610ce1565b83610d5e565b6109ed5760405162461bcd60e51b81526004018080602001828103825260318152602001806118b96031913960400191505060405180910390fd5b6109f984848484610f8d565b50505050565b6060610a0a82610cd4565b610a455760405162461bcd60e51b815260040180806020018281038252602f815260200180611869602f913960400191505060405180910390fd5b6000828152609e602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845260609392830182828015610ada5780601f10610aaf57610100808354040283529160200191610ada565b820191906000526020600020905b815481529060010190602001808311610abd57829003601f168201915b5050609f5493945050505060026000196101006001841615020190911604610b035790506104ae565b805115610bd457609f816040516020018083805460018160011615610100020316600290048015610b6b5780601f10610b49576101008083540402835291820191610b6b565b820191906000526020600020905b815481529060010190602001808311610b57575b5050825160208401908083835b60208310610b975780518252601f199092019160209182019101610b78565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040529150506104ae565b609f610bdf84610fdf565b6040516020018083805460018160011615610100020316600290048015610c3d5780601f10610c1b576101008083540402835291820191610c3d565b820191906000526020600020905b815481529060010190602001808311610c29575b5050825160208401908083835b60208310610c695780518252601f199092019160209182019101610c4a565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052915050919050565b6001600160a01b039182166000908152609b6020908152604080832093909416825291909152205460ff1690565b60006107136098836110ba565b3390565b6000818152609a6020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d1a8261074a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000610713826110c6565b6000610d6982610cd4565b610da45760405162461bcd60e51b815260040180806020018281038252602c81526020018061173b602c913960400191505060405180910390fd5b6000610daf8361074a565b9050806001600160a01b0316846001600160a01b03161480610dea5750836001600160a01b0316610ddf84610549565b6001600160a01b0316145b80610dfa5750610dfa8185610ca6565b949350505050565b826001600160a01b0316610e158261074a565b6001600160a01b031614610e5a5760405162461bcd60e51b81526004018080602001828103825260298152602001806118406029913960400191505060405180910390fd5b6001600160a01b038216610e9f5760405162461bcd60e51b81526004018080602001828103825260248152602001806117176024913960400191505060405180910390fd5b610eaa838383610681565b610eb5600082610ce5565b6001600160a01b0383166000908152609760205260409020610ed790826110ca565b506001600160a01b0382166000908152609760205260409020610efa90826110d6565b50610f07609882846110e2565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b600061071083836110f8565b6000808080610f69868661115c565b9097909650945050505050565b6000610f838484846111d7565b90505b9392505050565b610f98848484610e02565b610fa4848484846112a1565b6109f95760405162461bcd60e51b81526004018080602001828103825260328152602001806116e56032913960400191505060405180910390fd5b60608161100457506040805180820190915260018152600360fc1b60208201526104ae565b8160005b811561101c57600101600a82049150611008565b60608167ffffffffffffffff8111801561103557600080fd5b506040519080825280601f01601f191660200182016040528015611060576020820181803683370190505b50859350905060001982015b83156110b157600a840660300160f81b8282806001900393508151811061108f57fe5b60200101906001600160f81b031916908160001a905350600a8404935061106c565b50949350505050565b600061071083836114ca565b5490565b600061071083836114e2565b600061071083836115a8565b6000610f8384846001600160a01b0385166115f2565b8154600090821061113a5760405162461bcd60e51b81526004018080602001828103825260228152602001806116c36022913960400191505060405180910390fd5b82600001828154811061114957fe5b9060005260206000200154905092915050565b8154600090819083106111a05760405162461bcd60e51b81526004018080602001828103825260228152602001806117f26022913960400191505060405180910390fd5b60008460000184815481106111b157fe5b906000526020600020906002020190508060000154816001015492509250509250929050565b600082815260018401602052604081205482816112725760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561123757818101518382015260200161121f565b50505050905090810190601f1680156112645780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5084600001600182038154811061128557fe5b9060005260206000209060020201600101549150509392505050565b60006112b5846001600160a01b0316611689565b6112c157506001610dfa565b600060606001600160a01b038616630a85bd0160e11b6112df610ce1565b89888860405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561134657818101518382015260200161132e565b50505050905090810190601f1680156113735780820380516001836020036101000a031916815260200191505b5060408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909a16999099178952518151919890975087965094509250829150849050835b602083106113db5780518252601f1990920191602091820191016113bc565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461143d576040519150601f19603f3d011682016040523d82523d6000602084013e611442565b606091505b5091509150816114935780511561145c5780518082602001fd5b60405162461bcd60e51b81526004018080602001828103825260328152602001806116e56032913960400191505060405180910390fd5b60008180602001905160208110156114aa57600080fd5b50516001600160e01b031916630a85bd0160e11b149350610dfa92505050565b60009081526001919091016020526040902054151590565b6000818152600183016020526040812054801561159e578354600019808301919081019060009087908390811061151557fe5b906000526020600020015490508087600001848154811061153257fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061156257fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610713565b6000915050610713565b60006115b483836114ca565b6115ea57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610713565b506000610713565b600082815260018401602052604081205480611657575050604080518082018252838152602080820184815286546001818101895560008981528481209551600290930290950191825591519082015586548684528188019092529290912055610f86565b8285600001600183038154811061166a57fe5b9060005260206000209060020201600101819055506000915050610f86565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610dfa57505015159291505056fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e64734552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a2646970667358221220f7d87ab6c4b697a39ea6094cbac5bf1e881bbbbee0ffc845949d98a81ca0d1ea64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80634f6ccce7116100a257806395d89b411161007157806395d89b4114610349578063a22cb46514610351578063b88d4fde1461037f578063c87b56dd14610445578063e985e9c5146104625761010b565b80634f6ccce7146102e15780636352211e146102fe5780636c0360eb1461031b57806370a08231146103235761010b565b806318160ddd116100de57806318160ddd1461022f57806323b872dd146102495780632f745c591461027f57806342842e0e146102ab5761010b565b806301ffc9a71461011057806306fdde031461014b578063081812fc146101c8578063095ea7b314610201575b600080fd5b6101376004803603602081101561012657600080fd5b50356001600160e01b031916610490565b604080519115158252519081900360200190f35b6101536104b3565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018d578181015183820152602001610175565b50505050905090810190601f1680156101ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101e5600480360360208110156101de57600080fd5b5035610549565b604080516001600160a01b039092168252519081900360200190f35b61022d6004803603604081101561021757600080fd5b506001600160a01b0381351690602001356105ab565b005b610237610686565b60408051918252519081900360200190f35b61022d6004803603606081101561025f57600080fd5b506001600160a01b03813581169160208101359091169060400135610697565b6102376004803603604081101561029557600080fd5b506001600160a01b0381351690602001356106ee565b61022d600480360360608110156102c157600080fd5b506001600160a01b03813581169160208101359091169060400135610719565b610237600480360360208110156102f757600080fd5b5035610734565b6101e56004803603602081101561031457600080fd5b503561074a565b610153610772565b6102376004803603602081101561033957600080fd5b50356001600160a01b03166107d3565b61015361083b565b61022d6004803603604081101561036757600080fd5b506001600160a01b038135169060200135151561089c565b61022d6004803603608081101561039557600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156103d057600080fd5b8201836020820111156103e257600080fd5b8035906020019184600183028401116401000000008311171561040457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109a1945050505050565b6101536004803603602081101561045b57600080fd5b50356109ff565b6101376004803603604081101561047857600080fd5b506001600160a01b0381358116916020013516610ca6565b6001600160e01b0319811660009081526065602052604090205460ff165b919050565b609c8054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561053f5780601f106105145761010080835404028352916020019161053f565b820191906000526020600020905b81548152906001019060200180831161052257829003601f168201915b5050505050905090565b600061055482610cd4565b61058f5760405162461bcd60e51b815260040180806020018281038252602c815260200180611814602c913960400191505060405180910390fd5b506000908152609a60205260409020546001600160a01b031690565b60006105b68261074a565b9050806001600160a01b0316836001600160a01b031614156106095760405162461bcd60e51b81526004018080602001828103825260218152602001806118986021913960400191505060405180910390fd5b806001600160a01b031661061b610ce1565b6001600160a01b0316148061063c575061063c81610637610ce1565b610ca6565b6106775760405162461bcd60e51b81526004018080602001828103825260388152602001806117676038913960400191505060405180910390fd5b6106818383610ce5565b505050565b60006106926098610d53565b905090565b6106a86106a2610ce1565b82610d5e565b6106e35760405162461bcd60e51b81526004018080602001828103825260318152602001806118b96031913960400191505060405180910390fd5b610681838383610e02565b6001600160a01b03821660009081526097602052604081206107109083610f4e565b90505b92915050565b610681838383604051806020016040528060008152506109a1565b600080610742609884610f5a565b509392505050565b6000610713826040518060600160405280602981526020016117c96029913960989190610f76565b609f8054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561053f5780601f106105145761010080835404028352916020019161053f565b60006001600160a01b03821661081a5760405162461bcd60e51b815260040180806020018281038252602a81526020018061179f602a913960400191505060405180910390fd5b6001600160a01b038216600090815260976020526040902061071390610d53565b609d8054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561053f5780601f106105145761010080835404028352916020019161053f565b6108a4610ce1565b6001600160a01b0316826001600160a01b0316141561090a576040805162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015290519081900360640190fd5b80609b6000610917610ce1565b6001600160a01b03908116825260208083019390935260409182016000908120918716808252919093529120805460ff19169215159290921790915561095b610ce1565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b6109b26109ac610ce1565b83610d5e565b6109ed5760405162461bcd60e51b81526004018080602001828103825260318152602001806118b96031913960400191505060405180910390fd5b6109f984848484610f8d565b50505050565b6060610a0a82610cd4565b610a455760405162461bcd60e51b815260040180806020018281038252602f815260200180611869602f913960400191505060405180910390fd5b6000828152609e602090815260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845260609392830182828015610ada5780601f10610aaf57610100808354040283529160200191610ada565b820191906000526020600020905b815481529060010190602001808311610abd57829003601f168201915b5050609f5493945050505060026000196101006001841615020190911604610b035790506104ae565b805115610bd457609f816040516020018083805460018160011615610100020316600290048015610b6b5780601f10610b49576101008083540402835291820191610b6b565b820191906000526020600020905b815481529060010190602001808311610b57575b5050825160208401908083835b60208310610b975780518252601f199092019160209182019101610b78565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040529150506104ae565b609f610bdf84610fdf565b6040516020018083805460018160011615610100020316600290048015610c3d5780601f10610c1b576101008083540402835291820191610c3d565b820191906000526020600020905b815481529060010190602001808311610c29575b5050825160208401908083835b60208310610c695780518252601f199092019160209182019101610c4a565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051602081830303815290604052915050919050565b6001600160a01b039182166000908152609b6020908152604080832093909416825291909152205460ff1690565b60006107136098836110ba565b3390565b6000818152609a6020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610d1a8261074a565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000610713826110c6565b6000610d6982610cd4565b610da45760405162461bcd60e51b815260040180806020018281038252602c81526020018061173b602c913960400191505060405180910390fd5b6000610daf8361074a565b9050806001600160a01b0316846001600160a01b03161480610dea5750836001600160a01b0316610ddf84610549565b6001600160a01b0316145b80610dfa5750610dfa8185610ca6565b949350505050565b826001600160a01b0316610e158261074a565b6001600160a01b031614610e5a5760405162461bcd60e51b81526004018080602001828103825260298152602001806118406029913960400191505060405180910390fd5b6001600160a01b038216610e9f5760405162461bcd60e51b81526004018080602001828103825260248152602001806117176024913960400191505060405180910390fd5b610eaa838383610681565b610eb5600082610ce5565b6001600160a01b0383166000908152609760205260409020610ed790826110ca565b506001600160a01b0382166000908152609760205260409020610efa90826110d6565b50610f07609882846110e2565b5080826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b600061071083836110f8565b6000808080610f69868661115c565b9097909650945050505050565b6000610f838484846111d7565b90505b9392505050565b610f98848484610e02565b610fa4848484846112a1565b6109f95760405162461bcd60e51b81526004018080602001828103825260328152602001806116e56032913960400191505060405180910390fd5b60608161100457506040805180820190915260018152600360fc1b60208201526104ae565b8160005b811561101c57600101600a82049150611008565b60608167ffffffffffffffff8111801561103557600080fd5b506040519080825280601f01601f191660200182016040528015611060576020820181803683370190505b50859350905060001982015b83156110b157600a840660300160f81b8282806001900393508151811061108f57fe5b60200101906001600160f81b031916908160001a905350600a8404935061106c565b50949350505050565b600061071083836114ca565b5490565b600061071083836114e2565b600061071083836115a8565b6000610f8384846001600160a01b0385166115f2565b8154600090821061113a5760405162461bcd60e51b81526004018080602001828103825260228152602001806116c36022913960400191505060405180910390fd5b82600001828154811061114957fe5b9060005260206000200154905092915050565b8154600090819083106111a05760405162461bcd60e51b81526004018080602001828103825260228152602001806117f26022913960400191505060405180910390fd5b60008460000184815481106111b157fe5b906000526020600020906002020190508060000154816001015492509250509250929050565b600082815260018401602052604081205482816112725760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561123757818101518382015260200161121f565b50505050905090810190601f1680156112645780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5084600001600182038154811061128557fe5b9060005260206000209060020201600101549150509392505050565b60006112b5846001600160a01b0316611689565b6112c157506001610dfa565b600060606001600160a01b038616630a85bd0160e11b6112df610ce1565b89888860405160240180856001600160a01b03168152602001846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561134657818101518382015260200161132e565b50505050905090810190601f1680156113735780820380516001836020036101000a031916815260200191505b5060408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909a16999099178952518151919890975087965094509250829150849050835b602083106113db5780518252601f1990920191602091820191016113bc565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461143d576040519150601f19603f3d011682016040523d82523d6000602084013e611442565b606091505b5091509150816114935780511561145c5780518082602001fd5b60405162461bcd60e51b81526004018080602001828103825260328152602001806116e56032913960400191505060405180910390fd5b60008180602001905160208110156114aa57600080fd5b50516001600160e01b031916630a85bd0160e11b149350610dfa92505050565b60009081526001919091016020526040902054151590565b6000818152600183016020526040812054801561159e578354600019808301919081019060009087908390811061151557fe5b906000526020600020015490508087600001848154811061153257fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061156257fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610713565b6000915050610713565b60006115b483836114ca565b6115ea57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610713565b506000610713565b600082815260018401602052604081205480611657575050604080518082018252838152602080820184815286546001818101895560008981528481209551600290930290950191825591519082015586548684528188019092529290912055610f86565b8285600001600183038154811061166a57fe5b9060005260206000209060020201600101819055506000915050610f86565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610dfa57505015159291505056fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e64734552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e7465724552433732313a207472616e7366657220746f20746865207a65726f20616464726573734552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c4552433732313a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e456e756d657261626c654d61703a20696e646578206f7574206f6620626f756e64734552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a207472616e73666572206f6620746f6b656e2074686174206973206e6f74206f776e4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e4552433732313a20617070726f76616c20746f2063757272656e74206f776e65724552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564a2646970667358221220f7d87ab6c4b697a39ea6094cbac5bf1e881bbbbee0ffc845949d98a81ca0d1ea64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC827.json b/contracts/0.1.2-rc.8/ERC827.json new file mode 100644 index 00000000..32ffab82 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC827.json @@ -0,0 +1,284 @@ +{ + "contractName": "ERC827", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "approveAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferFromAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC827Token.json b/contracts/0.1.2-rc.8/ERC827Token.json new file mode 100644 index 00000000..79fbbd45 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC827Token.json @@ -0,0 +1,429 @@ +{ + "contractName": "ERC827Token", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "approveAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_subtractedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "decreaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_addedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "increaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferFromAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061109d806100206000396000f3fe6080604052600436106100f35760003560e01c806390db623f1161008a578063c1d34b8911610059578063c1d34b89146104c9578063cae9ca511461058d578063cb3993be14610646578063dd62ed3e146106ff576100f3565b806390db623f1461038957806395d89b4114610442578063a457c2d714610457578063a9059cbb14610490576100f3565b8063313ce567116100c6578063313ce5671461023957806339509351146102645780634000aea01461029d57806370a0823114610356576100f3565b806306fdde03146100f8578063095ea7b31461018257806318160ddd146101cf57806323b872dd146101f6575b600080fd5b34801561010457600080fd5b5061010d61073a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014757818101518382015260200161012f565b50505050905090810190601f1680156101745780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018e57600080fd5b506101bb600480360360408110156101a557600080fd5b506001600160a01b0381351690602001356107d0565b604080519115158252519081900360200190f35b3480156101db57600080fd5b506101e46107ed565b60408051918252519081900360200190f35b34801561020257600080fd5b506101bb6004803603606081101561021957600080fd5b506001600160a01b038135811691602081013590911690604001356107f3565b34801561024557600080fd5b5061024e61087a565b6040805160ff9092168252519081900360200190f35b34801561027057600080fd5b506101bb6004803603604081101561028757600080fd5b506001600160a01b038135169060200135610883565b6101bb600480360360608110156102b357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e257600080fd5b8201836020820111156102f457600080fd5b803590602001918460018302840111600160201b8311171561031557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108d1945050505050565b34801561036257600080fd5b506101e46004803603602081101561037957600080fd5b50356001600160a01b03166109b1565b6101bb6004803603606081101561039f57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156103ce57600080fd5b8201836020820111156103e057600080fd5b803590602001918460018302840111600160201b8311171561040157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109cc945050505050565b34801561044e57600080fd5b5061010d6109ee565b34801561046357600080fd5b506101bb6004803603604081101561047a57600080fd5b506001600160a01b038135169060200135610a4f565b34801561049c57600080fd5b506101bb600480360360408110156104b357600080fd5b506001600160a01b038135169060200135610ab7565b6101bb600480360360808110156104df57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561051957600080fd5b82018360208201111561052b57600080fd5b803590602001918460018302840111600160201b8311171561054c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610acb945050505050565b6101bb600480360360608110156105a357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156105d257600080fd5b8201836020820111156105e457600080fd5b803590602001918460018302840111600160201b8311171561060557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bad945050505050565b6101bb6004803603606081101561065c57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561068b57600080fd5b82018360208201111561069d57600080fd5b803590602001918460018302840111600160201b831117156106be57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bcf945050505050565b34801561070b57600080fd5b506101e46004803603604081101561072257600080fd5b506001600160a01b0381358116916020013516610bf1565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b820191906000526020600020905b8154815290600101906020018083116107a957829003601f168201915b5050505050905090565b60006107e46107dd610c1c565b8484610c20565b50600192915050565b60675490565b6000610800848484610d0c565b6108708461080c610c1c565b61086b85604051806060016040528060288152602001610fd2602891396001600160a01b038a1660009081526066602052604081209061084a610c1c565b6001600160a01b031681526020810191909152604001600020549190610e69565b610c20565b5060019392505050565b606a5460ff1690565b60006107e4610890610c1c565b8461086b85606660006108a1610c1c565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610f00565b60006001600160a01b0384163014156108e957600080fd5b6108f38484610ab7565b506000846001600160a01b031634846040518082805190602001908083835b602083106109315780518252601f199092019160209182019101610912565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610993576040519150601f19603f3d011682016040523d82523d6000602084013e610998565b606091505b50509050806109a657600080fd5b506001949350505050565b6001600160a01b031660009081526065602052604090205490565b60006001600160a01b0384163014156109e457600080fd5b6108f38484610883565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b60006107e4610a5c610c1c565b8461086b856040518060600160405280602581526020016110436025913960666000610a86610c1c565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610e69565b60006107e4610ac4610c1c565b8484610d0c565b60006001600160a01b038416301415610ae357600080fd5b610aee8585856107f3565b506000846001600160a01b031634846040518082805190602001908083835b60208310610b2c5780518252601f199092019160209182019101610b0d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610b8e576040519150601f19603f3d011682016040523d82523d6000602084013e610b93565b606091505b5050905080610ba157600080fd5b50600195945050505050565b60006001600160a01b038416301415610bc557600080fd5b6108f384846107d0565b60006001600160a01b038416301415610be757600080fd5b6108f38484610a4f565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610c655760405162461bcd60e51b815260040180806020018281038252602481526020018061101f6024913960400191505060405180910390fd5b6001600160a01b038216610caa5760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610d515760405162461bcd60e51b8152600401808060200182810382526025815260200180610ffa6025913960400191505060405180910390fd5b6001600160a01b038216610d965760405162461bcd60e51b8152600401808060200182810382526023815260200180610f676023913960400191505060405180910390fd5b610da1838383610f61565b610dde81604051806060016040528060268152602001610fac602691396001600160a01b0386166000908152606560205260409020549190610e69565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610e0d9082610f00565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610ef85760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ebd578181015183820152602001610ea5565b50505050905090810190601f168015610eea5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610f5a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202a926ead40df054bcebd71d95c5d73d465ab1e8f8f09683e41f63b551c98f24864736f6c634300060c0033", + "deployedBytecode": "0x6080604052600436106100f35760003560e01c806390db623f1161008a578063c1d34b8911610059578063c1d34b89146104c9578063cae9ca511461058d578063cb3993be14610646578063dd62ed3e146106ff576100f3565b806390db623f1461038957806395d89b4114610442578063a457c2d714610457578063a9059cbb14610490576100f3565b8063313ce567116100c6578063313ce5671461023957806339509351146102645780634000aea01461029d57806370a0823114610356576100f3565b806306fdde03146100f8578063095ea7b31461018257806318160ddd146101cf57806323b872dd146101f6575b600080fd5b34801561010457600080fd5b5061010d61073a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014757818101518382015260200161012f565b50505050905090810190601f1680156101745780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018e57600080fd5b506101bb600480360360408110156101a557600080fd5b506001600160a01b0381351690602001356107d0565b604080519115158252519081900360200190f35b3480156101db57600080fd5b506101e46107ed565b60408051918252519081900360200190f35b34801561020257600080fd5b506101bb6004803603606081101561021957600080fd5b506001600160a01b038135811691602081013590911690604001356107f3565b34801561024557600080fd5b5061024e61087a565b6040805160ff9092168252519081900360200190f35b34801561027057600080fd5b506101bb6004803603604081101561028757600080fd5b506001600160a01b038135169060200135610883565b6101bb600480360360608110156102b357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e257600080fd5b8201836020820111156102f457600080fd5b803590602001918460018302840111600160201b8311171561031557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108d1945050505050565b34801561036257600080fd5b506101e46004803603602081101561037957600080fd5b50356001600160a01b03166109b1565b6101bb6004803603606081101561039f57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156103ce57600080fd5b8201836020820111156103e057600080fd5b803590602001918460018302840111600160201b8311171561040157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109cc945050505050565b34801561044e57600080fd5b5061010d6109ee565b34801561046357600080fd5b506101bb6004803603604081101561047a57600080fd5b506001600160a01b038135169060200135610a4f565b34801561049c57600080fd5b506101bb600480360360408110156104b357600080fd5b506001600160a01b038135169060200135610ab7565b6101bb600480360360808110156104df57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561051957600080fd5b82018360208201111561052b57600080fd5b803590602001918460018302840111600160201b8311171561054c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610acb945050505050565b6101bb600480360360608110156105a357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156105d257600080fd5b8201836020820111156105e457600080fd5b803590602001918460018302840111600160201b8311171561060557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bad945050505050565b6101bb6004803603606081101561065c57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561068b57600080fd5b82018360208201111561069d57600080fd5b803590602001918460018302840111600160201b831117156106be57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bcf945050505050565b34801561070b57600080fd5b506101e46004803603604081101561072257600080fd5b506001600160a01b0381358116916020013516610bf1565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b820191906000526020600020905b8154815290600101906020018083116107a957829003601f168201915b5050505050905090565b60006107e46107dd610c1c565b8484610c20565b50600192915050565b60675490565b6000610800848484610d0c565b6108708461080c610c1c565b61086b85604051806060016040528060288152602001610fd2602891396001600160a01b038a1660009081526066602052604081209061084a610c1c565b6001600160a01b031681526020810191909152604001600020549190610e69565b610c20565b5060019392505050565b606a5460ff1690565b60006107e4610890610c1c565b8461086b85606660006108a1610c1c565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610f00565b60006001600160a01b0384163014156108e957600080fd5b6108f38484610ab7565b506000846001600160a01b031634846040518082805190602001908083835b602083106109315780518252601f199092019160209182019101610912565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610993576040519150601f19603f3d011682016040523d82523d6000602084013e610998565b606091505b50509050806109a657600080fd5b506001949350505050565b6001600160a01b031660009081526065602052604090205490565b60006001600160a01b0384163014156109e457600080fd5b6108f38484610883565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b60006107e4610a5c610c1c565b8461086b856040518060600160405280602581526020016110436025913960666000610a86610c1c565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610e69565b60006107e4610ac4610c1c565b8484610d0c565b60006001600160a01b038416301415610ae357600080fd5b610aee8585856107f3565b506000846001600160a01b031634846040518082805190602001908083835b60208310610b2c5780518252601f199092019160209182019101610b0d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610b8e576040519150601f19603f3d011682016040523d82523d6000602084013e610b93565b606091505b5050905080610ba157600080fd5b50600195945050505050565b60006001600160a01b038416301415610bc557600080fd5b6108f384846107d0565b60006001600160a01b038416301415610be757600080fd5b6108f38484610a4f565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b3390565b6001600160a01b038316610c655760405162461bcd60e51b815260040180806020018281038252602481526020018061101f6024913960400191505060405180910390fd5b6001600160a01b038216610caa5760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610d515760405162461bcd60e51b8152600401808060200182810382526025815260200180610ffa6025913960400191505060405180910390fd5b6001600160a01b038216610d965760405162461bcd60e51b8152600401808060200182810382526023815260200180610f676023913960400191505060405180910390fd5b610da1838383610f61565b610dde81604051806060016040528060268152602001610fac602691396001600160a01b0386166000908152606560205260409020549190610e69565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610e0d9082610f00565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610ef85760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ebd578181015183820152602001610ea5565b50505050905090810190601f168015610eea5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610f5a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212202a926ead40df054bcebd71d95c5d73d465ab1e8f8f09683e41f63b551c98f24864736f6c634300060c0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ERC827TokenMock.json b/contracts/0.1.2-rc.8/ERC827TokenMock.json new file mode 100644 index 00000000..7d30ca00 --- /dev/null +++ b/contracts/0.1.2-rc.8/ERC827TokenMock.json @@ -0,0 +1,445 @@ +{ + "contractName": "ERC827TokenMock", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialAccount", + "type": "address" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "approveAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_subtractedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "decreaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_addedValue", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "increaseApprovalAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "transferFromAndCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516200126c3803806200126c8339818101604052604081101561003557600080fd5b508051602090910151610048828261004f565b50506101bf565b6001600160a01b0382166100aa576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6100b660008383610159565b6100cf8160675461015e60201b610c1c1790919060201c565b6067556001600160a01b038216600090815260656020908152604090912054610101918390610c1c61015e821b17901c565b6001600160a01b03831660008181526065602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b505050565b6000828201838110156101b8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b61109d80620001cf6000396000f3fe6080604052600436106100f35760003560e01c806390db623f1161008a578063c1d34b8911610059578063c1d34b89146104c9578063cae9ca511461058d578063cb3993be14610646578063dd62ed3e146106ff576100f3565b806390db623f1461038957806395d89b4114610442578063a457c2d714610457578063a9059cbb14610490576100f3565b8063313ce567116100c6578063313ce5671461023957806339509351146102645780634000aea01461029d57806370a0823114610356576100f3565b806306fdde03146100f8578063095ea7b31461018257806318160ddd146101cf57806323b872dd146101f6575b600080fd5b34801561010457600080fd5b5061010d61073a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014757818101518382015260200161012f565b50505050905090810190601f1680156101745780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018e57600080fd5b506101bb600480360360408110156101a557600080fd5b506001600160a01b0381351690602001356107d0565b604080519115158252519081900360200190f35b3480156101db57600080fd5b506101e46107ed565b60408051918252519081900360200190f35b34801561020257600080fd5b506101bb6004803603606081101561021957600080fd5b506001600160a01b038135811691602081013590911690604001356107f3565b34801561024557600080fd5b5061024e61087a565b6040805160ff9092168252519081900360200190f35b34801561027057600080fd5b506101bb6004803603604081101561028757600080fd5b506001600160a01b038135169060200135610883565b6101bb600480360360608110156102b357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e257600080fd5b8201836020820111156102f457600080fd5b803590602001918460018302840111600160201b8311171561031557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108d1945050505050565b34801561036257600080fd5b506101e46004803603602081101561037957600080fd5b50356001600160a01b03166109b1565b6101bb6004803603606081101561039f57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156103ce57600080fd5b8201836020820111156103e057600080fd5b803590602001918460018302840111600160201b8311171561040157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109cc945050505050565b34801561044e57600080fd5b5061010d6109ee565b34801561046357600080fd5b506101bb6004803603604081101561047a57600080fd5b506001600160a01b038135169060200135610a4f565b34801561049c57600080fd5b506101bb600480360360408110156104b357600080fd5b506001600160a01b038135169060200135610ab7565b6101bb600480360360808110156104df57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561051957600080fd5b82018360208201111561052b57600080fd5b803590602001918460018302840111600160201b8311171561054c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610acb945050505050565b6101bb600480360360608110156105a357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156105d257600080fd5b8201836020820111156105e457600080fd5b803590602001918460018302840111600160201b8311171561060557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bad945050505050565b6101bb6004803603606081101561065c57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561068b57600080fd5b82018360208201111561069d57600080fd5b803590602001918460018302840111600160201b831117156106be57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bcf945050505050565b34801561070b57600080fd5b506101e46004803603604081101561072257600080fd5b506001600160a01b0381358116916020013516610bf1565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b820191906000526020600020905b8154815290600101906020018083116107a957829003601f168201915b5050505050905090565b60006107e46107dd610c7d565b8484610c81565b50600192915050565b60675490565b6000610800848484610d6d565b6108708461080c610c7d565b61086b85604051806060016040528060288152602001610fd2602891396001600160a01b038a1660009081526066602052604081209061084a610c7d565b6001600160a01b031681526020810191909152604001600020549190610eca565b610c81565b5060019392505050565b606a5460ff1690565b60006107e4610890610c7d565b8461086b85606660006108a1610c7d565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610c1c565b60006001600160a01b0384163014156108e957600080fd5b6108f38484610ab7565b506000846001600160a01b031634846040518082805190602001908083835b602083106109315780518252601f199092019160209182019101610912565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610993576040519150601f19603f3d011682016040523d82523d6000602084013e610998565b606091505b50509050806109a657600080fd5b506001949350505050565b6001600160a01b031660009081526065602052604090205490565b60006001600160a01b0384163014156109e457600080fd5b6108f38484610883565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b60006107e4610a5c610c7d565b8461086b856040518060600160405280602581526020016110436025913960666000610a86610c7d565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610eca565b60006107e4610ac4610c7d565b8484610d6d565b60006001600160a01b038416301415610ae357600080fd5b610aee8585856107f3565b506000846001600160a01b031634846040518082805190602001908083835b60208310610b2c5780518252601f199092019160209182019101610b0d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610b8e576040519150601f19603f3d011682016040523d82523d6000602084013e610b93565b606091505b5050905080610ba157600080fd5b50600195945050505050565b60006001600160a01b038416301415610bc557600080fd5b6108f384846107d0565b60006001600160a01b038416301415610be757600080fd5b6108f38484610a4f565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b600082820183811015610c76576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b3390565b6001600160a01b038316610cc65760405162461bcd60e51b815260040180806020018281038252602481526020018061101f6024913960400191505060405180910390fd5b6001600160a01b038216610d0b5760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610db25760405162461bcd60e51b8152600401808060200182810382526025815260200180610ffa6025913960400191505060405180910390fd5b6001600160a01b038216610df75760405162461bcd60e51b8152600401808060200182810382526023815260200180610f676023913960400191505060405180910390fd5b610e02838383610f61565b610e3f81604051806060016040528060268152602001610fac602691396001600160a01b0386166000908152606560205260409020549190610eca565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610e6e9082610c1c565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610f595760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f1e578181015183820152602001610f06565b50505050905090810190601f168015610f4b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122000acf190a79b1933b23ae851bc0a3746469123d5eabc0a90cfea02c42de13a8e64736f6c634300060c0033", + "deployedBytecode": "0x6080604052600436106100f35760003560e01c806390db623f1161008a578063c1d34b8911610059578063c1d34b89146104c9578063cae9ca511461058d578063cb3993be14610646578063dd62ed3e146106ff576100f3565b806390db623f1461038957806395d89b4114610442578063a457c2d714610457578063a9059cbb14610490576100f3565b8063313ce567116100c6578063313ce5671461023957806339509351146102645780634000aea01461029d57806370a0823114610356576100f3565b806306fdde03146100f8578063095ea7b31461018257806318160ddd146101cf57806323b872dd146101f6575b600080fd5b34801561010457600080fd5b5061010d61073a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014757818101518382015260200161012f565b50505050905090810190601f1680156101745780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561018e57600080fd5b506101bb600480360360408110156101a557600080fd5b506001600160a01b0381351690602001356107d0565b604080519115158252519081900360200190f35b3480156101db57600080fd5b506101e46107ed565b60408051918252519081900360200190f35b34801561020257600080fd5b506101bb6004803603606081101561021957600080fd5b506001600160a01b038135811691602081013590911690604001356107f3565b34801561024557600080fd5b5061024e61087a565b6040805160ff9092168252519081900360200190f35b34801561027057600080fd5b506101bb6004803603604081101561028757600080fd5b506001600160a01b038135169060200135610883565b6101bb600480360360608110156102b357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102e257600080fd5b8201836020820111156102f457600080fd5b803590602001918460018302840111600160201b8311171561031557600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506108d1945050505050565b34801561036257600080fd5b506101e46004803603602081101561037957600080fd5b50356001600160a01b03166109b1565b6101bb6004803603606081101561039f57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156103ce57600080fd5b8201836020820111156103e057600080fd5b803590602001918460018302840111600160201b8311171561040157600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506109cc945050505050565b34801561044e57600080fd5b5061010d6109ee565b34801561046357600080fd5b506101bb6004803603604081101561047a57600080fd5b506001600160a01b038135169060200135610a4f565b34801561049c57600080fd5b506101bb600480360360408110156104b357600080fd5b506001600160a01b038135169060200135610ab7565b6101bb600480360360808110156104df57600080fd5b6001600160a01b03823581169260208101359091169160408201359190810190608081016060820135600160201b81111561051957600080fd5b82018360208201111561052b57600080fd5b803590602001918460018302840111600160201b8311171561054c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610acb945050505050565b6101bb600480360360608110156105a357600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156105d257600080fd5b8201836020820111156105e457600080fd5b803590602001918460018302840111600160201b8311171561060557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bad945050505050565b6101bb6004803603606081101561065c57600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b81111561068b57600080fd5b82018360208201111561069d57600080fd5b803590602001918460018302840111600160201b831117156106be57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610bcf945050505050565b34801561070b57600080fd5b506101e46004803603604081101561072257600080fd5b506001600160a01b0381358116916020013516610bf1565b60688054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b820191906000526020600020905b8154815290600101906020018083116107a957829003601f168201915b5050505050905090565b60006107e46107dd610c7d565b8484610c81565b50600192915050565b60675490565b6000610800848484610d6d565b6108708461080c610c7d565b61086b85604051806060016040528060288152602001610fd2602891396001600160a01b038a1660009081526066602052604081209061084a610c7d565b6001600160a01b031681526020810191909152604001600020549190610eca565b610c81565b5060019392505050565b606a5460ff1690565b60006107e4610890610c7d565b8461086b85606660006108a1610c7d565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610c1c565b60006001600160a01b0384163014156108e957600080fd5b6108f38484610ab7565b506000846001600160a01b031634846040518082805190602001908083835b602083106109315780518252601f199092019160209182019101610912565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610993576040519150601f19603f3d011682016040523d82523d6000602084013e610998565b606091505b50509050806109a657600080fd5b506001949350505050565b6001600160a01b031660009081526065602052604090205490565b60006001600160a01b0384163014156109e457600080fd5b6108f38484610883565b60698054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107c65780601f1061079b576101008083540402835291602001916107c6565b60006107e4610a5c610c7d565b8461086b856040518060600160405280602581526020016110436025913960666000610a86610c7d565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610eca565b60006107e4610ac4610c7d565b8484610d6d565b60006001600160a01b038416301415610ae357600080fd5b610aee8585856107f3565b506000846001600160a01b031634846040518082805190602001908083835b60208310610b2c5780518252601f199092019160209182019101610b0d565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610b8e576040519150601f19603f3d011682016040523d82523d6000602084013e610b93565b606091505b5050905080610ba157600080fd5b50600195945050505050565b60006001600160a01b038416301415610bc557600080fd5b6108f384846107d0565b60006001600160a01b038416301415610be757600080fd5b6108f38484610a4f565b6001600160a01b03918216600090815260666020908152604080832093909416825291909152205490565b600082820183811015610c76576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b3390565b6001600160a01b038316610cc65760405162461bcd60e51b815260040180806020018281038252602481526020018061101f6024913960400191505060405180910390fd5b6001600160a01b038216610d0b5760405162461bcd60e51b8152600401808060200182810382526022815260200180610f8a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260666020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610db25760405162461bcd60e51b8152600401808060200182810382526025815260200180610ffa6025913960400191505060405180910390fd5b6001600160a01b038216610df75760405162461bcd60e51b8152600401808060200182810382526023815260200180610f676023913960400191505060405180910390fd5b610e02838383610f61565b610e3f81604051806060016040528060268152602001610fac602691396001600160a01b0386166000908152606560205260409020549190610eca565b6001600160a01b038085166000908152606560205260408082209390935590841681522054610e6e9082610c1c565b6001600160a01b0380841660008181526065602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610f595760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f1e578181015183820152602001610f06565b50505050905090810190601f168015610f4b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122000acf190a79b1933b23ae851bc0a3746469123d5eabc0a90cfea02c42de13a8e64736f6c634300060c0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/EnumerableMap.json b/contracts/0.1.2-rc.8/EnumerableMap.json new file mode 100644 index 00000000..31a8144c --- /dev/null +++ b/contracts/0.1.2-rc.8/EnumerableMap.json @@ -0,0 +1,6 @@ +{ + "contractName": "EnumerableMap", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220a0a4cc513c2f7bc76a88a6c9a2644e137bd40056acb2b2df2029f5245248c23d64736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220a0a4cc513c2f7bc76a88a6c9a2644e137bd40056acb2b2df2029f5245248c23d64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/EnumerableSet.json b/contracts/0.1.2-rc.8/EnumerableSet.json new file mode 100644 index 00000000..b38b83b2 --- /dev/null +++ b/contracts/0.1.2-rc.8/EnumerableSet.json @@ -0,0 +1,6 @@ +{ + "contractName": "EnumerableSet", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122007ad7dd61be59536e9bc8ba81b36a36dba98a9866c221276d586fc63d505232364736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122007ad7dd61be59536e9bc8ba81b36a36dba98a9866c221276d586fc63d505232364736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ExternalLocking4Reputation.json b/contracts/0.1.2-rc.8/ExternalLocking4Reputation.json new file mode 100644 index 00000000..5146f7c3 --- /dev/null +++ b/contracts/0.1.2-rc.8/ExternalLocking4Reputation.json @@ -0,0 +1,493 @@ +{ + "contractName": "ExternalLocking4Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "Register", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "claim", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "externalLockers", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "externalLockingContract", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getBalanceFuncSignature", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_externalLockingContract", + "type": "address" + }, + { + "internalType": "string", + "name": "_getBalanceFuncSignature", + "type": "string" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "register", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "registrar", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611732806100206000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c8063afe0e33c116100c3578063dd9d2deb1161007c578063dd9d2deb146102b8578063e1fa8e84146102f2578063e397cb9e14610311578063ed1ff6d814610337578063f0167cfa1461033f578063f27a5505146103bc57610158565b8063afe0e33c14610264578063bf0df4451461026c578063c006719f14610274578063c3201add1461027c578063c348a24b14610284578063c8622c241461028c57610158565b8063696da92111610115578063696da921146101bb57806376dd110f146101c35780637f33ccac146101e957806383805742146101f157806395a2251f14610236578063a8c330171461025c57610158565b80633d1678f41461015d5780633edf7ca1146101775780634ea2c7ec1461019b57806355bfec88146101a357806356891412146101ab5780635aef7de6146101b3575b600080fd5b61016561045e565b60408051918252519081900360200190f35b61017f610464565b604080516001600160a01b039092168252519081900360200190f35b610165610473565b610165610479565b61016561047f565b61017f610485565b610165610494565b610165600480360360208110156101d957600080fd5b50356001600160a01b031661049a565b61017f6104ac565b61021d6004803603604081101561020757600080fd5b506001600160a01b0381351690602001356104bb565b6040805192835260208301919091528051918290030190f35b6101656004803603602081101561024c57600080fd5b50356001600160a01b03166104df565b610165610770565b610165610776565b61016561077c565b610165610782565b610165610788565b61016561078e565b610165600480360360408110156102a257600080fd5b506001600160a01b038135169060200135610794565b6102de600480360360208110156102ce57600080fd5b50356001600160a01b0316610aaa565b604080519115158252519081900360200190f35b61030f6004803603602081101561030857600080fd5b5035610abf565b005b6102de6004803603602081101561032757600080fd5b50356001600160a01b0316610b44565b610165610b59565b610347610b5f565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610381578181015183820152602001610369565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61030f60048036036101008110156103d357600080fd5b6001600160a01b03823581169260208101359260408201359260608301359260808101359260a08201359092169181019060e0810160c082013564010000000081111561041f57600080fd5b82018360208201111561043157600080fd5b8035906020019184600183028401116401000000008311171561045357600080fd5b919350915035610bed565b60425481565b6035546001600160a01b031681565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b60005490565b60386020526000908152604090205481565b6043546001600160a01b031681565b60376020908152600092835260408084209091529082529020805460019091015482565b60006042544211610530576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260386020526040902054610590576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d549091906105bf908390610c6e565b90506105d6603b5482610cce90919063ffffffff16565b603e549093506105e69084610d10565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561062e57600080fd5b505afa158015610642573d6000803e3d6000fd5b505050506040513d602081101561065857600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156106ad57600080fd5b505af11580156106c1573d6000803e3d6000fd5b505050506040513d60208110156106d757600080fd5b505161072a576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b6034546000906001600160a01b03166107f4576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b60006001600160a01b03841661080b57503361087b565b6001600160a01b03841660009081526046602052604090205460ff16610878576040805162461bcd60e51b815260206004820152601e60248201527f62656e65666963696172792073686f756c642062652072656769737465720000604482015290519081900360640190fd5b50825b6001600160a01b03811660009081526045602052604090205460ff16156108d35760405162461bcd60e51b815260040180806020018281038252603681526020018061166b6036913960400191505060405180910390fd5b6001600160a01b03808216600081815260456020526040808220805460ff1916600190811790915560435482516024808201969096528351808203909601865260449081019384905280549496606096921694919390929091829184916002600019928216156101000292909201160480156109865780601f10610964576101008083540402835291820191610986565b820191906000526020600020905b815481529060010190602001808311610972575b505060408051918290039091206020850180516001600160e01b03166001600160e01b0319909216919091178152905184519093508392508083835b602083106109e15780518252601f1990920191602091820191016109c2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610a43576040519150601f19603f3d011682016040523d82523d6000602084013e610a48565b606091505b509150915081610a895760405162461bcd60e51b815260040180806020018281038252602881526020018061150e6028913960400191505060405180910390fd5b6020810151610a9d8160018681808b610d52565b9450505050505b92915050565b60456020526000908152604090205460ff1681565b806000548114610b005760405162461bcd60e51b81526004018080602001828103825260288152602001806116176028913960400191505060405180910390fd5b33600081815260466020526040808220805460ff19166001179055517feeda149c76076b34d4b9d8896c2f7efc0d33d1c7b53ea3c5db490d64613f603a9190a25050565b60466020526000908152604090205460ff1681565b603d5481565b6044805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610be55780601f10610bba57610100808354040283529160200191610be5565b820191906000526020600020905b815481529060010190602001808311610bc857829003601f168201915b505050505081565b868611610c2b5760405162461bcd60e51b815260040180806020018281038252603a8152602001806116c3603a913960400191505060405180910390fd5b604380546001600160a01b0319166001600160a01b038616179055610c526044848461147a565b50610c6389898989896001876110f6565b505050505050505050565b600082610c7d57506000610aa4565b82820282848281610c8a57fe5b0414610cc75760405162461bcd60e51b815260040180806020018281038252602181526020018061158e6021913960400191505060405180910390fd5b9392505050565b6000610cc783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111ac565b6000610cc783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124e565b6000816000548114610d955760405162461bcd60e51b81526004018080602001828103825260288152602001806116176028913960400191505060405180910390fd5b60008811610dea576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b604054871115610e2b5760405162461bcd60e51b815260040180806020018281038252602c81526020018061163f602c913960400191505060405180910390fd5b60008711610e80576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b603f54421115610ec15760405162461bcd60e51b815260040180806020018281038252603081526020018061155e6030913960400191505060405180910390fd5b604154421015610f025760405162461bcd60e51b81526004018080602001828103825260288152602001806115366028913960400191505060405180910390fd5b603c54604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610f429060016112a8565b603c556001600160a01b038616600090815260376020908152604080832085845290915290208881554288016001820155603954610f80908a6112a8565b603955603a54610f90908a6112a8565b603a556000610fb386610fad89610fa78d8f610c6e565b90610c6e565b90610cce565b905060008111610ffe576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b03881660009081526038602052604090205461102190826112a8565b6001600160a01b0389166000908152603860205260409020819055603d54908181028161104a57fe5b0414611091576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b603b5461109e90826112a8565b603b55604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b6110ff87611302565b84841161113d5760405162461bcd60e51b815260040180806020018281038252603a8152602001806115dd603a913960400191505060405180910390fd5b8383101561117c5760405162461bcd60e51b81526004018080602001828103825260228152602001806116a16022913960400191505060405180910390fd5b603d869055603e869055603f8490556040829055604185905560428390556111a38161141a565b50505050505050565b600081836112385760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156111fd5781810151838201526020016111e5565b50505050905090810190601f16801561122a5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161124457fe5b0495945050505050565b600081848411156112a05760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156111fd5781810151838201526020016111e5565b505050900390565b600082820183811015610cc7576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600154610100900460ff168061131b575061131b611474565b80611329575060015460ff16155b6113645760405162461bcd60e51b815260040180806020018281038252602e8152602001806115af602e913960400191505060405180910390fd5b600154610100900460ff1615801561138e576001805460ff1961ff00199091166101001716811790555b6001600160a01b0382166113e9576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015611416576001805461ff00191690555b5050565b6000541561146f576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b303b1590565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106114bb5782800160ff198235161785556114e8565b828001600101855582156114e8579182015b828111156114e85782358255916020019190600101906114cd565b506114f49291506114f8565b5090565b5b808211156114f457600081556001016114f956fe63616c6c20746f2065787465726e616c20636f6e74726163742073686f756c6420737563636565646c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f64636c61696d696e6720747769636520666f72207468652073616d652062656e6566696369617279206973206e6f7420616c6c6f77656472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d655f636c61696d696e67456e6454696d652073686f756c642062652067726561746572207468616e205f636c61696d696e67537461727454696d65a26469706673582212200f214f5b8c670eeee30fca80d4d4694ebf6f7f3ba48d40ecbe3fad3e6834a56064736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101585760003560e01c8063afe0e33c116100c3578063dd9d2deb1161007c578063dd9d2deb146102b8578063e1fa8e84146102f2578063e397cb9e14610311578063ed1ff6d814610337578063f0167cfa1461033f578063f27a5505146103bc57610158565b8063afe0e33c14610264578063bf0df4451461026c578063c006719f14610274578063c3201add1461027c578063c348a24b14610284578063c8622c241461028c57610158565b8063696da92111610115578063696da921146101bb57806376dd110f146101c35780637f33ccac146101e957806383805742146101f157806395a2251f14610236578063a8c330171461025c57610158565b80633d1678f41461015d5780633edf7ca1146101775780634ea2c7ec1461019b57806355bfec88146101a357806356891412146101ab5780635aef7de6146101b3575b600080fd5b61016561045e565b60408051918252519081900360200190f35b61017f610464565b604080516001600160a01b039092168252519081900360200190f35b610165610473565b610165610479565b61016561047f565b61017f610485565b610165610494565b610165600480360360208110156101d957600080fd5b50356001600160a01b031661049a565b61017f6104ac565b61021d6004803603604081101561020757600080fd5b506001600160a01b0381351690602001356104bb565b6040805192835260208301919091528051918290030190f35b6101656004803603602081101561024c57600080fd5b50356001600160a01b03166104df565b610165610770565b610165610776565b61016561077c565b610165610782565b610165610788565b61016561078e565b610165600480360360408110156102a257600080fd5b506001600160a01b038135169060200135610794565b6102de600480360360208110156102ce57600080fd5b50356001600160a01b0316610aaa565b604080519115158252519081900360200190f35b61030f6004803603602081101561030857600080fd5b5035610abf565b005b6102de6004803603602081101561032757600080fd5b50356001600160a01b0316610b44565b610165610b59565b610347610b5f565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610381578181015183820152602001610369565b50505050905090810190601f1680156103ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61030f60048036036101008110156103d357600080fd5b6001600160a01b03823581169260208101359260408201359260608301359260808101359260a08201359092169181019060e0810160c082013564010000000081111561041f57600080fd5b82018360208201111561043157600080fd5b8035906020019184600183028401116401000000008311171561045357600080fd5b919350915035610bed565b60425481565b6035546001600160a01b031681565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b60005490565b60386020526000908152604090205481565b6043546001600160a01b031681565b60376020908152600092835260408084209091529082529020805460019091015482565b60006042544211610530576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260386020526040902054610590576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d549091906105bf908390610c6e565b90506105d6603b5482610cce90919063ffffffff16565b603e549093506105e69084610d10565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561062e57600080fd5b505afa158015610642573d6000803e3d6000fd5b505050506040513d602081101561065857600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156106ad57600080fd5b505af11580156106c1573d6000803e3d6000fd5b505050506040513d60208110156106d757600080fd5b505161072a576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b6034546000906001600160a01b03166107f4576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b60006001600160a01b03841661080b57503361087b565b6001600160a01b03841660009081526046602052604090205460ff16610878576040805162461bcd60e51b815260206004820152601e60248201527f62656e65666963696172792073686f756c642062652072656769737465720000604482015290519081900360640190fd5b50825b6001600160a01b03811660009081526045602052604090205460ff16156108d35760405162461bcd60e51b815260040180806020018281038252603681526020018061166b6036913960400191505060405180910390fd5b6001600160a01b03808216600081815260456020526040808220805460ff1916600190811790915560435482516024808201969096528351808203909601865260449081019384905280549496606096921694919390929091829184916002600019928216156101000292909201160480156109865780601f10610964576101008083540402835291820191610986565b820191906000526020600020905b815481529060010190602001808311610972575b505060408051918290039091206020850180516001600160e01b03166001600160e01b0319909216919091178152905184519093508392508083835b602083106109e15780518252601f1990920191602091820191016109c2565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610a43576040519150601f19603f3d011682016040523d82523d6000602084013e610a48565b606091505b509150915081610a895760405162461bcd60e51b815260040180806020018281038252602881526020018061150e6028913960400191505060405180910390fd5b6020810151610a9d8160018681808b610d52565b9450505050505b92915050565b60456020526000908152604090205460ff1681565b806000548114610b005760405162461bcd60e51b81526004018080602001828103825260288152602001806116176028913960400191505060405180910390fd5b33600081815260466020526040808220805460ff19166001179055517feeda149c76076b34d4b9d8896c2f7efc0d33d1c7b53ea3c5db490d64613f603a9190a25050565b60466020526000908152604090205460ff1681565b603d5481565b6044805460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529291830182828015610be55780601f10610bba57610100808354040283529160200191610be5565b820191906000526020600020905b815481529060010190602001808311610bc857829003601f168201915b505050505081565b868611610c2b5760405162461bcd60e51b815260040180806020018281038252603a8152602001806116c3603a913960400191505060405180910390fd5b604380546001600160a01b0319166001600160a01b038616179055610c526044848461147a565b50610c6389898989896001876110f6565b505050505050505050565b600082610c7d57506000610aa4565b82820282848281610c8a57fe5b0414610cc75760405162461bcd60e51b815260040180806020018281038252602181526020018061158e6021913960400191505060405180910390fd5b9392505050565b6000610cc783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111ac565b6000610cc783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124e565b6000816000548114610d955760405162461bcd60e51b81526004018080602001828103825260288152602001806116176028913960400191505060405180910390fd5b60008811610dea576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b604054871115610e2b5760405162461bcd60e51b815260040180806020018281038252602c81526020018061163f602c913960400191505060405180910390fd5b60008711610e80576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b603f54421115610ec15760405162461bcd60e51b815260040180806020018281038252603081526020018061155e6030913960400191505060405180910390fd5b604154421015610f025760405162461bcd60e51b81526004018080602001828103825260288152602001806115366028913960400191505060405180910390fd5b603c54604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610f429060016112a8565b603c556001600160a01b038616600090815260376020908152604080832085845290915290208881554288016001820155603954610f80908a6112a8565b603955603a54610f90908a6112a8565b603a556000610fb386610fad89610fa78d8f610c6e565b90610c6e565b90610cce565b905060008111610ffe576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b03881660009081526038602052604090205461102190826112a8565b6001600160a01b0389166000908152603860205260409020819055603d54908181028161104a57fe5b0414611091576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b603b5461109e90826112a8565b603b55604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b6110ff87611302565b84841161113d5760405162461bcd60e51b815260040180806020018281038252603a8152602001806115dd603a913960400191505060405180910390fd5b8383101561117c5760405162461bcd60e51b81526004018080602001828103825260228152602001806116a16022913960400191505060405180910390fd5b603d869055603e869055603f8490556040829055604185905560428390556111a38161141a565b50505050505050565b600081836112385760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156111fd5781810151838201526020016111e5565b50505050905090810190601f16801561122a5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161124457fe5b0495945050505050565b600081848411156112a05760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156111fd5781810151838201526020016111e5565b505050900390565b600082820183811015610cc7576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600154610100900460ff168061131b575061131b611474565b80611329575060015460ff16155b6113645760405162461bcd60e51b815260040180806020018281038252602e8152602001806115af602e913960400191505060405180910390fd5b600154610100900460ff1615801561138e576001805460ff1961ff00199091166101001716811790555b6001600160a01b0382166113e9576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015611416576001805461ff00191690555b5050565b6000541561146f576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b303b1590565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106114bb5782800160ff198235161785556114e8565b828001600101855582156114e8579182015b828111156114e85782358255916020019190600101906114cd565b506114f49291506114f8565b5090565b5b808211156114f457600081556001016114f956fe63616c6c20746f2065787465726e616c20636f6e74726163742073686f756c6420737563636565646c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f64636c61696d696e6720747769636520666f72207468652073616d652062656e6566696369617279206973206e6f7420616c6c6f77656472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d655f636c61696d696e67456e6454696d652073686f756c642062652067726561746572207468616e205f636c61696d696e67537461727454696d65a26469706673582212200f214f5b8c670eeee30fca80d4d4694ebf6f7f3ba48d40ecbe3fad3e6834a56064736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ExternalTokenLockerMock.json b/contracts/0.1.2-rc.8/ExternalTokenLockerMock.json new file mode 100644 index 00000000..b5493bc0 --- /dev/null +++ b/contracts/0.1.2-rc.8/ExternalTokenLockerMock.json @@ -0,0 +1,128 @@ +{ + "contractName": "ExternalTokenLockerMock", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "lock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "lockedTokenBalances", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610647806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80638b525d0c1161005b5780638b525d0c146100f05780638da5cb5b14610116578063c4d66de81461013a578063f2fde38b146101605761007d565b806366dfbfb41461008257806370a08231146100b0578063715018a6146100e8575b600080fd5b6100ae6004803603604081101561009857600080fd5b50803590602001356001600160a01b0316610186565b005b6100d6600480360360208110156100c657600080fd5b50356001600160a01b031661020a565b60408051918252519081900360200190f35b6100ae610225565b6100d66004803603602081101561010657600080fd5b50356001600160a01b03166102d9565b61011e6102eb565b604080516001600160a01b039092168252519081900360200190f35b6100ae6004803603602081101561015057600080fd5b50356001600160a01b03166102fa565b6100ae6004803603602081101561017657600080fd5b50356001600160a01b03166103ae565b61018e6104b9565b6065546001600160a01b039081169116146101f0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0316600090815260976020526040902055565b6001600160a01b031660009081526097602052604090205490565b61022d6104b9565b6065546001600160a01b0390811691161461028f576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b60976020526000908152604090205481565b6065546001600160a01b031690565b600054610100900460ff168061031357506103136104bd565b80610321575060005460ff16155b61035c5760405162461bcd60e51b815260040180806020018281038252602e8152602001806105e4602e913960400191505060405180910390fd5b600054610100900460ff16158015610387576000805460ff1961ff0019909116610100171660011790555b61038f6104c3565b610398826103ae565b80156103aa576000805461ff00191690555b5050565b6103b66104b9565b6065546001600160a01b03908116911614610418576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661045d5760405162461bcd60e51b81526004018080602001828103825260268152602001806105be6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806104dc57506104dc6104bd565b806104ea575060005460ff16155b6105255760405162461bcd60e51b815260040180806020018281038252602e8152602001806105e4602e913960400191505060405180910390fd5b600054610100900460ff16158015610550576000805460ff1961ff0019909116610100171660011790555b600061055a6104b9565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156105ba576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212200b639548767a7fa1cfcd948b76fd3a90f006c51ce48feba5295b8632de7ceae464736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80638b525d0c1161005b5780638b525d0c146100f05780638da5cb5b14610116578063c4d66de81461013a578063f2fde38b146101605761007d565b806366dfbfb41461008257806370a08231146100b0578063715018a6146100e8575b600080fd5b6100ae6004803603604081101561009857600080fd5b50803590602001356001600160a01b0316610186565b005b6100d6600480360360208110156100c657600080fd5b50356001600160a01b031661020a565b60408051918252519081900360200190f35b6100ae610225565b6100d66004803603602081101561010657600080fd5b50356001600160a01b03166102d9565b61011e6102eb565b604080516001600160a01b039092168252519081900360200190f35b6100ae6004803603602081101561015057600080fd5b50356001600160a01b03166102fa565b6100ae6004803603602081101561017657600080fd5b50356001600160a01b03166103ae565b61018e6104b9565b6065546001600160a01b039081169116146101f0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0316600090815260976020526040902055565b6001600160a01b031660009081526097602052604090205490565b61022d6104b9565b6065546001600160a01b0390811691161461028f576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b60976020526000908152604090205481565b6065546001600160a01b031690565b600054610100900460ff168061031357506103136104bd565b80610321575060005460ff16155b61035c5760405162461bcd60e51b815260040180806020018281038252602e8152602001806105e4602e913960400191505060405180910390fd5b600054610100900460ff16158015610387576000805460ff1961ff0019909116610100171660011790555b61038f6104c3565b610398826103ae565b80156103aa576000805461ff00191690555b5050565b6103b66104b9565b6065546001600160a01b03908116911614610418576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661045d5760405162461bcd60e51b81526004018080602001828103825260268152602001806105be6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806104dc57506104dc6104bd565b806104ea575060005460ff16155b6105255760405162461bcd60e51b815260040180806020018281038252602e8152602001806105e4602e913960400191505060405180910390fd5b600054610100900460ff16158015610550576000805460ff1961ff0019909116610100171660011790555b600061055a6104b9565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156105ba576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212200b639548767a7fa1cfcd948b76fd3a90f006c51ce48feba5295b8632de7ceae464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/FixedReputationAllocation.json b/contracts/0.1.2-rc.8/FixedReputationAllocation.json new file mode 100644 index 00000000..deaf4091 --- /dev/null +++ b/contracts/0.1.2-rc.8/FixedReputationAllocation.json @@ -0,0 +1,294 @@ +{ + "contractName": "FixedReputationAllocation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "BeneficiaryAddressAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + } + ], + "name": "addBeneficiaries", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "addBeneficiary", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "beneficiaries", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "beneficiaryReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "enable", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isEnable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "numberOfBeneficiaries", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610e28806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80635aef7de6116100a25780639e3d87cd116100715780639e3d87cd146102a9578063a3907d71146102e3578063d044de63146102eb578063ed1ff6d8146102f3578063f2fde38b146102fb5761010b565b80635aef7de61461026b578063715018a6146102735780638da5cb5b1461027b57806395a2251f146102835761010b565b80634bb77d68116100de5780634bb77d68146101905780634ea2c7ec14610198578063590411da146101a05780635926651d146102455761010b565b8063015677391461011057806326e9a57e1461014a5780633d1678f4146101645780633edf7ca11461016c575b600080fd5b6101366004803603602081101561012657600080fd5b50356001600160a01b0316610321565b604080519115158252519081900360200190f35b610152610336565b60408051918252519081900360200190f35b61015261033c565b610174610342565b604080516001600160a01b039092168252519081900360200190f35b610136610351565b61015261035a565b610243600480360360208110156101b657600080fd5b8101906020810181356401000000008111156101d157600080fd5b8201836020820111156101e357600080fd5b8035906020019184602083028401116401000000008311171561020557600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610360945050505050565b005b6102436004803603602081101561025b57600080fd5b50356001600160a01b03166103ec565b6101746104ff565b61024361050e565b6101746105b0565b6101366004803603602081101561029957600080fd5b50356001600160a01b03166105bf565b610243600480360360808110156102bf57600080fd5b506001600160a01b038135811691602081013591604082013591606001351661086c565b610243610896565b61015261090f565b610152610915565b6102436004803603602081101561031157600080fd5b50356001600160a01b031661091b565b609a6020526000908152604090205460ff1681565b609d5481565b609f5481565b6098546001600160a01b031681565b609c5460ff1681565b60995481565b610368610a14565b6065546001600160a01b039081169116146103b8576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b60005b81518110156103e8576103e08282815181106103d357fe5b60200260200101516103ec565b6001016103bb565b5050565b6103f4610a14565b6065546001600160a01b03908116911614610444576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b609c5460ff16156104865760405162461bcd60e51b815260040180806020018281038252602e815260200180610d1b602e913960400191505060405180910390fd5b6001600160a01b0381166000908152609a602052604090205460ff166104fc576001600160a01b0381166000818152609a6020526040808220805460ff19166001908117909155609d80549091019055517f95b0b3bbe2a97e90a67cbf83ff77fbde1eb5b70051247f9d1a62822ccdc919979190a25b50565b6097546001600160a01b031681565b610516610a14565b6065546001600160a01b03908116911614610566576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b609c5460009060ff16610610576040805162461bcd60e51b81526020600482015260146024820152737265717569726520746f20626520656e61626c6560601b604482015290519081900360640190fd5b6001600160a01b0382166000908152609a602052604090205460ff166106675760405162461bcd60e51b8152600401808060200182810382526036815260200180610dbd6036913960400191505060405180910390fd5b6001600160a01b0382166000908152609a60205260409020805460ff19169055609f5442116106dd576040805162461bcd60e51b815260206004820152601e60248201527f72657175697265206e6f77203e2072656465656d456e61626c6554696d650000604482015290519081900360640190fd5b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561072b57600080fd5b505afa15801561073f573d6000803e3d6000fd5b505050506040513d602081101561075557600080fd5b5051609e546040805163dea9e24d60e01b815260048101929092526001600160a01b038581166024840152905192169163dea9e24d916044808201926020929091908290030181600087803b1580156107ad57600080fd5b505af11580156107c1573d6000803e3d6000fd5b505050506040513d60208110156107d757600080fd5b5051610823576040805162461bcd60e51b81526020600482015260166024820152751b5a5b9d081c995c1d5d185d1a5bdb8819985a5b195960521b604482015290519081900360640190fd5b609e5460408051918252516001600160a01b038416917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a2506001919050565b61087584610a18565b609b839055609f829055610887610b30565b6108908161091b565b50505050565b61089e610a14565b6065546001600160a01b039081169116146108ee576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b609c805460ff19166001179055609d54609b5461090a91610c29565b609e55565b609e5481565b609b5481565b610923610a14565b6065546001600160a01b03908116911614610973576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b6001600160a01b0381166109b85760405162461bcd60e51b8152600401808060200182810382526026815260200180610d496026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b600054610100900460ff1680610a315750610a31610c72565b80610a3f575060005460ff16155b610a7a5760405162461bcd60e51b815260040180806020018281038252602e815260200180610d8f602e913960400191505060405180910390fd5b600054610100900460ff16158015610aa5576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610b00576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b609780546001600160a01b0319166001600160a01b03841617905580156103e8576000805461ff00191690555050565b600054610100900460ff1680610b495750610b49610c72565b80610b57575060005460ff16155b610b925760405162461bcd60e51b815260040180806020018281038252602e815260200180610d8f602e913960400191505060405180910390fd5b600054610100900460ff16158015610bbd576000805460ff1961ff0019909116610100171660011790555b6000610bc7610a14565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156104fc576000805461ff001916905550565b6000610c6b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610c78565b9392505050565b303b1590565b60008183610d045760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cc9578181015183820152602001610cb1565b50505050905090810190601f168015610cf65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610d1057fe5b049594505050505056fe63616e206164642062656e6566696369617279206f6e6c79206966206e6f7420616c726561647920656e61626c654f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656472657175697265205f62656e656669636961727920746f20657869737420696e207468652062656e65666963696172696573206d6170a26469706673582212202f8a449a5523990f2aa1ec74a2838b93cf16b17a246607ee016e75bb31fc246b64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80635aef7de6116100a25780639e3d87cd116100715780639e3d87cd146102a9578063a3907d71146102e3578063d044de63146102eb578063ed1ff6d8146102f3578063f2fde38b146102fb5761010b565b80635aef7de61461026b578063715018a6146102735780638da5cb5b1461027b57806395a2251f146102835761010b565b80634bb77d68116100de5780634bb77d68146101905780634ea2c7ec14610198578063590411da146101a05780635926651d146102455761010b565b8063015677391461011057806326e9a57e1461014a5780633d1678f4146101645780633edf7ca11461016c575b600080fd5b6101366004803603602081101561012657600080fd5b50356001600160a01b0316610321565b604080519115158252519081900360200190f35b610152610336565b60408051918252519081900360200190f35b61015261033c565b610174610342565b604080516001600160a01b039092168252519081900360200190f35b610136610351565b61015261035a565b610243600480360360208110156101b657600080fd5b8101906020810181356401000000008111156101d157600080fd5b8201836020820111156101e357600080fd5b8035906020019184602083028401116401000000008311171561020557600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610360945050505050565b005b6102436004803603602081101561025b57600080fd5b50356001600160a01b03166103ec565b6101746104ff565b61024361050e565b6101746105b0565b6101366004803603602081101561029957600080fd5b50356001600160a01b03166105bf565b610243600480360360808110156102bf57600080fd5b506001600160a01b038135811691602081013591604082013591606001351661086c565b610243610896565b61015261090f565b610152610915565b6102436004803603602081101561031157600080fd5b50356001600160a01b031661091b565b609a6020526000908152604090205460ff1681565b609d5481565b609f5481565b6098546001600160a01b031681565b609c5460ff1681565b60995481565b610368610a14565b6065546001600160a01b039081169116146103b8576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b60005b81518110156103e8576103e08282815181106103d357fe5b60200260200101516103ec565b6001016103bb565b5050565b6103f4610a14565b6065546001600160a01b03908116911614610444576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b609c5460ff16156104865760405162461bcd60e51b815260040180806020018281038252602e815260200180610d1b602e913960400191505060405180910390fd5b6001600160a01b0381166000908152609a602052604090205460ff166104fc576001600160a01b0381166000818152609a6020526040808220805460ff19166001908117909155609d80549091019055517f95b0b3bbe2a97e90a67cbf83ff77fbde1eb5b70051247f9d1a62822ccdc919979190a25b50565b6097546001600160a01b031681565b610516610a14565b6065546001600160a01b03908116911614610566576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b609c5460009060ff16610610576040805162461bcd60e51b81526020600482015260146024820152737265717569726520746f20626520656e61626c6560601b604482015290519081900360640190fd5b6001600160a01b0382166000908152609a602052604090205460ff166106675760405162461bcd60e51b8152600401808060200182810382526036815260200180610dbd6036913960400191505060405180910390fd5b6001600160a01b0382166000908152609a60205260409020805460ff19169055609f5442116106dd576040805162461bcd60e51b815260206004820152601e60248201527f72657175697265206e6f77203e2072656465656d456e61626c6554696d650000604482015290519081900360640190fd5b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561072b57600080fd5b505afa15801561073f573d6000803e3d6000fd5b505050506040513d602081101561075557600080fd5b5051609e546040805163dea9e24d60e01b815260048101929092526001600160a01b038581166024840152905192169163dea9e24d916044808201926020929091908290030181600087803b1580156107ad57600080fd5b505af11580156107c1573d6000803e3d6000fd5b505050506040513d60208110156107d757600080fd5b5051610823576040805162461bcd60e51b81526020600482015260166024820152751b5a5b9d081c995c1d5d185d1a5bdb8819985a5b195960521b604482015290519081900360640190fd5b609e5460408051918252516001600160a01b038416917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a2506001919050565b61087584610a18565b609b839055609f829055610887610b30565b6108908161091b565b50505050565b61089e610a14565b6065546001600160a01b039081169116146108ee576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b609c805460ff19166001179055609d54609b5461090a91610c29565b609e55565b609e5481565b609b5481565b610923610a14565b6065546001600160a01b03908116911614610973576040805162461bcd60e51b81526020600482018190526024820152600080516020610d6f833981519152604482015290519081900360640190fd5b6001600160a01b0381166109b85760405162461bcd60e51b8152600401808060200182810382526026815260200180610d496026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b600054610100900460ff1680610a315750610a31610c72565b80610a3f575060005460ff16155b610a7a5760405162461bcd60e51b815260040180806020018281038252602e815260200180610d8f602e913960400191505060405180910390fd5b600054610100900460ff16158015610aa5576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610b00576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b609780546001600160a01b0319166001600160a01b03841617905580156103e8576000805461ff00191690555050565b600054610100900460ff1680610b495750610b49610c72565b80610b57575060005460ff16155b610b925760405162461bcd60e51b815260040180806020018281038252602e815260200180610d8f602e913960400191505060405180910390fd5b600054610100900460ff16158015610bbd576000805460ff1961ff0019909116610100171660011790555b6000610bc7610a14565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156104fc576000805461ff001916905550565b6000610c6b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610c78565b9392505050565b303b1590565b60008183610d045760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610cc9578181015183820152602001610cb1565b50505050905090810190601f168015610cf65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610d1057fe5b049594505050505056fe63616e206164642062656e6566696369617279206f6e6c79206966206e6f7420616c726561647920656e61626c654f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656472657175697265205f62656e656669636961727920746f20657869737420696e207468652062656e65666963696172696573206d6170a26469706673582212202f8a449a5523990f2aa1ec74a2838b93cf16b17a246607ee016e75bb31fc246b64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/FundingRequest.json b/contracts/0.1.2-rc.8/FundingRequest.json new file mode 100644 index 00000000..00999add --- /dev/null +++ b/contracts/0.1.2-rc.8/FundingRequest.json @@ -0,0 +1,494 @@ +{ + "contractName": "FundingRequest", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewFundingProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_decision", + "type": "bool" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "inputs": [], + "name": "FUNDED_BEFORE_DEADLINE_KEY", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "FUNDED_BEFORE_DEADLINE_VALUE", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "fundingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + }, + { + "internalType": "contract IERC20", + "name": "_fundingToken", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "address payable", + "name": "beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "string", + "name": "descriptionHash", + "type": "string" + }, + { + "internalType": "uint256", + "name": "executionTime", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeem", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611f80806100206000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80639588378e116100a2578063bea75f2811610071578063bea75f281461046c578063d29b5d2f146104a8578063e4392dbb146104da578063eda1122c146104e2578063f81f8bf6146104ff57610116565b80639588378e1461039d578063985e313f146103c95780639d4c162d14610418578063b551c3731461044f57610116565b80636b8eb403116100e95780636b8eb4031461021457806378065f27146102405780637a5cb92c146102485780637b166f60146102655780639537ba0c1461032057610116565b806332ed5b121461011b5780633edf7ca1146101ce5780634ea2c7ec146101f25780635aef7de61461020c575b600080fd5b6101386004803603602081101561013157600080fd5b5035610531565b60405180856001600160a01b0316815260200184815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015610190578181015183820152602001610178565b50505050905090810190601f1680156101bd5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b6101d66105ed565b604080516001600160a01b039092168252519081900360200190f35b6101fa6105fc565b60408051918252519081900360200190f35b6101d6610602565b6101fa6004803603604081101561022a57600080fd5b506001600160a01b038135169060200135610611565b6101d66106eb565b6101fa6004803603602081101561025e57600080fd5b50356106fa565b6101fa6004803603606081101561027b57600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156102ab57600080fd5b8201836020820111156102bd57600080fd5b803590602001918460018302840111640100000000831117156102df57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061070c945050505050565b610328610b68565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561036257818101518382015260200161034a565b50505050905090810190601f16801561038f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101fa600480360360408110156103b357600080fd5b506001600160a01b038135169060200135610b88565b61041660048036036102008110156103e057600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0013516610cb9565b005b61043b6004803603604081101561042e57600080fd5b5080359060200135610d17565b604080519115158252519081900360200190f35b6101fa6004803603602081101561046557600080fd5b5035610e1c565b61043b6004803603608081101561048257600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356110b8565b61043b600480360360608110156104be57600080fd5b508035906001600160a01b03602082013516906040013561121c565b610328611377565b610416600480360360208110156104f857600080fd5b50356113a9565b61043b6004803603606081101561051557600080fd5b508035906001600160a01b0360208201351690604001356117f4565b60376020908152600091825260409182902080546001808301546002808501805488516101009582161595909502600019011691909104601f81018790048702840187019097528683526001600160a01b039093169590949192918301828280156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b5050505050908060030154905084565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b0316331461066a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156106b757600080fd5b505afa1580156106cb573d6000803e3d6000fd5b505050506040513d60208110156106e157600080fd5b5051949350505050565b6038546001600160a01b031681565b60366020526000908152604090205481565b6040805180820182526004808252635452554560e01b60208084019190915260335484518086018652601681527546554e4445445f4245464f52455f444541444c494e4560501b81840190815295516358cb548b60e01b81529384019283528051602485015280516000966108fb96956001600160a01b03909416946358cb548b9490928392604490920191908083838d5b838110156107b657818101518382015260200161079e565b50505050905090810190601f1680156107e35780820380516001836020036101000a031916815260200191505b509250505060006040518083038186803b15801561080057600080fd5b505afa158015610814573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561083d57600080fd5b810190808051604051939291908464010000000082111561085d57600080fd5b90830190602082018581111561087257600080fd5b825164010000000081118282018810171561088c57600080fd5b82525081516020918201929091019080838360005b838110156108b95781810151838201526020016108a1565b50505050905090810190601f1680156108e65780820380516001836020036101000a031916815260200191505b5060405250505061191a90919063ffffffff16565b61094c576040805162461bcd60e51b815260206004820152601a60248201527f66756e64696e67206973206e6f7420616c6c6f77656420796574000000000000604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156109b757600080fd5b505af11580156109cb573d6000803e3d6000fd5b505050506040513d60208110156109e157600080fd5b50519050846001600160a01b0381166109f75750335b6109ff611d9f565b50604080516080810182526001600160a01b03838116825260208083018981528385018981526000606086018190528881526037845295909520845181546001600160a01b03191694169390931783555160018301559251805192938493610a6d9260028501920190611dd0565b506060820151816003015590505082603360009054906101000a90046001600160a01b03166001600160a01b03167f5521e19c8b6a114aa1b48b207fe948b6adb2c015a14db582702484d4ed847bf984898960405180846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610b11578181015183820152602001610af9565b50505050905090810190601f168015610b3e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a350506000818152603660205260409020439055949350505050565b604051806040016040528060048152602001635452554560e01b81525081565b60345460009082906001600160a01b03163314610be1576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2f57600080fd5b505afa158015610c43573d6000803e3d6000fd5b505050506040513d6020811015610c5957600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156106b757600080fd5b610cf086868487600b806020026040519081016040528092919082600b60200280828437600092019190915250899150611a139050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b03163314610d70576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b60008481526037602052604090206003015415610d8c57600080fd5b6000848152603760205260409020546001600160a01b0316610dad57600080fd5b8260011415610dcc576000848152603760205260409020426003909101555b60335460408051600186148152905186926001600160a01b0316917fd8b58d7c4ba1519b89f0a4b59f85c776d1bb2876a5087a4e604403c4c3c69f6d919081900360200190a35060019392505050565b60345460009082906001600160a01b03163314610e75576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ec357600080fd5b505afa158015610ed7573d6000803e3d6000fd5b505050506040513d6020811015610eed57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610f3757600080fd5b505afa158015610f4b573d6000803e3d6000fd5b505050506040513d6020811015610f6157600080fd5b5051610fb4576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561100257600080fd5b505afa158015611016573d6000803e3d6000fd5b505050506040513d602081101561102c57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561108557600080fd5b505afa158015611099573d6000803e3d6000fd5b505050506040513d60208110156110af57600080fd5b50519392505050565b60345460009082906001600160a01b03163314611111576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561115f57600080fd5b505afa158015611173573d6000803e3d6000fd5b505050506040513d602081101561118957600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156111e657600080fd5b505af11580156111fa573d6000803e3d6000fd5b505050506040513d602081101561121057600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611275576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156112c357600080fd5b505afa1580156112d7573d6000803e3d6000fd5b505050506040513d60208110156112ed57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561134257600080fd5b505af1158015611356573d6000803e3d6000fd5b505050506040513d602081101561136c57600080fd5b505195945050505050565b6040518060400160405280601681526020017546554e4445445f4245464f52455f444541444c494e4560501b81525081565b6113b1611d9f565b600082815260376020908152604091829020825160808101845281546001600160a01b03168152600180830154828501526002808401805487516101009482161594909402600019011691909104601f8101869004860283018601875280835292959394938601939192909183018282801561146e5780601f106114435761010080835404028352916020019161146e565b820191906000526020600020905b81548152906001019060200180831161145157829003601f168201915b5050509183525050600391820154602091820152600085815260379091526040902090810154919250906114d35760405162461bcd60e51b8152600401808060200182810382526027815260200180611eab6027913960400191505060405180910390fd5b600060038201556038546001600160a01b031661162757603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561153857600080fd5b505afa15801561154c573d6000803e3d6000fd5b505050506040513d602081101561156257600080fd5b505160208381015184516040805163658b6a5160e11b815260048101939093526001600160a01b0391821660248401525193169263cb16d4a2926044808401939192918290030181600087803b1580156115bb57600080fd5b505af11580156115cf573d6000803e3d6000fd5b505050506040513d60208110156115e557600080fd5b50516116225760405162461bcd60e51b8152600401808060200182810382526029815260200180611ed26029913960400191505060405180910390fd5b611769565b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561167557600080fd5b505afa158015611689573d6000803e3d6000fd5b505050506040513d602081101561169f57600080fd5b505160385483516020858101516040805163dab0efff60e01b81526001600160a01b0395861660048201529385166024850152604484019190915251929093169263dab0efff926064808401938290030181600087803b15801561170257600080fd5b505af1158015611716573d6000803e3d6000fd5b505050506040513d602081101561172c57600080fd5b50516117695760405162461bcd60e51b8152600401808060200182810382526022815260200180611f296022913960400191505060405180910390fd5b815160335460208085015160408051918252516001600160a01b0394851694889416927f075749b8acc7384f25535cc6f8f122e4d5129595395cb6fbcbf8b15006069eda928290030190a4600083815260376020526040812080546001600160a01b031916815560018101829055906117e56002830182611e4e565b60038201600090555050505050565b60345460009082906001600160a01b0316331461184d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561189b57600080fd5b505afa1580156118af573d6000803e3d6000fd5b505050506040513d60208110156118c557600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561134257600080fd5b6000815183511461192d57506000611a0d565b816040516020018082805190602001908083835b602083106119605780518252601f199092019160209182019101611941565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106119ce5780518252601f1990920191602091820191016119af565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b6001600160a01b038416611a6e576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b611a7785611c80565b603480546001600160a01b0319166001600160a01b03861617905582611c73576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015611ae1578181015183820152602001611ac9565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b158015611b1357600080fd5b505afa158015611b27573d6000803e3d6000fd5b505050506040513d6020811015611b3d57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015611b8f57600080fd5b505afa158015611ba3573d6000803e3d6000fd5b505050506040513d6101a0811015611bba57600080fd5b5051905080611c6c57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015611c0b578181015183820152602001611bf3565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611c3f57600080fd5b505af1158015611c53573d6000803e3d6000fd5b505050506040513d6020811015611c6957600080fd5b50505b5050611c79565b60358390555b5050505050565b600054610100900460ff1680611c995750611c99611d99565b80611ca7575060005460ff16155b611ce25760405162461bcd60e51b815260040180806020018281038252602e815260200180611efb602e913960400191505060405180910390fd5b600054610100900460ff16158015611d0d576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611d68576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611d95576000805461ff00191690555b5050565b303b1590565b604051806080016040528060006001600160a01b031681526020016000815260200160608152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611e1157805160ff1916838001178555611e3e565b82800160010185558215611e3e579182015b82811115611e3e578251825591602001919060010190611e23565b50611e4a929150611e95565b5090565b50805460018160011615610100020316600290046000825580601f10611e745750611e92565b601f016020900490600052602060002090810190611e929190611e95565b50565b5b80821115611e4a5760008155600101611e9656fe70726f706f73616c20646f6573206e6f74206578697374206f72206e6f7420617070726f7665646661696c656420746f207472616e73666572206e6574776f726b20746f6b656e2066726f6d2044414f436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646661696c656420746f207472616e7366657220746f6b656e732066726f6d2044414fa26469706673582212205198cd526db957ff12e9e23b7b94d6275e0bf4d8d943d617214f973d39fc3ead64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101165760003560e01c80639588378e116100a2578063bea75f2811610071578063bea75f281461046c578063d29b5d2f146104a8578063e4392dbb146104da578063eda1122c146104e2578063f81f8bf6146104ff57610116565b80639588378e1461039d578063985e313f146103c95780639d4c162d14610418578063b551c3731461044f57610116565b80636b8eb403116100e95780636b8eb4031461021457806378065f27146102405780637a5cb92c146102485780637b166f60146102655780639537ba0c1461032057610116565b806332ed5b121461011b5780633edf7ca1146101ce5780634ea2c7ec146101f25780635aef7de61461020c575b600080fd5b6101386004803603602081101561013157600080fd5b5035610531565b60405180856001600160a01b0316815260200184815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015610190578181015183820152602001610178565b50505050905090810190601f1680156101bd5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b6101d66105ed565b604080516001600160a01b039092168252519081900360200190f35b6101fa6105fc565b60408051918252519081900360200190f35b6101d6610602565b6101fa6004803603604081101561022a57600080fd5b506001600160a01b038135169060200135610611565b6101d66106eb565b6101fa6004803603602081101561025e57600080fd5b50356106fa565b6101fa6004803603606081101561027b57600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156102ab57600080fd5b8201836020820111156102bd57600080fd5b803590602001918460018302840111640100000000831117156102df57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061070c945050505050565b610328610b68565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561036257818101518382015260200161034a565b50505050905090810190601f16801561038f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101fa600480360360408110156103b357600080fd5b506001600160a01b038135169060200135610b88565b61041660048036036102008110156103e057600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0013516610cb9565b005b61043b6004803603604081101561042e57600080fd5b5080359060200135610d17565b604080519115158252519081900360200190f35b6101fa6004803603602081101561046557600080fd5b5035610e1c565b61043b6004803603608081101561048257600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356110b8565b61043b600480360360608110156104be57600080fd5b508035906001600160a01b03602082013516906040013561121c565b610328611377565b610416600480360360208110156104f857600080fd5b50356113a9565b61043b6004803603606081101561051557600080fd5b508035906001600160a01b0360208201351690604001356117f4565b60376020908152600091825260409182902080546001808301546002808501805488516101009582161595909502600019011691909104601f81018790048702840187019097528683526001600160a01b039093169590949192918301828280156105dd5780601f106105b2576101008083540402835291602001916105dd565b820191906000526020600020905b8154815290600101906020018083116105c057829003601f168201915b5050505050908060030154905084565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b0316331461066a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156106b757600080fd5b505afa1580156106cb573d6000803e3d6000fd5b505050506040513d60208110156106e157600080fd5b5051949350505050565b6038546001600160a01b031681565b60366020526000908152604090205481565b6040805180820182526004808252635452554560e01b60208084019190915260335484518086018652601681527546554e4445445f4245464f52455f444541444c494e4560501b81840190815295516358cb548b60e01b81529384019283528051602485015280516000966108fb96956001600160a01b03909416946358cb548b9490928392604490920191908083838d5b838110156107b657818101518382015260200161079e565b50505050905090810190601f1680156107e35780820380516001836020036101000a031916815260200191505b509250505060006040518083038186803b15801561080057600080fd5b505afa158015610814573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561083d57600080fd5b810190808051604051939291908464010000000082111561085d57600080fd5b90830190602082018581111561087257600080fd5b825164010000000081118282018810171561088c57600080fd5b82525081516020918201929091019080838360005b838110156108b95781810151838201526020016108a1565b50505050905090810190601f1680156108e65780820380516001836020036101000a031916815260200191505b5060405250505061191a90919063ffffffff16565b61094c576040805162461bcd60e51b815260206004820152601a60248201527f66756e64696e67206973206e6f7420616c6c6f77656420796574000000000000604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156109b757600080fd5b505af11580156109cb573d6000803e3d6000fd5b505050506040513d60208110156109e157600080fd5b50519050846001600160a01b0381166109f75750335b6109ff611d9f565b50604080516080810182526001600160a01b03838116825260208083018981528385018981526000606086018190528881526037845295909520845181546001600160a01b03191694169390931783555160018301559251805192938493610a6d9260028501920190611dd0565b506060820151816003015590505082603360009054906101000a90046001600160a01b03166001600160a01b03167f5521e19c8b6a114aa1b48b207fe948b6adb2c015a14db582702484d4ed847bf984898960405180846001600160a01b0316815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610b11578181015183820152602001610af9565b50505050905090810190601f168015610b3e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a350506000818152603660205260409020439055949350505050565b604051806040016040528060048152602001635452554560e01b81525081565b60345460009082906001600160a01b03163314610be1576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2f57600080fd5b505afa158015610c43573d6000803e3d6000fd5b505050506040513d6020811015610c5957600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156106b757600080fd5b610cf086868487600b806020026040519081016040528092919082600b60200280828437600092019190915250899150611a139050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b03163314610d70576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b60008481526037602052604090206003015415610d8c57600080fd5b6000848152603760205260409020546001600160a01b0316610dad57600080fd5b8260011415610dcc576000848152603760205260409020426003909101555b60335460408051600186148152905186926001600160a01b0316917fd8b58d7c4ba1519b89f0a4b59f85c776d1bb2876a5087a4e604403c4c3c69f6d919081900360200190a35060019392505050565b60345460009082906001600160a01b03163314610e75576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ec357600080fd5b505afa158015610ed7573d6000803e3d6000fd5b505050506040513d6020811015610eed57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610f3757600080fd5b505afa158015610f4b573d6000803e3d6000fd5b505050506040513d6020811015610f6157600080fd5b5051610fb4576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561100257600080fd5b505afa158015611016573d6000803e3d6000fd5b505050506040513d602081101561102c57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561108557600080fd5b505afa158015611099573d6000803e3d6000fd5b505050506040513d60208110156110af57600080fd5b50519392505050565b60345460009082906001600160a01b03163314611111576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561115f57600080fd5b505afa158015611173573d6000803e3d6000fd5b505050506040513d602081101561118957600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156111e657600080fd5b505af11580156111fa573d6000803e3d6000fd5b505050506040513d602081101561121057600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611275576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156112c357600080fd5b505afa1580156112d7573d6000803e3d6000fd5b505050506040513d60208110156112ed57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561134257600080fd5b505af1158015611356573d6000803e3d6000fd5b505050506040513d602081101561136c57600080fd5b505195945050505050565b6040518060400160405280601681526020017546554e4445445f4245464f52455f444541444c494e4560501b81525081565b6113b1611d9f565b600082815260376020908152604091829020825160808101845281546001600160a01b03168152600180830154828501526002808401805487516101009482161594909402600019011691909104601f8101869004860283018601875280835292959394938601939192909183018282801561146e5780601f106114435761010080835404028352916020019161146e565b820191906000526020600020905b81548152906001019060200180831161145157829003601f168201915b5050509183525050600391820154602091820152600085815260379091526040902090810154919250906114d35760405162461bcd60e51b8152600401808060200182810382526027815260200180611eab6027913960400191505060405180910390fd5b600060038201556038546001600160a01b031661162757603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561153857600080fd5b505afa15801561154c573d6000803e3d6000fd5b505050506040513d602081101561156257600080fd5b505160208381015184516040805163658b6a5160e11b815260048101939093526001600160a01b0391821660248401525193169263cb16d4a2926044808401939192918290030181600087803b1580156115bb57600080fd5b505af11580156115cf573d6000803e3d6000fd5b505050506040513d60208110156115e557600080fd5b50516116225760405162461bcd60e51b8152600401808060200182810382526029815260200180611ed26029913960400191505060405180910390fd5b611769565b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561167557600080fd5b505afa158015611689573d6000803e3d6000fd5b505050506040513d602081101561169f57600080fd5b505160385483516020858101516040805163dab0efff60e01b81526001600160a01b0395861660048201529385166024850152604484019190915251929093169263dab0efff926064808401938290030181600087803b15801561170257600080fd5b505af1158015611716573d6000803e3d6000fd5b505050506040513d602081101561172c57600080fd5b50516117695760405162461bcd60e51b8152600401808060200182810382526022815260200180611f296022913960400191505060405180910390fd5b815160335460208085015160408051918252516001600160a01b0394851694889416927f075749b8acc7384f25535cc6f8f122e4d5129595395cb6fbcbf8b15006069eda928290030190a4600083815260376020526040812080546001600160a01b031916815560018101829055906117e56002830182611e4e565b60038201600090555050505050565b60345460009082906001600160a01b0316331461184d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561189b57600080fd5b505afa1580156118af573d6000803e3d6000fd5b505050506040513d60208110156118c557600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561134257600080fd5b6000815183511461192d57506000611a0d565b816040516020018082805190602001908083835b602083106119605780518252601f199092019160209182019101611941565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106119ce5780518252601f1990920191602091820191016119af565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001201490505b92915050565b6001600160a01b038416611a6e576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b611a7785611c80565b603480546001600160a01b0319166001600160a01b03861617905582611c73576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015611ae1578181015183820152602001611ac9565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b158015611b1357600080fd5b505afa158015611b27573d6000803e3d6000fd5b505050506040513d6020811015611b3d57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015611b8f57600080fd5b505afa158015611ba3573d6000803e3d6000fd5b505050506040513d6101a0811015611bba57600080fd5b5051905080611c6c57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015611c0b578181015183820152602001611bf3565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611c3f57600080fd5b505af1158015611c53573d6000803e3d6000fd5b505050506040513d6020811015611c6957600080fd5b50505b5050611c79565b60358390555b5050505050565b600054610100900460ff1680611c995750611c99611d99565b80611ca7575060005460ff16155b611ce25760405162461bcd60e51b815260040180806020018281038252602e815260200180611efb602e913960400191505060405180910390fd5b600054610100900460ff16158015611d0d576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611d68576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611d95576000805461ff00191690555b5050565b303b1590565b604051806080016040528060006001600160a01b031681526020016000815260200160608152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611e1157805160ff1916838001178555611e3e565b82800160010185558215611e3e579182015b82811115611e3e578251825591602001919060010190611e23565b50611e4a929150611e95565b5090565b50805460018160011615610100020316600290046000825580601f10611e745750611e92565b601f016020900490600052602060002090810190611e929190611e95565b50565b5b80821115611e4a5760008155600101611e9656fe70726f706f73616c20646f6573206e6f74206578697374206f72206e6f7420617070726f7665646661696c656420746f207472616e73666572206e6574776f726b20746f6b656e2066726f6d2044414f436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646661696c656420746f207472616e7366657220746f6b656e732066726f6d2044414fa26469706673582212205198cd526db957ff12e9e23b7b94d6275e0bf4d8d943d617214f973d39fc3ead64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/GenericScheme.json b/contracts/0.1.2-rc.8/GenericScheme.json new file mode 100644 index 00000000..e7e38d75 --- /dev/null +++ b/contracts/0.1.2-rc.8/GenericScheme.json @@ -0,0 +1,481 @@ +{ + "contractName": "GenericScheme", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_callData", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewCallProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_genericCallReturnValue", + "type": "bytes" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecutedByVotingMachine", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "contractToCall", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_contractToCall", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "bytes", + "name": "callData", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "exist", + "type": "bool" + }, + { + "internalType": "bool", + "name": "passed", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_callData", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeCall", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611d8a806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063b20d7c2611610097578063d29b5d2f11610066578063d29b5d2f146103dc578063d8145e2d1461040e578063e751f271146104bc578063f81f8bf6146104d957610100565b8063b20d7c2614610246578063b551c3731461024e578063bea75f281461026b578063cf65725d146102a757610100565b80637a5cb92c116100d35780637a5cb92c146101775780639588378e14610194578063985e313f146101c05780639d4c162d1461020f57610100565b80633edf7ca1146101055780634ea2c7ec146101295780635aef7de6146101435780636b8eb4031461014b575b600080fd5b61010d61050b565b604080516001600160a01b039092168252519081900360200190f35b61013161051a565b60408051918252519081900360200190f35b61010d610520565b6101316004803603604081101561016157600080fd5b506001600160a01b03813516906020013561052f565b6101316004803603602081101561018d57600080fd5b5035610609565b610131600480360360408110156101aa57600080fd5b506001600160a01b03813516906020013561061b565b61020d60048036036102008110156101d757600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e001351661074c565b005b6102326004803603604081101561022557600080fd5b50803590602001356107aa565b604080519115158252519081900360200190f35b61010d610999565b6101316004803603602081101561026457600080fd5b50356109a8565b6102326004803603608081101561028157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610c3f565b610131600480360360608110156102bd57600080fd5b8101906020810181356401000000008111156102d857600080fd5b8201836020820111156102ea57600080fd5b8035906020019184600183028401116401000000008311171561030c57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295843595909490935060408101925060200135905064010000000081111561036757600080fd5b82018360208201111561037957600080fd5b8035906020019184600183028401116401000000008311171561039b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610da3945050505050565b610232600480360360608110156103f257600080fd5b508035906001600160a01b036020820135169060400135611128565b61042b6004803603602081101561042457600080fd5b5035611283565b604051808060200185815260200184151581526020018315158152602001828103825286818151815260200191508051906020019080838360005b8381101561047e578181015183820152602001610466565b50505050905090810190601f1680156104ab5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b61020d600480360360208110156104d257600080fd5b503561133d565b610232600480360360608110156104ef57600080fd5b508035906001600160a01b036020820135169060400135611778565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610588576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105d557600080fd5b505afa1580156105e9573d6000803e3d6000fd5b505050506040513d60208110156105ff57600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610674576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106c257600080fd5b505afa1580156106d6573d6000803e3d6000fd5b505050506040513d60208110156106ec57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105d557600080fd5b61078386868487600b806020026040519081016040528092919082600b6020028082843760009201919091525089915061189e9050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b03163314610803576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152603760205260409020600281015460ff16610864576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff16156108ba576040805162461bcd60e51b815260206004820152601460248201527363616e6e6f74206578656375746520747769636560601b604482015290519081900360640190fd5b83600114156108e25760028101805461ff0019166101001790556108dd8561133d565b61094b565b6000858152603760205260408120906108fb8282611c26565b506000600182018190556002909101805461ffff1916905560335460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a35b60335460408051868152905187926001600160a01b0316917f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe919081900360200190a3506001949350505050565b6038546001600160a01b031681565b60345460009082906001600160a01b03163314610a01576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a4f57600080fd5b505afa158015610a63573d6000803e3d6000fd5b505050506040513d6020811015610a7957600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610ac357600080fd5b505afa158015610ad7573d6000803e3d6000fd5b505050506040513d6020811015610aed57600080fd5b5051610b3b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6020811015610bb357600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610c0c57600080fd5b505afa158015610c20573d6000803e3d6000fd5b505050506040513d6020811015610c3657600080fd5b50519392505050565b60345460009082906001600160a01b03163314610c98576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ce657600080fd5b505afa158015610cfa573d6000803e3d6000fd5b505050506040513d6020811015610d1057600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610d6d57600080fd5b505af1158015610d81573d6000803e3d6000fd5b505050506040513d6020811015610d9757600080fd5b50519695505050505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610de857600080fd5b505afa158015610dfc573d6000803e3d6000fd5b505050506040513d6020811015610e1257600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610e5c57600080fd5b505afa158015610e70573d6000803e3d6000fd5b505050506040513d6020811015610e8657600080fd5b5051610ed4576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610f3f57600080fd5b505af1158015610f53573d6000803e3d6000fd5b505050506040513d6020811015610f6957600080fd5b505160408051608081018252878152602081810188905260018284015260006060830181905284815260378252929092208151805194955091939092610fb3928492910190611c6d565b5060208281015160018301556040808401516002909301805460609586015115156101000261ff001995151560ff1990921691909117949094169390931790925560008481526036825282812043905560335483518084018a90528581528a5195810195909552895186956001600160a01b03909216947f36418f82d814fb021ca04ebdc2c4a3cd69f719851f597c489bca2ed245e8c8ad948c948c948c949093849390840192608085019291890191908190849084905b8381101561108357818101518382015260200161106b565b50505050905090810190601f1680156110b05780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b838110156110e35781810151838201526020016110cb565b50505050905090810190601f1680156111105780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a3949350505050565b60345460009082906001600160a01b03163314611181576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111cf57600080fd5b505afa1580156111e3573d6000803e3d6000fd5b505050506040513d60208110156111f957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561124e57600080fd5b505af1158015611262573d6000803e3d6000fd5b505050506040513d602081101561127857600080fd5b505195945050505050565b60376020908152600091825260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290929183919083018282801561131a5780601f106112ef5761010080835404028352916020019161131a565b820191906000526020600020905b8154815290600101906020018083116112fd57829003601f168201915b50505050600183015460029093015491929160ff80821692506101009091041684565b6000818152603760205260409020600281015460ff1661139e576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff166113e65760405162461bcd60e51b8152600401808060200182810382526026815260200180611d2f6026913960400191505060405180910390fd5b60028101805460ff1916905560335460408051638da5cb5b60e01b8152905160609260009283926001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561143f57600080fd5b505afa158015611453573d6000803e3d6000fd5b505050506040513d602081101561146957600080fd5b505160385460018681015460405163057e2c8b60e31b81526001600160a01b0393841660048201818152604483018490526060602484019081528b54600260001997821615610100029790970116959095046064840181905296975094871695632bf164589591948b949390916084909101908590801561152b5780601f106115005761010080835404028352916020019161152b565b820191906000526020600020905b81548152906001019060200180831161150e57829003601f168201915b5050945050505050600060405180830381600087803b15801561154d57600080fd5b505af1158015611561573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561158a57600080fd5b8151602083018051604051929492938301929190846401000000008211156115b157600080fd5b9083019060208201858111156115c657600080fd5b82516401000000008111828201881017156115e057600080fd5b82525081516020918201929091019080838360005b8381101561160d5781810151838201526020016115f5565b50505050905090810190601f16801561163a5780820380516001836020036101000a031916815260200191505b50604052509195509193505082159050611761576000858152603760205260408120906116678282611c26565b506000600182018190556002909101805461ffff1916905560335460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3603354604080516020808252865181830152865189946001600160a01b0316937f1c57c986b085f821f3126bc24b5aba57ed92fe545788a34925528295cef240159389939092839283019185019080838360005b8381101561172257818101518382015260200161170a565b50505050905090810190601f16801561174f5780820380516001836020036101000a031916815260200191505b509250505060405180910390a3611771565b60028401805460ff191660011790555b5050505050565b60345460009082906001600160a01b031633146117d1576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561181f57600080fd5b505afa158015611833573d6000803e3d6000fd5b505050506040513d602081101561184957600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561124e57600080fd5b6001600160a01b0384166118f9576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61190285611b07565b603480546001600160a01b0319166001600160a01b03861617905582611afe576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561196c578181015183820152602001611954565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561199e57600080fd5b505afa1580156119b2573d6000803e3d6000fd5b505050506040513d60208110156119c857600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015611a1a57600080fd5b505afa158015611a2e573d6000803e3d6000fd5b505050506040513d6101a0811015611a4557600080fd5b5051905080611af757604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015611a96578181015183820152602001611a7e565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611aca57600080fd5b505af1158015611ade573d6000803e3d6000fd5b505050506040513d6020811015611af457600080fd5b50505b5050611771565b50506035555050565b600054610100900460ff1680611b205750611b20611c20565b80611b2e575060005460ff16155b611b695760405162461bcd60e51b815260040180806020018281038252602e815260200180611d01602e913960400191505060405180910390fd5b600054610100900460ff16158015611b94576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611bef576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611c1c576000805461ff00191690555b5050565b303b1590565b50805460018160011615610100020316600290046000825580601f10611c4c5750611c6a565b601f016020900490600052602060002090810190611c6a9190611ceb565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611cae57805160ff1916838001178555611cdb565b82800160010185558215611cdb579182015b82811115611cdb578251825591602001919060010190611cc0565b50611ce7929150611ceb565b5090565b5b80821115611ce75760008155600101611cec56fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656470726f706f73616c206d7573742070617373656420627920766f74696e67206d616368696e65a2646970667358221220a4d97a1ee67519b4d508cb3ebf55a4b6d7e828467b705fc7de03255898265c9c64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c8063b20d7c2611610097578063d29b5d2f11610066578063d29b5d2f146103dc578063d8145e2d1461040e578063e751f271146104bc578063f81f8bf6146104d957610100565b8063b20d7c2614610246578063b551c3731461024e578063bea75f281461026b578063cf65725d146102a757610100565b80637a5cb92c116100d35780637a5cb92c146101775780639588378e14610194578063985e313f146101c05780639d4c162d1461020f57610100565b80633edf7ca1146101055780634ea2c7ec146101295780635aef7de6146101435780636b8eb4031461014b575b600080fd5b61010d61050b565b604080516001600160a01b039092168252519081900360200190f35b61013161051a565b60408051918252519081900360200190f35b61010d610520565b6101316004803603604081101561016157600080fd5b506001600160a01b03813516906020013561052f565b6101316004803603602081101561018d57600080fd5b5035610609565b610131600480360360408110156101aa57600080fd5b506001600160a01b03813516906020013561061b565b61020d60048036036102008110156101d757600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e001351661074c565b005b6102326004803603604081101561022557600080fd5b50803590602001356107aa565b604080519115158252519081900360200190f35b61010d610999565b6101316004803603602081101561026457600080fd5b50356109a8565b6102326004803603608081101561028157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610c3f565b610131600480360360608110156102bd57600080fd5b8101906020810181356401000000008111156102d857600080fd5b8201836020820111156102ea57600080fd5b8035906020019184600183028401116401000000008311171561030c57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295843595909490935060408101925060200135905064010000000081111561036757600080fd5b82018360208201111561037957600080fd5b8035906020019184600183028401116401000000008311171561039b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610da3945050505050565b610232600480360360608110156103f257600080fd5b508035906001600160a01b036020820135169060400135611128565b61042b6004803603602081101561042457600080fd5b5035611283565b604051808060200185815260200184151581526020018315158152602001828103825286818151815260200191508051906020019080838360005b8381101561047e578181015183820152602001610466565b50505050905090810190601f1680156104ab5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b61020d600480360360208110156104d257600080fd5b503561133d565b610232600480360360608110156104ef57600080fd5b508035906001600160a01b036020820135169060400135611778565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610588576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105d557600080fd5b505afa1580156105e9573d6000803e3d6000fd5b505050506040513d60208110156105ff57600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610674576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106c257600080fd5b505afa1580156106d6573d6000803e3d6000fd5b505050506040513d60208110156106ec57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105d557600080fd5b61078386868487600b806020026040519081016040528092919082600b6020028082843760009201919091525089915061189e9050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b03163314610803576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152603760205260409020600281015460ff16610864576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff16156108ba576040805162461bcd60e51b815260206004820152601460248201527363616e6e6f74206578656375746520747769636560601b604482015290519081900360640190fd5b83600114156108e25760028101805461ff0019166101001790556108dd8561133d565b61094b565b6000858152603760205260408120906108fb8282611c26565b506000600182018190556002909101805461ffff1916905560335460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a35b60335460408051868152905187926001600160a01b0316917f25d4c89430c1f10c60c292556941e3e624ec1ec04972a5da46cee1b352429cbe919081900360200190a3506001949350505050565b6038546001600160a01b031681565b60345460009082906001600160a01b03163314610a01576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a4f57600080fd5b505afa158015610a63573d6000803e3d6000fd5b505050506040513d6020811015610a7957600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610ac357600080fd5b505afa158015610ad7573d6000803e3d6000fd5b505050506040513d6020811015610aed57600080fd5b5051610b3b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610b8957600080fd5b505afa158015610b9d573d6000803e3d6000fd5b505050506040513d6020811015610bb357600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610c0c57600080fd5b505afa158015610c20573d6000803e3d6000fd5b505050506040513d6020811015610c3657600080fd5b50519392505050565b60345460009082906001600160a01b03163314610c98576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ce657600080fd5b505afa158015610cfa573d6000803e3d6000fd5b505050506040513d6020811015610d1057600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610d6d57600080fd5b505af1158015610d81573d6000803e3d6000fd5b505050506040513d6020811015610d9757600080fd5b50519695505050505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610de857600080fd5b505afa158015610dfc573d6000803e3d6000fd5b505050506040513d6020811015610e1257600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610e5c57600080fd5b505afa158015610e70573d6000803e3d6000fd5b505050506040513d6020811015610e8657600080fd5b5051610ed4576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610f3f57600080fd5b505af1158015610f53573d6000803e3d6000fd5b505050506040513d6020811015610f6957600080fd5b505160408051608081018252878152602081810188905260018284015260006060830181905284815260378252929092208151805194955091939092610fb3928492910190611c6d565b5060208281015160018301556040808401516002909301805460609586015115156101000261ff001995151560ff1990921691909117949094169390931790925560008481526036825282812043905560335483518084018a90528581528a5195810195909552895186956001600160a01b03909216947f36418f82d814fb021ca04ebdc2c4a3cd69f719851f597c489bca2ed245e8c8ad948c948c948c949093849390840192608085019291890191908190849084905b8381101561108357818101518382015260200161106b565b50505050905090810190601f1680156110b05780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b838110156110e35781810151838201526020016110cb565b50505050905090810190601f1680156111105780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a3949350505050565b60345460009082906001600160a01b03163314611181576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111cf57600080fd5b505afa1580156111e3573d6000803e3d6000fd5b505050506040513d60208110156111f957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561124e57600080fd5b505af1158015611262573d6000803e3d6000fd5b505050506040513d602081101561127857600080fd5b505195945050505050565b60376020908152600091825260409182902080548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290929183919083018282801561131a5780601f106112ef5761010080835404028352916020019161131a565b820191906000526020600020905b8154815290600101906020018083116112fd57829003601f168201915b50505050600183015460029093015491929160ff80821692506101009091041684565b6000818152603760205260409020600281015460ff1661139e576040805162461bcd60e51b81526020600482015260176024820152761b5d5cdd0818994818481b1a5d99481c1c9bdc1bdcd85b604a1b604482015290519081900360640190fd5b6002810154610100900460ff166113e65760405162461bcd60e51b8152600401808060200182810382526026815260200180611d2f6026913960400191505060405180910390fd5b60028101805460ff1916905560335460408051638da5cb5b60e01b8152905160609260009283926001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561143f57600080fd5b505afa158015611453573d6000803e3d6000fd5b505050506040513d602081101561146957600080fd5b505160385460018681015460405163057e2c8b60e31b81526001600160a01b0393841660048201818152604483018490526060602484019081528b54600260001997821615610100029790970116959095046064840181905296975094871695632bf164589591948b949390916084909101908590801561152b5780601f106115005761010080835404028352916020019161152b565b820191906000526020600020905b81548152906001019060200180831161150e57829003601f168201915b5050945050505050600060405180830381600087803b15801561154d57600080fd5b505af1158015611561573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604090815281101561158a57600080fd5b8151602083018051604051929492938301929190846401000000008211156115b157600080fd5b9083019060208201858111156115c657600080fd5b82516401000000008111828201881017156115e057600080fd5b82525081516020918201929091019080838360005b8381101561160d5781810151838201526020016115f5565b50505050905090810190601f16801561163a5780820380516001836020036101000a031916815260200191505b50604052509195509193505082159050611761576000858152603760205260408120906116678282611c26565b506000600182018190556002909101805461ffff1916905560335460405187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3603354604080516020808252865181830152865189946001600160a01b0316937f1c57c986b085f821f3126bc24b5aba57ed92fe545788a34925528295cef240159389939092839283019185019080838360005b8381101561172257818101518382015260200161170a565b50505050905090810190601f16801561174f5780820380516001836020036101000a031916815260200191505b509250505060405180910390a3611771565b60028401805460ff191660011790555b5050505050565b60345460009082906001600160a01b031633146117d1576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561181f57600080fd5b505afa158015611833573d6000803e3d6000fd5b505050506040513d602081101561184957600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561124e57600080fd5b6001600160a01b0384166118f9576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61190285611b07565b603480546001600160a01b0319166001600160a01b03861617905582611afe576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561196c578181015183820152602001611954565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561199e57600080fd5b505afa1580156119b2573d6000803e3d6000fd5b505050506040513d60208110156119c857600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015611a1a57600080fd5b505afa158015611a2e573d6000803e3d6000fd5b505050506040513d6101a0811015611a4557600080fd5b5051905080611af757604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015611a96578181015183820152602001611a7e565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611aca57600080fd5b505af1158015611ade573d6000803e3d6000fd5b505050506040513d6020811015611af457600080fd5b50505b5050611771565b50506035555050565b600054610100900460ff1680611b205750611b20611c20565b80611b2e575060005460ff16155b611b695760405162461bcd60e51b815260040180806020018281038252602e815260200180611d01602e913960400191505060405180910390fd5b600054610100900460ff16158015611b94576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611bef576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611c1c576000805461ff00191690555b5050565b303b1590565b50805460018160011615610100020316600290046000825580601f10611c4c5750611c6a565b601f016020900490600052602060002090810190611c6a9190611ceb565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611cae57805160ff1916838001178555611cdb565b82800160010185558215611cdb579182015b82811115611cdb578251825591602001919060010190611cc0565b50611ce7929150611ceb565b5090565b5b80821115611ce75760008155600101611cec56fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656470726f706f73616c206d7573742070617373656420627920766f74696e67206d616368696e65a2646970667358221220a4d97a1ee67519b4d508cb3ebf55a4b6d7e828467b705fc7de03255898265c9c64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/GenesisProtocol.json b/contracts/0.1.2-rc.8/GenesisProtocol.json new file mode 100644 index 00000000..51b3c7cf --- /dev/null +++ b/contracts/0.1.2-rc.8/GenesisProtocol.json @@ -0,0 +1,1350 @@ +{ + "contractName": "GenesisProtocol", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_confidenceThreshold", + "type": "uint256" + } + ], + "name": "ConfidenceLevelChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "ExpirationCallBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ExecutionState", + "name": "_executionState", + "type": "uint8" + } + ], + "name": "GPExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemDaoBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_staker", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Stake", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "_proposalState", + "type": "uint8" + } + ], + "name": "StateChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "inputs": [], + "name": "DELEGATION_HASH_EIP712", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "NO", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "YES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "averagesDownstakesOfBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "calcExecuteCallBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "executeBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "expirationCallBounty", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalOrganization", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getProposalTimes", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "times", + "type": "uint256[3]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_staker", + "type": "address" + } + ], + "name": "getStaker", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "orgBoostedProposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "queuedVoteRequiredPercentage", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "queuedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "boostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "preBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thresholdConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "limitExponentValue", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "quietEndingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "proposingRepReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "votersReputationLossRatio", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minimumDaoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBountyConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "activationTime", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "proposalStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "state", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "uint256", + "name": "currentBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "daoBountyRemain", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "totalStakes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "confidenceThreshold", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "secondsFromTimeOutTillExecuteBoosted", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "daoRedeemItsWinnings", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "rewards", + "type": "uint256[3]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemDaoBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "redeemedAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "potentialAmount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "score", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "shouldBoost", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "stake", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_signatureType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_signature", + "type": "bytes" + } + ], + "name": "stakeWithSignature", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "stakesNonce", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "stakingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "state", + "outputs": [ + { + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_organizationId", + "type": "bytes32" + } + ], + "name": "threshold", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "voteInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + } + ], + "name": "voteStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "winningVote", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x60806040523480156200001157600080fd5b50604051620047c5380380620047c5833981810160405260208110156200003757600080fd5b5051806200006573543ff227f64aa17ea132bf9886cab5db55dcaddf620000bb602090811b620026ad17901c565b156200009757600680546001600160a01b03191673543ff227f64aa17ea132bf9886cab5db55dcaddf179055620000b3565b600680546001600160a01b0319166001600160a01b0383161790555b5050620000f8565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590620000f057508115155b949350505050565b6146bd80620001086000396000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c806372f702f31161013b578063b4512913116100b8578063c8f526e81161007c578063c8f526e81461087c578063cc3bf9e9146108d1578063e5af18c5146108fd578063e751f2711461091a578063fb6c0cbb1461093757610248565b8063b4512913146107e5578063ba51b14e14610808578063bb5a05ed14610825578063beda801514610842578063c08351061461085f57610248565b80639525c0cc116100ff5780639525c0cc1461077b5780639bc5689d14610347578063a003651d1461079a578063a05ea6e4146107b7578063b2449d65146107dd57610248565b806372f702f31461069157806379a1c1f6146106b557806380f5e0a1146106f857806388737b5e146107155780638894c41b1461074f57610248565b806332ed5b12116101c95780635142bc1e1161018d5780635142bc1e146105f457806351d997b2146105fc57806361d585da146106045780636359036b14610642578063707437681461066e57610248565b806332ed5b121461044d578063359afa49146104f35780633c1338181461052b5780634047487314610548578063488c65fc1461056557610248565b80631702ef0c116102105780631702ef0c146103c057806321b4b3dc146103dd5780632d598e58146103e55780632daedd521461040857806330ca0a531461044557610248565b8063025068041461024d57806307b4e1e3146102d85780630d48344214610347578063119ce91b1461034f57806316db517214610394575b600080fd5b61026a6004803603602081101561026357600080fd5b5035610954565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526101608401526001600160a01b031661018083015251908190036101a00190f35b61033560048036036101808110156102ef57600080fd5b81019080806101600190600b806020026040519081016040528092919082600b602002808284376000920191909152509194505050356001600160a01b031690506109c4565b60408051918252519081900360200190f35b610335610acc565b61037b6004803603604081101561036557600080fd5b50803590602001356001600160a01b0316610ad1565b6040805192835260208301919091528051918290030190f35b61037b600480360360408110156103aa57600080fd5b50803590602001356001600160a01b0316610b0d565b610335600480360360208110156103d657600080fd5b5035610b62565b610335610b74565b610335600480360360408110156103fb57600080fd5b5080359060200135610b7a565b6104316004803603606081101561041e57600080fd5b5080359060208101359060400135610bc1565b604080519115158252519081900360200190f35b610335610c24565b61046a6004803603602081101561046357600080fd5b5035610cd0565b604051808e81526020018d6001600160a01b031681526020018c600681111561048f57fe5b81526020018b81526020018a6001600160a01b0316815260200189815260200188815260200187815260200186815260200185815260200184815260200183815260200182151581526020019d505050505050505050505050505060405180910390f35b6104316004803603608081101561050957600080fd5b50803590602081013590604081013590606001356001600160a01b0316610d3e565b6103356004803603602081101561054157600080fd5b5035610eed565b6103356004803603602081101561055e57600080fd5b5035610f02565b610431600480360360c081101561057b57600080fd5b8135916020810135916040820135916060810135916080820135919081019060c0810160a08201356401000000008111156105b557600080fd5b8201836020820111156105c757600080fd5b803590602001918460018302840111640100000000831117156105e957600080fd5b509092509050610f68565b61037b611285565b61043161128d565b6106216004803603602081101561061a57600080fd5b5035611292565b6040518082600681111561063157fe5b815260200191505060405180910390f35b61037b6004803603604081101561065857600080fd5b50803590602001356001600160a01b03166112b2565b6103356004803603604081101561068457600080fd5b50803590602001356115cf565b6106996115f0565b604080516001600160a01b039092168252519081900360200190f35b6106d2600480360360208110156106cb57600080fd5b50356115ff565b604080519485526020850193909352838301919091526060830152519081900360800190f35b6104316004803603602081101561070e57600080fd5b5035611642565b6103356004803603608081101561072b57600080fd5b508035906020810135906001600160a01b036040820135811691606001351661177f565b610335600480360361018081101561076657600080fd5b506001600160a01b036101608201351661178c565b6107986004803603602081101561079157600080fd5b5035611b79565b005b610335600480360360208110156107b057600080fd5b5035611bd2565b610335600480360360208110156107cd57600080fd5b50356001600160a01b0316611bd8565b610335611bea565b610335600480360360408110156107fb57600080fd5b5080359060200135611bef565b6106996004803603602081101561081e57600080fd5b5035611c10565b6103356004803603602081101561083b57600080fd5b5035611c2b565b6103356004803603602081101561085857600080fd5b5035611c3d565b6104316004803603602081101561087557600080fd5b5035611e74565b6108996004803603602081101561089257600080fd5b5035611e7f565b6040518082606080838360005b838110156108be5781810151838201526020016108a6565b5050505090500191505060405180910390f35b610899600480360360408110156108e757600080fd5b50803590602001356001600160a01b0316611ece565b6103356004803603602081101561091357600080fd5b5035612629565b6104316004803603602081101561093057600080fd5b5035612634565b6103356004803603602081101561094d57600080fd5b503561269b565b600060208190529081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a8b0154600b8c0154600c909c01549a9b999a989997989697959694959394929391929091906001600160a01b03168d565b60008281602002015183600160200201518460026020020151856003602002015186600460200201518760056020020151886006602002015189600760200201518a600860200201518b600960200201518c600a6020020151604051602001808c81526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019b505050505050505050505050604051602081830303815290604052805190602001208260405160200180838152602001826001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012090505b92915050565b600281565b60008281526001602090815260408083206001600160a01b038516845260110190915290205460f881901c906001600160801b03169250929050565b600080610b186143ce565b50505060009182526001602081815260408085206001600160a01b039490941685526013909301815292829020825180840190935280548084529101549190920181905260f81c91565b60009081526001602052604090205490565b60055481565b6000818152600260209081526040808320548584529183905282206005810154821115610ba957806005015491505b6004810154610bb890836126e6565b95945050505050565b600083610bcd81612730565b610c18576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610bb8858585336127a3565b604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e909201909252805191012081565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600e909a01546001600160a01b03808b169b60ff600160a01b909c048c169b99909116989091168d565b600084610d4a81612730565b610d95576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6000868152600160205260409020610dab6143e8565b5060058082015460009081526020818152604080832081516101a0810183528154815260018201549381019390935260028101549183019190915260038101546060830152600481015460808301529283015460a0820152600683015460c0820152600783015460e082015260088301546101008201526009830154610120820152600a830154610140820152600b830154610160820152600c909201546001600160a01b0316610180830181905215610ed1578161018001516001600160a01b0316336001600160a01b031614610eca576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b5084610ed4565b50335b610ee089828a8a612bed565b9998505050505050505050565b60009081526001602052604090206002015490565b6000818152600160205260408120600a01546105dc908290610f2590839061320b565b600085815260016020818152604080842092845260129092019052902054909150610f6090600a840290610f5a908490613221565b9061327a565b949350505050565b600087610f7481612730565b610fbf576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600085600214156110e15750604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e830184528051908201203060601b609e84015260b283018d905260d283018c905260f283018b90526101128084018b9052845180850390910181526101328401855280519083012061015284019190915261017280840191909152835180840390910181526101929092019092528051910120611132565b604080513060601b602080830191909152603482018d9052605482018c9052607482018b905260948083018b90528351808403909101815260b4909201909252805191012061112f906132bc565b90505b600061117686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869392505061330d9050565b90506001600160a01b0381166111d3576040805162461bcd60e51b815260206004820152601a60248201527f7374616b657220616464726573732063616e6e6f742062652030000000000000604482015290519081900360640190fd5b6001600160a01b038116600090815260076020526040902054881461122d576040805162461bcd60e51b815260206004820152600b60248201526a77726f6e67206e6f6e636560a81b604482015290519081900360640190fd5b6001600160a01b0381166000908152600760205260409020546112519060016134f8565b6001600160a01b0382166000908152600760205260409020556112768b8b8b846127a3565b9b9a5050505050505050505050565b600160029091565b600090565b60009081526001602081905260409091200154600160a01b900460ff1690565b6000828152600160205260408120819060026001820154600160a01b900460ff1660068111156112de57fe5b14611330576040805162461bcd60e51b815260206004820152601960248201527f70726f706f73616c206e6f742065786563757465642079657400000000000000604482015290519081900360640190fd5b600281015460009081526012820160209081526040808320546001600160a01b03881684526013850190925290912060018101546001600160f81b03161580159061138557506002830154600182015460f81c145b8015611395575060018360020154145b80156113a057508115155b156113c55781836007015482600101546001600160f81b031602816113c157fe5b0493505b831580159061145a5750600183015460065460408051636b8eb40360e01b81526001600160a01b039283166004820152602481018b9052905187939290921691636b8eb40391604480820192602092909190829003018186803b15801561142b57600080fd5b505afa15801561143f573d6000803e3d6000fd5b505050506040513d602081101561145557600080fd5b505110155b156115c5576001810180546001600160f81b031916905560068301546114809085613552565b60068085019190915560018401549054604080516317d4ebe560e31b81526001600160a01b039283166004820152898316602482015260448101889052606481018b90529051919092169163bea75f289160848083019260209291908290030181600087803b1580156114f257600080fd5b505af1158015611506573d6000803e3d6000fd5b505050506040513d602081101561151c57600080fd5b5051611567576040805162461bcd60e51b81526020600482015260156024820152741d1c985b9cd9995c881d1bdad95b8819985a5b1959605a1b604482015290519081900360640190fd5b8254600090815260036020908152604091829020548251878152925196975087966001600160a01b03808b16949216928b927fb4a37163ec93e05e09b62e52f7f2ea8cfde431802edede7dfebe53d2ad969dbb929081900390910190a45b5050509250929050565b60009182526001602090815260408084209284526012909201905290205490565b6006546001600160a01b031681565b6000908152600160208181526040808420838552601081018352818520546002808752838720549587526012909201909352818520549085529320549093919291565b600061164c614459565b60008381526001602081815260409283902083516101c08101855281548152928101546001600160a01b038116928401929092529192830190600160a01b900460ff16600681111561169a57fe5b60068111156116a557fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b81548152602001906001019080831161172e575050509183525050600e919091015460ff16151560209091015260c0810151815191925061176e91610b7a565b61177784613594565b119392505050565b6000610bb88484846135cf565b600060648335118015906117a257506032833510155b6117dd5760405162461bcd60e51b815260040180806020018281038252602981526020018061460b6029913960400191505060405180910390fd5b613e806080840135118015906117f857506103e86080840135115b611849576040805162461bcd60e51b815260206004820152601e60248201527f31303030203c207468726573686f6c64436f6e7374203c3d2031363030300000604482015290519081900360640190fd5b606460e084013511156118a3576040805162461bcd60e51b815260206004820181905260248201527f766f7465727352657075746174696f6e4c6f7373526174696f203c3d20313030604482015290519081900360640190fd5b60a0830135604084013510156118ea5760405162461bcd60e51b815260040180806020018281038252602b81526020018061459b602b913960400191505060405180910390fd5b610100830135611941576040805162461bcd60e51b815260206004820152601e60248201527f6d696e696d756d44616f426f756e74792073686f756c64206265203e20300000604482015290519081900360640190fd5b610120830135611998576040805162461bcd60e51b815260206004820152601c60248201527f64616f426f756e7479436f6e73742073686f756c64206265203e203000000000604482015290519081900360640190fd5b60006119ce84600b806020026040519081016040528092919082600b602002808284376000920191909152508691506109c49050565b905060ac60026107d05b613e80811015611a20576080870135811080156119fc575060028102608088013511155b15611a1257818381611a0a57fe5b049250611a20565b6001909101906002026119d8565b50604080516101a0810182528735815260208089013590820152878201359181019190915260608088013590820152608080820190611a6d908901356001600160d81b03166103e86139bc565b81526020810184905260a088810135604083015260c0808a0135606084015260e0808b013560808501526101008b0135928401929092526101208a0135908301520187600a6020908102919091013582526001600160a01b03978816918101919091526000858152808252604090819020835181559183015160018301558201516002820155606082015160038201556080820151600482015560a0820151600582015560c0820151600682015560e0820151600782015561010082015160088201556101208201516009820155610140820151600a820155610160820151600b82015561018090910151600c90910180546001600160a01b0319169190961617909455509392505050565b80611b8381612730565b611bce576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b5050565b50600290565b60076020526000908152604090205481565b600181565b6000918252600160209081526040808420928452600f909201905290205490565b6003602052600090815260409020546001600160a01b031681565b60046020526000908152604090205481565b600081815260016020526040812060056001820154600160a01b900460ff166006811115611c6757fe5b1480611c8c575060066001820154600160a01b900460ff166006811115611c8a57fe5b145b611cc75760405162461bcd60e51b81526004018080602001828103825260338152602001806146556033913960400191505060405180910390fd5b611cd0836139df565b611d21576040805162461bcd60e51b815260206004820152601760248201527f70726f706f73616c206e65656420746f20657870697265000000000000000000604482015290519081900360640190fd5b611d41611d3a600b8301600101546004840154906134f8565b4290613552565b600a820155611d4f83610f02565b6008820154909250611d619083613552565b60088201556006546040805163a9059cbb60e01b81523360048201526024810185905290516001600160a01b039092169163a9059cbb916044808201926020929091908290030181600087803b158015611dba57600080fd5b505af1158015611dce573d6000803e3d6000fd5b505050506040513d6020811015611de457600080fd5b5051611e37576040805162461bcd60e51b815260206004820152601d60248201527f7472616e7366657220746f206d73672e73656e646572206661696c6564000000604482015290519081900360640190fd5b604080518381529051339185917f7468017f6ff596af88244327e88fe691ac48cc1db88b033d11c335f2c7ccdd039181900360200190a350919050565b6000610ac682612730565b611e876144da565b60008281526001602052604090819020815160608101909252600b0160038282826020028201915b815481526020019060010190808311611eaf5750505050509050919050565b611ed66144da565b600083815260016020526040902060026001820154600160a01b900460ff166006811115611f0057fe5b1480611f245750600180820154600160a01b900460ff166006811115611f2257fe5b145b611f5f5760405162461bcd60e51b815260040180806020018281038252602d81526020018061454c602d913960400191505060405180910390fd5b611f676143e8565b5060058082015460009081526020818152604080832081516101a081018352815481526001820154818501526002808301548285015260038301546060830152600483015460808301529582015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b03908116610180830152881684526013860183528184209486015484526012860190925282205490929161206761203d89610f02565b600160009081526012880160205260408082205460028352912054612061916134f8565b90613552565b83549091501561212257600180860154600160a01b900460ff16600681111561208c57fe5b141561209b578254865261211d565b6002850154600184015460f81c141561211d5760018381015460f81c14156121045780856007015410156120ff5760006120e286600701548361355290919063ffffffff16565b845490915083906120f39083613221565b816120fa57fe5b048752505b61211d565b825482906121129083613221565b8161211957fe5b0486525b600083555b600e85015460ff16158015612152575084546000908152600360205260409020546001600160a01b038881169116145b80156121775750600180860154600160a01b900460ff16600681111561217457fe5b14155b8015612187575060028560020154145b156121cc5760078501546121ba90612061846121a38386613221565b816121aa57fe5b048960005b6020020151906134f8565b8652600e8501805460ff191660011790555b6001600160a01b03871660009081526011860160205260409020546001600160801b038116600160f783901c81161460f883901c821580159061220c5750815b15612347576001808a0154600160a01b900460ff16600681111561222c57fe5b141561225e57606461224c8961010001518561322190919063ffffffff16565b8161225357fe5b0460208b015261232b565b8060ff168960020154141561232b57600060018a60020154141561229557506002600090815260108a0160205260409020546122aa565b506001600090815260108a0160205260409020545b60646122c48a61010001518361322190919063ffffffff16565b816122cb57fe5b60028c0154600090815260108d0160205260409020549190049150612324906122f48684613221565b816122fb57fe5b0460646123168c61010001518861322190919063ffffffff16565b8161231d57fe5b04906134f8565b60208c0152505b6001600160a01b038b16600090815260118a0160205260408120555b60038901546001600160a01b038c8116911614801561236a575060018960020154145b8015612382575060038901546001600160a01b031615155b156123a45760e088015160408b01526003890180546001600160a01b03191690555b8951156124fe57895160088a01546123bb91613552565b60088a01556006546001600160a01b031663a9059cbb8c8c600060200201516040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561242057600080fd5b505af1158015612434573d6000803e3d6000fd5b505050506040513d602081101561244a57600080fd5b505161249d576040805162461bcd60e51b815260206004820152601e60248201527f7472616e7366657220746f2062656e6566696369617279206661696c65640000604482015290519081900360640190fd5b88546000908152600360205260408120546001600160a01b03808e16929116908e907f6d26871c9f457d104b2122485f659f126f7a0cf6938cf20482c03f49794a2fbf908e9060200201516040518082815260200191505060405180910390a45b60408a015161250f908b60016121af565b1561261a5760018901546001600160a01b031663d29b5d2f61253a8c600260200201518d60016121af565b8d8f6040518463ffffffff1660e01b815260040180848152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561258957600080fd5b505af115801561259d573d6000803e3d6000fd5b505050506040513d60208110156125b357600080fd5b505088546000908152600360205260409020546001600160a01b03808d1691168d7f7419b736daacf66d5c1645948c956fca2b83be1e2e02d486d65713f289d683b86126088e600260200201518f60016121af565b60408051918252519081900360200190a45b50505050505050505092915050565b6000610ac682613594565b60008161264081612730565b61268b576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b612694836139df565b9392505050565b60026020526000908152604090205481565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610f60575050151592915050565b60008282650100000000005b8115610bb85781600116600114156127115761270e8184614243565b90505b60019190911c90811561272b576127288384614243565b92505b6126f2565b600081815260016020819052604082200154600160a01b900460ff16600481600681111561275a57fe5b14806127715750600581600681111561276f57fe5b145b806127875750600681600681111561278557fe5b145b806126945750600381600681111561279b57fe5b149392505050565b6000600284111580156127b65750600084115b6127fa576040805162461bcd60e51b815260206004820152601060248201526f77726f6e6720766f74652076616c756560801b604482015290519081900360640190fd5b6000831161284f576040805162461bcd60e51b815260206004820152601b60248201527f7374616b696e6720616d6f756e742073686f756c64206265203e300000000000604482015290519081900360640190fd5b612858856139df565b1561286557506001610f60565b600085815260016020526040902060046001820154600160a01b900460ff16600681111561288f57fe5b141580156128b7575060036001820154600160a01b900460ff1660068111156128b457fe5b14155b156128c6576000915050610f60565b6001600160a01b038316600090815260138201602052604090208054158015906128f75750600181015460f81c8614155b1561290757600092505050610f60565b600654604080516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018990529151889392909216916323b872dd916064808201926020929091908290030181600087803b15801561296657600080fd5b505af115801561297a573d6000803e3d6000fd5b505050506040513d602081101561299057600080fd5b50516129e3576040805162461bcd60e51b815260206004820152601960248201527f6661696c207472616e736665722066726f6d207374616b657200000000000000604482015290519081900360640190fd5b60088301546129f290826134f8565b60088401558154612a0390826134f8565b808355600160801b1015612a5e576040805162461bcd60e51b815260206004820152601a60248201527f7374616b696e6720616d6f756e7420697320746f6f2068696768000000000000604482015290519081900360640190fd5b6006830154612a7290600160801b90613552565b83600801541115612aca576040805162461bcd60e51b815260206004820152601860248201527f746f74616c207374616b657320697320746f6f20686967680000000000000000604482015290519081900360640190fd5b6001871415612b42576001820154600090612aee906001600160f81b0316836134f8565b9050600160f71b8110612b325760405162461bcd60e51b81526004018080602001828103825260238152602001806145c66023913960400191505060405180910390fd5b60f888901b176001830155612b51565b60018201805460f889901b1790555b6000878152601284016020526040902054612b6d9082906134f8565b60008881526012850160209081526040808320939093558554825260038152908290205482518a815291820189905282516001600160a01b03808a16949216928c927fd0239d7d4acf51def4507fa173be466927de5d75d8b10d840cd6994d6e10231092918290030190a4612be1886139df565b98975050505050505050565b600060028311158015612c005750600083115b612c42576040805162461bcd60e51b815260206004820152600e60248201526d18101e102fbb37ba32901e1e901960911b604482015290519081900360640190fd5b612c4b856139df565b15612c5857506001610f60565b612c606143e8565b506000858152600160208181526040808420600580820154865285845282862083516101a0810185528154815281870154818701526002820154818601526003820154606082015260048083015460808301529282015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b039081166101808301528c8852868652958301548451634ac41bc760e11b81528c881693810193909352602483018d905293519096929592949390921692639588378e92604480840193829003018186803b158015612d6757600080fd5b505afa158015612d7b573d6000803e3d6000fd5b505050506040513d6020811015612d9157600080fd5b5051905080612de7576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b84811015612e31576040805162461bcd60e51b8152602060048201526012602482015271072657075746174696f6e203e3d205f7265760741b604482015290519081900360640190fd5b8480612e3a5750805b6001600160a01b038816600090815260118401602052604090205415612e67576000945050505050610f60565b6000878152600f84016020526040902054612e839082906134f8565b6000888152600f8501602052604080822083905560028601548252812054908990521080612edb57506002808401546000908152600f8501602052604080822054928252902054148015612edb575060018360020154145b15612fe75760056001840154600160a01b900460ff166006811115612efc57fe5b148015612f1c575060c0840151604085015103600b840160010154420310155b80612f40575060066001840154600160a01b900460ff166006811115612f3e57fe5b145b15612fdf5760066001840154600160a01b900460ff166006811115612f6157fe5b14612fd85760c0840151600484015560018301805460ff60a01b1916600360a11b17908190556040518a917f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f991600160a01b90910460ff169080826006811115612fc757fe5b815260200191505060405180910390a25b42600c8401555b600283018790555b6001600160801b03811660f888901b1760046001850154600160a01b900460ff16600681111561301357fe5b1480613038575060036001850154600160a01b900460ff16600681111561303657fe5b145b1561304457600160f71b175b6001600160a01b0389166000908152601185016020526040902081905560046001850154600160a01b900460ff16600681111561307d57fe5b14806130a2575060036001850154600160a01b900460ff1660068111156130a057fe5b145b156131985760008881526010850160205260409020546130c39083906134f8565b60008981526010860160205260408120919091556101008601516064906130ea9085613221565b816130f157fe5b0490508460010160009054906101000a90046001600160a01b03166001600160a01b031663f81f8bf6828c8e6040518463ffffffff1660e01b815260040180848152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561316a57600080fd5b505af115801561317e573d6000803e3d6000fd5b505050506040513d602081101561319457600080fd5b5050505b83546000908152600360209081526040918290205482518b815291820185905282516001600160a01b03808e16949216928e927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92918290030190a46131fd8a6139df565b9a9950505050505050505050565b600081831061321a5781612694565b5090919050565b60008261323057506000610ac6565b8282028284828161323d57fe5b04146126945760405162461bcd60e51b81526004018080602001828103825260218152602001806146346021913960400191505060405180910390fd5b600061269483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506142a7565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114613365576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08211156133d65760405162461bcd60e51b81526004018080602001828103825260228152602001806145796022913960400191505060405180910390fd5b8060ff16601b141580156133ee57508060ff16601c14155b1561342a5760405162461bcd60e51b81526004018080602001828103825260228152602001806145e96022913960400191505060405180910390fd5b600060018783868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015613486573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166134ee576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b9695505050505050565b600082820183811015612694576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600061269483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614349565b60008181526001602081815260408084206002855260128101909252808420549284528320549091612694916001600160d81b0316906139bc565b6000838152602081905260408120600b01544211613625576040805162461bcd60e51b815260206004820152600e60248201526d1b9bdd081858dd1a5d99481e595d60921b604482015290519081900360640190fd5b60008481526020819052604090205460321115613689576040805162461bcd60e51b815260206004820152601960248201527f706172616d657465727320646f6573206e6f7420657869737400000000000000604482015290519081900360640190fd5b600554604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906136c89060016134f8565b6005556136d3614459565b33602082810182905260408051606093841b818401526bffffffffffffffffffffffff1988851b16603482015281516028818303018152604890910182528051908301208452600381850181905261018085015142905260008a815280845282812060029081015460a08801526001600160a01b038b811660808901529587015260c086018b9052855181529252902054166137c6576001600160a01b03841661379c578051600090815260036020526040902080546001600160a01b031916331790556137c6565b8051600090815260036020526040902080546001600160a01b0319166001600160a01b0386161790555b8051600090815260046020908152604080832054898452918390528220600a01546137f791606491610f5a91613221565b6000888152602081905260409020600901549091506138179082906143a3565b60e0830152600083815260016020818152604092839020855181559085015191810180546001600160a01b0319166001600160a01b03909316929092178083559285015185939192909160ff60a01b1916600160a01b83600681111561387957fe5b0217905550606082015160028201556080820151600380830180546001600160a01b0319166001600160a01b039093169290921790915560a0830151600483015560c0830151600583015560e08301516006830155610100830151600783015561012083015160088301556101408301516009830155610160830151600a83015561018083015161390f91600b840191906144f8565b506101a09190910151600e909101805460ff191691151591909117905560e08201516000848152600160209081526040808320600280855260129091018352818420949094558551835260038252918290205482519384526001600160a01b038a8116928501929092528383018b9052915191169185917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c916060908290030190a3509095945050505050565b60006126946001600160d81b0380851665010000000000908102918516026143b3565b60008181526001602052604081206139f56143e8565b506005808201546000908152602081815260409182902082516101a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600482015460808201529181015460a0830152600681015460c0830152600781015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c01546001600160a01b0316610180820152613aa9614459565b604080516101c0810182528454815260018501546001600160a01b03811660208301529091859190830190600160a01b900460ff166006811115613ae957fe5b6006811115613af457fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311613b7d575050509183525050600e919091015460ff16151560209182015260018501546040805163b551c37360e01b8152600481018a905290519394506000936001600160a01b039092169263b551c37392602480840193829003018186803b158015613bf857600080fd5b505afa158015613c0c573d6000803e3d6000fd5b505050506040513d6020811015613c2257600080fd5b5051835160028601546000908152600f87016020526040812054929350606484049091029181908190841015613ccf5760036001890154600160a01b900460ff166006811115613c6e57fe5b1415613c7d5760019250613cad565b60046001890154600160a01b900460ff166006811115613c9957fe5b1415613ca85760039250613cad565b600592505b6001880180546002919060ff60a01b1916600160a01b835b0217905550613f10565b60036001890154600160a01b900460ff166006811115613ceb57fe5b1415613d6d576020870151600b890154420310613d265760018801805460ff60a01b1916600160a01b17905560028089018190559250613d6d565b613d3888600501548960000154610b7a565b905080613d448b613594565b1115613d6d5760018801805460ff60a01b1916600160a21b17905542600d890155600988018190555b60046001890154600160a01b900460ff166006811115613d8957fe5b1415613f1057613da188600501548960000154610b7a565b6060880151909150600b890160020154420310613e875780613dc28b613594565b1115613e665787546000908152600260205260409020546110001115613e61576001888101805460ff60a01b1916600560a01b17905542600c8a01558854600090815260026020818152604080842080549095019094558b54835260048152838320548282528484205492845260128d0190915292909120549193509083900381613e4957fe5b89546000908152600460205260409020919005830190555b613e82565b6001880180546003919060ff60a01b1916600160a01b83613cc5565b613f10565b6000613e928b613594565b60098a0154909150613ea4908361320b565b8111613ec45760018901805460ff60a01b1916600360a01b179055613f0e565b8089600901541115613f0e57600989018290556040805183815290518c917fad767d61af51c7895fa3cc0497dde01afb610c74e55ee4d8a71fa5e3ee136d54919081900360200190a25b505b60056001890154600160a01b900460ff166006811115613f2c57fe5b1480613f51575060066001890154600160a01b900460ff166006811115613f4f57fe5b145b15613f81576004880154600c890154420310613f815760018801805460ff60a01b1916600160a11b179055600492505b6000836005811115613f8f57fe5b146141a1576004836005811115613fa257fe5b1480613fb957506005836005811115613fb757fe5b145b15614068578551600090815260026020526040902054613fda906001613552565b86516000908152600260205260408082209290925587518152205480614010578854600090815260046020526040812055614066565b88546000908152600460209081526040808320546002845260128d01909252909120549093508190614049906120618660018501613221565b8161405057fe5b8a54600090815260046020526040902091900490555b505b87546000908152600360209081526040918290205460028b0154835190815291820188905282516001600160a01b03909116928d927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a387600601548860070181905550897f46a713b994c752c68fbefa9048bec9a0010cc7d933ad95a3c3dbb25931a167e7846040518082600581111561410857fe5b815260200191505060405180910390a26001880154600289015460408051639d4c162d60e01b8152600481018e90526024810192909252516001600160a01b0390921691639d4c162d916044808201926020929091908290030181600087803b15801561417457600080fd5b505af1158015614188573d6000803e3d6000fd5b505050506040513d602081101561419e57600080fd5b50505b6001880154600160a01b900460ff1660068111156141bb57fe5b866040015160068111156141cb57fe5b1461422557897f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f98960010160149054906101000a900460ff166040518082600681111561421457fe5b815260200191505060405180910390a25b600083600581111561423357fe5b14159a9950505050505050505050565b60008282028284828161425257fe5b041461429d576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b600081836143335760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156142f85781810151838201526020016142e0565b50505050905090810190601f1680156143255780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161433f57fe5b0495945050505050565b6000818484111561439b5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156142f85781810151838201526020016142e0565b505050900390565b60008183101561321a5781612694565b600081650100000000008402816143c657fe5b049392505050565b604051806040016040528060008152602001600081525090565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b604080516101c081018252600080825260208201819052909182019081526020016000815260200160006001600160a01b03168152602001600081526020016000801916815260200160008152602001600081526020016000815260200160008152602001600081526020016144cd6144da565b8152600060209091015290565b60405180606001604052806003906020820280368337509192915050565b8260038101928215614526579160200282015b8281111561452657825182559160200191906001019061450b565b50614532929150614536565b5090565b5b80821115614532576000815560010161453756fe50726f706f73616c2073686f756c64206265204578656375746564206f722045787069726564496e517565756545434453413a20696e76616c6964207369676e6174757265202773272076616c7565626f6f73746564566f7465506572696f644c696d6974203e3d207175696574456e64696e67506572696f64746f74616c207374616b6520666f72207374616b657220697320746f6f206c6172676545434453413a20696e76616c6964207369676e6174757265202776272076616c75653530203c3d20717565756564566f7465526571756972656450657263656e74616765203c3d20313030536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7770726f706f73616c20737461746520696e206e6f7420426f6f73746564206e6f72205175696574456e64696e67506572696f64a26469706673582212200f00cafa9e88f2d671c72c978834ea2a9d82818f7e91f72445b799690cc636b064736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102485760003560e01c806372f702f31161013b578063b4512913116100b8578063c8f526e81161007c578063c8f526e81461087c578063cc3bf9e9146108d1578063e5af18c5146108fd578063e751f2711461091a578063fb6c0cbb1461093757610248565b8063b4512913146107e5578063ba51b14e14610808578063bb5a05ed14610825578063beda801514610842578063c08351061461085f57610248565b80639525c0cc116100ff5780639525c0cc1461077b5780639bc5689d14610347578063a003651d1461079a578063a05ea6e4146107b7578063b2449d65146107dd57610248565b806372f702f31461069157806379a1c1f6146106b557806380f5e0a1146106f857806388737b5e146107155780638894c41b1461074f57610248565b806332ed5b12116101c95780635142bc1e1161018d5780635142bc1e146105f457806351d997b2146105fc57806361d585da146106045780636359036b14610642578063707437681461066e57610248565b806332ed5b121461044d578063359afa49146104f35780633c1338181461052b5780634047487314610548578063488c65fc1461056557610248565b80631702ef0c116102105780631702ef0c146103c057806321b4b3dc146103dd5780632d598e58146103e55780632daedd521461040857806330ca0a531461044557610248565b8063025068041461024d57806307b4e1e3146102d85780630d48344214610347578063119ce91b1461034f57806316db517214610394575b600080fd5b61026a6004803603602081101561026357600080fd5b5035610954565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526101608401526001600160a01b031661018083015251908190036101a00190f35b61033560048036036101808110156102ef57600080fd5b81019080806101600190600b806020026040519081016040528092919082600b602002808284376000920191909152509194505050356001600160a01b031690506109c4565b60408051918252519081900360200190f35b610335610acc565b61037b6004803603604081101561036557600080fd5b50803590602001356001600160a01b0316610ad1565b6040805192835260208301919091528051918290030190f35b61037b600480360360408110156103aa57600080fd5b50803590602001356001600160a01b0316610b0d565b610335600480360360208110156103d657600080fd5b5035610b62565b610335610b74565b610335600480360360408110156103fb57600080fd5b5080359060200135610b7a565b6104316004803603606081101561041e57600080fd5b5080359060208101359060400135610bc1565b604080519115158252519081900360200190f35b610335610c24565b61046a6004803603602081101561046357600080fd5b5035610cd0565b604051808e81526020018d6001600160a01b031681526020018c600681111561048f57fe5b81526020018b81526020018a6001600160a01b0316815260200189815260200188815260200187815260200186815260200185815260200184815260200183815260200182151581526020019d505050505050505050505050505060405180910390f35b6104316004803603608081101561050957600080fd5b50803590602081013590604081013590606001356001600160a01b0316610d3e565b6103356004803603602081101561054157600080fd5b5035610eed565b6103356004803603602081101561055e57600080fd5b5035610f02565b610431600480360360c081101561057b57600080fd5b8135916020810135916040820135916060810135916080820135919081019060c0810160a08201356401000000008111156105b557600080fd5b8201836020820111156105c757600080fd5b803590602001918460018302840111640100000000831117156105e957600080fd5b509092509050610f68565b61037b611285565b61043161128d565b6106216004803603602081101561061a57600080fd5b5035611292565b6040518082600681111561063157fe5b815260200191505060405180910390f35b61037b6004803603604081101561065857600080fd5b50803590602001356001600160a01b03166112b2565b6103356004803603604081101561068457600080fd5b50803590602001356115cf565b6106996115f0565b604080516001600160a01b039092168252519081900360200190f35b6106d2600480360360208110156106cb57600080fd5b50356115ff565b604080519485526020850193909352838301919091526060830152519081900360800190f35b6104316004803603602081101561070e57600080fd5b5035611642565b6103356004803603608081101561072b57600080fd5b508035906020810135906001600160a01b036040820135811691606001351661177f565b610335600480360361018081101561076657600080fd5b506001600160a01b036101608201351661178c565b6107986004803603602081101561079157600080fd5b5035611b79565b005b610335600480360360208110156107b057600080fd5b5035611bd2565b610335600480360360208110156107cd57600080fd5b50356001600160a01b0316611bd8565b610335611bea565b610335600480360360408110156107fb57600080fd5b5080359060200135611bef565b6106996004803603602081101561081e57600080fd5b5035611c10565b6103356004803603602081101561083b57600080fd5b5035611c2b565b6103356004803603602081101561085857600080fd5b5035611c3d565b6104316004803603602081101561087557600080fd5b5035611e74565b6108996004803603602081101561089257600080fd5b5035611e7f565b6040518082606080838360005b838110156108be5781810151838201526020016108a6565b5050505090500191505060405180910390f35b610899600480360360408110156108e757600080fd5b50803590602001356001600160a01b0316611ece565b6103356004803603602081101561091357600080fd5b5035612629565b6104316004803603602081101561093057600080fd5b5035612634565b6103356004803603602081101561094d57600080fd5b503561269b565b600060208190529081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a8b0154600b8c0154600c909c01549a9b999a989997989697959694959394929391929091906001600160a01b03168d565b60008281602002015183600160200201518460026020020151856003602002015186600460200201518760056020020151886006602002015189600760200201518a600860200201518b600960200201518c600a6020020151604051602001808c81526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019b505050505050505050505050604051602081830303815290604052805190602001208260405160200180838152602001826001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012090505b92915050565b600281565b60008281526001602090815260408083206001600160a01b038516845260110190915290205460f881901c906001600160801b03169250929050565b600080610b186143ce565b50505060009182526001602081815260408085206001600160a01b039490941685526013909301815292829020825180840190935280548084529101549190920181905260f81c91565b60009081526001602052604090205490565b60055481565b6000818152600260209081526040808320548584529183905282206005810154821115610ba957806005015491505b6004810154610bb890836126e6565b95945050505050565b600083610bcd81612730565b610c18576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610bb8858585336127a3565b604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e909201909252805191012081565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600e909a01546001600160a01b03808b169b60ff600160a01b909c048c169b99909116989091168d565b600084610d4a81612730565b610d95576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6000868152600160205260409020610dab6143e8565b5060058082015460009081526020818152604080832081516101a0810183528154815260018201549381019390935260028101549183019190915260038101546060830152600481015460808301529283015460a0820152600683015460c0820152600783015460e082015260088301546101008201526009830154610120820152600a830154610140820152600b830154610160820152600c909201546001600160a01b0316610180830181905215610ed1578161018001516001600160a01b0316336001600160a01b031614610eca576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b5084610ed4565b50335b610ee089828a8a612bed565b9998505050505050505050565b60009081526001602052604090206002015490565b6000818152600160205260408120600a01546105dc908290610f2590839061320b565b600085815260016020818152604080842092845260129092019052902054909150610f6090600a840290610f5a908490613221565b9061327a565b949350505050565b600087610f7481612730565b610fbf576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600085600214156110e15750604080517f616464726573732047656e6573697350726f746f636f6c41646472657373000060208083019190915271189e5d195ccccc88141c9bdc1bdcd85b125960721b603e8301526b75696e7432353620566f746560a01b60508301527475696e7432353620416d6f756e74546f5374616b6560581b605c8301526c75696e74323536204e6f6e636560981b60718301528251605e818403018152607e830184528051908201203060601b609e84015260b283018d905260d283018c905260f283018b90526101128084018b9052845180850390910181526101328401855280519083012061015284019190915261017280840191909152835180840390910181526101929092019092528051910120611132565b604080513060601b602080830191909152603482018d9052605482018c9052607482018b905260948083018b90528351808403909101815260b4909201909252805191012061112f906132bc565b90505b600061117686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869392505061330d9050565b90506001600160a01b0381166111d3576040805162461bcd60e51b815260206004820152601a60248201527f7374616b657220616464726573732063616e6e6f742062652030000000000000604482015290519081900360640190fd5b6001600160a01b038116600090815260076020526040902054881461122d576040805162461bcd60e51b815260206004820152600b60248201526a77726f6e67206e6f6e636560a81b604482015290519081900360640190fd5b6001600160a01b0381166000908152600760205260409020546112519060016134f8565b6001600160a01b0382166000908152600760205260409020556112768b8b8b846127a3565b9b9a5050505050505050505050565b600160029091565b600090565b60009081526001602081905260409091200154600160a01b900460ff1690565b6000828152600160205260408120819060026001820154600160a01b900460ff1660068111156112de57fe5b14611330576040805162461bcd60e51b815260206004820152601960248201527f70726f706f73616c206e6f742065786563757465642079657400000000000000604482015290519081900360640190fd5b600281015460009081526012820160209081526040808320546001600160a01b03881684526013850190925290912060018101546001600160f81b03161580159061138557506002830154600182015460f81c145b8015611395575060018360020154145b80156113a057508115155b156113c55781836007015482600101546001600160f81b031602816113c157fe5b0493505b831580159061145a5750600183015460065460408051636b8eb40360e01b81526001600160a01b039283166004820152602481018b9052905187939290921691636b8eb40391604480820192602092909190829003018186803b15801561142b57600080fd5b505afa15801561143f573d6000803e3d6000fd5b505050506040513d602081101561145557600080fd5b505110155b156115c5576001810180546001600160f81b031916905560068301546114809085613552565b60068085019190915560018401549054604080516317d4ebe560e31b81526001600160a01b039283166004820152898316602482015260448101889052606481018b90529051919092169163bea75f289160848083019260209291908290030181600087803b1580156114f257600080fd5b505af1158015611506573d6000803e3d6000fd5b505050506040513d602081101561151c57600080fd5b5051611567576040805162461bcd60e51b81526020600482015260156024820152741d1c985b9cd9995c881d1bdad95b8819985a5b1959605a1b604482015290519081900360640190fd5b8254600090815260036020908152604091829020548251878152925196975087966001600160a01b03808b16949216928b927fb4a37163ec93e05e09b62e52f7f2ea8cfde431802edede7dfebe53d2ad969dbb929081900390910190a45b5050509250929050565b60009182526001602090815260408084209284526012909201905290205490565b6006546001600160a01b031681565b6000908152600160208181526040808420838552601081018352818520546002808752838720549587526012909201909352818520549085529320549093919291565b600061164c614459565b60008381526001602081815260409283902083516101c08101855281548152928101546001600160a01b038116928401929092529192830190600160a01b900460ff16600681111561169a57fe5b60068111156116a557fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b81548152602001906001019080831161172e575050509183525050600e919091015460ff16151560209091015260c0810151815191925061176e91610b7a565b61177784613594565b119392505050565b6000610bb88484846135cf565b600060648335118015906117a257506032833510155b6117dd5760405162461bcd60e51b815260040180806020018281038252602981526020018061460b6029913960400191505060405180910390fd5b613e806080840135118015906117f857506103e86080840135115b611849576040805162461bcd60e51b815260206004820152601e60248201527f31303030203c207468726573686f6c64436f6e7374203c3d2031363030300000604482015290519081900360640190fd5b606460e084013511156118a3576040805162461bcd60e51b815260206004820181905260248201527f766f7465727352657075746174696f6e4c6f7373526174696f203c3d20313030604482015290519081900360640190fd5b60a0830135604084013510156118ea5760405162461bcd60e51b815260040180806020018281038252602b81526020018061459b602b913960400191505060405180910390fd5b610100830135611941576040805162461bcd60e51b815260206004820152601e60248201527f6d696e696d756d44616f426f756e74792073686f756c64206265203e20300000604482015290519081900360640190fd5b610120830135611998576040805162461bcd60e51b815260206004820152601c60248201527f64616f426f756e7479436f6e73742073686f756c64206265203e203000000000604482015290519081900360640190fd5b60006119ce84600b806020026040519081016040528092919082600b602002808284376000920191909152508691506109c49050565b905060ac60026107d05b613e80811015611a20576080870135811080156119fc575060028102608088013511155b15611a1257818381611a0a57fe5b049250611a20565b6001909101906002026119d8565b50604080516101a0810182528735815260208089013590820152878201359181019190915260608088013590820152608080820190611a6d908901356001600160d81b03166103e86139bc565b81526020810184905260a088810135604083015260c0808a0135606084015260e0808b013560808501526101008b0135928401929092526101208a0135908301520187600a6020908102919091013582526001600160a01b03978816918101919091526000858152808252604090819020835181559183015160018301558201516002820155606082015160038201556080820151600482015560a0820151600582015560c0820151600682015560e0820151600782015561010082015160088201556101208201516009820155610140820151600a820155610160820151600b82015561018090910151600c90910180546001600160a01b0319169190961617909455509392505050565b80611b8381612730565b611bce576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b5050565b50600290565b60076020526000908152604090205481565b600181565b6000918252600160209081526040808420928452600f909201905290205490565b6003602052600090815260409020546001600160a01b031681565b60046020526000908152604090205481565b600081815260016020526040812060056001820154600160a01b900460ff166006811115611c6757fe5b1480611c8c575060066001820154600160a01b900460ff166006811115611c8a57fe5b145b611cc75760405162461bcd60e51b81526004018080602001828103825260338152602001806146556033913960400191505060405180910390fd5b611cd0836139df565b611d21576040805162461bcd60e51b815260206004820152601760248201527f70726f706f73616c206e65656420746f20657870697265000000000000000000604482015290519081900360640190fd5b611d41611d3a600b8301600101546004840154906134f8565b4290613552565b600a820155611d4f83610f02565b6008820154909250611d619083613552565b60088201556006546040805163a9059cbb60e01b81523360048201526024810185905290516001600160a01b039092169163a9059cbb916044808201926020929091908290030181600087803b158015611dba57600080fd5b505af1158015611dce573d6000803e3d6000fd5b505050506040513d6020811015611de457600080fd5b5051611e37576040805162461bcd60e51b815260206004820152601d60248201527f7472616e7366657220746f206d73672e73656e646572206661696c6564000000604482015290519081900360640190fd5b604080518381529051339185917f7468017f6ff596af88244327e88fe691ac48cc1db88b033d11c335f2c7ccdd039181900360200190a350919050565b6000610ac682612730565b611e876144da565b60008281526001602052604090819020815160608101909252600b0160038282826020028201915b815481526020019060010190808311611eaf5750505050509050919050565b611ed66144da565b600083815260016020526040902060026001820154600160a01b900460ff166006811115611f0057fe5b1480611f245750600180820154600160a01b900460ff166006811115611f2257fe5b145b611f5f5760405162461bcd60e51b815260040180806020018281038252602d81526020018061454c602d913960400191505060405180910390fd5b611f676143e8565b5060058082015460009081526020818152604080832081516101a081018352815481526001820154818501526002808301548285015260038301546060830152600483015460808301529582015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b03908116610180830152881684526013860183528184209486015484526012860190925282205490929161206761203d89610f02565b600160009081526012880160205260408082205460028352912054612061916134f8565b90613552565b83549091501561212257600180860154600160a01b900460ff16600681111561208c57fe5b141561209b578254865261211d565b6002850154600184015460f81c141561211d5760018381015460f81c14156121045780856007015410156120ff5760006120e286600701548361355290919063ffffffff16565b845490915083906120f39083613221565b816120fa57fe5b048752505b61211d565b825482906121129083613221565b8161211957fe5b0486525b600083555b600e85015460ff16158015612152575084546000908152600360205260409020546001600160a01b038881169116145b80156121775750600180860154600160a01b900460ff16600681111561217457fe5b14155b8015612187575060028560020154145b156121cc5760078501546121ba90612061846121a38386613221565b816121aa57fe5b048960005b6020020151906134f8565b8652600e8501805460ff191660011790555b6001600160a01b03871660009081526011860160205260409020546001600160801b038116600160f783901c81161460f883901c821580159061220c5750815b15612347576001808a0154600160a01b900460ff16600681111561222c57fe5b141561225e57606461224c8961010001518561322190919063ffffffff16565b8161225357fe5b0460208b015261232b565b8060ff168960020154141561232b57600060018a60020154141561229557506002600090815260108a0160205260409020546122aa565b506001600090815260108a0160205260409020545b60646122c48a61010001518361322190919063ffffffff16565b816122cb57fe5b60028c0154600090815260108d0160205260409020549190049150612324906122f48684613221565b816122fb57fe5b0460646123168c61010001518861322190919063ffffffff16565b8161231d57fe5b04906134f8565b60208c0152505b6001600160a01b038b16600090815260118a0160205260408120555b60038901546001600160a01b038c8116911614801561236a575060018960020154145b8015612382575060038901546001600160a01b031615155b156123a45760e088015160408b01526003890180546001600160a01b03191690555b8951156124fe57895160088a01546123bb91613552565b60088a01556006546001600160a01b031663a9059cbb8c8c600060200201516040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561242057600080fd5b505af1158015612434573d6000803e3d6000fd5b505050506040513d602081101561244a57600080fd5b505161249d576040805162461bcd60e51b815260206004820152601e60248201527f7472616e7366657220746f2062656e6566696369617279206661696c65640000604482015290519081900360640190fd5b88546000908152600360205260408120546001600160a01b03808e16929116908e907f6d26871c9f457d104b2122485f659f126f7a0cf6938cf20482c03f49794a2fbf908e9060200201516040518082815260200191505060405180910390a45b60408a015161250f908b60016121af565b1561261a5760018901546001600160a01b031663d29b5d2f61253a8c600260200201518d60016121af565b8d8f6040518463ffffffff1660e01b815260040180848152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561258957600080fd5b505af115801561259d573d6000803e3d6000fd5b505050506040513d60208110156125b357600080fd5b505088546000908152600360205260409020546001600160a01b03808d1691168d7f7419b736daacf66d5c1645948c956fca2b83be1e2e02d486d65713f289d683b86126088e600260200201518f60016121af565b60408051918252519081900360200190a45b50505050505050505092915050565b6000610ac682613594565b60008161264081612730565b61268b576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b612694836139df565b9392505050565b60026020526000908152604090205481565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610f60575050151592915050565b60008282650100000000005b8115610bb85781600116600114156127115761270e8184614243565b90505b60019190911c90811561272b576127288384614243565b92505b6126f2565b600081815260016020819052604082200154600160a01b900460ff16600481600681111561275a57fe5b14806127715750600581600681111561276f57fe5b145b806127875750600681600681111561278557fe5b145b806126945750600381600681111561279b57fe5b149392505050565b6000600284111580156127b65750600084115b6127fa576040805162461bcd60e51b815260206004820152601060248201526f77726f6e6720766f74652076616c756560801b604482015290519081900360640190fd5b6000831161284f576040805162461bcd60e51b815260206004820152601b60248201527f7374616b696e6720616d6f756e742073686f756c64206265203e300000000000604482015290519081900360640190fd5b612858856139df565b1561286557506001610f60565b600085815260016020526040902060046001820154600160a01b900460ff16600681111561288f57fe5b141580156128b7575060036001820154600160a01b900460ff1660068111156128b457fe5b14155b156128c6576000915050610f60565b6001600160a01b038316600090815260138201602052604090208054158015906128f75750600181015460f81c8614155b1561290757600092505050610f60565b600654604080516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018990529151889392909216916323b872dd916064808201926020929091908290030181600087803b15801561296657600080fd5b505af115801561297a573d6000803e3d6000fd5b505050506040513d602081101561299057600080fd5b50516129e3576040805162461bcd60e51b815260206004820152601960248201527f6661696c207472616e736665722066726f6d207374616b657200000000000000604482015290519081900360640190fd5b60088301546129f290826134f8565b60088401558154612a0390826134f8565b808355600160801b1015612a5e576040805162461bcd60e51b815260206004820152601a60248201527f7374616b696e6720616d6f756e7420697320746f6f2068696768000000000000604482015290519081900360640190fd5b6006830154612a7290600160801b90613552565b83600801541115612aca576040805162461bcd60e51b815260206004820152601860248201527f746f74616c207374616b657320697320746f6f20686967680000000000000000604482015290519081900360640190fd5b6001871415612b42576001820154600090612aee906001600160f81b0316836134f8565b9050600160f71b8110612b325760405162461bcd60e51b81526004018080602001828103825260238152602001806145c66023913960400191505060405180910390fd5b60f888901b176001830155612b51565b60018201805460f889901b1790555b6000878152601284016020526040902054612b6d9082906134f8565b60008881526012850160209081526040808320939093558554825260038152908290205482518a815291820189905282516001600160a01b03808a16949216928c927fd0239d7d4acf51def4507fa173be466927de5d75d8b10d840cd6994d6e10231092918290030190a4612be1886139df565b98975050505050505050565b600060028311158015612c005750600083115b612c42576040805162461bcd60e51b815260206004820152600e60248201526d18101e102fbb37ba32901e1e901960911b604482015290519081900360640190fd5b612c4b856139df565b15612c5857506001610f60565b612c606143e8565b506000858152600160208181526040808420600580820154865285845282862083516101a0810185528154815281870154818701526002820154818601526003820154606082015260048083015460808301529282015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b039081166101808301528c8852868652958301548451634ac41bc760e11b81528c881693810193909352602483018d905293519096929592949390921692639588378e92604480840193829003018186803b158015612d6757600080fd5b505afa158015612d7b573d6000803e3d6000fd5b505050506040513d6020811015612d9157600080fd5b5051905080612de7576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b84811015612e31576040805162461bcd60e51b8152602060048201526012602482015271072657075746174696f6e203e3d205f7265760741b604482015290519081900360640190fd5b8480612e3a5750805b6001600160a01b038816600090815260118401602052604090205415612e67576000945050505050610f60565b6000878152600f84016020526040902054612e839082906134f8565b6000888152600f8501602052604080822083905560028601548252812054908990521080612edb57506002808401546000908152600f8501602052604080822054928252902054148015612edb575060018360020154145b15612fe75760056001840154600160a01b900460ff166006811115612efc57fe5b148015612f1c575060c0840151604085015103600b840160010154420310155b80612f40575060066001840154600160a01b900460ff166006811115612f3e57fe5b145b15612fdf5760066001840154600160a01b900460ff166006811115612f6157fe5b14612fd85760c0840151600484015560018301805460ff60a01b1916600360a11b17908190556040518a917f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f991600160a01b90910460ff169080826006811115612fc757fe5b815260200191505060405180910390a25b42600c8401555b600283018790555b6001600160801b03811660f888901b1760046001850154600160a01b900460ff16600681111561301357fe5b1480613038575060036001850154600160a01b900460ff16600681111561303657fe5b145b1561304457600160f71b175b6001600160a01b0389166000908152601185016020526040902081905560046001850154600160a01b900460ff16600681111561307d57fe5b14806130a2575060036001850154600160a01b900460ff1660068111156130a057fe5b145b156131985760008881526010850160205260409020546130c39083906134f8565b60008981526010860160205260408120919091556101008601516064906130ea9085613221565b816130f157fe5b0490508460010160009054906101000a90046001600160a01b03166001600160a01b031663f81f8bf6828c8e6040518463ffffffff1660e01b815260040180848152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b15801561316a57600080fd5b505af115801561317e573d6000803e3d6000fd5b505050506040513d602081101561319457600080fd5b5050505b83546000908152600360209081526040918290205482518b815291820185905282516001600160a01b03808e16949216928e927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92918290030190a46131fd8a6139df565b9a9950505050505050505050565b600081831061321a5781612694565b5090919050565b60008261323057506000610ac6565b8282028284828161323d57fe5b04146126945760405162461bcd60e51b81526004018080602001828103825260218152602001806146346021913960400191505060405180910390fd5b600061269483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506142a7565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114613365576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08211156133d65760405162461bcd60e51b81526004018080602001828103825260228152602001806145796022913960400191505060405180910390fd5b8060ff16601b141580156133ee57508060ff16601c14155b1561342a5760405162461bcd60e51b81526004018080602001828103825260228152602001806145e96022913960400191505060405180910390fd5b600060018783868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015613486573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166134ee576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b9695505050505050565b600082820183811015612694576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600061269483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250614349565b60008181526001602081815260408084206002855260128101909252808420549284528320549091612694916001600160d81b0316906139bc565b6000838152602081905260408120600b01544211613625576040805162461bcd60e51b815260206004820152600e60248201526d1b9bdd081858dd1a5d99481e595d60921b604482015290519081900360640190fd5b60008481526020819052604090205460321115613689576040805162461bcd60e51b815260206004820152601960248201527f706172616d657465727320646f6573206e6f7420657869737400000000000000604482015290519081900360640190fd5b600554604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906136c89060016134f8565b6005556136d3614459565b33602082810182905260408051606093841b818401526bffffffffffffffffffffffff1988851b16603482015281516028818303018152604890910182528051908301208452600381850181905261018085015142905260008a815280845282812060029081015460a08801526001600160a01b038b811660808901529587015260c086018b9052855181529252902054166137c6576001600160a01b03841661379c578051600090815260036020526040902080546001600160a01b031916331790556137c6565b8051600090815260036020526040902080546001600160a01b0319166001600160a01b0386161790555b8051600090815260046020908152604080832054898452918390528220600a01546137f791606491610f5a91613221565b6000888152602081905260409020600901549091506138179082906143a3565b60e0830152600083815260016020818152604092839020855181559085015191810180546001600160a01b0319166001600160a01b03909316929092178083559285015185939192909160ff60a01b1916600160a01b83600681111561387957fe5b0217905550606082015160028201556080820151600380830180546001600160a01b0319166001600160a01b039093169290921790915560a0830151600483015560c0830151600583015560e08301516006830155610100830151600783015561012083015160088301556101408301516009830155610160830151600a83015561018083015161390f91600b840191906144f8565b506101a09190910151600e909101805460ff191691151591909117905560e08201516000848152600160209081526040808320600280855260129091018352818420949094558551835260038252918290205482519384526001600160a01b038a8116928501929092528383018b9052915191169185917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c916060908290030190a3509095945050505050565b60006126946001600160d81b0380851665010000000000908102918516026143b3565b60008181526001602052604081206139f56143e8565b506005808201546000908152602081815260409182902082516101a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600482015460808201529181015460a0830152600681015460c0830152600781015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c01546001600160a01b0316610180820152613aa9614459565b604080516101c0810182528454815260018501546001600160a01b03811660208301529091859190830190600160a01b900460ff166006811115613ae957fe5b6006811115613af457fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311613b7d575050509183525050600e919091015460ff16151560209182015260018501546040805163b551c37360e01b8152600481018a905290519394506000936001600160a01b039092169263b551c37392602480840193829003018186803b158015613bf857600080fd5b505afa158015613c0c573d6000803e3d6000fd5b505050506040513d6020811015613c2257600080fd5b5051835160028601546000908152600f87016020526040812054929350606484049091029181908190841015613ccf5760036001890154600160a01b900460ff166006811115613c6e57fe5b1415613c7d5760019250613cad565b60046001890154600160a01b900460ff166006811115613c9957fe5b1415613ca85760039250613cad565b600592505b6001880180546002919060ff60a01b1916600160a01b835b0217905550613f10565b60036001890154600160a01b900460ff166006811115613ceb57fe5b1415613d6d576020870151600b890154420310613d265760018801805460ff60a01b1916600160a01b17905560028089018190559250613d6d565b613d3888600501548960000154610b7a565b905080613d448b613594565b1115613d6d5760018801805460ff60a01b1916600160a21b17905542600d890155600988018190555b60046001890154600160a01b900460ff166006811115613d8957fe5b1415613f1057613da188600501548960000154610b7a565b6060880151909150600b890160020154420310613e875780613dc28b613594565b1115613e665787546000908152600260205260409020546110001115613e61576001888101805460ff60a01b1916600560a01b17905542600c8a01558854600090815260026020818152604080842080549095019094558b54835260048152838320548282528484205492845260128d0190915292909120549193509083900381613e4957fe5b89546000908152600460205260409020919005830190555b613e82565b6001880180546003919060ff60a01b1916600160a01b83613cc5565b613f10565b6000613e928b613594565b60098a0154909150613ea4908361320b565b8111613ec45760018901805460ff60a01b1916600360a01b179055613f0e565b8089600901541115613f0e57600989018290556040805183815290518c917fad767d61af51c7895fa3cc0497dde01afb610c74e55ee4d8a71fa5e3ee136d54919081900360200190a25b505b60056001890154600160a01b900460ff166006811115613f2c57fe5b1480613f51575060066001890154600160a01b900460ff166006811115613f4f57fe5b145b15613f81576004880154600c890154420310613f815760018801805460ff60a01b1916600160a11b179055600492505b6000836005811115613f8f57fe5b146141a1576004836005811115613fa257fe5b1480613fb957506005836005811115613fb757fe5b145b15614068578551600090815260026020526040902054613fda906001613552565b86516000908152600260205260408082209290925587518152205480614010578854600090815260046020526040812055614066565b88546000908152600460209081526040808320546002845260128d01909252909120549093508190614049906120618660018501613221565b8161405057fe5b8a54600090815260046020526040902091900490555b505b87546000908152600360209081526040918290205460028b0154835190815291820188905282516001600160a01b03909116928d927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a387600601548860070181905550897f46a713b994c752c68fbefa9048bec9a0010cc7d933ad95a3c3dbb25931a167e7846040518082600581111561410857fe5b815260200191505060405180910390a26001880154600289015460408051639d4c162d60e01b8152600481018e90526024810192909252516001600160a01b0390921691639d4c162d916044808201926020929091908290030181600087803b15801561417457600080fd5b505af1158015614188573d6000803e3d6000fd5b505050506040513d602081101561419e57600080fd5b50505b6001880154600160a01b900460ff1660068111156141bb57fe5b866040015160068111156141cb57fe5b1461422557897f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f98960010160149054906101000a900460ff166040518082600681111561421457fe5b815260200191505060405180910390a25b600083600581111561423357fe5b14159a9950505050505050505050565b60008282028284828161425257fe5b041461429d576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b600081836143335760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156142f85781810151838201526020016142e0565b50505050905090810190601f1680156143255780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161433f57fe5b0495945050505050565b6000818484111561439b5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156142f85781810151838201526020016142e0565b505050900390565b60008183101561321a5781612694565b600081650100000000008402816143c657fe5b049392505050565b604051806040016040528060008152602001600081525090565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b031681525090565b604080516101c081018252600080825260208201819052909182019081526020016000815260200160006001600160a01b03168152602001600081526020016000801916815260200160008152602001600081526020016000815260200160008152602001600081526020016144cd6144da565b8152600060209091015290565b60405180606001604052806003906020820280368337509192915050565b8260038101928215614526579160200282015b8281111561452657825182559160200191906001019061450b565b50614532929150614536565b5090565b5b80821115614532576000815560010161453756fe50726f706f73616c2073686f756c64206265204578656375746564206f722045787069726564496e517565756545434453413a20696e76616c6964207369676e6174757265202773272076616c7565626f6f73746564566f7465506572696f644c696d6974203e3d207175696574456e64696e67506572696f64746f74616c207374616b6520666f72207374616b657220697320746f6f206c6172676545434453413a20696e76616c6964207369676e6174757265202776272076616c75653530203c3d20717565756564566f7465526571756972656450657263656e74616765203c3d20313030536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7770726f706f73616c20737461746520696e206e6f7420426f6f73746564206e6f72205175696574456e64696e67506572696f64a26469706673582212200f00cafa9e88f2d671c72c978834ea2a9d82818f7e91f72445b799690cc636b064736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/GenesisProtocolCallbacksMock.json b/contracts/0.1.2-rc.8/GenesisProtocolCallbacksMock.json new file mode 100644 index 00000000..744e7272 --- /dev/null +++ b/contracts/0.1.2-rc.8/GenesisProtocolCallbacksMock.json @@ -0,0 +1,562 @@ +{ + "contractName": "GenesisProtocolCallbacksMock", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "_msg", + "type": "address" + } + ], + "name": "LogAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "_msg", + "type": "bool" + } + ], + "name": "LogBool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "_msg", + "type": "bytes" + } + ], + "name": "LogBytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "_msg", + "type": "bytes32" + } + ], + "name": "LogBytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "_msg", + "type": "int256" + } + ], + "name": "LogInt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "_msg", + "type": "string" + } + ], + "name": "LogString", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "_msg", + "type": "uint256" + } + ], + "name": "LogUint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "burnReputationTest", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "genesisProtocol", + "outputs": [ + { + "internalType": "contract GenesisProtocol", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Reputation", + "name": "_reputation", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumbers", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "setProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "stakingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610edf806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80639d4c162d116100ad578063c52164c611610071578063c52164c614610355578063d1c756501461035d578063d29b5d2f1461037a578063f2fde38b146103ac578063f81f8bf6146103d257610121565b80639d4c162d1461026f578063abcc9cb914610292578063b551c373146102c4578063bea75f28146102e1578063c0c53b8b1461031d57610121565b806372f702f3116100f457806372f702f3146101e35780637581d62f146102075780638894c41b1461020f5780638da5cb5b1461023b5780639588378e1461024357610121565b80630905c9f9146101265780636b8eb4031461017c57806370a53748146101a8578063715018a6146101d9575b600080fd5b61016a600480360360a081101561013c57600080fd5b508035906020810135906001600160a01b036040820135811691606081013582169160809091013516610404565b60408051918252519081900360200190f35b61016a6004803603604081101561019257600080fd5b506001600160a01b038135169060200135610501565b6101c5600480360360208110156101be57600080fd5b5035610583565b604080519115158252519081900360200190f35b6101e1610597565b005b6101eb610639565b604080516001600160a01b039092168252519081900360200190f35b6101eb610648565b61016a600480360361018081101561022657600080fd5b506001600160a01b0361016082013516610657565b6101eb6106e2565b61016a6004803603604081101561025957600080fd5b506001600160a01b0381351690602001356106f1565b6101c56004803603604081101561028557600080fd5b5080359060200135610753565b6101c5600480360360608110156102a857600080fd5b508035906001600160a01b0360208201351690604001356107c5565b61016a600480360360208110156102da57600080fd5b5035610852565b6101c5600480360360808110156102f757600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356108de565b6101e16004803603606081101561033357600080fd5b506001600160a01b0381358116916020810135821691604090910135166109c4565b6101eb610ab7565b61016a6004803603602081101561037357600080fd5b5035610ac6565b6101c56004803603606081101561039057600080fd5b508035906001600160a01b036020820135169060400135610ad8565b6101e1600480360360208110156103c257600080fd5b50356001600160a01b0316610b88565b6101c5600480360360608110156103e857600080fd5b508035906001600160a01b036020820135169060400135610c81565b60995460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b15801561046a57600080fd5b505af115801561047e573d6000803e3d6000fd5b505050506040513d602081101561049457600080fd5b5051604080518981526001600160a01b03871660208201528082018990529051919250309183917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a36000818152609a602052604090204390559695505050505050565b6000826001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561055057600080fd5b505afa158015610564573d6000803e3d6000fd5b505050506040513d602081101561057a57600080fd5b50519392505050565b6000908152609a6020526040812043905590565b61059f610d31565b6065546001600160a01b039081169116146105ef576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6098546001600160a01b031681565b6099546001600160a01b031681565b609954604051638894c41b60e01b81526000916001600160a01b031690638894c41b9085908590600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b0316815260200192505050602060405180830381600087803b1580156106ce57600080fd5b505af1158015610564573d6000803e3d6000fd5b6065546001600160a01b031690565b6097546000828152609a6020908152604080832054815163277166bf60e11b81526001600160a01b0388811660048301526024820192909252915193941692634ee2cd7e92604480840193919291829003018186803b15801561055057600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60975460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b15801561081e57600080fd5b505af1158015610832573d6000803e3d6000fd5b505050506040513d602081101561084857600080fd5b5051949350505050565b6097546000828152609a60209081526040808320548151630981b24d60e41b81526004810191909152905192936001600160a01b03169263981b24d092602480840193919291829003018186803b1580156108ac57600080fd5b505afa1580156108c0573d6000803e3d6000fd5b505050506040513d60208110156108d657600080fd5b505192915050565b60006108e8610d31565b6065546001600160a01b03908116911614610938576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561098f57600080fd5b505af11580156109a3573d6000803e3d6000fd5b505050506040513d60208110156109b957600080fd5b505195945050505050565b600054610100900460ff16806109dd57506109dd610d35565b806109eb575060005460ff16155b610a265760405162461bcd60e51b815260040180806020018281038252602e815260200180610e7c602e913960400191505060405180910390fd5b600054610100900460ff16158015610a51576000805460ff1961ff0019909116610100171660011790555b609780546001600160a01b038087166001600160a01b031992831617909255609880548684169083161790556099805492851692909116919091179055610a96610d3b565b610a9f82610b88565b8015610ab1576000805461ff00191690555b50505050565b6097546001600160a01b031681565b609a6020526000908152604090205481565b6000610ae2610d31565b6065546001600160a01b03908116911614610b32576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b609754604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b15801561081e57600080fd5b610b90610d31565b6065546001600160a01b03908116911614610be0576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b6001600160a01b038116610c255760405162461bcd60e51b8152600401808060200182810382526026815260200180610e366026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b6000610c8b610d31565b6065546001600160a01b03908116911614610cdb576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b60975460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561081e57600080fd5b3390565b303b1590565b600054610100900460ff1680610d545750610d54610d35565b80610d62575060005460ff16155b610d9d5760405162461bcd60e51b815260040180806020018281038252602e815260200180610e7c602e913960400191505060405180910390fd5b600054610100900460ff16158015610dc8576000805460ff1961ff0019909116610100171660011790555b6000610dd2610d31565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610e32576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220df316f5627584b64366d792c168e7050df76396f8fbf5715c63600b9e1488fe464736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c80639d4c162d116100ad578063c52164c611610071578063c52164c614610355578063d1c756501461035d578063d29b5d2f1461037a578063f2fde38b146103ac578063f81f8bf6146103d257610121565b80639d4c162d1461026f578063abcc9cb914610292578063b551c373146102c4578063bea75f28146102e1578063c0c53b8b1461031d57610121565b806372f702f3116100f457806372f702f3146101e35780637581d62f146102075780638894c41b1461020f5780638da5cb5b1461023b5780639588378e1461024357610121565b80630905c9f9146101265780636b8eb4031461017c57806370a53748146101a8578063715018a6146101d9575b600080fd5b61016a600480360360a081101561013c57600080fd5b508035906020810135906001600160a01b036040820135811691606081013582169160809091013516610404565b60408051918252519081900360200190f35b61016a6004803603604081101561019257600080fd5b506001600160a01b038135169060200135610501565b6101c5600480360360208110156101be57600080fd5b5035610583565b604080519115158252519081900360200190f35b6101e1610597565b005b6101eb610639565b604080516001600160a01b039092168252519081900360200190f35b6101eb610648565b61016a600480360361018081101561022657600080fd5b506001600160a01b0361016082013516610657565b6101eb6106e2565b61016a6004803603604081101561025957600080fd5b506001600160a01b0381351690602001356106f1565b6101c56004803603604081101561028557600080fd5b5080359060200135610753565b6101c5600480360360608110156102a857600080fd5b508035906001600160a01b0360208201351690604001356107c5565b61016a600480360360208110156102da57600080fd5b5035610852565b6101c5600480360360808110156102f757600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356108de565b6101e16004803603606081101561033357600080fd5b506001600160a01b0381358116916020810135821691604090910135166109c4565b6101eb610ab7565b61016a6004803603602081101561037357600080fd5b5035610ac6565b6101c56004803603606081101561039057600080fd5b508035906001600160a01b036020820135169060400135610ad8565b6101e1600480360360208110156103c257600080fd5b50356001600160a01b0316610b88565b6101c5600480360360608110156103e857600080fd5b508035906001600160a01b036020820135169060400135610c81565b60995460408051634439bdaf60e11b815260048101889052602481018790526001600160a01b03858116604483015284811660648301529151600093849316916388737b5e91608480830192602092919082900301818787803b15801561046a57600080fd5b505af115801561047e573d6000803e3d6000fd5b505050506040513d602081101561049457600080fd5b5051604080518981526001600160a01b03871660208201528082018990529051919250309183917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a36000818152609a602052604090204390559695505050505050565b6000826001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561055057600080fd5b505afa158015610564573d6000803e3d6000fd5b505050506040513d602081101561057a57600080fd5b50519392505050565b6000908152609a6020526040812043905590565b61059f610d31565b6065546001600160a01b039081169116146105ef576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6098546001600160a01b031681565b6099546001600160a01b031681565b609954604051638894c41b60e01b81526000916001600160a01b031690638894c41b9085908590600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b0316815260200192505050602060405180830381600087803b1580156106ce57600080fd5b505af1158015610564573d6000803e3d6000fd5b6065546001600160a01b031690565b6097546000828152609a6020908152604080832054815163277166bf60e11b81526001600160a01b0388811660048301526024820192909252915193941692634ee2cd7e92604480840193919291829003018186803b15801561055057600080fd5b6040805183815290516000917e9fd52f05c0ded31d6fb0ee580b923f85e99cf1a5a1da342f25e73c45829c83919081900360200190a16040805183815290517f1aa4309bfd99af8afa7454590e1bdaa5a9b3b63e5baa109ae9afa3ecd0c67f399181900360200190a150600192915050565b60975460408051632770a7eb60e21b81526001600160a01b0385811660048301526024820187905291516000939290921691639dc29fac9160448082019260209290919082900301818787803b15801561081e57600080fd5b505af1158015610832573d6000803e3d6000fd5b505050506040513d602081101561084857600080fd5b5051949350505050565b6097546000828152609a60209081526040808320548151630981b24d60e41b81526004810191909152905192936001600160a01b03169263981b24d092602480840193919291829003018186803b1580156108ac57600080fd5b505afa1580156108c0573d6000803e3d6000fd5b505050506040513d60208110156108d657600080fd5b505192915050565b60006108e8610d31565b6065546001600160a01b03908116911614610938576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b846001600160a01b031663a9059cbb85856040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561098f57600080fd5b505af11580156109a3573d6000803e3d6000fd5b505050506040513d60208110156109b957600080fd5b505195945050505050565b600054610100900460ff16806109dd57506109dd610d35565b806109eb575060005460ff16155b610a265760405162461bcd60e51b815260040180806020018281038252602e815260200180610e7c602e913960400191505060405180910390fd5b600054610100900460ff16158015610a51576000805460ff1961ff0019909116610100171660011790555b609780546001600160a01b038087166001600160a01b031992831617909255609880548684169083161790556099805492851692909116919091179055610a96610d3b565b610a9f82610b88565b8015610ab1576000805461ff00191690555b50505050565b6097546001600160a01b031681565b609a6020526000908152604090205481565b6000610ae2610d31565b6065546001600160a01b03908116911614610b32576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b609754604080516340c10f1960e01b81526001600160a01b03868116600483015260248201889052915191909216916340c10f199160448083019260209291908290030181600087803b15801561081e57600080fd5b610b90610d31565b6065546001600160a01b03908116911614610be0576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b6001600160a01b038116610c255760405162461bcd60e51b8152600401808060200182810382526026815260200180610e366026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b6000610c8b610d31565b6065546001600160a01b03908116911614610cdb576040805162461bcd60e51b81526020600482018190526024820152600080516020610e5c833981519152604482015290519081900360640190fd5b60975460408051632770a7eb60e21b81526001600160a01b0386811660048301526024820188905291519190921691639dc29fac9160448083019260209291908290030181600087803b15801561081e57600080fd5b3390565b303b1590565b600054610100900460ff1680610d545750610d54610d35565b80610d62575060005460ff16155b610d9d5760405162461bcd60e51b815260040180806020018281038252602e815260200180610e7c602e913960400191505060405180910390fd5b600054610100900460ff16158015610dc8576000805460ff1961ff0019909116610100171660011790555b6000610dd2610d31565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610e32576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220df316f5627584b64366d792c168e7050df76396f8fbf5715c63600b9e1488fe464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/GenesisProtocolLogic.json b/contracts/0.1.2-rc.8/GenesisProtocolLogic.json new file mode 100644 index 00000000..205793c0 --- /dev/null +++ b/contracts/0.1.2-rc.8/GenesisProtocolLogic.json @@ -0,0 +1,797 @@ +{ + "contractName": "GenesisProtocolLogic", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_confidenceThreshold", + "type": "uint256" + } + ], + "name": "ConfidenceLevelChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "ExpirationCallBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ExecutionState", + "name": "_executionState", + "type": "uint8" + } + ], + "name": "GPExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemDaoBounty", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_staker", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Stake", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "_proposalState", + "type": "uint8" + } + ], + "name": "StateChange", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "inputs": [], + "name": "NO", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "YES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "averagesDownstakesOfBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "calcExecuteCallBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "executeBoosted", + "outputs": [ + { + "internalType": "uint256", + "name": "expirationCallBounty", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "orgBoostedProposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "queuedVoteRequiredPercentage", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "queuedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "boostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "preBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thresholdConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "limitExponentValue", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "quietEndingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "proposingRepReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "votersReputationLossRatio", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minimumDaoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBountyConst", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "activationTime", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "enum GenesisProtocolLogic.ProposalState", + "name": "state", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "uint256", + "name": "currentBoostedVotePeriodLimit", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "daoBountyRemain", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "daoBounty", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "totalStakes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "confidenceThreshold", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "secondsFromTimeOutTillExecuteBoosted", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "daoRedeemItsWinnings", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "rewards", + "type": "uint256[3]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemDaoBounty", + "outputs": [ + { + "internalType": "uint256", + "name": "redeemedAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "potentialAmount", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[11]", + "name": "_params", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "shouldBoost", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "stakingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_organizationId", + "type": "bytes32" + } + ], + "name": "threshold", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x60806040523480156200001157600080fd5b50604051620028b0380380620028b0833981810160405260208110156200003757600080fd5b50516200006473543ff227f64aa17ea132bf9886cab5db55dcaddf620000b9602090811b6200198417901c565b156200009657600680546001600160a01b03191673543ff227f64aa17ea132bf9886cab5db55dcaddf179055620000b2565b600680546001600160a01b0319166001600160a01b0383161790555b50620000f6565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590620000ee57508115155b949350505050565b6127aa80620001066000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806380f5e0a1116100a2578063ba51b14e11610071578063ba51b14e146103d9578063bb5a05ed146103f6578063beda801514610413578063cc3bf9e914610430578063fb6c0cbb1461049457610116565b806380f5e0a1146103745780638894c41b146103a55780639bc5689d14610215578063b2449d65146103d157610116565b80632d598e58116100e95780632d598e581461022557806332ed5b121461024857806340474873146102ee5780636359036b1461030b57806372f702f31461035057610116565b8063025068041461011b57806307b4e1e3146101a65780630d4834421461021557806321b4b3dc1461021d575b600080fd5b6101386004803603602081101561013157600080fd5b50356104b1565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526101608401526001600160a01b031661018083015251908190036101a00190f35b61020360048036036101808110156101bd57600080fd5b81019080806101600190600b806020026040519081016040528092919082600b602002808284376000920191909152509194505050356001600160a01b03169050610521565b60408051918252519081900360200190f35b610203610629565b61020361062e565b6102036004803603604081101561023b57600080fd5b5080359060200135610634565b6102656004803603602081101561025e57600080fd5b503561067b565b604051808e81526020018d6001600160a01b031681526020018c600681111561028a57fe5b81526020018b81526020018a6001600160a01b0316815260200189815260200188815260200187815260200186815260200185815260200184815260200183815260200182151581526020019d505050505050505050505050505060405180910390f35b6102036004803603602081101561030457600080fd5b50356106e9565b6103376004803603604081101561032157600080fd5b50803590602001356001600160a01b031661074f565b6040805192835260208301919091528051918290030190f35b610358610a6c565b604080516001600160a01b039092168252519081900360200190f35b6103916004803603602081101561038a57600080fd5b5035610a7b565b604080519115158252519081900360200190f35b61020360048036036101808110156103bc57600080fd5b506001600160a01b0361016082013516610bb8565b610203610fa5565b610358600480360360208110156103ef57600080fd5b5035610faa565b6102036004803603602081101561040c57600080fd5b5035610fc5565b6102036004803603602081101561042957600080fd5b5035610fd7565b61045c6004803603604081101561044657600080fd5b50803590602001356001600160a01b031661120e565b6040518082606080838360005b83811015610481578181015183820152602001610469565b5050505090500191505060405180910390f35b610203600480360360208110156104aa57600080fd5b5035611972565b600060208190529081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a8b0154600b8c0154600c909c01549a9b999a989997989697959694959394929391929091906001600160a01b03168d565b60008281602002015183600160200201518460026020020151856003602002015186600460200201518760056020020151886006602002015189600760200201518a600860200201518b600960200201518c600a6020020151604051602001808c81526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019b505050505050505050505050604051602081830303815290604052805190602001208260405160200180838152602001826001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012090505b92915050565b600281565b60055481565b600081815260026020908152604080832054858452918390528220600581015482111561066357806005015491505b600481015461067290836119bd565b95945050505050565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600e909a01546001600160a01b03808b169b60ff600160a01b909c048c169b99909116989091168d565b6000818152600160205260408120600a01546105dc90829061070c908390611a07565b60008581526001602081815260408084209284526012909201905290205490915061074790600a840290610741908490611a1f565b90611a78565b949350505050565b6000828152600160205260408120819060026001820154600160a01b900460ff16600681111561077b57fe5b146107cd576040805162461bcd60e51b815260206004820152601960248201527f70726f706f73616c206e6f742065786563757465642079657400000000000000604482015290519081900360640190fd5b600281015460009081526012820160209081526040808320546001600160a01b03881684526013850190925290912060018101546001600160f81b03161580159061082257506002830154600182015460f81c145b8015610832575060018360020154145b801561083d57508115155b156108625781836007015482600101546001600160f81b0316028161085e57fe5b0493505b83158015906108f75750600183015460065460408051636b8eb40360e01b81526001600160a01b039283166004820152602481018b9052905187939290921691636b8eb40391604480820192602092909190829003018186803b1580156108c857600080fd5b505afa1580156108dc573d6000803e3d6000fd5b505050506040513d60208110156108f257600080fd5b505110155b15610a62576001810180546001600160f81b0319169055600683015461091d9085611aba565b60068085019190915560018401549054604080516317d4ebe560e31b81526001600160a01b039283166004820152898316602482015260448101889052606481018b90529051919092169163bea75f289160848083019260209291908290030181600087803b15801561098f57600080fd5b505af11580156109a3573d6000803e3d6000fd5b505050506040513d60208110156109b957600080fd5b5051610a04576040805162461bcd60e51b81526020600482015260156024820152741d1c985b9cd9995c881d1bdad95b8819985a5b1959605a1b604482015290519081900360640190fd5b8254600090815260036020908152604091829020548251878152925196975087966001600160a01b03808b16949216928b927fb4a37163ec93e05e09b62e52f7f2ea8cfde431802edede7dfebe53d2ad969dbb929081900390910190a45b5050509250929050565b6006546001600160a01b031681565b6000610a8561258f565b60008381526001602081815260409283902083516101c08101855281548152928101546001600160a01b038116928401929092529192830190600160a01b900460ff166006811115610ad357fe5b6006811115610ade57fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311610b67575050509183525050600e919091015460ff16151560209091015260c08101518151919250610ba791610634565b610bb084611afc565b119392505050565b60006064833511801590610bce57506032833510155b610c095760405162461bcd60e51b81526004018080602001828103825260298152602001806126f86029913960400191505060405180910390fd5b613e80608084013511801590610c2457506103e86080840135115b610c75576040805162461bcd60e51b815260206004820152601e60248201527f31303030203c207468726573686f6c64436f6e7374203c3d2031363030300000604482015290519081900360640190fd5b606460e08401351115610ccf576040805162461bcd60e51b815260206004820181905260248201527f766f7465727352657075746174696f6e4c6f7373526174696f203c3d20313030604482015290519081900360640190fd5b60a083013560408401351015610d165760405162461bcd60e51b815260040180806020018281038252602b8152602001806126cd602b913960400191505060405180910390fd5b610100830135610d6d576040805162461bcd60e51b815260206004820152601e60248201527f6d696e696d756d44616f426f756e74792073686f756c64206265203e20300000604482015290519081900360640190fd5b610120830135610dc4576040805162461bcd60e51b815260206004820152601c60248201527f64616f426f756e7479436f6e73742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6000610dfa84600b806020026040519081016040528092919082600b602002808284376000920191909152508691506105219050565b905060ac60026107d05b613e80811015610e4c57608087013581108015610e28575060028102608088013511155b15610e3e57818381610e3657fe5b049250610e4c565b600190910190600202610e04565b50604080516101a0810182528735815260208089013590820152878201359181019190915260608088013590820152608080820190610e99908901356001600160d81b03166103e8611b33565b81526020810184905260a088810135604083015260c0808a0135606084015260e0808b013560808501526101008b0135928401929092526101208a0135908301520187600a6020908102919091013582526001600160a01b03978816918101919091526000858152808252604090819020835181559183015160018301558201516002820155606082015160038201556080820151600482015560a0820151600582015560c0820151600682015560e0820151600782015561010082015160088201556101208201516009820155610140820151600a820155610160820151600b82015561018090910151600c90910180546001600160a01b0319169190961617909455509392505050565b600181565b6003602052600090815260409020546001600160a01b031681565b60046020526000908152604090205481565b600081815260016020526040812060056001820154600160a01b900460ff16600681111561100157fe5b1480611026575060066001820154600160a01b900460ff16600681111561102457fe5b145b6110615760405162461bcd60e51b81526004018080602001828103825260338152602001806127426033913960400191505060405180910390fd5b61106a83611b56565b6110bb576040805162461bcd60e51b815260206004820152601760248201527f70726f706f73616c206e65656420746f20657870697265000000000000000000604482015290519081900360640190fd5b6110db6110d4600b8301600101546004840154906123ba565b4290611aba565b600a8201556110e9836106e9565b60088201549092506110fb9083611aba565b60088201556006546040805163a9059cbb60e01b81523360048201526024810185905290516001600160a01b039092169163a9059cbb916044808201926020929091908290030181600087803b15801561115457600080fd5b505af1158015611168573d6000803e3d6000fd5b505050506040513d602081101561117e57600080fd5b50516111d1576040805162461bcd60e51b815260206004820152601d60248201527f7472616e7366657220746f206d73672e73656e646572206661696c6564000000604482015290519081900360640190fd5b604080518381529051339185917f7468017f6ff596af88244327e88fe691ac48cc1db88b033d11c335f2c7ccdd039181900360200190a350919050565b611216612610565b600083815260016020526040902060026001820154600160a01b900460ff16600681111561124057fe5b14806112645750600180820154600160a01b900460ff16600681111561126257fe5b145b61129f5760405162461bcd60e51b815260040180806020018281038252602d8152602001806126a0602d913960400191505060405180910390fd5b6112a761262e565b5060058082015460009081526020818152604080832081516101a081018352815481526001820154818501526002808301548285015260038301546060830152600483015460808301529582015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b0390811661018083015288168452601386018352818420948601548452601286019092528220549092916113a761137d896106e9565b6001600090815260128801602052604080822054600283529120546113a1916123ba565b90611aba565b83549091501561146257600180860154600160a01b900460ff1660068111156113cc57fe5b14156113db578254865261145d565b6002850154600184015460f81c141561145d5760018381015460f81c141561144457808560070154101561143f576000611422866007015483611aba90919063ffffffff16565b845490915083906114339083611a1f565b8161143a57fe5b048752505b61145d565b825482906114529083611a1f565b8161145957fe5b0486525b600083555b600e85015460ff16158015611492575084546000908152600360205260409020546001600160a01b038881169116145b80156114b75750600180860154600160a01b900460ff1660068111156114b457fe5b14155b80156114c7575060028560020154145b1561150c5760078501546114fa906113a1846114e38386611a1f565b816114ea57fe5b048960005b6020020151906123ba565b8652600e8501805460ff191660011790555b6001600160a01b03871660009081526011860160205260409020546fffffffffffffffffffffffffffffffff8116600160f783901c81161460f883901c82158015906115555750815b15611690576001808a0154600160a01b900460ff16600681111561157557fe5b14156115a757606461159589610100015185611a1f90919063ffffffff16565b8161159c57fe5b0460208b0152611674565b8060ff168960020154141561167457600060018a6002015414156115de57506002600090815260108a0160205260409020546115f3565b506001600090815260108a0160205260409020545b606461160d8a610100015183611a1f90919063ffffffff16565b8161161457fe5b60028c0154600090815260108d016020526040902054919004915061166d9061163d8684611a1f565b8161164457fe5b04606461165f8c610100015188611a1f90919063ffffffff16565b8161166657fe5b04906123ba565b60208c0152505b6001600160a01b038b16600090815260118a0160205260408120555b60038901546001600160a01b038c811691161480156116b3575060018960020154145b80156116cb575060038901546001600160a01b031615155b156116ed5760e088015160408b01526003890180546001600160a01b03191690555b89511561184757895160088a015461170491611aba565b60088a01556006546001600160a01b031663a9059cbb8c8c600060200201516040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561176957600080fd5b505af115801561177d573d6000803e3d6000fd5b505050506040513d602081101561179357600080fd5b50516117e6576040805162461bcd60e51b815260206004820152601e60248201527f7472616e7366657220746f2062656e6566696369617279206661696c65640000604482015290519081900360640190fd5b88546000908152600360205260408120546001600160a01b03808e16929116908e907f6d26871c9f457d104b2122485f659f126f7a0cf6938cf20482c03f49794a2fbf908e9060200201516040518082815260200191505060405180910390a45b60408a0151611858908b60016114ef565b156119635760018901546001600160a01b031663d29b5d2f6118838c600260200201518d60016114ef565b8d8f6040518463ffffffff1660e01b815260040180848152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b1580156118d257600080fd5b505af11580156118e6573d6000803e3d6000fd5b505050506040513d60208110156118fc57600080fd5b505088546000908152600360205260409020546001600160a01b03808d1691168d7f7419b736daacf66d5c1645948c956fca2b83be1e2e02d486d65713f289d683b86119518e600260200201518f60016114ef565b60408051918252519081900360200190a45b50505050505050505092915050565b60026020526000908152604090205481565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610747575050151592915050565b60008282650100000000005b81156106725781600116600114156119e8576119e58184612414565b90505b60019190911c908115611a02576119ff8384612414565b92505b6119c9565b6000818310611a165781611a18565b825b9392505050565b600082611a2e57506000610623565b82820282848281611a3b57fe5b0414611a185760405162461bcd60e51b81526004018080602001828103825260218152602001806127216021913960400191505060405180910390fd5b6000611a1883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612478565b6000611a1883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061251a565b60008181526001602081815260408084206002855260128101909252808420549284528320549091611a18916001600160d81b0316905b6000611a186001600160d81b038085166501000000000090810291851602612574565b6000818152600160205260408120611b6c61262e565b506005808201546000908152602081815260409182902082516101a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600482015460808201529181015460a0830152600681015460c0830152600781015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c01546001600160a01b0316610180820152611c2061258f565b604080516101c0810182528454815260018501546001600160a01b03811660208301529091859190830190600160a01b900460ff166006811115611c6057fe5b6006811115611c6b57fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311611cf4575050509183525050600e919091015460ff16151560209182015260018501546040805163b551c37360e01b8152600481018a905290519394506000936001600160a01b039092169263b551c37392602480840193829003018186803b158015611d6f57600080fd5b505afa158015611d83573d6000803e3d6000fd5b505050506040513d6020811015611d9957600080fd5b5051835160028601546000908152600f87016020526040812054929350606484049091029181908190841015611e465760036001890154600160a01b900460ff166006811115611de557fe5b1415611df45760019250611e24565b60046001890154600160a01b900460ff166006811115611e1057fe5b1415611e1f5760039250611e24565b600592505b6001880180546002919060ff60a01b1916600160a01b835b0217905550612087565b60036001890154600160a01b900460ff166006811115611e6257fe5b1415611ee4576020870151600b890154420310611e9d5760018801805460ff60a01b1916600160a01b17905560028089018190559250611ee4565b611eaf88600501548960000154610634565b905080611ebb8b611afc565b1115611ee45760018801805460ff60a01b1916600160a21b17905542600d890155600988018190555b60046001890154600160a01b900460ff166006811115611f0057fe5b141561208757611f1888600501548960000154610634565b6060880151909150600b890160020154420310611ffe5780611f398b611afc565b1115611fdd5787546000908152600260205260409020546110001115611fd8576001888101805460ff60a01b1916600560a01b17905542600c8a01558854600090815260026020818152604080842080549095019094558b54835260048152838320548282528484205492845260128d0190915292909120549193509083900381611fc057fe5b89546000908152600460205260409020919005830190555b611ff9565b6001880180546003919060ff60a01b1916600160a01b83611e3c565b612087565b60006120098b611afc565b60098a015490915061201b9083611a07565b811161203b5760018901805460ff60a01b1916600360a01b179055612085565b808960090154111561208557600989018290556040805183815290518c917fad767d61af51c7895fa3cc0497dde01afb610c74e55ee4d8a71fa5e3ee136d54919081900360200190a25b505b60056001890154600160a01b900460ff1660068111156120a357fe5b14806120c8575060066001890154600160a01b900460ff1660068111156120c657fe5b145b156120f8576004880154600c8901544203106120f85760018801805460ff60a01b1916600160a11b179055600492505b600083600581111561210657fe5b1461231857600483600581111561211957fe5b14806121305750600583600581111561212e57fe5b145b156121df578551600090815260026020526040902054612151906001611aba565b865160009081526002602052604080822092909255875181522054806121875788546000908152600460205260408120556121dd565b88546000908152600460209081526040808320546002845260128d019092529091205490935081906121c0906113a18660018501611a1f565b816121c757fe5b8a54600090815260046020526040902091900490555b505b87546000908152600360209081526040918290205460028b0154835190815291820188905282516001600160a01b03909116928d927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a387600601548860070181905550897f46a713b994c752c68fbefa9048bec9a0010cc7d933ad95a3c3dbb25931a167e7846040518082600581111561227f57fe5b815260200191505060405180910390a26001880154600289015460408051639d4c162d60e01b8152600481018e90526024810192909252516001600160a01b0390921691639d4c162d916044808201926020929091908290030181600087803b1580156122eb57600080fd5b505af11580156122ff573d6000803e3d6000fd5b505050506040513d602081101561231557600080fd5b50505b6001880154600160a01b900460ff16600681111561233257fe5b8660400151600681111561234257fe5b1461239c57897f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f98960010160149054906101000a900460ff166040518082600681111561238b57fe5b815260200191505060405180910390a25b60008360058111156123aa57fe5b14159a9950505050505050505050565b600082820183811015611a18576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008282028284828161242357fe5b041461246e576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b600081836125045760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156124c95781810151838201526020016124b1565b50505050905090810190601f1680156124f65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161251057fe5b0495945050505050565b6000818484111561256c5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156124c95781810151838201526020016124b1565b505050900390565b6000816501000000000084028161258757fe5b049392505050565b604080516101c081018252600080825260208201819052909182019081526020016000815260200160006001600160a01b0316815260200160008152602001600080191681526020016000815260200160008152602001600081526020016000815260200160008152602001612603612610565b8152600060209091015290565b60405180606001604052806003906020820280368337509192915050565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fe50726f706f73616c2073686f756c64206265204578656375746564206f722045787069726564496e5175657565626f6f73746564566f7465506572696f644c696d6974203e3d207175696574456e64696e67506572696f643530203c3d20717565756564566f7465526571756972656450657263656e74616765203c3d20313030536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7770726f706f73616c20737461746520696e206e6f7420426f6f73746564206e6f72205175696574456e64696e67506572696f64a264697066735822122091f15d90f44edfb83873122e48d36537b148a2eebdb12b9821f435d31c1467f864736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101165760003560e01c806380f5e0a1116100a2578063ba51b14e11610071578063ba51b14e146103d9578063bb5a05ed146103f6578063beda801514610413578063cc3bf9e914610430578063fb6c0cbb1461049457610116565b806380f5e0a1146103745780638894c41b146103a55780639bc5689d14610215578063b2449d65146103d157610116565b80632d598e58116100e95780632d598e581461022557806332ed5b121461024857806340474873146102ee5780636359036b1461030b57806372f702f31461035057610116565b8063025068041461011b57806307b4e1e3146101a65780630d4834421461021557806321b4b3dc1461021d575b600080fd5b6101386004803603602081101561013157600080fd5b50356104b1565b604080519d8e5260208e019c909c528c8c019a909a5260608c019890985260808b019690965260a08a019490945260c089019290925260e08801526101008701526101208601526101408501526101608401526001600160a01b031661018083015251908190036101a00190f35b61020360048036036101808110156101bd57600080fd5b81019080806101600190600b806020026040519081016040528092919082600b602002808284376000920191909152509194505050356001600160a01b03169050610521565b60408051918252519081900360200190f35b610203610629565b61020361062e565b6102036004803603604081101561023b57600080fd5b5080359060200135610634565b6102656004803603602081101561025e57600080fd5b503561067b565b604051808e81526020018d6001600160a01b031681526020018c600681111561028a57fe5b81526020018b81526020018a6001600160a01b0316815260200189815260200188815260200187815260200186815260200185815260200184815260200183815260200182151581526020019d505050505050505050505050505060405180910390f35b6102036004803603602081101561030457600080fd5b50356106e9565b6103376004803603604081101561032157600080fd5b50803590602001356001600160a01b031661074f565b6040805192835260208301919091528051918290030190f35b610358610a6c565b604080516001600160a01b039092168252519081900360200190f35b6103916004803603602081101561038a57600080fd5b5035610a7b565b604080519115158252519081900360200190f35b61020360048036036101808110156103bc57600080fd5b506001600160a01b0361016082013516610bb8565b610203610fa5565b610358600480360360208110156103ef57600080fd5b5035610faa565b6102036004803603602081101561040c57600080fd5b5035610fc5565b6102036004803603602081101561042957600080fd5b5035610fd7565b61045c6004803603604081101561044657600080fd5b50803590602001356001600160a01b031661120e565b6040518082606080838360005b83811015610481578181015183820152602001610469565b5050505090500191505060405180910390f35b610203600480360360208110156104aa57600080fd5b5035611972565b600060208190529081526040902080546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a8b0154600b8c0154600c909c01549a9b999a989997989697959694959394929391929091906001600160a01b03168d565b60008281602002015183600160200201518460026020020151856003602002015186600460200201518760056020020151886006602002015189600760200201518a600860200201518b600960200201518c600a6020020151604051602001808c81526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018481526020018381526020018281526020019b505050505050505050505050604051602081830303815290604052805190602001208260405160200180838152602001826001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012090505b92915050565b600281565b60055481565b600081815260026020908152604080832054858452918390528220600581015482111561066357806005015491505b600481015461067290836119bd565b95945050505050565b600160208190526000918252604090912080549181015460028201546003830154600484015460058501546006860154600787015460088801546009890154600a8a0154600e909a01546001600160a01b03808b169b60ff600160a01b909c048c169b99909116989091168d565b6000818152600160205260408120600a01546105dc90829061070c908390611a07565b60008581526001602081815260408084209284526012909201905290205490915061074790600a840290610741908490611a1f565b90611a78565b949350505050565b6000828152600160205260408120819060026001820154600160a01b900460ff16600681111561077b57fe5b146107cd576040805162461bcd60e51b815260206004820152601960248201527f70726f706f73616c206e6f742065786563757465642079657400000000000000604482015290519081900360640190fd5b600281015460009081526012820160209081526040808320546001600160a01b03881684526013850190925290912060018101546001600160f81b03161580159061082257506002830154600182015460f81c145b8015610832575060018360020154145b801561083d57508115155b156108625781836007015482600101546001600160f81b0316028161085e57fe5b0493505b83158015906108f75750600183015460065460408051636b8eb40360e01b81526001600160a01b039283166004820152602481018b9052905187939290921691636b8eb40391604480820192602092909190829003018186803b1580156108c857600080fd5b505afa1580156108dc573d6000803e3d6000fd5b505050506040513d60208110156108f257600080fd5b505110155b15610a62576001810180546001600160f81b0319169055600683015461091d9085611aba565b60068085019190915560018401549054604080516317d4ebe560e31b81526001600160a01b039283166004820152898316602482015260448101889052606481018b90529051919092169163bea75f289160848083019260209291908290030181600087803b15801561098f57600080fd5b505af11580156109a3573d6000803e3d6000fd5b505050506040513d60208110156109b957600080fd5b5051610a04576040805162461bcd60e51b81526020600482015260156024820152741d1c985b9cd9995c881d1bdad95b8819985a5b1959605a1b604482015290519081900360640190fd5b8254600090815260036020908152604091829020548251878152925196975087966001600160a01b03808b16949216928b927fb4a37163ec93e05e09b62e52f7f2ea8cfde431802edede7dfebe53d2ad969dbb929081900390910190a45b5050509250929050565b6006546001600160a01b031681565b6000610a8561258f565b60008381526001602081815260409283902083516101c08101855281548152928101546001600160a01b038116928401929092529192830190600160a01b900460ff166006811115610ad357fe5b6006811115610ade57fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311610b67575050509183525050600e919091015460ff16151560209091015260c08101518151919250610ba791610634565b610bb084611afc565b119392505050565b60006064833511801590610bce57506032833510155b610c095760405162461bcd60e51b81526004018080602001828103825260298152602001806126f86029913960400191505060405180910390fd5b613e80608084013511801590610c2457506103e86080840135115b610c75576040805162461bcd60e51b815260206004820152601e60248201527f31303030203c207468726573686f6c64436f6e7374203c3d2031363030300000604482015290519081900360640190fd5b606460e08401351115610ccf576040805162461bcd60e51b815260206004820181905260248201527f766f7465727352657075746174696f6e4c6f7373526174696f203c3d20313030604482015290519081900360640190fd5b60a083013560408401351015610d165760405162461bcd60e51b815260040180806020018281038252602b8152602001806126cd602b913960400191505060405180910390fd5b610100830135610d6d576040805162461bcd60e51b815260206004820152601e60248201527f6d696e696d756d44616f426f756e74792073686f756c64206265203e20300000604482015290519081900360640190fd5b610120830135610dc4576040805162461bcd60e51b815260206004820152601c60248201527f64616f426f756e7479436f6e73742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6000610dfa84600b806020026040519081016040528092919082600b602002808284376000920191909152508691506105219050565b905060ac60026107d05b613e80811015610e4c57608087013581108015610e28575060028102608088013511155b15610e3e57818381610e3657fe5b049250610e4c565b600190910190600202610e04565b50604080516101a0810182528735815260208089013590820152878201359181019190915260608088013590820152608080820190610e99908901356001600160d81b03166103e8611b33565b81526020810184905260a088810135604083015260c0808a0135606084015260e0808b013560808501526101008b0135928401929092526101208a0135908301520187600a6020908102919091013582526001600160a01b03978816918101919091526000858152808252604090819020835181559183015160018301558201516002820155606082015160038201556080820151600482015560a0820151600582015560c0820151600682015560e0820151600782015561010082015160088201556101208201516009820155610140820151600a820155610160820151600b82015561018090910151600c90910180546001600160a01b0319169190961617909455509392505050565b600181565b6003602052600090815260409020546001600160a01b031681565b60046020526000908152604090205481565b600081815260016020526040812060056001820154600160a01b900460ff16600681111561100157fe5b1480611026575060066001820154600160a01b900460ff16600681111561102457fe5b145b6110615760405162461bcd60e51b81526004018080602001828103825260338152602001806127426033913960400191505060405180910390fd5b61106a83611b56565b6110bb576040805162461bcd60e51b815260206004820152601760248201527f70726f706f73616c206e65656420746f20657870697265000000000000000000604482015290519081900360640190fd5b6110db6110d4600b8301600101546004840154906123ba565b4290611aba565b600a8201556110e9836106e9565b60088201549092506110fb9083611aba565b60088201556006546040805163a9059cbb60e01b81523360048201526024810185905290516001600160a01b039092169163a9059cbb916044808201926020929091908290030181600087803b15801561115457600080fd5b505af1158015611168573d6000803e3d6000fd5b505050506040513d602081101561117e57600080fd5b50516111d1576040805162461bcd60e51b815260206004820152601d60248201527f7472616e7366657220746f206d73672e73656e646572206661696c6564000000604482015290519081900360640190fd5b604080518381529051339185917f7468017f6ff596af88244327e88fe691ac48cc1db88b033d11c335f2c7ccdd039181900360200190a350919050565b611216612610565b600083815260016020526040902060026001820154600160a01b900460ff16600681111561124057fe5b14806112645750600180820154600160a01b900460ff16600681111561126257fe5b145b61129f5760405162461bcd60e51b815260040180806020018281038252602d8152602001806126a0602d913960400191505060405180910390fd5b6112a761262e565b5060058082015460009081526020818152604080832081516101a081018352815481526001820154818501526002808301548285015260038301546060830152600483015460808301529582015460a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c909101546001600160a01b0390811661018083015288168452601386018352818420948601548452601286019092528220549092916113a761137d896106e9565b6001600090815260128801602052604080822054600283529120546113a1916123ba565b90611aba565b83549091501561146257600180860154600160a01b900460ff1660068111156113cc57fe5b14156113db578254865261145d565b6002850154600184015460f81c141561145d5760018381015460f81c141561144457808560070154101561143f576000611422866007015483611aba90919063ffffffff16565b845490915083906114339083611a1f565b8161143a57fe5b048752505b61145d565b825482906114529083611a1f565b8161145957fe5b0486525b600083555b600e85015460ff16158015611492575084546000908152600360205260409020546001600160a01b038881169116145b80156114b75750600180860154600160a01b900460ff1660068111156114b457fe5b14155b80156114c7575060028560020154145b1561150c5760078501546114fa906113a1846114e38386611a1f565b816114ea57fe5b048960005b6020020151906123ba565b8652600e8501805460ff191660011790555b6001600160a01b03871660009081526011860160205260409020546fffffffffffffffffffffffffffffffff8116600160f783901c81161460f883901c82158015906115555750815b15611690576001808a0154600160a01b900460ff16600681111561157557fe5b14156115a757606461159589610100015185611a1f90919063ffffffff16565b8161159c57fe5b0460208b0152611674565b8060ff168960020154141561167457600060018a6002015414156115de57506002600090815260108a0160205260409020546115f3565b506001600090815260108a0160205260409020545b606461160d8a610100015183611a1f90919063ffffffff16565b8161161457fe5b60028c0154600090815260108d016020526040902054919004915061166d9061163d8684611a1f565b8161164457fe5b04606461165f8c610100015188611a1f90919063ffffffff16565b8161166657fe5b04906123ba565b60208c0152505b6001600160a01b038b16600090815260118a0160205260408120555b60038901546001600160a01b038c811691161480156116b3575060018960020154145b80156116cb575060038901546001600160a01b031615155b156116ed5760e088015160408b01526003890180546001600160a01b03191690555b89511561184757895160088a015461170491611aba565b60088a01556006546001600160a01b031663a9059cbb8c8c600060200201516040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561176957600080fd5b505af115801561177d573d6000803e3d6000fd5b505050506040513d602081101561179357600080fd5b50516117e6576040805162461bcd60e51b815260206004820152601e60248201527f7472616e7366657220746f2062656e6566696369617279206661696c65640000604482015290519081900360640190fd5b88546000908152600360205260408120546001600160a01b03808e16929116908e907f6d26871c9f457d104b2122485f659f126f7a0cf6938cf20482c03f49794a2fbf908e9060200201516040518082815260200191505060405180910390a45b60408a0151611858908b60016114ef565b156119635760018901546001600160a01b031663d29b5d2f6118838c600260200201518d60016114ef565b8d8f6040518463ffffffff1660e01b815260040180848152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b1580156118d257600080fd5b505af11580156118e6573d6000803e3d6000fd5b505050506040513d60208110156118fc57600080fd5b505088546000908152600360205260409020546001600160a01b03808d1691168d7f7419b736daacf66d5c1645948c956fca2b83be1e2e02d486d65713f289d683b86119518e600260200201518f60016114ef565b60408051918252519081900360200190a45b50505050505050505092915050565b60026020526000908152604090205481565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590610747575050151592915050565b60008282650100000000005b81156106725781600116600114156119e8576119e58184612414565b90505b60019190911c908115611a02576119ff8384612414565b92505b6119c9565b6000818310611a165781611a18565b825b9392505050565b600082611a2e57506000610623565b82820282848281611a3b57fe5b0414611a185760405162461bcd60e51b81526004018080602001828103825260218152602001806127216021913960400191505060405180910390fd5b6000611a1883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612478565b6000611a1883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061251a565b60008181526001602081815260408084206002855260128101909252808420549284528320549091611a18916001600160d81b0316905b6000611a186001600160d81b038085166501000000000090810291851602612574565b6000818152600160205260408120611b6c61262e565b506005808201546000908152602081815260409182902082516101a0810184528154815260018201549281019290925260028101549282019290925260038201546060820152600482015460808201529181015460a0830152600681015460c0830152600781015460e083015260088101546101008301526009810154610120830152600a810154610140830152600b810154610160830152600c01546001600160a01b0316610180820152611c2061258f565b604080516101c0810182528454815260018501546001600160a01b03811660208301529091859190830190600160a01b900460ff166006811115611c6057fe5b6006811115611c6b57fe5b8152600282015460208201526003808301546001600160a01b0316604080840191909152600484015460608085019190915260058501546080850152600685015460a0850152600785015460c0850152600885015460e08501526009850154610100850152600a8501546101208501528151908101918290526101409093019291600b85019182845b815481526020019060010190808311611cf4575050509183525050600e919091015460ff16151560209182015260018501546040805163b551c37360e01b8152600481018a905290519394506000936001600160a01b039092169263b551c37392602480840193829003018186803b158015611d6f57600080fd5b505afa158015611d83573d6000803e3d6000fd5b505050506040513d6020811015611d9957600080fd5b5051835160028601546000908152600f87016020526040812054929350606484049091029181908190841015611e465760036001890154600160a01b900460ff166006811115611de557fe5b1415611df45760019250611e24565b60046001890154600160a01b900460ff166006811115611e1057fe5b1415611e1f5760039250611e24565b600592505b6001880180546002919060ff60a01b1916600160a01b835b0217905550612087565b60036001890154600160a01b900460ff166006811115611e6257fe5b1415611ee4576020870151600b890154420310611e9d5760018801805460ff60a01b1916600160a01b17905560028089018190559250611ee4565b611eaf88600501548960000154610634565b905080611ebb8b611afc565b1115611ee45760018801805460ff60a01b1916600160a21b17905542600d890155600988018190555b60046001890154600160a01b900460ff166006811115611f0057fe5b141561208757611f1888600501548960000154610634565b6060880151909150600b890160020154420310611ffe5780611f398b611afc565b1115611fdd5787546000908152600260205260409020546110001115611fd8576001888101805460ff60a01b1916600560a01b17905542600c8a01558854600090815260026020818152604080842080549095019094558b54835260048152838320548282528484205492845260128d0190915292909120549193509083900381611fc057fe5b89546000908152600460205260409020919005830190555b611ff9565b6001880180546003919060ff60a01b1916600160a01b83611e3c565b612087565b60006120098b611afc565b60098a015490915061201b9083611a07565b811161203b5760018901805460ff60a01b1916600360a01b179055612085565b808960090154111561208557600989018290556040805183815290518c917fad767d61af51c7895fa3cc0497dde01afb610c74e55ee4d8a71fa5e3ee136d54919081900360200190a25b505b60056001890154600160a01b900460ff1660068111156120a357fe5b14806120c8575060066001890154600160a01b900460ff1660068111156120c657fe5b145b156120f8576004880154600c8901544203106120f85760018801805460ff60a01b1916600160a11b179055600492505b600083600581111561210657fe5b1461231857600483600581111561211957fe5b14806121305750600583600581111561212e57fe5b145b156121df578551600090815260026020526040902054612151906001611aba565b865160009081526002602052604080822092909255875181522054806121875788546000908152600460205260408120556121dd565b88546000908152600460209081526040808320546002845260128d019092529091205490935081906121c0906113a18660018501611a1f565b816121c757fe5b8a54600090815260046020526040902091900490555b505b87546000908152600360209081526040918290205460028b0154835190815291820188905282516001600160a01b03909116928d927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a387600601548860070181905550897f46a713b994c752c68fbefa9048bec9a0010cc7d933ad95a3c3dbb25931a167e7846040518082600581111561227f57fe5b815260200191505060405180910390a26001880154600289015460408051639d4c162d60e01b8152600481018e90526024810192909252516001600160a01b0390921691639d4c162d916044808201926020929091908290030181600087803b1580156122eb57600080fd5b505af11580156122ff573d6000803e3d6000fd5b505050506040513d602081101561231557600080fd5b50505b6001880154600160a01b900460ff16600681111561233257fe5b8660400151600681111561234257fe5b1461239c57897f21aca7f0285ccddeca2935074d3e36b5ab8fea0327f84cbbf12cf1b6d1a749f98960010160149054906101000a900460ff166040518082600681111561238b57fe5b815260200191505060405180910390a25b60008360058111156123aa57fe5b14159a9950505050505050505050565b600082820183811015611a18576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008282028284828161242357fe5b041461246e576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c9392505050565b600081836125045760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156124c95781810151838201526020016124b1565b50505050905090810190601f1680156124f65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161251057fe5b0495945050505050565b6000818484111561256c5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156124c95781810151838201526020016124b1565b505050900390565b6000816501000000000084028161258757fe5b049392505050565b604080516101c081018252600080825260208201819052909182019081526020016000815260200160006001600160a01b0316815260200160008152602001600080191681526020016000815260200160008152602001600081526020016000815260200160008152602001612603612610565b8152600060209091015290565b60405180606001604052806003906020820280368337509192915050565b604051806101a0016040528060008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160006001600160a01b03168152509056fe50726f706f73616c2073686f756c64206265204578656375746564206f722045787069726564496e5175657565626f6f73746564566f7465506572696f644c696d6974203e3d207175696574456e64696e67506572696f643530203c3d20717565756564566f7465526571756972656450657263656e74616765203c3d20313030536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7770726f706f73616c20737461746520696e206e6f7420426f6f73746564206e6f72205175696574456e64696e67506572696f64a264697066735822122091f15d90f44edfb83873122e48d36537b148a2eebdb12b9821f435d31c1467f864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/GlobalConstraintInterface.json b/contracts/0.1.2-rc.8/GlobalConstraintInterface.json new file mode 100644 index 00000000..19ed75b9 --- /dev/null +++ b/contracts/0.1.2-rc.8/GlobalConstraintInterface.json @@ -0,0 +1,68 @@ +{ + "contractName": "GlobalConstraintInterface", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_method", + "type": "bytes32" + } + ], + "name": "post", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_method", + "type": "bytes32" + } + ], + "name": "pre", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "when", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/GlobalConstraintMock.json b/contracts/0.1.2-rc.8/GlobalConstraintMock.json new file mode 100644 index 00000000..8002ea73 --- /dev/null +++ b/contracts/0.1.2-rc.8/GlobalConstraintMock.json @@ -0,0 +1,134 @@ +{ + "contractName": "GlobalConstraintMock", + "abi": [ + { + "inputs": [], + "name": "currentCallPhase", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "method", + "type": "bytes32" + } + ], + "name": "post", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "method", + "type": "bytes32" + } + ], + "name": "pre", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "method", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "pre", + "type": "bool" + }, + { + "internalType": "bool", + "name": "post", + "type": "bool" + } + ], + "name": "setConstraint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "testParams", + "outputs": [ + { + "internalType": "bool", + "name": "pre", + "type": "bool" + }, + { + "internalType": "bool", + "name": "post", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "when", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610287806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80632414112b14610067578063696a72531461009057806373d2ea39146100d1578063c63b7d0914610109578063d57a58fa14610135578063e2b0caef14610161575b600080fd5b61006f610169565b6040518082600281111561007f57fe5b815260200191505060405180910390f35b6100bd600480360360608110156100a657600080fd5b508035906020810135151590604001351515610172565b604080519115158252519081900360200190f35b6100ee600480360360208110156100e757600080fd5b50356101f7565b60408051921515835290151560208301528051918290030190f35b6100bd6004803603604081101561011f57600080fd5b506001600160a01b038135169060200135610215565b6100bd6004803603604081101561014b57600080fd5b506001600160a01b03813516906020013561022c565b61006f610248565b60015460ff1681565b6000838152602081905260408120805460ff19168415801591821761ff00191661010086151502179092556101a5575081155b156101c357600180546002919060ff191681835b02179055506101ed565b826101db57600180546000919060ff191681836101b9565b816101ed576001805460ff1916811790555b5060019392505050565b60006020819052908152604090205460ff8082169161010090041682565b60009081526020819052604090205460ff16919050565b600090815260208190526040902054610100900460ff16919050565b60015460ff169056fea26469706673582212204b66dd4c75512a8547b042d9852ada4fb56b7b23e2776c807322b2a06a2975fb64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c80632414112b14610067578063696a72531461009057806373d2ea39146100d1578063c63b7d0914610109578063d57a58fa14610135578063e2b0caef14610161575b600080fd5b61006f610169565b6040518082600281111561007f57fe5b815260200191505060405180910390f35b6100bd600480360360608110156100a657600080fd5b508035906020810135151590604001351515610172565b604080519115158252519081900360200190f35b6100ee600480360360208110156100e757600080fd5b50356101f7565b60408051921515835290151560208301528051918290030190f35b6100bd6004803603604081101561011f57600080fd5b506001600160a01b038135169060200135610215565b6100bd6004803603604081101561014b57600080fd5b506001600160a01b03813516906020013561022c565b61006f610248565b60015460ff1681565b6000838152602081905260408120805460ff19168415801591821761ff00191661010086151502179092556101a5575081155b156101c357600180546002919060ff191681835b02179055506101ed565b826101db57600180546000919060ff191681836101b9565b816101ed576001805460ff1916811790555b5060019392505050565b60006020819052908152604090205460ff8082169161010090041682565b60009081526020819052604090205460ff16919050565b600090815260208190526040902054610100900460ff16919050565b60015460ff169056fea26469706673582212204b66dd4c75512a8547b042d9852ada4fb56b7b23e2776c807322b2a06a2975fb64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/GlobalConstraintRegistrar.json b/contracts/0.1.2-rc.8/GlobalConstraintRegistrar.json new file mode 100644 index 00000000..e4cf0324 --- /dev/null +++ b/contracts/0.1.2-rc.8/GlobalConstraintRegistrar.json @@ -0,0 +1,519 @@ +{ + "contractName": "GlobalConstraintRegistrar", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "x", + "type": "bool" + } + ], + "name": "D", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_voteToRemoveParams", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewGlobalConstraintsProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "RemoveGlobalConstraintsProposal", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "address", + "name": "gc", + "type": "address" + }, + { + "internalType": "bool", + "name": "addGC", + "type": "bool" + }, + { + "internalType": "bytes32", + "name": "voteToRemoveParams", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteToRemoveParams", + "type": "bytes32" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeGlobalConstraint", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_gc", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeToRemoveGC", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "voteToRemoveParams", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611b71806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80639588378e11610097578063bea75f2811610066578063bea75f28146103f3578063d29b5d2f1461042f578063d8145e2d14610461578063f81f8bf6146104a657610100565b80639588378e1461034d5780639d4c162d14610379578063b5175d5f146103b0578063b551c373146103d657610100565b80636b8eb403116100d35780636b8eb403146101935780637a5cb92c146101bf5780637e96749a146101dc5780637ff79c0e1461029257610100565b80633edf7ca1146101055780634ea2c7ec14610129578063540fbeb3146101435780635aef7de61461018b575b600080fd5b61010d6104d8565b604080516001600160a01b039092168252519081900360200190f35b6101316104e7565b60408051918252519081900360200190f35b61018960048036036101e081101561015a57600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c001356104ed565b005b61010d61052b565b610131600480360360408110156101a957600080fd5b506001600160a01b03813516906020013561053a565b610131600480360360208110156101d557600080fd5b5035610614565b610131600480360360408110156101f257600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561021d57600080fd5b82018360208201111561022f57600080fd5b8035906020019184600183028401116401000000008311171561025157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610626945050505050565b610131600480360360608110156102a857600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156102d857600080fd5b8201836020820111156102ea57600080fd5b8035906020019184600183028401116401000000008311171561030c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610951945050505050565b6101316004803603604081101561036357600080fd5b506001600160a01b038135169060200135610c65565b61039c6004803603604081101561038f57600080fd5b5080359060200135610d96565b604080519115158252519081900360200190f35b610131600480360360208110156103c657600080fd5b50356001600160a01b03166110a8565b610131600480360360208110156103ec57600080fd5b50356110ba565b61039c6004803603608081101561040957600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611351565b61039c6004803603606081101561044557600080fd5b508035906001600160a01b0360208201351690604001356114b5565b61047e6004803603602081101561047757600080fd5b5035611610565b604080516001600160a01b039094168452911515602084015282820152519081900360600190f35b61039c600480360360608110156104bc57600080fd5b508035906001600160a01b03602082013516906040013561163f565b6034546001600160a01b031681565b60355481565b61052485858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506117659050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610593576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105e057600080fd5b505afa1580156105f4573d6000803e3d6000fd5b505050506040513d602081101561060a57600080fd5b5051949350505050565b60366020526000908152604090205481565b600080603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561067757600080fd5b505afa15801561068b573d6000803e3d6000fd5b505050506040513d60208110156106a157600080fd5b5051604080516320a21e7560e11b81526001600160a01b0387811660048301529151929350908316916341443cea91602480820192602092909190829003018186803b1580156106f057600080fd5b505afa158015610704573d6000803e3d6000fd5b505050506040513d602081101561071a57600080fd5b505161076d576040805162461bcd60e51b815260206004820152601b60248201527f70726f706f736564206763206973206e6f742072656769737465720000000000604482015290519081900360640190fd5b6034546001600160a01b038581166000908152603860209081526040808320546033548251634439bdaf60e11b8152600260048201526024810192909252336044830152851660648201529051929493909316926388737b5e926084808301939282900301818787803b1580156107e357600080fd5b505af11580156107f7573d6000803e3d6000fd5b505050506040513d602081101561080d57600080fd5b50519050610819611aed565b5060408051606080820183526001600160a01b0380891680845260006020808601828152868801838152898452603783528884208851815493511515600160a01b0260ff60a01b199189166001600160a01b03199095169490941716929092178255516001919091015560345460335488519485528483018981528d51998601999099528c519798918616978a9791909616957f4adc38b95e17c3b3410caa223e957ebc5cfdae71c60f1801e8fd328ca8285813958f958f9591949385019291860191908190849084905b838110156108fc5781810151838201526020016108e4565b50505050905090810190601f1680156109295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4506000818152603660205260409020439055949350505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561099657600080fd5b505afa1580156109aa573d6000803e3d6000fd5b505050506040513d60208110156109c057600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610a0a57600080fd5b505afa158015610a1e573d6000803e3d6000fd5b505050506040513d6020811015610a3457600080fd5b5051610a82576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610aed57600080fd5b505af1158015610b01573d6000803e3d6000fd5b505050506040513d6020811015610b1757600080fd5b50519050610b23611aed565b5060408051606080820183526001600160a01b03808916808452600160208086018281528688018c815260008a8152603784528981208951815494511515600160a01b0260ff60a01b19918a166001600160a01b031990961695909517169390931783559051919093015560345460335488519485528483018d90529784018681528b51968501969096528a51969790851696899691909516947f681f2a3cfc52e50a02c73f56f38ef562435a7c20f161b136cedfe6df2641c2d6948e948e948e9492936080850192918601918190849084905b83811015610c0f578181015183820152602001610bf7565b50505050905090810190601f168015610c3c5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a4506000818152603660205260409020439055949350505050565b60345460009082906001600160a01b03163314610cbe576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0c57600080fd5b505afa158015610d20573d6000803e3d6000fd5b505050506040513d6020811015610d3657600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105e057600080fd5b60345460009083906001600160a01b03163314610def576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6001610df9611aed565b50600085815260376020908152604091829020825160608101845281546001600160a01b038116808352600160a01b90910460ff1615159382019390935260019091015492810192909252610e4d57600080fd5b60008681526037602052604080822080546001600160a81b0319168155600101829055603354905188926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3846001141561105c5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610ef457600080fd5b505afa158015610f08573d6000803e3d6000fd5b505050506040513d6020811015610f1e57600080fd5b5051602083015190915015610fcf57806001600160a01b0316635f30e58183600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b158015610f8057600080fd5b505af1158015610f94573d6000803e3d6000fd5b505050506040513d6020811015610faa57600080fd5b505160408084015184516001600160a01b031660009081526038602052919091205592505b816020015161105a57806001600160a01b031663488b381483600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b15801561102b57600080fd5b505af115801561103f573d6000803e3d6000fd5b505050506040513d602081101561105557600080fd5b505192505b505b60335460408051878152905188926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a350949350505050565b60386020526000908152604090205481565b60345460009082906001600160a01b03163314611113576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561116157600080fd5b505afa158015611175573d6000803e3d6000fd5b505050506040513d602081101561118b57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156111d557600080fd5b505afa1580156111e9573d6000803e3d6000fd5b505050506040513d60208110156111ff57600080fd5b505161124d576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561129b57600080fd5b505afa1580156112af573d6000803e3d6000fd5b505050506040513d60208110156112c557600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561131e57600080fd5b505afa158015611332573d6000803e3d6000fd5b505050506040513d602081101561134857600080fd5b50519392505050565b60345460009082906001600160a01b031633146113aa576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113f857600080fd5b505afa15801561140c573d6000803e3d6000fd5b505050506040513d602081101561142257600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561147f57600080fd5b505af1158015611493573d6000803e3d6000fd5b505050506040513d60208110156114a957600080fd5b50519695505050505050565b60345460009082906001600160a01b0316331461150e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561155c57600080fd5b505afa158015611570573d6000803e3d6000fd5b505050506040513d602081101561158657600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156115db57600080fd5b505af11580156115ef573d6000803e3d6000fd5b505050506040513d602081101561160557600080fd5b505195945050505050565b603760205260009081526040902080546001909101546001600160a01b03821691600160a01b900460ff169083565b60345460009082906001600160a01b03163314611698576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156116e657600080fd5b505afa1580156116fa573d6000803e3d6000fd5b505050506040513d602081101561171057600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b1580156115db57600080fd5b6001600160a01b0384166117c0576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6117c9856119ce565b603480546001600160a01b0319166001600160a01b038616179055826119c5576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561183357818101518382015260200161181b565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561186557600080fd5b505afa158015611879573d6000803e3d6000fd5b505050506040513d602081101561188f57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b1580156118e157600080fd5b505afa1580156118f5573d6000803e3d6000fd5b505050506040513d6101a081101561190c57600080fd5b50519050806119be57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561195d578181015183820152602001611945565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561199157600080fd5b505af11580156119a5573d6000803e3d6000fd5b505050506040513d60208110156119bb57600080fd5b50505b5050610524565b50506035555050565b600054610100900460ff16806119e757506119e7611ae7565b806119f5575060005460ff16155b611a305760405162461bcd60e51b815260040180806020018281038252602e815260200180611b0e602e913960400191505060405180910390fd5b600054610100900460ff16158015611a5b576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611ab6576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611ae3576000805461ff00191690555b5050565b303b1590565b60408051606081018252600080825260208201819052918101919091529056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220c7fcfe08d4369a1fdb6e451f1a2d761c65940caf797b705ed4af5778013ae76d64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c80639588378e11610097578063bea75f2811610066578063bea75f28146103f3578063d29b5d2f1461042f578063d8145e2d14610461578063f81f8bf6146104a657610100565b80639588378e1461034d5780639d4c162d14610379578063b5175d5f146103b0578063b551c373146103d657610100565b80636b8eb403116100d35780636b8eb403146101935780637a5cb92c146101bf5780637e96749a146101dc5780637ff79c0e1461029257610100565b80633edf7ca1146101055780634ea2c7ec14610129578063540fbeb3146101435780635aef7de61461018b575b600080fd5b61010d6104d8565b604080516001600160a01b039092168252519081900360200190f35b6101316104e7565b60408051918252519081900360200190f35b61018960048036036101e081101561015a57600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c001356104ed565b005b61010d61052b565b610131600480360360408110156101a957600080fd5b506001600160a01b03813516906020013561053a565b610131600480360360208110156101d557600080fd5b5035610614565b610131600480360360408110156101f257600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561021d57600080fd5b82018360208201111561022f57600080fd5b8035906020019184600183028401116401000000008311171561025157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610626945050505050565b610131600480360360608110156102a857600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156102d857600080fd5b8201836020820111156102ea57600080fd5b8035906020019184600183028401116401000000008311171561030c57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610951945050505050565b6101316004803603604081101561036357600080fd5b506001600160a01b038135169060200135610c65565b61039c6004803603604081101561038f57600080fd5b5080359060200135610d96565b604080519115158252519081900360200190f35b610131600480360360208110156103c657600080fd5b50356001600160a01b03166110a8565b610131600480360360208110156103ec57600080fd5b50356110ba565b61039c6004803603608081101561040957600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611351565b61039c6004803603606081101561044557600080fd5b508035906001600160a01b0360208201351690604001356114b5565b61047e6004803603602081101561047757600080fd5b5035611610565b604080516001600160a01b039094168452911515602084015282820152519081900360600190f35b61039c600480360360608110156104bc57600080fd5b508035906001600160a01b03602082013516906040013561163f565b6034546001600160a01b031681565b60355481565b61052485858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506117659050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610593576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105e057600080fd5b505afa1580156105f4573d6000803e3d6000fd5b505050506040513d602081101561060a57600080fd5b5051949350505050565b60366020526000908152604090205481565b600080603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561067757600080fd5b505afa15801561068b573d6000803e3d6000fd5b505050506040513d60208110156106a157600080fd5b5051604080516320a21e7560e11b81526001600160a01b0387811660048301529151929350908316916341443cea91602480820192602092909190829003018186803b1580156106f057600080fd5b505afa158015610704573d6000803e3d6000fd5b505050506040513d602081101561071a57600080fd5b505161076d576040805162461bcd60e51b815260206004820152601b60248201527f70726f706f736564206763206973206e6f742072656769737465720000000000604482015290519081900360640190fd5b6034546001600160a01b038581166000908152603860209081526040808320546033548251634439bdaf60e11b8152600260048201526024810192909252336044830152851660648201529051929493909316926388737b5e926084808301939282900301818787803b1580156107e357600080fd5b505af11580156107f7573d6000803e3d6000fd5b505050506040513d602081101561080d57600080fd5b50519050610819611aed565b5060408051606080820183526001600160a01b0380891680845260006020808601828152868801838152898452603783528884208851815493511515600160a01b0260ff60a01b199189166001600160a01b03199095169490941716929092178255516001919091015560345460335488519485528483018981528d51998601999099528c519798918616978a9791909616957f4adc38b95e17c3b3410caa223e957ebc5cfdae71c60f1801e8fd328ca8285813958f958f9591949385019291860191908190849084905b838110156108fc5781810151838201526020016108e4565b50505050905090810190601f1680156109295780820380516001836020036101000a031916815260200191505b50935050505060405180910390a4506000818152603660205260409020439055949350505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561099657600080fd5b505afa1580156109aa573d6000803e3d6000fd5b505050506040513d60208110156109c057600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610a0a57600080fd5b505afa158015610a1e573d6000803e3d6000fd5b505050506040513d6020811015610a3457600080fd5b5051610a82576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610aed57600080fd5b505af1158015610b01573d6000803e3d6000fd5b505050506040513d6020811015610b1757600080fd5b50519050610b23611aed565b5060408051606080820183526001600160a01b03808916808452600160208086018281528688018c815260008a8152603784528981208951815494511515600160a01b0260ff60a01b19918a166001600160a01b031990961695909517169390931783559051919093015560345460335488519485528483018d90529784018681528b51968501969096528a51969790851696899691909516947f681f2a3cfc52e50a02c73f56f38ef562435a7c20f161b136cedfe6df2641c2d6948e948e948e9492936080850192918601918190849084905b83811015610c0f578181015183820152602001610bf7565b50505050905090810190601f168015610c3c5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a4506000818152603660205260409020439055949350505050565b60345460009082906001600160a01b03163314610cbe576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0c57600080fd5b505afa158015610d20573d6000803e3d6000fd5b505050506040513d6020811015610d3657600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105e057600080fd5b60345460009083906001600160a01b03163314610def576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6001610df9611aed565b50600085815260376020908152604091829020825160608101845281546001600160a01b038116808352600160a01b90910460ff1615159382019390935260019091015492810192909252610e4d57600080fd5b60008681526037602052604080822080546001600160a81b0319168155600101829055603354905188926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3846001141561105c5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610ef457600080fd5b505afa158015610f08573d6000803e3d6000fd5b505050506040513d6020811015610f1e57600080fd5b5051602083015190915015610fcf57806001600160a01b0316635f30e58183600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b158015610f8057600080fd5b505af1158015610f94573d6000803e3d6000fd5b505050506040513d6020811015610faa57600080fd5b505160408084015184516001600160a01b031660009081526038602052919091205592505b816020015161105a57806001600160a01b031663488b381483600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b15801561102b57600080fd5b505af115801561103f573d6000803e3d6000fd5b505050506040513d602081101561105557600080fd5b505192505b505b60335460408051878152905188926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a350949350505050565b60386020526000908152604090205481565b60345460009082906001600160a01b03163314611113576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561116157600080fd5b505afa158015611175573d6000803e3d6000fd5b505050506040513d602081101561118b57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156111d557600080fd5b505afa1580156111e9573d6000803e3d6000fd5b505050506040513d60208110156111ff57600080fd5b505161124d576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561129b57600080fd5b505afa1580156112af573d6000803e3d6000fd5b505050506040513d60208110156112c557600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561131e57600080fd5b505afa158015611332573d6000803e3d6000fd5b505050506040513d602081101561134857600080fd5b50519392505050565b60345460009082906001600160a01b031633146113aa576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113f857600080fd5b505afa15801561140c573d6000803e3d6000fd5b505050506040513d602081101561142257600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561147f57600080fd5b505af1158015611493573d6000803e3d6000fd5b505050506040513d60208110156114a957600080fd5b50519695505050505050565b60345460009082906001600160a01b0316331461150e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561155c57600080fd5b505afa158015611570573d6000803e3d6000fd5b505050506040513d602081101561158657600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156115db57600080fd5b505af11580156115ef573d6000803e3d6000fd5b505050506040513d602081101561160557600080fd5b505195945050505050565b603760205260009081526040902080546001909101546001600160a01b03821691600160a01b900460ff169083565b60345460009082906001600160a01b03163314611698576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156116e657600080fd5b505afa1580156116fa573d6000803e3d6000fd5b505050506040513d602081101561171057600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b1580156115db57600080fd5b6001600160a01b0384166117c0576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6117c9856119ce565b603480546001600160a01b0319166001600160a01b038616179055826119c5576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561183357818101518382015260200161181b565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561186557600080fd5b505afa158015611879573d6000803e3d6000fd5b505050506040513d602081101561188f57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b1580156118e157600080fd5b505afa1580156118f5573d6000803e3d6000fd5b505050506040513d6101a081101561190c57600080fd5b50519050806119be57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561195d578181015183820152602001611945565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561199157600080fd5b505af11580156119a5573d6000803e3d6000fd5b505050506040513d60208110156119bb57600080fd5b50505b5050610524565b50506035555050565b600054610100900460ff16806119e757506119e7611ae7565b806119f5575060005460ff16155b611a305760405162461bcd60e51b815260040180806020018281038252602e815260200180611b0e602e913960400191505060405180910390fd5b600054610100900460ff16158015611a5b576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611ab6576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611ae3576000805461ff00191690555b5050565b303b1590565b60408051606081018252600080825260208201819052918101919091529056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220c7fcfe08d4369a1fdb6e451f1a2d761c65940caf797b705ed4af5778013ae76d64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC165.json b/contracts/0.1.2-rc.8/IERC165.json new file mode 100644 index 00000000..cbfb44a5 --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC165.json @@ -0,0 +1,26 @@ +{ + "contractName": "IERC165", + "abi": [ + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC20.json b/contracts/0.1.2-rc.8/IERC20.json new file mode 100644 index 00000000..f14f2882 --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC20.json @@ -0,0 +1,190 @@ +{ + "contractName": "IERC20", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC721.json b/contracts/0.1.2-rc.8/IERC721.json new file mode 100644 index 00000000..d6e21dff --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC721.json @@ -0,0 +1,292 @@ +{ + "contractName": "IERC721", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "_approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC721Enumerable.json b/contracts/0.1.2-rc.8/IERC721Enumerable.json new file mode 100644 index 00000000..17fee659 --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC721Enumerable.json @@ -0,0 +1,348 @@ +{ + "contractName": "IERC721Enumerable", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "_approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "tokenOfOwnerByIndex", + "outputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC721Metadata.json b/contracts/0.1.2-rc.8/IERC721Metadata.json new file mode 100644 index 00000000..39a9ce56 --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC721Metadata.json @@ -0,0 +1,337 @@ +{ + "contractName": "IERC721Metadata", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "approved", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "approved", + "type": "bool" + } + ], + "name": "ApprovalForAll", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "getApproved", + "outputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "isApprovedForAll", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "ownerOf", + "outputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "safeTransferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "bool", + "name": "_approved", + "type": "bool" + } + ], + "name": "setApprovalForAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "tokenURI", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC721NonReceiverMock.json b/contracts/0.1.2-rc.8/IERC721NonReceiverMock.json new file mode 100644 index 00000000..1a34da53 --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC721NonReceiverMock.json @@ -0,0 +1,41 @@ +{ + "contractName": "IERC721NonReceiverMock", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "onERC721Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610172806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b6100f66004803603608081101561004657600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561008157600080fd5b82018360208201111561009357600080fd5b803590602001918460018302840111640100000000831117156100b557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610113945050505050565b604080516001600160e01b03199092168252519081900360200190f35b7f6dcd0d5f7819fdf94b24e3fbef8fd4c50cdd939c81bc1bd4015049bd85544a2794935050505056fea264697066735822122022e2f272ba42f1e948fc6d04bacb90e59bad4c6f228bd0340d74ffd06ce092a164736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b6100f66004803603608081101561004657600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561008157600080fd5b82018360208201111561009357600080fd5b803590602001918460018302840111640100000000831117156100b557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610113945050505050565b604080516001600160e01b03199092168252519081900360200190f35b7f6dcd0d5f7819fdf94b24e3fbef8fd4c50cdd939c81bc1bd4015049bd85544a2794935050505056fea264697066735822122022e2f272ba42f1e948fc6d04bacb90e59bad4c6f228bd0340d74ffd06ce092a164736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC721Receiver.json b/contracts/0.1.2-rc.8/IERC721Receiver.json new file mode 100644 index 00000000..a6e7c5ad --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC721Receiver.json @@ -0,0 +1,41 @@ +{ + "contractName": "IERC721Receiver", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onERC721Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IERC721ReceiverMock.json b/contracts/0.1.2-rc.8/IERC721ReceiverMock.json new file mode 100644 index 00000000..18e20369 --- /dev/null +++ b/contracts/0.1.2-rc.8/IERC721ReceiverMock.json @@ -0,0 +1,41 @@ +{ + "contractName": "IERC721ReceiverMock", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "onERC721Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610172806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b6100f66004803603608081101561004657600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561008157600080fd5b82018360208201111561009357600080fd5b803590602001918460018302840111640100000000831117156100b557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610113945050505050565b604080516001600160e01b03199092168252519081900360200190f35b7f150b7a023d4804d13e8c85fb27262cb750cf6ba9f9dd3bb30d90f482ceeb4b1f94935050505056fea2646970667358221220bc31b3a4e4a2b97e952b4166426afb36e9f8edf8e1a9b374c0134335b8d22ad764736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063150b7a0214610030575b600080fd5b6100f66004803603608081101561004657600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561008157600080fd5b82018360208201111561009357600080fd5b803590602001918460018302840111640100000000831117156100b557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610113945050505050565b604080516001600160e01b03199092168252519081900360200190f35b7f150b7a023d4804d13e8c85fb27262cb750cf6ba9f9dd3bb30d90f482ceeb4b1f94935050505056fea2646970667358221220bc31b3a4e4a2b97e952b4166426afb36e9f8edf8e1a9b374c0134335b8d22ad764736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ImplementationDirectory.json b/contracts/0.1.2-rc.8/ImplementationDirectory.json new file mode 100644 index 00000000..f50fc0d1 --- /dev/null +++ b/contracts/0.1.2-rc.8/ImplementationDirectory.json @@ -0,0 +1,167 @@ +{ + "contractName": "ImplementationDirectory", + "abi": [ + { + "anonymous": false, + "inputs": [], + "name": "Frozen", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "contractName", + "type": "string" + }, + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ImplementationChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "freeze", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "frozen", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "contractName", + "type": "string" + } + ], + "name": "getImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "contractName", + "type": "string" + }, + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "setImplementation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "contractName", + "type": "string" + } + ], + "name": "unsetImplementation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50600080546001600160a01b03191633178082556040516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36108ef806100696000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80636b683896116100665780636b68389614610215578063715018a6146102d75780638da5cb5b146102df5780638f32d59b146102e7578063f2fde38b146102ef57610093565b8063054f7d9c1461009857806306419fe5146100b457806330b7be291461016757806362a5af3b1461020d575b600080fd5b6100a0610315565b604080519115158252519081900360200190f35b610165600480360360408110156100ca57600080fd5b8101906020810181356401000000008111156100e557600080fd5b8201836020820111156100f757600080fd5b8035906020019184600183028401116401000000008311171561011957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b0316915061031e9050565b005b6101656004803603602081101561017d57600080fd5b81019060208101813564010000000081111561019857600080fd5b8201836020820111156101aa57600080fd5b803590602001918460018302840111640100000000831117156101cc57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104c9945050505050565b610165610634565b6102bb6004803603602081101561022b57600080fd5b81019060208101813564010000000081111561024657600080fd5b82018360208201111561025857600080fd5b8035906020019184600183028401116401000000008311171561027a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106bf945050505050565b604080516001600160a01b039092168252519081900360200190f35b610165610730565b6102bb61078b565b6100a061079a565b6101656004803603602081101561030557600080fd5b50356001600160a01b03166107ab565b60025460ff1681565b61032661079a565b61032f57600080fd5b60025460ff16156103715760405162461bcd60e51b815260040180806020018281038252603b81526020018061087f603b913960400191505060405180910390fd5b61037a816107c8565b6103b55760405162461bcd60e51b815260040180806020018281038252604281526020018061083d6042913960600191505060405180910390fd5b806001836040518082805190602001908083835b602083106103e85780518252601f1990920191602091820191016103c9565b51815160209384036101000a600019018019909216911617905292019485525060408051948590038201852080546001600160a01b0319166001600160a01b039788161790558185528751858301528751958716957fd46d20dadc2a85a470fddb00aee90ec2cc1f302e7e2dbf61ffaef72527f3c65995899550935083929183019185019080838360005b8381101561048b578181015183820152602001610473565b50505050905090810190601f1680156104b85780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b6104d161079a565b6104da57600080fd5b60025460ff161561051c5760405162461bcd60e51b815260040180806020018281038252603b81526020018061087f603b913960400191505060405180910390fd5b60006001826040518082805190602001908083835b602083106105505780518252601f199092019160209182019101610531565b51815160209384036101000a600019018019909216911617905292019485525060408051948590038201852080546001600160a01b0319166001600160a01b03979097169690961790955580845285518482015285516000957fd46d20dadc2a85a470fddb00aee90ec2cc1f302e7e2dbf61ffaef72527f3c659958895509350839290830191908501908083838a5b838110156105f75781810151838201526020016105df565b50505050905090810190601f1680156106245780820380516001836020036101000a031916815260200191505b509250505060405180910390a250565b61063c61079a565b61064557600080fd5b60025460ff16156106875760405162461bcd60e51b815260040180806020018281038252603b81526020018061087f603b913960400191505060405180910390fd5b6002805460ff191660011790556040517fa8cab3d1893ed53071b052fafa843143492f25d1d6b0170d460789f7ab1954be90600090a1565b60006001826040518082805190602001908083835b602083106106f35780518252601f1990920191602091820191016106d4565b51815160209384036101000a60001901801990921691161790529201948552506040519384900301909220546001600160a01b0316949350505050565b61073861079a565b61074157600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b6107b361079a565b6107bc57600080fd5b6107c5816107ce565b50565b3b151590565b6001600160a01b0381166107e157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe43616e6e6f742073657420696d706c656d656e746174696f6e20696e206469726563746f727920776974682061206e6f6e2d636f6e7472616374206164647265737343616e6e6f7420706572666f726d20616374696f6e20666f7220612066726f7a656e20696d706c656d656e746174696f6e206469726563746f7279a26469706673582212201b61a40eb1a799140a5130cf0a901917d043f09205b5c688f426a52c64f6cdce64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c80636b683896116100665780636b68389614610215578063715018a6146102d75780638da5cb5b146102df5780638f32d59b146102e7578063f2fde38b146102ef57610093565b8063054f7d9c1461009857806306419fe5146100b457806330b7be291461016757806362a5af3b1461020d575b600080fd5b6100a0610315565b604080519115158252519081900360200190f35b610165600480360360408110156100ca57600080fd5b8101906020810181356401000000008111156100e557600080fd5b8201836020820111156100f757600080fd5b8035906020019184600183028401116401000000008311171561011957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505090356001600160a01b0316915061031e9050565b005b6101656004803603602081101561017d57600080fd5b81019060208101813564010000000081111561019857600080fd5b8201836020820111156101aa57600080fd5b803590602001918460018302840111640100000000831117156101cc57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104c9945050505050565b610165610634565b6102bb6004803603602081101561022b57600080fd5b81019060208101813564010000000081111561024657600080fd5b82018360208201111561025857600080fd5b8035906020019184600183028401116401000000008311171561027a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106bf945050505050565b604080516001600160a01b039092168252519081900360200190f35b610165610730565b6102bb61078b565b6100a061079a565b6101656004803603602081101561030557600080fd5b50356001600160a01b03166107ab565b60025460ff1681565b61032661079a565b61032f57600080fd5b60025460ff16156103715760405162461bcd60e51b815260040180806020018281038252603b81526020018061087f603b913960400191505060405180910390fd5b61037a816107c8565b6103b55760405162461bcd60e51b815260040180806020018281038252604281526020018061083d6042913960600191505060405180910390fd5b806001836040518082805190602001908083835b602083106103e85780518252601f1990920191602091820191016103c9565b51815160209384036101000a600019018019909216911617905292019485525060408051948590038201852080546001600160a01b0319166001600160a01b039788161790558185528751858301528751958716957fd46d20dadc2a85a470fddb00aee90ec2cc1f302e7e2dbf61ffaef72527f3c65995899550935083929183019185019080838360005b8381101561048b578181015183820152602001610473565b50505050905090810190601f1680156104b85780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b6104d161079a565b6104da57600080fd5b60025460ff161561051c5760405162461bcd60e51b815260040180806020018281038252603b81526020018061087f603b913960400191505060405180910390fd5b60006001826040518082805190602001908083835b602083106105505780518252601f199092019160209182019101610531565b51815160209384036101000a600019018019909216911617905292019485525060408051948590038201852080546001600160a01b0319166001600160a01b03979097169690961790955580845285518482015285516000957fd46d20dadc2a85a470fddb00aee90ec2cc1f302e7e2dbf61ffaef72527f3c659958895509350839290830191908501908083838a5b838110156105f75781810151838201526020016105df565b50505050905090810190601f1680156106245780820380516001836020036101000a031916815260200191505b509250505060405180910390a250565b61063c61079a565b61064557600080fd5b60025460ff16156106875760405162461bcd60e51b815260040180806020018281038252603b81526020018061087f603b913960400191505060405180910390fd5b6002805460ff191660011790556040517fa8cab3d1893ed53071b052fafa843143492f25d1d6b0170d460789f7ab1954be90600090a1565b60006001826040518082805190602001908083835b602083106106f35780518252601f1990920191602091820191016106d4565b51815160209384036101000a60001901801990921691161790529201948552506040519384900301909220546001600160a01b0316949350505050565b61073861079a565b61074157600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b6107b361079a565b6107bc57600080fd5b6107c5816107ce565b50565b3b151590565b6001600160a01b0381166107e157600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b039290921691909117905556fe43616e6e6f742073657420696d706c656d656e746174696f6e20696e206469726563746f727920776974682061206e6f6e2d636f6e7472616374206164647265737343616e6e6f7420706572666f726d20616374696f6e20666f7220612066726f7a656e20696d706c656d656e746174696f6e206469726563746f7279a26469706673582212201b61a40eb1a799140a5130cf0a901917d043f09205b5c688f426a52c64f6cdce64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ImplementationProvider.json b/contracts/0.1.2-rc.8/ImplementationProvider.json new file mode 100644 index 00000000..4eeb4f35 --- /dev/null +++ b/contracts/0.1.2-rc.8/ImplementationProvider.json @@ -0,0 +1,26 @@ +{ + "contractName": "ImplementationProvider", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "contractName", + "type": "string" + } + ], + "name": "getImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Initializable.json b/contracts/0.1.2-rc.8/Initializable.json new file mode 100644 index 00000000..c07375c6 --- /dev/null +++ b/contracts/0.1.2-rc.8/Initializable.json @@ -0,0 +1,6 @@ +{ + "contractName": "Initializable", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220daf0868b97284bbb43035033992e5d811748f9110379570d95ba8262c2d7363864736f6c634300060c0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220daf0868b97284bbb43035033992e5d811748f9110379570d95ba8262c2d7363864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IntVoteInterface.json b/contracts/0.1.2-rc.8/IntVoteInterface.json new file mode 100644 index 00000000..97328523 --- /dev/null +++ b/contracts/0.1.2-rc.8/IntVoteInterface.json @@ -0,0 +1,225 @@ +{ + "contractName": "IntVoteInterface", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalParameters", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_rep", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/IntVoteInterfaceEvents.json b/contracts/0.1.2-rc.8/IntVoteInterfaceEvents.json new file mode 100644 index 00000000..e604b2ba --- /dev/null +++ b/contracts/0.1.2-rc.8/IntVoteInterfaceEvents.json @@ -0,0 +1,112 @@ +{ + "contractName": "IntVoteInterfaceEvents", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Join.json b/contracts/0.1.2-rc.8/Join.json new file mode 100644 index 00000000..1f3c27c7 --- /dev/null +++ b/contracts/0.1.2-rc.8/Join.json @@ -0,0 +1,609 @@ +{ + "contractName": "Join", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + } + ], + "name": "FundedBeforeDeadline", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposedMember", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_feeAmount", + "type": "uint256" + } + ], + "name": "JoinInProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "RedeemReputation", + "type": "event" + }, + { + "inputs": [], + "name": "FUNDED_BEFORE_DEADLINE_KEY", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "FUNDED_BEFORE_DEADLINE_VALUE", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "fundingGoal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "fundingGoalDeadline", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "fundingToken", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + }, + { + "internalType": "contract IERC20", + "name": "_fundingToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_minFeeToJoin", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_memberReputation", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_fundingGoal", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_fundingGoalDeadline", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "memberReputation", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "membersState", + "outputs": [ + { + "internalType": "enum Join.MemberState", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minFeeToJoin", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "address", + "name": "proposedMember", + "type": "address" + }, + { + "internalType": "uint256", + "name": "funding", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "internalType": "uint256", + "name": "_feeAmount", + "type": "uint256" + } + ], + "name": "proposeToJoin", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "redeemReputation", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "setFundingGoalReachedFlag", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalDonation", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50612c65806100206000396000f3fe6080604052600436106101665760003560e01c80637a5cb92c116100d1578063b551c3731161008a578063d29b5d2f11610064578063d29b5d2f14610620578063e4392dbb1461065f578063ee2ac05f14610674578063f81f8bf61461068957610166565b8063b551c37314610583578063bea75f28146105ad578063c7916cf9146105f657610166565b80637a5cb92c146104285780637ae5644a1461045257806393df91a1146104675780639537ba0c1461047c5780639588378e146105065780639d4c162d1461053f57610166565b80635368e556116101235780635368e556146103215780635aef7de61461039b5780636b8eb403146103b05780637350dbd1146103e957806378065f27146103fe5780637a3a0e841461041357610166565b8063187a9e4b1461016b57806332ed5b12146102255780633edf7ca11461027257806345c3dffa146102a35780634ea2c7ec146102b8578063505ae62b146102cd575b600080fd5b6102136004803603604081101561018157600080fd5b81019060208101813564010000000081111561019c57600080fd5b8201836020820111156101ae57600080fd5b803590602001918460018302840111640100000000831117156101d057600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506106c8915050565b60408051918252519081900360200190f35b34801561023157600080fd5b5061024f6004803603602081101561024857600080fd5b5035610c9c565b604080516001600160a01b03909316835260208301919091528051918290030190f35b34801561027e57600080fd5b50610287610cc1565b604080516001600160a01b039092168252519081900360200190f35b3480156102af57600080fd5b50610213610cd0565b3480156102c457600080fd5b50610213610cd6565b3480156102d957600080fd5b50610300600480360360208110156102f057600080fd5b50356001600160a01b0316610cdc565b6040518082600481111561031057fe5b815260200191505060405180910390f35b34801561032d57600080fd5b50610399600480360361028081101561034557600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0810135909116906102008101359061022081013590610240810135906102600135610cf1565b005b3480156103a757600080fd5b50610287610d5f565b3480156103bc57600080fd5b50610213600480360360408110156103d357600080fd5b506001600160a01b038135169060200135610d6e565b3480156103f557600080fd5b50610399610e48565b34801561040a57600080fd5b506102876113b0565b34801561041f57600080fd5b506102136113bf565b34801561043457600080fd5b506102136004803603602081101561044b57600080fd5b50356113c5565b34801561045e57600080fd5b506102136113d7565b34801561047357600080fd5b506102136113dd565b34801561048857600080fd5b506104916113e3565b6040805160208082528351818301528351919283929083019185019080838360005b838110156104cb5781810151838201526020016104b3565b50505050905090810190601f1680156104f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561051257600080fd5b506102136004803603604081101561052957600080fd5b506001600160a01b038135169060200135611403565b34801561054b57600080fd5b5061056f6004803603604081101561056257600080fd5b5080359060200135611534565b604080519115158252519081900360200190f35b34801561058f57600080fd5b50610213600480360360208110156105a657600080fd5b50356119f2565b3480156105b957600080fd5b5061056f600480360360808110156105d057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611c89565b34801561060257600080fd5b506102136004803603602081101561061957600080fd5b5035611ded565b34801561062c57600080fd5b5061056f6004803603606081101561064357600080fd5b508035906001600160a01b0360208201351690604001356120d8565b34801561066b57600080fd5b50610491612233565b34801561068057600080fd5b50610213612265565b34801561069557600080fd5b5061056f600480360360608110156106ac57600080fd5b508035906001600160a01b03602082013516906040013561226b565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561070d57600080fd5b505afa158015610721573d6000803e3d6000fd5b505050506040513d602081101561073757600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561078157600080fd5b505afa158015610795573d6000803e3d6000fd5b505050506040513d60208110156107ab57600080fd5b50516107f9576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b3360008181526038602052604090205460019060ff16600481111561081a57fe5b141561086d576040805162461bcd60e51b815260206004820152601f60248201527f70726f706f73657220697320616c726561647920612063616e64696461746500604482015290519081900360640190fd5b60026001600160a01b03821660009081526038602052604090205460ff16600481111561089657fe5b14156108d35760405162461bcd60e51b8152600401808060200182810382526029815260200180612b386029913960400191505060405180910390fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561092157600080fd5b505afa158015610935573d6000803e3d6000fd5b505050506040513d602081101561094b57600080fd5b5051604080516370a0823160e01b81526001600160a01b038481166004830152915191909216916370a08231916024808301926020929190829003018186803b15801561099757600080fd5b505afa1580156109ab573d6000803e3d6000fd5b505050506040513d60208110156109c157600080fd5b505115610a15576040805162461bcd60e51b815260206004820152601c60248201527f70726f706f73657220697320616c72656164792061206d656d62657200000000604482015290519081900360640190fd5b603a54831015610a565760405162461bcd60e51b815260040180806020018281038252602d815260200180612be1602d913960400191505060405180910390fd5b6001600160a01b038181166000908152603860205260409020805460ff1916600117905560395416610ac557348314610ac05760405162461bcd60e51b8152600401808060200182810382526028815260200180612b616028913960400191505060405180910390fd5b610add565b603954610add906001600160a01b0316823086612391565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093526001600160a01b03858116604485015291821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610b4a57600080fd5b505af1158015610b5e573d6000803e3d6000fd5b505050506040513d6020811015610b7457600080fd5b50519050610b80612b20565b506040805180820182526001600160a01b038481168083526020808401898152600087815260378352868120865181546001600160a01b03191690871617815591516001909201919091556033548651808401949094529583018a905260608084528b51908401528a51949587959416937fda76b8228e4eb3d710f6cddb20dccd29250b738750d145adb879de9bc87ab236938c938a938d938392608084019290880191908190849084905b83811015610c44578181015183820152602001610c2c565b50505050905090810190601f168015610c715780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a35060008181526036602052604090204390559150505b92915050565b603760205260009081526040902080546001909101546001600160a01b039091169082565b6034546001600160a01b031681565b603a5481565b60355481565b60386020526000908152604090205460ff1681565b610d288a8a888b600b806020026040519081016040528092919082600b602002808284376000920191909152508d91506123f19050565b603980546001600160a01b0319166001600160a01b039690961695909517909455603a92909255603b55603c55603d555050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610dc7576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610e1457600080fd5b505afa158015610e28573d6000803e3d6000fd5b505050506040513d6020811015610e3e57600080fd5b5051949350505050565b6039546000906001600160a01b0316610ee657603360009054906101000a90046001600160a01b03166001600160a01b031663fbfa77cf6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ea957600080fd5b505afa158015610ebd573d6000803e3d6000fd5b505050506040513d6020811015610ed357600080fd5b50516001600160a01b0316319050610f65565b603954603354604080516370a0823160e01b81526001600160a01b039283166004820152905191909216916370a08231916024808301926020929190829003018186803b158015610f3657600080fd5b505afa158015610f4a573d6000803e3d6000fd5b505050506040513d6020811015610f6057600080fd5b505190505b6040805180820182526004808252635452554560e01b60208084019190915260335484518086018652601681527546554e4445445f4245464f52455f444541444c494e4560501b81840190815295516358cb548b60e01b8152938401928352805160248501528051611150966001600160a01b03909316946358cb548b949293839260449092019180838360005b8381101561100b578181015183820152602001610ff3565b50505050905090810190601f1680156110385780820380516001836020036101000a031916815260200191505b509250505060006040518083038186803b15801561105557600080fd5b505afa158015611069573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561109257600080fd5b81019080805160405193929190846401000000008211156110b257600080fd5b9083019060208201858111156110c757600080fd5b82516401000000008111828201881017156110e157600080fd5b82525081516020918201929091019080838360005b8381101561110e5781810151838201526020016110f6565b50505050905090810190601f16801561113b5780820380516001836020036101000a031916815260200191505b5060405250505061265e90919063ffffffff16565b15801561115f5750603c548110155b801561116c5750603d5442105b156113ad57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111bf57600080fd5b505afa1580156111d3573d6000803e3d6000fd5b505050506040513d60208110156111e957600080fd5b5051604080518082018252601681527546554e4445445f4245464f52455f444541444c494e4560501b6020828101918252835180850185526004808252635452554560e01b928201929092528451634e4e399360e11b81529182019485528351604483015283516001600160a01b0390961695639c9c732695919391928392602482019260649092019180838360005b83811015611291578181015183820152602001611279565b50505050905090810190601f1680156112be5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b838110156112f15781810151838201526020016112d9565b50505050905090810190601f16801561131e5780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b15801561133f57600080fd5b505af1158015611353573d6000803e3d6000fd5b505050506040513d602081101561136957600080fd5b505161137457600080fd5b6033546040516001600160a01b03909116907f0640f71d45326639d6b83950c3933726d23f87a54e4a1853104d6f88e99c8aea90600090a25b50565b6039546001600160a01b031681565b603c5481565b60366020526000908152604090205481565b603d5481565b603b5481565b604051806040016040528060048152602001635452554560e01b81525081565b60345460009082906001600160a01b0316331461145c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156114aa57600080fd5b505afa1580156114be573d6000803e3d6000fd5b505050506040513d60208110156114d457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610e1457600080fd5b60345460009083906001600160a01b0316331461158d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b611595612b20565b50600084815260376020908152604091829020825180840190935280546001600160a01b031680845260019091015491830191909152611613576040805162461bcd60e51b81526020600482015260146024820152731b9bdd0818481d985b1a59081c1c9bdc1bdcd85b60621b604482015290519081900360640190fd5b600181516001600160a01b031660009081526038602052604090205460ff16600481111561163d57fe5b1461168f576040805162461bcd60e51b815260206004820152601960248201527f6d656d626572206973206e6f7420612063616e64696461746500000000000000604482015290519081900360640190fd5b60008460011480156117905750603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156116ea57600080fd5b505afa1580156116fe573d6000803e3d6000fd5b505050506040513d602081101561171457600080fd5b50518251604080516370a0823160e01b81526001600160a01b039283166004820152905191909216916370a08231916024808301926020929190829003018186803b15801561176257600080fd5b505afa158015611776573d6000803e3d6000fd5b505050506040513d602081101561178c57600080fd5b5051155b156118c05781516001600160a01b03166000908152603860209081526040909120805460ff19166002179055820151603e546117cb91612755565b603e556039546001600160a01b03166118905760335460208301516040516001600160a01b0390921691600081818185875af1925050503d806000811461182e576040519150601f19603f3d011682016040523d82523d6000602084013e611833565b606091505b5050809150508061188b576040805162461bcd60e51b815260206004820152601a60248201527f73656e64457468657220746f20617661746172206661696c6564000000000000604482015290519081900360640190fd5b6118b3565b60335460208301516039546118b3926001600160a01b03918216929116906127b6565b6118bb610e48565b6119a3565b81516001600160a01b039081166000908152603860205260409020805460ff191660031790556039541661198457815160208301516040516001600160a01b0390921691600081818185875af1925050503d806000811461193d576040519150601f19603f3d011682016040523d82523d6000602084013e611942565b606091505b505080915050806118bb5760405162461bcd60e51b8152600401808060200182810382526022815260200180612c0e6022913960400191505060405180910390fd5b815160208301516039546119a3926001600160a01b03909116916127b6565b60335460408051878152905188926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a350600195945050505050565b60345460009082906001600160a01b03163314611a4b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a9957600080fd5b505afa158015611aad573d6000803e3d6000fd5b505050506040513d6020811015611ac357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611b0d57600080fd5b505afa158015611b21573d6000803e3d6000fd5b505050506040513d6020811015611b3757600080fd5b5051611b85576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611bd357600080fd5b505afa158015611be7573d6000803e3d6000fd5b505050506040513d6020811015611bfd57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611c5657600080fd5b505afa158015611c6a573d6000803e3d6000fd5b505050506040513d6020811015611c8057600080fd5b50519392505050565b60345460009082906001600160a01b03163314611ce2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611db757600080fd5b505af1158015611dcb573d6000803e3d6000fd5b505050506040513d6020811015611de157600080fd5b50519695505050505050565b6000611df7612b20565b50600082815260376020908152604091829020825180840190935280546001600160a01b031680845260019091015491830191909152611e74576040805162461bcd60e51b81526020600482015260136024820152726e6f206d656d62657220746f2072656465656d60681b604482015290519081900360640190fd5b600281516001600160a01b031660009081526038602052604090205460ff166004811115611e9e57fe5b14611ee6576040805162461bcd60e51b81526020600482015260136024820152721b595b58995c881b9bdd081858d8d95c1d1959606a1b604482015290519081900360640190fd5b600083815260376020908152604080832080546001600160a01b031916905583516001600160a01b0316835260389091529020805460ff19166004179055603b54611f375780602001519150611f3d565b603b5491505b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611f8b57600080fd5b505afa158015611f9f573d6000803e3d6000fd5b505050506040513d6020811015611fb557600080fd5b505181516040805163dea9e24d60e01b8152600481018690526001600160a01b0392831660248201529051919092169163dea9e24d9160448083019260209291908290030181600087803b15801561200c57600080fd5b505af1158015612020573d6000803e3d6000fd5b505050506040513d602081101561203657600080fd5b5051612089576040805162461bcd60e51b815260206004820152601960248201527f6661696c656420746f206d696e742072657075746174696f6e00000000000000604482015290519081900360640190fd5b80516033546040805185815290516001600160a01b0393841693879316917fa23744d636594bf9b6875314ae23191b2096248670a007d1e6209b35e21dd55d919081900360200190a450919050565b60345460009082906001600160a01b03163314612131576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561217f57600080fd5b505afa158015612193573d6000803e3d6000fd5b505050506040513d60208110156121a957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156121fe57600080fd5b505af1158015612212573d6000803e3d6000fd5b505050506040513d602081101561222857600080fd5b505195945050505050565b6040518060400160405280601681526020017546554e4445445f4245464f52455f444541444c494e4560501b81525081565b603e5481565b60345460009082906001600160a01b031633146122c4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561231257600080fd5b505afa158015612326573d6000803e3d6000fd5b505050506040513d602081101561233c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b1580156121fe57600080fd5b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526123eb90859061280d565b50505050565b6001600160a01b03841661244c576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b612455856129c5565b603480546001600160a01b0319166001600160a01b03861617905582612651576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156124bf5781810151838201526020016124a7565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156124f157600080fd5b505afa158015612505573d6000803e3d6000fd5b505050506040513d602081101561251b57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561256d57600080fd5b505afa158015612581573d6000803e3d6000fd5b505050506040513d6101a081101561259857600080fd5b505190508061264a57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156125e95781810151838201526020016125d1565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561261d57600080fd5b505af1158015612631573d6000803e3d6000fd5b505050506040513d602081101561264757600080fd5b50505b5050612657565b60358390555b5050505050565b6000815183511461267157506000610c96565b816040516020018082805190602001908083835b602083106126a45780518252601f199092019160209182019101612685565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106127125780518252601f1990920191602091820191016126f3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120149050610c96565b6000828201838110156127af576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261280890849061280d565b505050565b61281f826001600160a01b0316612ade565b612870576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106128ae5780518252601f19909201916020918201910161288f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612910576040519150601f19603f3d011682016040523d82523d6000602084013e612915565b606091505b50915091508161296c576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156123eb5780806020019051602081101561298857600080fd5b50516123eb5760405162461bcd60e51b815260040180806020018281038252602a815260200180612bb7602a913960400191505060405180910390fd5b600054610100900460ff16806129de57506129de612b1a565b806129ec575060005460ff16155b612a275760405162461bcd60e51b815260040180806020018281038252602e815260200180612b89602e913960400191505060405180910390fd5b600054610100900460ff16158015612a52576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216612aad576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015612ada576000805461ff00191690555b5050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590612b1257508115155b949350505050565b303b1590565b60408051808201909152600080825260208201529056fe70726f706f73657220697320616363657074656420616e64206e6f742072656465656d6564207965744554482072656365697665642073686f756c64206d6174636820746865205f666565416d6f756e74436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645f666565416d6f756e742073686f756c64206265203e3d207468616e20746865206d696e466565546f4a6f696e73656e644574686572206261636b20746f2063616e646964617465206661696c6564a26469706673582212201632109cce88e304d546627b6a6ee5819335ceb92daf2da4792b26a99b03201064736f6c634300060c0033", + "deployedBytecode": "0x6080604052600436106101665760003560e01c80637a5cb92c116100d1578063b551c3731161008a578063d29b5d2f11610064578063d29b5d2f14610620578063e4392dbb1461065f578063ee2ac05f14610674578063f81f8bf61461068957610166565b8063b551c37314610583578063bea75f28146105ad578063c7916cf9146105f657610166565b80637a5cb92c146104285780637ae5644a1461045257806393df91a1146104675780639537ba0c1461047c5780639588378e146105065780639d4c162d1461053f57610166565b80635368e556116101235780635368e556146103215780635aef7de61461039b5780636b8eb403146103b05780637350dbd1146103e957806378065f27146103fe5780637a3a0e841461041357610166565b8063187a9e4b1461016b57806332ed5b12146102255780633edf7ca11461027257806345c3dffa146102a35780634ea2c7ec146102b8578063505ae62b146102cd575b600080fd5b6102136004803603604081101561018157600080fd5b81019060208101813564010000000081111561019c57600080fd5b8201836020820111156101ae57600080fd5b803590602001918460018302840111640100000000831117156101d057600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506106c8915050565b60408051918252519081900360200190f35b34801561023157600080fd5b5061024f6004803603602081101561024857600080fd5b5035610c9c565b604080516001600160a01b03909316835260208301919091528051918290030190f35b34801561027e57600080fd5b50610287610cc1565b604080516001600160a01b039092168252519081900360200190f35b3480156102af57600080fd5b50610213610cd0565b3480156102c457600080fd5b50610213610cd6565b3480156102d957600080fd5b50610300600480360360208110156102f057600080fd5b50356001600160a01b0316610cdc565b6040518082600481111561031057fe5b815260200191505060405180910390f35b34801561032d57600080fd5b50610399600480360361028081101561034557600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0810135909116906102008101359061022081013590610240810135906102600135610cf1565b005b3480156103a757600080fd5b50610287610d5f565b3480156103bc57600080fd5b50610213600480360360408110156103d357600080fd5b506001600160a01b038135169060200135610d6e565b3480156103f557600080fd5b50610399610e48565b34801561040a57600080fd5b506102876113b0565b34801561041f57600080fd5b506102136113bf565b34801561043457600080fd5b506102136004803603602081101561044b57600080fd5b50356113c5565b34801561045e57600080fd5b506102136113d7565b34801561047357600080fd5b506102136113dd565b34801561048857600080fd5b506104916113e3565b6040805160208082528351818301528351919283929083019185019080838360005b838110156104cb5781810151838201526020016104b3565b50505050905090810190601f1680156104f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561051257600080fd5b506102136004803603604081101561052957600080fd5b506001600160a01b038135169060200135611403565b34801561054b57600080fd5b5061056f6004803603604081101561056257600080fd5b5080359060200135611534565b604080519115158252519081900360200190f35b34801561058f57600080fd5b50610213600480360360208110156105a657600080fd5b50356119f2565b3480156105b957600080fd5b5061056f600480360360808110156105d057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611c89565b34801561060257600080fd5b506102136004803603602081101561061957600080fd5b5035611ded565b34801561062c57600080fd5b5061056f6004803603606081101561064357600080fd5b508035906001600160a01b0360208201351690604001356120d8565b34801561066b57600080fd5b50610491612233565b34801561068057600080fd5b50610213612265565b34801561069557600080fd5b5061056f600480360360608110156106ac57600080fd5b508035906001600160a01b03602082013516906040013561226b565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561070d57600080fd5b505afa158015610721573d6000803e3d6000fd5b505050506040513d602081101561073757600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561078157600080fd5b505afa158015610795573d6000803e3d6000fd5b505050506040513d60208110156107ab57600080fd5b50516107f9576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b3360008181526038602052604090205460019060ff16600481111561081a57fe5b141561086d576040805162461bcd60e51b815260206004820152601f60248201527f70726f706f73657220697320616c726561647920612063616e64696461746500604482015290519081900360640190fd5b60026001600160a01b03821660009081526038602052604090205460ff16600481111561089657fe5b14156108d35760405162461bcd60e51b8152600401808060200182810382526029815260200180612b386029913960400191505060405180910390fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561092157600080fd5b505afa158015610935573d6000803e3d6000fd5b505050506040513d602081101561094b57600080fd5b5051604080516370a0823160e01b81526001600160a01b038481166004830152915191909216916370a08231916024808301926020929190829003018186803b15801561099757600080fd5b505afa1580156109ab573d6000803e3d6000fd5b505050506040513d60208110156109c157600080fd5b505115610a15576040805162461bcd60e51b815260206004820152601c60248201527f70726f706f73657220697320616c72656164792061206d656d62657200000000604482015290519081900360640190fd5b603a54831015610a565760405162461bcd60e51b815260040180806020018281038252602d815260200180612be1602d913960400191505060405180910390fd5b6001600160a01b038181166000908152603860205260409020805460ff1916600117905560395416610ac557348314610ac05760405162461bcd60e51b8152600401808060200182810382526028815260200180612b616028913960400191505060405180910390fd5b610add565b603954610add906001600160a01b0316823086612391565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093526001600160a01b03858116604485015291821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610b4a57600080fd5b505af1158015610b5e573d6000803e3d6000fd5b505050506040513d6020811015610b7457600080fd5b50519050610b80612b20565b506040805180820182526001600160a01b038481168083526020808401898152600087815260378352868120865181546001600160a01b03191690871617815591516001909201919091556033548651808401949094529583018a905260608084528b51908401528a51949587959416937fda76b8228e4eb3d710f6cddb20dccd29250b738750d145adb879de9bc87ab236938c938a938d938392608084019290880191908190849084905b83811015610c44578181015183820152602001610c2c565b50505050905090810190601f168015610c715780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a35060008181526036602052604090204390559150505b92915050565b603760205260009081526040902080546001909101546001600160a01b039091169082565b6034546001600160a01b031681565b603a5481565b60355481565b60386020526000908152604090205460ff1681565b610d288a8a888b600b806020026040519081016040528092919082600b602002808284376000920191909152508d91506123f19050565b603980546001600160a01b0319166001600160a01b039690961695909517909455603a92909255603b55603c55603d555050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610dc7576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610e1457600080fd5b505afa158015610e28573d6000803e3d6000fd5b505050506040513d6020811015610e3e57600080fd5b5051949350505050565b6039546000906001600160a01b0316610ee657603360009054906101000a90046001600160a01b03166001600160a01b031663fbfa77cf6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ea957600080fd5b505afa158015610ebd573d6000803e3d6000fd5b505050506040513d6020811015610ed357600080fd5b50516001600160a01b0316319050610f65565b603954603354604080516370a0823160e01b81526001600160a01b039283166004820152905191909216916370a08231916024808301926020929190829003018186803b158015610f3657600080fd5b505afa158015610f4a573d6000803e3d6000fd5b505050506040513d6020811015610f6057600080fd5b505190505b6040805180820182526004808252635452554560e01b60208084019190915260335484518086018652601681527546554e4445445f4245464f52455f444541444c494e4560501b81840190815295516358cb548b60e01b8152938401928352805160248501528051611150966001600160a01b03909316946358cb548b949293839260449092019180838360005b8381101561100b578181015183820152602001610ff3565b50505050905090810190601f1680156110385780820380516001836020036101000a031916815260200191505b509250505060006040518083038186803b15801561105557600080fd5b505afa158015611069573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561109257600080fd5b81019080805160405193929190846401000000008211156110b257600080fd5b9083019060208201858111156110c757600080fd5b82516401000000008111828201881017156110e157600080fd5b82525081516020918201929091019080838360005b8381101561110e5781810151838201526020016110f6565b50505050905090810190601f16801561113b5780820380516001836020036101000a031916815260200191505b5060405250505061265e90919063ffffffff16565b15801561115f5750603c548110155b801561116c5750603d5442105b156113ad57603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111bf57600080fd5b505afa1580156111d3573d6000803e3d6000fd5b505050506040513d60208110156111e957600080fd5b5051604080518082018252601681527546554e4445445f4245464f52455f444541444c494e4560501b6020828101918252835180850185526004808252635452554560e01b928201929092528451634e4e399360e11b81529182019485528351604483015283516001600160a01b0390961695639c9c732695919391928392602482019260649092019180838360005b83811015611291578181015183820152602001611279565b50505050905090810190601f1680156112be5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b838110156112f15781810151838201526020016112d9565b50505050905090810190601f16801561131e5780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b15801561133f57600080fd5b505af1158015611353573d6000803e3d6000fd5b505050506040513d602081101561136957600080fd5b505161137457600080fd5b6033546040516001600160a01b03909116907f0640f71d45326639d6b83950c3933726d23f87a54e4a1853104d6f88e99c8aea90600090a25b50565b6039546001600160a01b031681565b603c5481565b60366020526000908152604090205481565b603d5481565b603b5481565b604051806040016040528060048152602001635452554560e01b81525081565b60345460009082906001600160a01b0316331461145c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156114aa57600080fd5b505afa1580156114be573d6000803e3d6000fd5b505050506040513d60208110156114d457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610e1457600080fd5b60345460009083906001600160a01b0316331461158d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b611595612b20565b50600084815260376020908152604091829020825180840190935280546001600160a01b031680845260019091015491830191909152611613576040805162461bcd60e51b81526020600482015260146024820152731b9bdd0818481d985b1a59081c1c9bdc1bdcd85b60621b604482015290519081900360640190fd5b600181516001600160a01b031660009081526038602052604090205460ff16600481111561163d57fe5b1461168f576040805162461bcd60e51b815260206004820152601960248201527f6d656d626572206973206e6f7420612063616e64696461746500000000000000604482015290519081900360640190fd5b60008460011480156117905750603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156116ea57600080fd5b505afa1580156116fe573d6000803e3d6000fd5b505050506040513d602081101561171457600080fd5b50518251604080516370a0823160e01b81526001600160a01b039283166004820152905191909216916370a08231916024808301926020929190829003018186803b15801561176257600080fd5b505afa158015611776573d6000803e3d6000fd5b505050506040513d602081101561178c57600080fd5b5051155b156118c05781516001600160a01b03166000908152603860209081526040909120805460ff19166002179055820151603e546117cb91612755565b603e556039546001600160a01b03166118905760335460208301516040516001600160a01b0390921691600081818185875af1925050503d806000811461182e576040519150601f19603f3d011682016040523d82523d6000602084013e611833565b606091505b5050809150508061188b576040805162461bcd60e51b815260206004820152601a60248201527f73656e64457468657220746f20617661746172206661696c6564000000000000604482015290519081900360640190fd5b6118b3565b60335460208301516039546118b3926001600160a01b03918216929116906127b6565b6118bb610e48565b6119a3565b81516001600160a01b039081166000908152603860205260409020805460ff191660031790556039541661198457815160208301516040516001600160a01b0390921691600081818185875af1925050503d806000811461193d576040519150601f19603f3d011682016040523d82523d6000602084013e611942565b606091505b505080915050806118bb5760405162461bcd60e51b8152600401808060200182810382526022815260200180612c0e6022913960400191505060405180910390fd5b815160208301516039546119a3926001600160a01b03909116916127b6565b60335460408051878152905188926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a350600195945050505050565b60345460009082906001600160a01b03163314611a4b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a9957600080fd5b505afa158015611aad573d6000803e3d6000fd5b505050506040513d6020811015611ac357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611b0d57600080fd5b505afa158015611b21573d6000803e3d6000fd5b505050506040513d6020811015611b3757600080fd5b5051611b85576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611bd357600080fd5b505afa158015611be7573d6000803e3d6000fd5b505050506040513d6020811015611bfd57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611c5657600080fd5b505afa158015611c6a573d6000803e3d6000fd5b505050506040513d6020811015611c8057600080fd5b50519392505050565b60345460009082906001600160a01b03163314611ce2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611db757600080fd5b505af1158015611dcb573d6000803e3d6000fd5b505050506040513d6020811015611de157600080fd5b50519695505050505050565b6000611df7612b20565b50600082815260376020908152604091829020825180840190935280546001600160a01b031680845260019091015491830191909152611e74576040805162461bcd60e51b81526020600482015260136024820152726e6f206d656d62657220746f2072656465656d60681b604482015290519081900360640190fd5b600281516001600160a01b031660009081526038602052604090205460ff166004811115611e9e57fe5b14611ee6576040805162461bcd60e51b81526020600482015260136024820152721b595b58995c881b9bdd081858d8d95c1d1959606a1b604482015290519081900360640190fd5b600083815260376020908152604080832080546001600160a01b031916905583516001600160a01b0316835260389091529020805460ff19166004179055603b54611f375780602001519150611f3d565b603b5491505b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611f8b57600080fd5b505afa158015611f9f573d6000803e3d6000fd5b505050506040513d6020811015611fb557600080fd5b505181516040805163dea9e24d60e01b8152600481018690526001600160a01b0392831660248201529051919092169163dea9e24d9160448083019260209291908290030181600087803b15801561200c57600080fd5b505af1158015612020573d6000803e3d6000fd5b505050506040513d602081101561203657600080fd5b5051612089576040805162461bcd60e51b815260206004820152601960248201527f6661696c656420746f206d696e742072657075746174696f6e00000000000000604482015290519081900360640190fd5b80516033546040805185815290516001600160a01b0393841693879316917fa23744d636594bf9b6875314ae23191b2096248670a007d1e6209b35e21dd55d919081900360200190a450919050565b60345460009082906001600160a01b03163314612131576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561217f57600080fd5b505afa158015612193573d6000803e3d6000fd5b505050506040513d60208110156121a957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156121fe57600080fd5b505af1158015612212573d6000803e3d6000fd5b505050506040513d602081101561222857600080fd5b505195945050505050565b6040518060400160405280601681526020017546554e4445445f4245464f52455f444541444c494e4560501b81525081565b603e5481565b60345460009082906001600160a01b031633146122c4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561231257600080fd5b505afa158015612326573d6000803e3d6000fd5b505050506040513d602081101561233c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b1580156121fe57600080fd5b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526123eb90859061280d565b50505050565b6001600160a01b03841661244c576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b612455856129c5565b603480546001600160a01b0319166001600160a01b03861617905582612651576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156124bf5781810151838201526020016124a7565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156124f157600080fd5b505afa158015612505573d6000803e3d6000fd5b505050506040513d602081101561251b57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561256d57600080fd5b505afa158015612581573d6000803e3d6000fd5b505050506040513d6101a081101561259857600080fd5b505190508061264a57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156125e95781810151838201526020016125d1565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561261d57600080fd5b505af1158015612631573d6000803e3d6000fd5b505050506040513d602081101561264757600080fd5b50505b5050612657565b60358390555b5050505050565b6000815183511461267157506000610c96565b816040516020018082805190602001908083835b602083106126a45780518252601f199092019160209182019101612685565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120836040516020018082805190602001908083835b602083106127125780518252601f1990920191602091820191016126f3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120149050610c96565b6000828201838110156127af576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261280890849061280d565b505050565b61281f826001600160a01b0316612ade565b612870576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106128ae5780518252601f19909201916020918201910161288f565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114612910576040519150601f19603f3d011682016040523d82523d6000602084013e612915565b606091505b50915091508161296c576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b8051156123eb5780806020019051602081101561298857600080fd5b50516123eb5760405162461bcd60e51b815260040180806020018281038252602a815260200180612bb7602a913960400191505060405180910390fd5b600054610100900460ff16806129de57506129de612b1a565b806129ec575060005460ff16155b612a275760405162461bcd60e51b815260040180806020018281038252602e815260200180612b89602e913960400191505060405180910390fd5b600054610100900460ff16158015612a52576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216612aad576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015612ada576000805461ff00191690555b5050565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590612b1257508115155b949350505050565b303b1590565b60408051808201909152600080825260208201529056fe70726f706f73657220697320616363657074656420616e64206e6f742072656465656d6564207965744554482072656365697665642073686f756c64206d6174636820746865205f666565416d6f756e74436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645f666565416d6f756e742073686f756c64206265203e3d207468616e20746865206d696e466565546f4a6f696e73656e644574686572206261636b20746f2063616e646964617465206661696c6564a26469706673582212201632109cce88e304d546627b6a6ee5819335ceb92daf2da4792b26a99b03201064736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Locking4Reputation.json b/contracts/0.1.2-rc.8/Locking4Reputation.json new file mode 100644 index 00000000..0b7c5684 --- /dev/null +++ b/contracts/0.1.2-rc.8/Locking4Reputation.json @@ -0,0 +1,331 @@ +{ + "contractName": "Locking4Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506107a5806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806383805742116100a2578063bf0df44511610071578063bf0df44514610217578063c006719f1461021f578063c3201add14610227578063c348a24b1461022f578063ed1ff6d8146102375761010b565b8063838057421461019c57806395a2251f146101e1578063a8c3301714610207578063afe0e33c1461020f5761010b565b806356891412116100de578063568914121461015e5780635aef7de614610166578063696da9211461016e57806376dd110f146101765761010b565b80633d1678f4146101105780633edf7ca11461012a5780634ea2c7ec1461014e57806355bfec8814610156575b600080fd5b61011861023f565b60408051918252519081900360200190f35b610132610245565b604080516001600160a01b039092168252519081900360200190f35b610118610254565b61011861025a565b610118610260565b610132610266565b610118610275565b6101186004803603602081101561018c57600080fd5b50356001600160a01b031661027b565b6101c8600480360360408110156101b257600080fd5b506001600160a01b03813516906020013561028d565b6040805192835260208301919091528051918290030190f35b610118600480360360208110156101f757600080fd5b50356001600160a01b03166102b1565b610118610542565b610118610548565b61011861054e565b610118610554565b61011861055a565b610118610560565b610118610566565b60425481565b6035546001600160a01b031681565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b60005490565b60386020526000908152604090205481565b60376020908152600092835260408084209091529082529020805460019091015482565b60006042544211610302576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260386020526040902054610362576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d5490919061039190839061056c565b90506103a8603b54826105ce90919063ffffffff16565b603e549093506103b89084610610565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561040057600080fd5b505afa158015610414573d6000803e3d6000fd5b505050506040513d602081101561042a57600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561047f57600080fd5b505af1158015610493573d6000803e3d6000fd5b505050506040513d60208110156104a957600080fd5b50516104fc576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b603d5481565b60008261057b575060006105c8565b8282028284828161058857fe5b04146105c55760405162461bcd60e51b815260040180806020018281038252602181526020018061074f6021913960400191505060405180910390fd5b90505b92915050565b60006105c583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610652565b60006105c583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506106f4565b600081836106de5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106a357818101518382015260200161068b565b50505050905090810190601f1680156106d05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816106ea57fe5b0495945050505050565b600081848411156107465760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156106a357818101518382015260200161068b565b50505090039056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122047e78e75a19df6a3667de790f4a153289b2c1c079765766ff224cb955bedd8a864736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806383805742116100a2578063bf0df44511610071578063bf0df44514610217578063c006719f1461021f578063c3201add14610227578063c348a24b1461022f578063ed1ff6d8146102375761010b565b8063838057421461019c57806395a2251f146101e1578063a8c3301714610207578063afe0e33c1461020f5761010b565b806356891412116100de578063568914121461015e5780635aef7de614610166578063696da9211461016e57806376dd110f146101765761010b565b80633d1678f4146101105780633edf7ca11461012a5780634ea2c7ec1461014e57806355bfec8814610156575b600080fd5b61011861023f565b60408051918252519081900360200190f35b610132610245565b604080516001600160a01b039092168252519081900360200190f35b610118610254565b61011861025a565b610118610260565b610132610266565b610118610275565b6101186004803603602081101561018c57600080fd5b50356001600160a01b031661027b565b6101c8600480360360408110156101b257600080fd5b506001600160a01b03813516906020013561028d565b6040805192835260208301919091528051918290030190f35b610118600480360360208110156101f757600080fd5b50356001600160a01b03166102b1565b610118610542565b610118610548565b61011861054e565b610118610554565b61011861055a565b610118610560565b610118610566565b60425481565b6035546001600160a01b031681565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b60005490565b60386020526000908152604090205481565b60376020908152600092835260408084209091529082529020805460019091015482565b60006042544211610302576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260386020526040902054610362576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d5490919061039190839061056c565b90506103a8603b54826105ce90919063ffffffff16565b603e549093506103b89084610610565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561040057600080fd5b505afa158015610414573d6000803e3d6000fd5b505050506040513d602081101561042a57600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561047f57600080fd5b505af1158015610493573d6000803e3d6000fd5b505050506040513d60208110156104a957600080fd5b50516104fc576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b603d5481565b60008261057b575060006105c8565b8282028284828161058857fe5b04146105c55760405162461bcd60e51b815260040180806020018281038252602181526020018061074f6021913960400191505060405180910390fd5b90505b92915050565b60006105c583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610652565b60006105c583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506106f4565b600081836106de5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156106a357818101518382015260200161068b565b50505050905090810190601f1680156106d05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816106ea57fe5b0495945050505050565b600081848411156107465760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156106a357818101518382015260200161068b565b50505090039056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122047e78e75a19df6a3667de790f4a153289b2c1c079765766ff224cb955bedd8a864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/LockingEth4Reputation.json b/contracts/0.1.2-rc.8/LockingEth4Reputation.json new file mode 100644 index 00000000..3faa27ec --- /dev/null +++ b/contracts/0.1.2-rc.8/LockingEth4Reputation.json @@ -0,0 +1,422 @@ +{ + "contractName": "LockingEth4Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxLockingPeriod", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_period", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "lock", + "outputs": [ + { + "internalType": "bytes32", + "name": "lockingId", + "type": "bytes32" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + } + ], + "name": "release", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611257806100206000396000f3fe60806040526004361061011f5760003560e01c806383805742116100a0578063c006719f11610064578063c006719f14610358578063c3201add1461036d578063c348a24b14610382578063d7c2eec714610397578063ed1ff6d8146103e45761011f565b8063838057421461029457806395a2251f146102e6578063a8c3301714610319578063afe0e33c1461032e578063bf0df445146103435761011f565b806356891412116100e757806356891412146101c95780635aef7de6146101de578063650e81f2146101f3578063696da9211461024c57806376dd110f146102615761011f565b80633d1678f4146101245780633edf7ca11461014b578063496a36f21461017c5780634ea2c7ec1461019f57806355bfec88146101b4575b600080fd5b34801561013057600080fd5b506101396103f9565b60408051918252519081900360200190f35b34801561015757600080fd5b506101606103ff565b604080516001600160a01b039092168252519081900360200190f35b6101396004803603604081101561019257600080fd5b508035906020013561040e565b3480156101ab57600080fd5b50610139610428565b3480156101c057600080fd5b5061013961042e565b3480156101d557600080fd5b50610139610434565b3480156101ea57600080fd5b5061016061043a565b3480156101ff57600080fd5b5061024a600480360360e081101561021657600080fd5b506001600160a01b038135169060208101359060408101359060608101359060808101359060a08101359060c00135610449565b005b34801561025857600080fd5b50610139610461565b34801561026d57600080fd5b506101396004803603602081101561028457600080fd5b50356001600160a01b0316610467565b3480156102a057600080fd5b506102cd600480360360408110156102b757600080fd5b506001600160a01b038135169060200135610479565b6040805192835260208301919091528051918290030190f35b3480156102f257600080fd5b506101396004803603602081101561030957600080fd5b50356001600160a01b031661049d565b34801561032557600080fd5b5061013961072e565b34801561033a57600080fd5b50610139610734565b34801561034f57600080fd5b5061013961073a565b34801561036457600080fd5b50610139610740565b34801561037957600080fd5b50610139610746565b34801561038e57600080fd5b5061013961074c565b3480156103a357600080fd5b506103d0600480360360408110156103ba57600080fd5b506001600160a01b038135169060200135610752565b604080519115158252519081900360200190f35b3480156103f057600080fd5b506101396107a3565b60425481565b6035546001600160a01b031681565b600061041f348433600180876107a9565b90505b92915050565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b61045887878787878787610b4d565b50505050505050565b60005490565b60386020526000908152604090205481565b60376020908152600092835260408084209091529082529020805460019091015482565b600060425442116104ee576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b03821660009081526038602052604090205461054e576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d5490919061057d908390610bfa565b9050610594603b5482610c5390919063ffffffff16565b603e549093506105a49084610c95565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156105ec57600080fd5b505afa158015610600573d6000803e3d6000fd5b505050506040513d602081101561061657600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561066b57600080fd5b505af115801561067f573d6000803e3d6000fd5b505050506040513d602081101561069557600080fd5b50516106e8576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b60008061075f8484610cd7565b6040519091506001600160a01b0385169082156108fc029083906000818181858888f19350505050158015610798573d6000803e3d6000fd5b506001949350505050565b603d5481565b60008160005481146107ec5760405162461bcd60e51b81526004018080602001828103825260288152602001806111ac6028913960400191505060405180910390fd5b60008811610841576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6040548711156108825760405162461bcd60e51b815260040180806020018281038252602c8152602001806111d4602c913960400191505060405180910390fd5b600087116108d7576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b603f544211156109185760405162461bcd60e51b81526004018080602001828103825260308152602001806110f36030913960400191505060405180910390fd5b6041544210156109595760405162461bcd60e51b81526004018080602001828103825260288152602001806110cb6028913960400191505060405180910390fd5b603c54604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610999906001610dfc565b603c556001600160a01b0386166000908152603760209081526040808320858452909152902088815542880160018201556039546109d7908a610dfc565b603955603a546109e7908a610dfc565b603a556000610a0a86610a04896109fe8d8f610bfa565b90610bfa565b90610c53565b905060008111610a55576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260386020526040902054610a789082610dfc565b6001600160a01b0389166000908152603860205260409020819055603d549081810281610aa157fe5b0414610ae8576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b603b54610af59082610dfc565b603b55604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b610b5687610e56565b848411610b945760405162461bcd60e51b815260040180806020018281038252603a815260200180611172603a913960400191505060405180910390fd5b83831015610bd35760405162461bcd60e51b81526004018080602001828103825260228152602001806112006022913960400191505060405180910390fd5b603d869055603e869055603f84905560408290556041859055604283905561045881610f6e565b600082610c0957506000610422565b82820282848281610c1657fe5b041461041f5760405162461bcd60e51b81526004018080602001828103825260218152602001806111236021913960400191505060405180910390fd5b600061041f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fc8565b600061041f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061106a565b6001600160a01b038216600090815260376020908152604080832084845290915281208054610d44576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211610da5576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b603a54610db29083610c95565b603a556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b60008282018381101561041f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600154610100900460ff1680610e6f5750610e6f6110c4565b80610e7d575060015460ff16155b610eb85760405162461bcd60e51b815260040180806020018281038252602e815260200180611144602e913960400191505060405180910390fd5b600154610100900460ff16158015610ee2576001805460ff1961ff00199091166101001716811790555b6001600160a01b038216610f3d576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015610f6a576001805461ff00191690555b5050565b60005415610fc3576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b600081836110545760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611019578181015183820152602001611001565b50505050905090810190601f1680156110465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161106057fe5b0495945050505050565b600081848411156110bc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611019578181015183820152602001611001565b505050900390565b303b159056fe6c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f6472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a2646970667358221220749531c735dab68db129a4d921b3ef320a07810dd483132d87b39b0452f1be5264736f6c634300060c0033", + "deployedBytecode": "0x60806040526004361061011f5760003560e01c806383805742116100a0578063c006719f11610064578063c006719f14610358578063c3201add1461036d578063c348a24b14610382578063d7c2eec714610397578063ed1ff6d8146103e45761011f565b8063838057421461029457806395a2251f146102e6578063a8c3301714610319578063afe0e33c1461032e578063bf0df445146103435761011f565b806356891412116100e757806356891412146101c95780635aef7de6146101de578063650e81f2146101f3578063696da9211461024c57806376dd110f146102615761011f565b80633d1678f4146101245780633edf7ca11461014b578063496a36f21461017c5780634ea2c7ec1461019f57806355bfec88146101b4575b600080fd5b34801561013057600080fd5b506101396103f9565b60408051918252519081900360200190f35b34801561015757600080fd5b506101606103ff565b604080516001600160a01b039092168252519081900360200190f35b6101396004803603604081101561019257600080fd5b508035906020013561040e565b3480156101ab57600080fd5b50610139610428565b3480156101c057600080fd5b5061013961042e565b3480156101d557600080fd5b50610139610434565b3480156101ea57600080fd5b5061016061043a565b3480156101ff57600080fd5b5061024a600480360360e081101561021657600080fd5b506001600160a01b038135169060208101359060408101359060608101359060808101359060a08101359060c00135610449565b005b34801561025857600080fd5b50610139610461565b34801561026d57600080fd5b506101396004803603602081101561028457600080fd5b50356001600160a01b0316610467565b3480156102a057600080fd5b506102cd600480360360408110156102b757600080fd5b506001600160a01b038135169060200135610479565b6040805192835260208301919091528051918290030190f35b3480156102f257600080fd5b506101396004803603602081101561030957600080fd5b50356001600160a01b031661049d565b34801561032557600080fd5b5061013961072e565b34801561033a57600080fd5b50610139610734565b34801561034f57600080fd5b5061013961073a565b34801561036457600080fd5b50610139610740565b34801561037957600080fd5b50610139610746565b34801561038e57600080fd5b5061013961074c565b3480156103a357600080fd5b506103d0600480360360408110156103ba57600080fd5b506001600160a01b038135169060200135610752565b604080519115158252519081900360200190f35b3480156103f057600080fd5b506101396107a3565b60425481565b6035546001600160a01b031681565b600061041f348433600180876107a9565b90505b92915050565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b61045887878787878787610b4d565b50505050505050565b60005490565b60386020526000908152604090205481565b60376020908152600092835260408084209091529082529020805460019091015482565b600060425442116104ee576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b03821660009081526038602052604090205461054e576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d5490919061057d908390610bfa565b9050610594603b5482610c5390919063ffffffff16565b603e549093506105a49084610c95565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b1580156105ec57600080fd5b505afa158015610600573d6000803e3d6000fd5b505050506040513d602081101561061657600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561066b57600080fd5b505af115801561067f573d6000803e3d6000fd5b505050506040513d602081101561069557600080fd5b50516106e8576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b60008061075f8484610cd7565b6040519091506001600160a01b0385169082156108fc029083906000818181858888f19350505050158015610798573d6000803e3d6000fd5b506001949350505050565b603d5481565b60008160005481146107ec5760405162461bcd60e51b81526004018080602001828103825260288152602001806111ac6028913960400191505060405180910390fd5b60008811610841576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b6040548711156108825760405162461bcd60e51b815260040180806020018281038252602c8152602001806111d4602c913960400191505060405180910390fd5b600087116108d7576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b603f544211156109185760405162461bcd60e51b81526004018080602001828103825260308152602001806110f36030913960400191505060405180910390fd5b6041544210156109595760405162461bcd60e51b81526004018080602001828103825260288152602001806110cb6028913960400191505060405180910390fd5b603c54604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610999906001610dfc565b603c556001600160a01b0386166000908152603760209081526040808320858452909152902088815542880160018201556039546109d7908a610dfc565b603955603a546109e7908a610dfc565b603a556000610a0a86610a04896109fe8d8f610bfa565b90610bfa565b90610c53565b905060008111610a55576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260386020526040902054610a789082610dfc565b6001600160a01b0389166000908152603860205260409020819055603d549081810281610aa157fe5b0414610ae8576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b603b54610af59082610dfc565b603b55604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b610b5687610e56565b848411610b945760405162461bcd60e51b815260040180806020018281038252603a815260200180611172603a913960400191505060405180910390fd5b83831015610bd35760405162461bcd60e51b81526004018080602001828103825260228152602001806112006022913960400191505060405180910390fd5b603d869055603e869055603f84905560408290556041859055604283905561045881610f6e565b600082610c0957506000610422565b82820282848281610c1657fe5b041461041f5760405162461bcd60e51b81526004018080602001828103825260218152602001806111236021913960400191505060405180910390fd5b600061041f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fc8565b600061041f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061106a565b6001600160a01b038216600090815260376020908152604080832084845290915281208054610d44576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211610da5576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b603a54610db29083610c95565b603a556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b60008282018381101561041f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600154610100900460ff1680610e6f5750610e6f6110c4565b80610e7d575060015460ff16155b610eb85760405162461bcd60e51b815260040180806020018281038252602e815260200180611144602e913960400191505060405180910390fd5b600154610100900460ff16158015610ee2576001805460ff1961ff00199091166101001716811790555b6001600160a01b038216610f3d576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015610f6a576001805461ff00191690555b5050565b60005415610fc3576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b600081836110545760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611019578181015183820152602001611001565b50505050905090810190601f1680156110465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161106057fe5b0495945050505050565b600081848411156110bc5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611019578181015183820152602001611001565b505050900390565b303b159056fe6c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f6472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a2646970667358221220749531c735dab68db129a4d921b3ef320a07810dd483132d87b39b0452f1be5264736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/LockingToken4Reputation.json b/contracts/0.1.2-rc.8/LockingToken4Reputation.json new file mode 100644 index 00000000..0a8a7c62 --- /dev/null +++ b/contracts/0.1.2-rc.8/LockingToken4Reputation.json @@ -0,0 +1,500 @@ +{ + "contractName": "LockingToken4Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_locker", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_period", + "type": "uint256" + } + ], + "name": "Lock", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numerator", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_denominator", + "type": "uint256" + } + ], + "name": "LockToken", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Release", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAgreementHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_lockingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_redeemEnableTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxLockingPeriod", + "type": "uint256" + }, + { + "internalType": "contract PriceOracleInterface", + "name": "_priceOracleContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_period", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_agreementHash", + "type": "bytes32" + } + ], + "name": "lock", + "outputs": [ + { + "internalType": "bytes32", + "name": "lockingId", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockedTokens", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "lockers", + "outputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "releaseTime", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lockingsCounter", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "maxLockingPeriod", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "priceOracleContract", + "outputs": [ + { + "internalType": "contract PriceOracleInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "redeemEnableTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_lockingId", + "type": "bytes32" + } + ], + "name": "release", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "reputationRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "scores", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLocked", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalLockedLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalScore", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061168a806100206000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806394d0cb6e116100b8578063c006719f1161007c578063c006719f146102eb578063c3201add146102f3578063c348a24b146102fb578063d7c2eec714610303578063e8d3358814610343578063ed1ff6d81461036057610142565b806394d0cb6e1461027557806395a2251f146102ad578063a8c33017146102d3578063afe0e33c146102db578063bf0df445146102e357610142565b8063568914121161010a578063568914121461019d5780635aef7de6146101a5578063696da921146101ad57806376dd110f146101b55780637ad88799146101db578063838057421461023057610142565b80633d1678f4146101475780633edf7ca114610161578063457454db146101855780634ea2c7ec1461018d57806355bfec8814610195575b600080fd5b61014f610368565b60408051918252519081900360200190f35b61016961036e565b604080516001600160a01b039092168252519081900360200190f35b61016961037d565b61014f61038c565b61014f610392565b61014f610398565b61016961039e565b61014f6103ad565b61014f600480360360208110156101cb57600080fd5b50356001600160a01b03166103b3565b61022e60048036036101008110156101f257600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c0820135169060e001356103c5565b005b61025c6004803603604081101561024657600080fd5b506001600160a01b0381351690602001356103f9565b6040805192835260208301919091528051918290030190f35b61014f6004803603608081101561028b57600080fd5b508035906020810135906001600160a01b03604082013516906060013561041d565b61014f600480360360208110156102c357600080fd5b50356001600160a01b03166105e2565b61014f610873565b61014f610879565b61014f61087f565b61014f610885565b61014f61088b565b61014f610891565b61032f6004803603604081101561031957600080fd5b506001600160a01b038135169060200135610897565b604080519115158252519081900360200190f35b6101696004803603602081101561035957600080fd5b50356108d6565b61014f6108f1565b60425481565b6035546001600160a01b031681565b6043546001600160a01b031681565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b60005490565b60386020526000908152604090205481565b604380546001600160a01b0319166001600160a01b0384161790556103ef888888888888876108f7565b5050505050505050565b60376020908152600092835260408084209091529082529020805460019091015482565b604354604080516341976e0960e01b81526001600160a01b03858116600483015282516000948594859493909116926341976e099260248083019392829003018186803b15801561046d57600080fd5b505afa158015610481573d6000803e3d6000fd5b505050506040513d604081101561049757600080fd5b5080516020909101519092509050816104f7576040805162461bcd60e51b815260206004820152601760248201527f6e756d657261746f722073686f756c64206265203e2030000000000000000000604482015290519081900360640190fd5b6000811161054c576040805162461bcd60e51b815260206004820152601960248201527f64656e6f6d696e61746f722073686f756c64206265203e203000000000000000604482015290519081900360640190fd5b6105616001600160a01b03861633308a6109ad565b61056f878733858589610a0d565b60008181526044602090815260409182902080546001600160a01b0319166001600160a01b038a16908117909155825186815291820185905282519396509286927f09ae2accb7909b2605e5e74e2584c7f5aa396bc6ab76290633ae3819ff650e9f928290030190a35050949350505050565b60006042544211610633576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260386020526040902054610693576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d549091906106c2908390610db1565b90506106d9603b5482610e1190919063ffffffff16565b603e549093506106e99084610e53565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561073157600080fd5b505afa158015610745573d6000803e3d6000fd5b505050506040513d602081101561075b57600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156107b057600080fd5b505af11580156107c4573d6000803e3d6000fd5b505050506040513d60208110156107da57600080fd5b505161082d576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b6000806108a48484610e95565b6000848152604460205260409020549091506108ca906001600160a01b03168583610fba565b60019150505b92915050565b6044602052600090815260409020546001600160a01b031681565b603d5481565b61090087611011565b84841161093e5760405162461bcd60e51b815260040180806020018281038252603a81526020018061157b603a913960400191505060405180910390fd5b8383101561097d5760405162461bcd60e51b81526004018080602001828103825260228152602001806116336022913960400191505060405180910390fd5b603d869055603e869055603f8490556040829055604185905560428390556109a481611129565b50505050505050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610a07908590611183565b50505050565b6000816000548114610a505760405162461bcd60e51b81526004018080602001828103825260288152602001806115b56028913960400191505060405180910390fd5b60008811610aa5576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b604054871115610ae65760405162461bcd60e51b815260040180806020018281038252602c8152602001806115dd602c913960400191505060405180910390fd5b60008711610b3b576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b603f54421115610b7c5760405162461bcd60e51b81526004018080602001828103825260308152602001806114fc6030913960400191505060405180910390fd5b604154421015610bbd5760405162461bcd60e51b81526004018080602001828103825260288152602001806114d46028913960400191505060405180910390fd5b603c54604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610bfd90600161133b565b603c556001600160a01b038616600090815260376020908152604080832085845290915290208881554288016001820155603954610c3b908a61133b565b603955603a54610c4b908a61133b565b603a556000610c6e86610c6889610c628d8f610db1565b90610db1565b90610e11565b905060008111610cb9576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260386020526040902054610cdc908261133b565b6001600160a01b0389166000908152603860205260409020819055603d549081810281610d0557fe5b0414610d4c576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b603b54610d59908261133b565b603b55604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b600082610dc0575060006108d0565b82820282848281610dcd57fe5b0414610e0a5760405162461bcd60e51b815260040180806020018281038252602181526020018061152c6021913960400191505060405180910390fd5b9392505050565b6000610e0a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611395565b6000610e0a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611437565b6001600160a01b038216600090815260376020908152604080832084845290915281208054610f02576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211610f63576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b603a54610f709083610e53565b603a556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261100c908490611183565b505050565b600154610100900460ff168061102a575061102a611491565b80611038575060015460ff16155b6110735760405162461bcd60e51b815260040180806020018281038252602e81526020018061154d602e913960400191505060405180910390fd5b600154610100900460ff1615801561109d576001805460ff1961ff00199091166101001716811790555b6001600160a01b0382166110f8576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015611125576001805461ff00191690555b5050565b6000541561117e576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b611195826001600160a01b0316611497565b6111e6576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106112245780518252601f199092019160209182019101611205565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611286576040519150601f19603f3d011682016040523d82523d6000602084013e61128b565b606091505b5091509150816112e2576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b805115610a07578080602001905160208110156112fe57600080fd5b5051610a075760405162461bcd60e51b815260040180806020018281038252602a815260200180611609602a913960400191505060405180910390fd5b600082820183811015610e0a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600081836114215760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156113e65781810151838201526020016113ce565b50505050905090810190601f1680156114135780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161142d57fe5b0495945050505050565b600081848411156114895760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156113e65781810151838201526020016113ce565b505050900390565b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906114cb57508115155b94935050505056fe6c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f645361666545524332303a204552433230206f7065726174696f6e20646964206e6f74207375636365656472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a2646970667358221220f7e41a0528a8aa8af206bd1d9ec47d0e2c98b403e77e1c80cfb08e888046bf4364736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101425760003560e01c806394d0cb6e116100b8578063c006719f1161007c578063c006719f146102eb578063c3201add146102f3578063c348a24b146102fb578063d7c2eec714610303578063e8d3358814610343578063ed1ff6d81461036057610142565b806394d0cb6e1461027557806395a2251f146102ad578063a8c33017146102d3578063afe0e33c146102db578063bf0df445146102e357610142565b8063568914121161010a578063568914121461019d5780635aef7de6146101a5578063696da921146101ad57806376dd110f146101b55780637ad88799146101db578063838057421461023057610142565b80633d1678f4146101475780633edf7ca114610161578063457454db146101855780634ea2c7ec1461018d57806355bfec8814610195575b600080fd5b61014f610368565b60408051918252519081900360200190f35b61016961036e565b604080516001600160a01b039092168252519081900360200190f35b61016961037d565b61014f61038c565b61014f610392565b61014f610398565b61016961039e565b61014f6103ad565b61014f600480360360208110156101cb57600080fd5b50356001600160a01b03166103b3565b61022e60048036036101008110156101f257600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160808201359160a08101359160c0820135169060e001356103c5565b005b61025c6004803603604081101561024657600080fd5b506001600160a01b0381351690602001356103f9565b6040805192835260208301919091528051918290030190f35b61014f6004803603608081101561028b57600080fd5b508035906020810135906001600160a01b03604082013516906060013561041d565b61014f600480360360208110156102c357600080fd5b50356001600160a01b03166105e2565b61014f610873565b61014f610879565b61014f61087f565b61014f610885565b61014f61088b565b61014f610891565b61032f6004803603604081101561031957600080fd5b506001600160a01b038135169060200135610897565b604080519115158252519081900360200190f35b6101696004803603602081101561035957600080fd5b50356108d6565b61014f6108f1565b60425481565b6035546001600160a01b031681565b6043546001600160a01b031681565b60365481565b60415481565b60395481565b6034546001600160a01b031681565b60005490565b60386020526000908152604090205481565b604380546001600160a01b0319166001600160a01b0384161790556103ef888888888888876108f7565b5050505050505050565b60376020908152600092835260408084209091529082529020805460019091015482565b604354604080516341976e0960e01b81526001600160a01b03858116600483015282516000948594859493909116926341976e099260248083019392829003018186803b15801561046d57600080fd5b505afa158015610481573d6000803e3d6000fd5b505050506040513d604081101561049757600080fd5b5080516020909101519092509050816104f7576040805162461bcd60e51b815260206004820152601760248201527f6e756d657261746f722073686f756c64206265203e2030000000000000000000604482015290519081900360640190fd5b6000811161054c576040805162461bcd60e51b815260206004820152601960248201527f64656e6f6d696e61746f722073686f756c64206265203e203000000000000000604482015290519081900360640190fd5b6105616001600160a01b03861633308a6109ad565b61056f878733858589610a0d565b60008181526044602090815260409182902080546001600160a01b0319166001600160a01b038a16908117909155825186815291820185905282519396509286927f09ae2accb7909b2605e5e74e2584c7f5aa396bc6ab76290633ae3819ff650e9f928290030190a35050949350505050565b60006042544211610633576040805162461bcd60e51b81526020600482015260166024820152756e6f77203e2072656465656d456e61626c6554696d6560501b604482015290519081900360640190fd5b6001600160a01b038216600090815260386020526040902054610693576040805162461bcd60e51b8152602060048201526013602482015272073636f72652073686f756c64206265203e203606c1b604482015290519081900360640190fd5b6001600160a01b0382166000908152603860205260408120805490829055603d549091906106c2908390610db1565b90506106d9603b5482610e1190919063ffffffff16565b603e549093506106e99084610e53565b603e5560345460408051638da5cb5b60e01b815290516001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b15801561073157600080fd5b505afa158015610745573d6000803e3d6000fd5b505050506040513d602081101561075b57600080fd5b50516040805163dea9e24d60e01b8152600481018690526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156107b057600080fd5b505af11580156107c4573d6000803e3d6000fd5b505050506040513d60208110156107da57600080fd5b505161082d576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6040805184815290516001600160a01b038616917f222838db2794d11532d940e8dec38ae307ed0b63cd97c233322e221f998767a6919081900360200190a25050919050565b603f5481565b603e5481565b60405481565b603b5481565b603c5481565b603a5481565b6000806108a48484610e95565b6000848152604460205260409020549091506108ca906001600160a01b03168583610fba565b60019150505b92915050565b6044602052600090815260409020546001600160a01b031681565b603d5481565b61090087611011565b84841161093e5760405162461bcd60e51b815260040180806020018281038252603a81526020018061157b603a913960400191505060405180910390fd5b8383101561097d5760405162461bcd60e51b81526004018080602001828103825260228152602001806116336022913960400191505060405180910390fd5b603d869055603e869055603f8490556040829055604185905560428390556109a481611129565b50505050505050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052610a07908590611183565b50505050565b6000816000548114610a505760405162461bcd60e51b81526004018080602001828103825260288152602001806115b56028913960400191505060405180910390fd5b60008811610aa5576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720616d6f756e742073686f756c64206265203e203000000000604482015290519081900360640190fd5b604054871115610ae65760405162461bcd60e51b815260040180806020018281038252602c8152602001806115dd602c913960400191505060405180910390fd5b60008711610b3b576040805162461bcd60e51b815260206004820152601c60248201527f6c6f636b696e6720706572696f642073686f756c64206265203e203000000000604482015290519081900360640190fd5b603f54421115610b7c5760405162461bcd60e51b81526004018080602001828103825260308152602001806114fc6030913960400191505060405180910390fd5b604154421015610bbd5760405162461bcd60e51b81526004018080602001828103825260288152602001806114d46028913960400191505060405180910390fd5b603c54604080513060601b602080830191909152603480830185905283518084039091018152605490920190925280519101209250610bfd90600161133b565b603c556001600160a01b038616600090815260376020908152604080832085845290915290208881554288016001820155603954610c3b908a61133b565b603955603a54610c4b908a61133b565b603a556000610c6e86610c6889610c628d8f610db1565b90610db1565b90610e11565b905060008111610cb9576040805162461bcd60e51b8152602060048201526011602482015270073636f7265206d757374206d65203e203607c1b604482015290519081900360640190fd5b6001600160a01b038816600090815260386020526040902054610cdc908261133b565b6001600160a01b0389166000908152603860205260409020819055603d549081810281610d0557fe5b0414610d4c576040805162461bcd60e51b81526020600482015260116024820152700e6c6dee4ca40d2e640e8dede40d0d2ced607b1b604482015290519081900360640190fd5b603b54610d59908261133b565b603b55604080518b8152602081018b9052815186926001600160a01b038c16927fd173f98f4a2080eab40a0bff4d9a575753270cb2401c74efdec1feb0ba31b426929081900390910190a35050509695505050505050565b600082610dc0575060006108d0565b82820282848281610dcd57fe5b0414610e0a5760405162461bcd60e51b815260040180806020018281038252602181526020018061152c6021913960400191505060405180910390fd5b9392505050565b6000610e0a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611395565b6000610e0a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611437565b6001600160a01b038216600090815260376020908152604080832084845290915281208054610f02576040805162461bcd60e51b81526020600482015260146024820152730616d6f756e742073686f756c64206265203e20360641b604482015290519081900360640190fd5b80546000825560018201549092504211610f63576040805162461bcd60e51b815260206004820152601a60248201527f636865636b20746865206c6f636b20706572696f642070617373000000000000604482015290519081900360640190fd5b603a54610f709083610e53565b603a556040805183815290516001600160a01b0386169185917fcb7ab693259d2332e08e7666832578144deb74443e37a762847e848793fc29819181900360200190a35092915050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261100c908490611183565b505050565b600154610100900460ff168061102a575061102a611491565b80611038575060015460ff16155b6110735760405162461bcd60e51b815260040180806020018281038252602e81526020018061154d602e913960400191505060405180910390fd5b600154610100900460ff1615801561109d576001805460ff1961ff00199091166101001716811790555b6001600160a01b0382166110f8576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603480546001600160a01b0319166001600160a01b0384161790558015611125576001805461ff00191690555b5050565b6000541561117e576040805162461bcd60e51b815260206004820152601b60248201527f43616e206e6f74207365742061677265656d656e742074776963650000000000604482015290519081900360640190fd5b600055565b611195826001600160a01b0316611497565b6111e6576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106112245780518252601f199092019160209182019101611205565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611286576040519150601f19603f3d011682016040523d82523d6000602084013e61128b565b606091505b5091509150816112e2576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b805115610a07578080602001905160208110156112fe57600080fd5b5051610a075760405162461bcd60e51b815260040180806020018281038252602a815260200180611609602a913960400191505060405180910390fd5b600082820183811015610e0a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600081836114215760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156113e65781810151838201526020016113ce565b50505050905090810190601f1680156114135780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161142d57fe5b0495945050505050565b600081848411156114895760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156113e65781810151838201526020016113ce565b505050900390565b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906114cb57508115155b94935050505056fe6c6f636b2073686f756c64207374617274206166746572206c6f636b696e67537461727454696d656c6f636b2073686f756c642062652077697468696e2074686520616c6c6f776564206c6f636b696e6720706572696f64536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65646c6f636b696e6720656e642074696d652073686f756c642062652067726561746572207468616e206c6f636b696e672073746172742074696d6553656e646572206d7573742073656e64207468652072696768742061677265656d656e74486173686c6f636b696e6720706572696f642073686f756c64206265203c3d206d61784c6f636b696e67506572696f645361666545524332303a204552433230206f7065726174696f6e20646964206e6f74207375636365656472656465656d456e61626c6554696d65203e3d206c6f636b696e67456e6454696d65a2646970667358221220f7e41a0528a8aa8af206bd1d9ec47d0e2c98b403e77e1c80cfb08e888046bf4364736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Math.json b/contracts/0.1.2-rc.8/Math.json new file mode 100644 index 00000000..29034c14 --- /dev/null +++ b/contracts/0.1.2-rc.8/Math.json @@ -0,0 +1,6 @@ +{ + "contractName": "Math", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212206d57fb572b720bc92668312e93af43fae1d87de26845d1243b4550c5735d738164736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212206d57fb572b720bc92668312e93af43fae1d87de26845d1243b4550c5735d738164736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Migrations.json b/contracts/0.1.2-rc.8/Migrations.json new file mode 100644 index 00000000..6ecf0107 --- /dev/null +++ b/contracts/0.1.2-rc.8/Migrations.json @@ -0,0 +1,1397 @@ +{ + "contractName": "Migrations", + "abi": [ + { + "inputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "constant": true, + "inputs": [], + "name": "lastCompletedMigration", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "uint256", + "name": "completed", + "type": "uint256" + } + ], + "name": "setCompleted", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newAddress", + "type": "address" + } + ], + "name": "upgrade", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "metadata": "{\"compiler\":{\"version\":\"0.5.15+commit.6a57276f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"constant\":true,\"inputs\":[],\"name\":\"lastCompletedMigration\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"completed\",\"type\":\"uint256\"}],\"name\":\"setCompleted\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"newAddress\",\"type\":\"address\"}],\"name\":\"upgrade\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/oren/daostack/arc-hive/contracts/Migrations.sol\":\"Migrations\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/oren/daostack/arc-hive/contracts/Migrations.sol\":{\"keccak256\":\"0xebb73f05cca34bdab83927f94bc2dc05c261adfbc22bac5d28bdc6cbbe1640f7\",\"urls\":[\"bzz-raw://7eb6058c3715d2af31654322f4610f037f23e76d22e9edca2111ac3314e36b55\",\"dweb:/ipfs/QmSVRB67QbjSCpaXBvg8eRjuDq6vq2bLorLD9LLgGn37oM\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b50600080546001600160a01b031916331790556101b3806100326000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630900f010146100515780638da5cb5b14610079578063fbdbad3c1461009d578063fdacd576146100b7575b600080fd5b6100776004803603602081101561006757600080fd5b50356001600160a01b03166100d4565b005b610081610151565b604080516001600160a01b039092168252519081900360200190f35b6100a5610160565b60408051918252519081900360200190f35b610077600480360360208110156100cd57600080fd5b5035610166565b6000546001600160a01b031633141561014e576000819050806001600160a01b031663fdacd5766001546040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561013457600080fd5b505af1158015610148573d6000803e3d6000fd5b50505050505b50565b6000546001600160a01b031681565b60015481565b6000546001600160a01b031633141561014e5760015556fea265627a7a72315820fb26f95ae851f62a93e3fe9f443f49e8f4832766253ad5dad17b28bceb98ef8364736f6c634300050f0032", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80630900f010146100515780638da5cb5b14610079578063fbdbad3c1461009d578063fdacd576146100b7575b600080fd5b6100776004803603602081101561006757600080fd5b50356001600160a01b03166100d4565b005b610081610151565b604080516001600160a01b039092168252519081900360200190f35b6100a5610160565b60408051918252519081900360200190f35b610077600480360360208110156100cd57600080fd5b5035610166565b6000546001600160a01b031633141561014e576000819050806001600160a01b031663fdacd5766001546040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561013457600080fd5b505af1158015610148573d6000803e3d6000fd5b50505050505b50565b6000546001600160a01b031681565b60015481565b6000546001600160a01b031633141561014e5760015556fea265627a7a72315820fb26f95ae851f62a93e3fe9f443f49e8f4832766253ad5dad17b28bceb98ef8364736f6c634300050f0032", + "sourceMap": "27:542:1:-;;;218:56;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;249:5:1;:18;;-1:-1:-1;;;;;;249:18:1;257:10;249:18;;;27:542;;;;;;", + "deployedSourceMap": "27:542:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;27:542:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;396:171;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;396:171:1;-1:-1:-1;;;;;396:171:1;;:::i;:::-;;53:20;;;:::i;:::-;;;;-1:-1:-1;;;;;53:20:1;;;;;;;;;;;;;;79:37;;;:::i;:::-;;;;;;;;;;;;;;;;280:110;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;280:110:1;;:::i;396:171::-;173:5;;-1:-1:-1;;;;;173:5:1;159:10;:19;155:51;;;461:19;494:10;461:44;;515:8;-1:-1:-1;;;;;515:21:1;;537:22;;515:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;515:45:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;515:45:1;;;;194:1;155:51;396:171;:::o;53:20::-;;;-1:-1:-1;;;;;53:20:1;;:::o;79:37::-;;;;:::o;280:110::-;173:5;;-1:-1:-1;;;;;173:5:1;159:10;:19;155:51;;;349:22;:34;280:110::o", + "source": "pragma solidity ^0.5.15;\n\n\ncontract Migrations {\n address public owner;\n uint256 public lastCompletedMigration;\n\n modifier restricted() {\n if (msg.sender == owner) {\n _;\n }\n }\n\n constructor() public {\n owner = msg.sender;\n }\n\n function setCompleted(uint256 completed) public restricted {\n lastCompletedMigration = completed;\n }\n\n function upgrade(address newAddress) public restricted {\n Migrations upgraded = Migrations(newAddress);\n upgraded.setCompleted(lastCompletedMigration);\n }\n}\n", + "sourcePath": "/Users/oren/daostack/arc-hive/contracts/Migrations.sol", + "ast": { + "absolutePath": "/Users/oren/daostack/arc-hive/contracts/Migrations.sol", + "exportedSymbols": { + "Migrations": [ + 143 + ] + }, + "id": 144, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 87, + "literals": [ + "solidity", + "^", + "0.5", + ".15" + ], + "nodeType": "PragmaDirective", + "src": "0:24:1" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 143, + "linearizedBaseContracts": [ + 143 + ], + "name": "Migrations", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 89, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "53:20:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 88, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 91, + "name": "lastCompletedMigration", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "79:37:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 90, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "79:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 100, + "nodeType": "Block", + "src": "145:67:1", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 96, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 93, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "159:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 94, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "159:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 95, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 89, + "src": "173:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "159:19:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 99, + "nodeType": "IfStatement", + "src": "155:51:1", + "trueBody": { + "id": 98, + "nodeType": "Block", + "src": "180:26:1", + "statements": [ + { + "id": 97, + "nodeType": "PlaceholderStatement", + "src": "194:1:1" + } + ] + } + } + ] + }, + "documentation": null, + "id": 101, + "name": "restricted", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 92, + "nodeType": "ParameterList", + "parameters": [], + "src": "142:2:1" + }, + "src": "123:89:1", + "visibility": "internal" + }, + { + "body": { + "id": 109, + "nodeType": "Block", + "src": "239:35:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 104, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 89, + "src": "249:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 105, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "257:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "257:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "249:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 108, + "nodeType": "ExpressionStatement", + "src": "249:18:1" + } + ] + }, + "documentation": null, + "id": 110, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 102, + "nodeType": "ParameterList", + "parameters": [], + "src": "229:2:1" + }, + "returnParameters": { + "id": 103, + "nodeType": "ParameterList", + "parameters": [], + "src": "239:0:1" + }, + "scope": 143, + "src": "218:56:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 121, + "nodeType": "Block", + "src": "339:51:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 117, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 91, + "src": "349:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 118, + "name": "completed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 112, + "src": "374:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "349:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 120, + "nodeType": "ExpressionStatement", + "src": "349:34:1" + } + ] + }, + "documentation": null, + "id": 122, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 115, + "modifierName": { + "argumentTypes": null, + "id": 114, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "328:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "328:10:1" + } + ], + "name": "setCompleted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 113, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 112, + "name": "completed", + "nodeType": "VariableDeclaration", + "scope": 122, + "src": "302:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "302:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "301:19:1" + }, + "returnParameters": { + "id": 116, + "nodeType": "ParameterList", + "parameters": [], + "src": "339:0:1" + }, + "scope": 143, + "src": "280:110:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 141, + "nodeType": "Block", + "src": "451:116:1", + "statements": [ + { + "assignments": [ + 130 + ], + "declarations": [ + { + "constant": false, + "id": 130, + "name": "upgraded", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "461:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + }, + "typeName": { + "contractScope": null, + "id": 129, + "name": "Migrations", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 143, + "src": "461:10:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 134, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 132, + "name": "newAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 124, + "src": "494:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 131, + "name": "Migrations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 143, + "src": "483:10:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Migrations_$143_$", + "typeString": "type(contract Migrations)" + } + }, + "id": 133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "483:22:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "461:44:1" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 138, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 91, + "src": "537:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 135, + "name": "upgraded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 130, + "src": "515:8:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + } + }, + "id": 137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setCompleted", + "nodeType": "MemberAccess", + "referencedDeclaration": 122, + "src": "515:21:1", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "515:45:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 140, + "nodeType": "ExpressionStatement", + "src": "515:45:1" + } + ] + }, + "documentation": null, + "id": 142, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 127, + "modifierName": { + "argumentTypes": null, + "id": 126, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "440:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "440:10:1" + } + ], + "name": "upgrade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 125, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 124, + "name": "newAddress", + "nodeType": "VariableDeclaration", + "scope": 142, + "src": "413:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 123, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "413:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "412:20:1" + }, + "returnParameters": { + "id": 128, + "nodeType": "ParameterList", + "parameters": [], + "src": "451:0:1" + }, + "scope": 143, + "src": "396:171:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 144, + "src": "27:542:1" + } + ], + "src": "0:570:1" + }, + "legacyAST": { + "absolutePath": "/Users/oren/daostack/arc-hive/contracts/Migrations.sol", + "exportedSymbols": { + "Migrations": [ + 143 + ] + }, + "id": 144, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 87, + "literals": [ + "solidity", + "^", + "0.5", + ".15" + ], + "nodeType": "PragmaDirective", + "src": "0:24:1" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 143, + "linearizedBaseContracts": [ + 143 + ], + "name": "Migrations", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 89, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "53:20:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 88, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 91, + "name": "lastCompletedMigration", + "nodeType": "VariableDeclaration", + "scope": 143, + "src": "79:37:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 90, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "79:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 100, + "nodeType": "Block", + "src": "145:67:1", + "statements": [ + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 96, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 93, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "159:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 94, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "159:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 95, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 89, + "src": "173:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "159:19:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 99, + "nodeType": "IfStatement", + "src": "155:51:1", + "trueBody": { + "id": 98, + "nodeType": "Block", + "src": "180:26:1", + "statements": [ + { + "id": 97, + "nodeType": "PlaceholderStatement", + "src": "194:1:1" + } + ] + } + } + ] + }, + "documentation": null, + "id": 101, + "name": "restricted", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 92, + "nodeType": "ParameterList", + "parameters": [], + "src": "142:2:1" + }, + "src": "123:89:1", + "visibility": "internal" + }, + { + "body": { + "id": 109, + "nodeType": "Block", + "src": "239:35:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 104, + "name": "owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 89, + "src": "249:5:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 105, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 372, + "src": "257:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "257:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "249:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 108, + "nodeType": "ExpressionStatement", + "src": "249:18:1" + } + ] + }, + "documentation": null, + "id": 110, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 102, + "nodeType": "ParameterList", + "parameters": [], + "src": "229:2:1" + }, + "returnParameters": { + "id": 103, + "nodeType": "ParameterList", + "parameters": [], + "src": "239:0:1" + }, + "scope": 143, + "src": "218:56:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 121, + "nodeType": "Block", + "src": "339:51:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 117, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 91, + "src": "349:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 118, + "name": "completed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 112, + "src": "374:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "349:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 120, + "nodeType": "ExpressionStatement", + "src": "349:34:1" + } + ] + }, + "documentation": null, + "id": 122, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 115, + "modifierName": { + "argumentTypes": null, + "id": 114, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "328:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "328:10:1" + } + ], + "name": "setCompleted", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 113, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 112, + "name": "completed", + "nodeType": "VariableDeclaration", + "scope": 122, + "src": "302:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "302:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "301:19:1" + }, + "returnParameters": { + "id": 116, + "nodeType": "ParameterList", + "parameters": [], + "src": "339:0:1" + }, + "scope": 143, + "src": "280:110:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 141, + "nodeType": "Block", + "src": "451:116:1", + "statements": [ + { + "assignments": [ + 130 + ], + "declarations": [ + { + "constant": false, + "id": 130, + "name": "upgraded", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "461:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + }, + "typeName": { + "contractScope": null, + "id": 129, + "name": "Migrations", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 143, + "src": "461:10:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 134, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 132, + "name": "newAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 124, + "src": "494:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 131, + "name": "Migrations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 143, + "src": "483:10:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Migrations_$143_$", + "typeString": "type(contract Migrations)" + } + }, + "id": 133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "483:22:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "461:44:1" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 138, + "name": "lastCompletedMigration", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 91, + "src": "537:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 135, + "name": "upgraded", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 130, + "src": "515:8:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Migrations_$143", + "typeString": "contract Migrations" + } + }, + "id": 137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setCompleted", + "nodeType": "MemberAccess", + "referencedDeclaration": 122, + "src": "515:21:1", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "515:45:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 140, + "nodeType": "ExpressionStatement", + "src": "515:45:1" + } + ] + }, + "documentation": null, + "id": 142, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 127, + "modifierName": { + "argumentTypes": null, + "id": 126, + "name": "restricted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 101, + "src": "440:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "440:10:1" + } + ], + "name": "upgrade", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 125, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 124, + "name": "newAddress", + "nodeType": "VariableDeclaration", + "scope": 142, + "src": "413:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 123, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "413:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "412:20:1" + }, + "returnParameters": { + "id": 128, + "nodeType": "ParameterList", + "parameters": [], + "src": "451:0:1" + }, + "scope": 143, + "src": "396:171:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 144, + "src": "27:542:1" + } + ], + "src": "0:570:1" + }, + "compiler": { + "name": "solc", + "version": "0.5.15+commit.6a57276f.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.20", + "updatedAt": "2019-12-22T14:03:18.969Z", + "devdoc": { + "methods": {} + }, + "userdoc": { + "methods": {} + } +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/MiniMeToken.json b/contracts/0.1.2-rc.8/MiniMeToken.json new file mode 100644 index 00000000..220da330 --- /dev/null +++ b/contracts/0.1.2-rc.8/MiniMeToken.json @@ -0,0 +1,50 @@ +{ + "contractName": "MiniMeToken", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "balanceOfAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "totalSupplyAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/NFTManager.json b/contracts/0.1.2-rc.8/NFTManager.json new file mode 100644 index 00000000..76c97b2d --- /dev/null +++ b/contracts/0.1.2-rc.8/NFTManager.json @@ -0,0 +1,182 @@ +{ + "contractName": "NFTManager", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "indexed": true, + "internalType": "contract IERC721", + "name": "nftContract", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "SendNFT", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "onERC721Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "contract IERC721", + "name": "nftContract", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "sendNFT", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "contract IERC721", + "name": "nftContract", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokenId", + "type": "uint256" + } + ], + "name": "sendNFTNoSafeguards", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061093e806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80638da5cb5b1161005b5780638da5cb5b146101a5578063ab88d71b146101c9578063c4d66de814610259578063f2fde38b1461027f5761007d565b8063150b7a0214610082578063715018a614610165578063817e28781461016f575b600080fd5b6101486004803603608081101561009857600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156100d357600080fd5b8201836020820111156100e557600080fd5b8035906020019184600183028401116401000000008311171561010757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506102a5945050505050565b604080516001600160e01b03199092168252519081900360200190f35b61016d6102ce565b005b61016d6004803603606081101561018557600080fd5b506001600160a01b03813581169160208101359091169060400135610370565b6101ad61047f565b604080516001600160a01b039092168252519081900360200190f35b61016d600480360360808110156101df57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561021a57600080fd5b82018360208201111561022c57600080fd5b8035906020019184600183028401116401000000008311171561024e57600080fd5b50909250905061048e565b61016d6004803603602081101561026f57600080fd5b50356001600160a01b03166105e3565b61016d6004803603602081101561029557600080fd5b50356001600160a01b0316610697565b7f150b7a023d4804d13e8c85fb27262cb750cf6ba9f9dd3bb30d90f482ceeb4b1f949350505050565b6102d6610790565b6065546001600160a01b03908116911614610326576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b610378610790565b6065546001600160a01b039081169116146103c8576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b604080516323b872dd60e01b81523060048201526001600160a01b038581166024830152604482018490529151918416916323b872dd9160648082019260009290919082900301818387803b15801561042057600080fd5b505af1158015610434573d6000803e3d6000fd5b50506040805184815290516001600160a01b038087169450871692507ffc4edf327acbc7dfbb8b7e55c4904f557466a5f7bc3a8684ac7b293c7c859bab9181900360200190a3505050565b6065546001600160a01b031690565b610496610790565b6065546001600160a01b039081169116146104e6576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b836001600160a01b031663b88d4fde30878686866040518663ffffffff1660e01b815260040180866001600160a01b03168152602001856001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561058257600080fd5b505af1158015610596573d6000803e3d6000fd5b50506040805186815290516001600160a01b038089169450891692507ffc4edf327acbc7dfbb8b7e55c4904f557466a5f7bc3a8684ac7b293c7c859bab9181900360200190a35050505050565b600054610100900460ff16806105fc57506105fc610794565b8061060a575060005460ff16155b6106455760405162461bcd60e51b815260040180806020018281038252602e8152602001806108db602e913960400191505060405180910390fd5b600054610100900460ff16158015610670576000805460ff1961ff0019909116610100171660011790555b61067861079a565b61068182610697565b8015610693576000805461ff00191690555b5050565b61069f610790565b6065546001600160a01b039081169116146106ef576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b6001600160a01b0381166107345760405162461bcd60e51b81526004018080602001828103825260268152602001806108956026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806107b357506107b3610794565b806107c1575060005460ff16155b6107fc5760405162461bcd60e51b815260040180806020018281038252602e8152602001806108db602e913960400191505060405180910390fd5b600054610100900460ff16158015610827576000805460ff1961ff0019909116610100171660011790555b6000610831610790565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610891576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212208fad05a06154d8ca5f99045134087a7dcd3e7dd86f80fb6012dcccc25e926afc64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80638da5cb5b1161005b5780638da5cb5b146101a5578063ab88d71b146101c9578063c4d66de814610259578063f2fde38b1461027f5761007d565b8063150b7a0214610082578063715018a614610165578063817e28781461016f575b600080fd5b6101486004803603608081101561009857600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156100d357600080fd5b8201836020820111156100e557600080fd5b8035906020019184600183028401116401000000008311171561010757600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506102a5945050505050565b604080516001600160e01b03199092168252519081900360200190f35b61016d6102ce565b005b61016d6004803603606081101561018557600080fd5b506001600160a01b03813581169160208101359091169060400135610370565b6101ad61047f565b604080516001600160a01b039092168252519081900360200190f35b61016d600480360360808110156101df57600080fd5b6001600160a01b0382358116926020810135909116916040820135919081019060808101606082013564010000000081111561021a57600080fd5b82018360208201111561022c57600080fd5b8035906020019184600183028401116401000000008311171561024e57600080fd5b50909250905061048e565b61016d6004803603602081101561026f57600080fd5b50356001600160a01b03166105e3565b61016d6004803603602081101561029557600080fd5b50356001600160a01b0316610697565b7f150b7a023d4804d13e8c85fb27262cb750cf6ba9f9dd3bb30d90f482ceeb4b1f949350505050565b6102d6610790565b6065546001600160a01b03908116911614610326576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b610378610790565b6065546001600160a01b039081169116146103c8576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b604080516323b872dd60e01b81523060048201526001600160a01b038581166024830152604482018490529151918416916323b872dd9160648082019260009290919082900301818387803b15801561042057600080fd5b505af1158015610434573d6000803e3d6000fd5b50506040805184815290516001600160a01b038087169450871692507ffc4edf327acbc7dfbb8b7e55c4904f557466a5f7bc3a8684ac7b293c7c859bab9181900360200190a3505050565b6065546001600160a01b031690565b610496610790565b6065546001600160a01b039081169116146104e6576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b836001600160a01b031663b88d4fde30878686866040518663ffffffff1660e01b815260040180866001600160a01b03168152602001856001600160a01b03168152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561058257600080fd5b505af1158015610596573d6000803e3d6000fd5b50506040805186815290516001600160a01b038089169450891692507ffc4edf327acbc7dfbb8b7e55c4904f557466a5f7bc3a8684ac7b293c7c859bab9181900360200190a35050505050565b600054610100900460ff16806105fc57506105fc610794565b8061060a575060005460ff16155b6106455760405162461bcd60e51b815260040180806020018281038252602e8152602001806108db602e913960400191505060405180910390fd5b600054610100900460ff16158015610670576000805460ff1961ff0019909116610100171660011790555b61067861079a565b61068182610697565b8015610693576000805461ff00191690555b5050565b61069f610790565b6065546001600160a01b039081169116146106ef576040805162461bcd60e51b815260206004820181905260248201526000805160206108bb833981519152604482015290519081900360640190fd5b6001600160a01b0381166107345760405162461bcd60e51b81526004018080602001828103825260268152602001806108956026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806107b357506107b3610794565b806107c1575060005460ff16155b6107fc5760405162461bcd60e51b815260040180806020018281038252602e8152602001806108db602e913960400191505060405180910390fd5b600054610100900460ff16158015610827576000805460ff1961ff0019909116610100171660011790555b6000610831610790565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610891576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212208fad05a06154d8ca5f99045134087a7dcd3e7dd86f80fb6012dcccc25e926afc64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/NectarRepAllocation.json b/contracts/0.1.2-rc.8/NectarRepAllocation.json new file mode 100644 index 00000000..003a35db --- /dev/null +++ b/contracts/0.1.2-rc.8/NectarRepAllocation.json @@ -0,0 +1,137 @@ +{ + "contractName": "NectarRepAllocation", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "reputation", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "blockReference", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "claimingEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "claimingStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_reputationReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_claimingEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_blockReference", + "type": "uint256" + }, + { + "internalType": "contract MiniMeToken", + "name": "_token", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reputationReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "token", + "outputs": [ + { + "internalType": "contract MiniMeToken", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalTokenSupplyAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506105e3806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063cba9794a1161005b578063cba9794a146100dd578063ccd65296146100e5578063ed1ff6d814610125578063fc0c546a1461012d57610088565b806350480fd21461008d5780635dd15cc5146100a757806370a08231146100af578063c6e5bc30146100d5575b600080fd5b610095610151565b60408051918252519081900360200190f35b610095610157565b610095600480360360208110156100c557600080fd5b50356001600160a01b031661015d565b610095610250565b610095610256565b610123600480360360a08110156100fb57600080fd5b50803590602081013590604081013590606081013590608001356001600160a01b031661025c565b005b610095610413565b610135610419565b604080516001600160a01b039092168252519081900360200190f35b60015481565b60045481565b60006001546000141580610172575060025415155b801561018b57506002544210158061018b575060015442105b156101985750600061024b565b610248600354610242600054600560009054906101000a90046001600160a01b03166001600160a01b0316634ee2cd7e876004546040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b15801561021057600080fd5b505afa158015610224573d6000803e3d6000fd5b505050506040513d602081101561023a57600080fd5b505190610428565b9061048a565b90505b919050565b60035481565b60025481565b6005546001600160a01b0316156102ba576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b03811661030c576040805162461bcd60e51b8152602060048201526014602482015273746f6b656e2063616e6e6f74206265207a65726f60601b604482015290519081900360640190fd5b600580546001600160a01b0319166001600160a01b03831617905560008590556001849055600283905560048290558315158061034a575060025415155b1561039157600154600254116103915760405162461bcd60e51b815260040180806020018281038252602381526020018061056a6023913960400191505060405180910390fd5b60055460408051630981b24d60e41b81526004810185905290516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156103dd57600080fd5b505afa1580156103f1573d6000803e3d6000fd5b505050506040513d602081101561040757600080fd5b50516003555050505050565b60005481565b6005546001600160a01b031681565b60008261043757506000610484565b8282028284828161044457fe5b04146104815760405162461bcd60e51b815260040180806020018281038252602181526020018061058d6021913960400191505060405180910390fd5b90505b92915050565b600061048183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836105535760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610518578181015183820152602001610500565b50505050905090810190601f1680156105455780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161055f57fe5b049594505050505056fe636c61696d696e67537461727454696d65203e20636c61696d696e67456e6454696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220462fde90ee139f5ea564c76d1493aaa7a8aa002219ffdd5f1f48e049f31d685c64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063cba9794a1161005b578063cba9794a146100dd578063ccd65296146100e5578063ed1ff6d814610125578063fc0c546a1461012d57610088565b806350480fd21461008d5780635dd15cc5146100a757806370a08231146100af578063c6e5bc30146100d5575b600080fd5b610095610151565b60408051918252519081900360200190f35b610095610157565b610095600480360360208110156100c557600080fd5b50356001600160a01b031661015d565b610095610250565b610095610256565b610123600480360360a08110156100fb57600080fd5b50803590602081013590604081013590606081013590608001356001600160a01b031661025c565b005b610095610413565b610135610419565b604080516001600160a01b039092168252519081900360200190f35b60015481565b60045481565b60006001546000141580610172575060025415155b801561018b57506002544210158061018b575060015442105b156101985750600061024b565b610248600354610242600054600560009054906101000a90046001600160a01b03166001600160a01b0316634ee2cd7e876004546040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b15801561021057600080fd5b505afa158015610224573d6000803e3d6000fd5b505050506040513d602081101561023a57600080fd5b505190610428565b9061048a565b90505b919050565b60035481565b60025481565b6005546001600160a01b0316156102ba576040805162461bcd60e51b815260206004820152601b60248201527f63616e2062652063616c6c6564206f6e6c79206f6e652074696d650000000000604482015290519081900360640190fd5b6001600160a01b03811661030c576040805162461bcd60e51b8152602060048201526014602482015273746f6b656e2063616e6e6f74206265207a65726f60601b604482015290519081900360640190fd5b600580546001600160a01b0319166001600160a01b03831617905560008590556001849055600283905560048290558315158061034a575060025415155b1561039157600154600254116103915760405162461bcd60e51b815260040180806020018281038252602381526020018061056a6023913960400191505060405180910390fd5b60055460408051630981b24d60e41b81526004810185905290516001600160a01b039092169163981b24d091602480820192602092909190829003018186803b1580156103dd57600080fd5b505afa1580156103f1573d6000803e3d6000fd5b505050506040513d602081101561040757600080fd5b50516003555050505050565b60005481565b6005546001600160a01b031681565b60008261043757506000610484565b8282028284828161044457fe5b04146104815760405162461bcd60e51b815260040180806020018281038252602181526020018061058d6021913960400191505060405180910390fd5b90505b92915050565b600061048183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836105535760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610518578181015183820152602001610500565b50505050905090810190601f1680156105455780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50600083858161055f57fe5b049594505050505056fe636c61696d696e67537461727454696d65203e20636c61696d696e67456e6454696d65536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220462fde90ee139f5ea564c76d1493aaa7a8aa002219ffdd5f1f48e049f31d685c64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/OpenZeppelinUpgradesAddress.json b/contracts/0.1.2-rc.8/OpenZeppelinUpgradesAddress.json new file mode 100644 index 00000000..e49515c0 --- /dev/null +++ b/contracts/0.1.2-rc.8/OpenZeppelinUpgradesAddress.json @@ -0,0 +1,6 @@ +{ + "contractName": "OpenZeppelinUpgradesAddress", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212206940a000a28506a3d15720f5b6f7eac0606b1ec4be0bc9a5741f2b0354db4fd164736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212206940a000a28506a3d15720f5b6f7eac0606b1ec4be0bc9a5741f2b0354db4fd164736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/OpenZeppelinUpgradesOwnable.json b/contracts/0.1.2-rc.8/OpenZeppelinUpgradesOwnable.json new file mode 100644 index 00000000..5c077240 --- /dev/null +++ b/contracts/0.1.2-rc.8/OpenZeppelinUpgradesOwnable.json @@ -0,0 +1,72 @@ +{ + "contractName": "OpenZeppelinUpgradesOwnable", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Ownable.json b/contracts/0.1.2-rc.8/Ownable.json new file mode 100644 index 00000000..37c1735c --- /dev/null +++ b/contracts/0.1.2-rc.8/Ownable.json @@ -0,0 +1,3230 @@ +{ + "contractName": "Ownable", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "metadata": "{\"compiler\":{\"version\":\"0.5.15+commit.6a57276f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. * This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be aplied to your functions to restrict their use to the owner.\",\"methods\":{\"initialize(address)\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"isOwner()\":{\"details\":\"Returns true if the caller is the current owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol\":{\"keccak256\":\"0x0d4306da5305cb78f09c70c18ec86dbc66f22fa5ade90edc20e1ab88e16d4d10\",\"urls\":[\"bzz-raw://c89dee1b8e96cb83f529b8b5c93be6b420c1913363a3fed01241942f08cc968f\",\"dweb:/ipfs/QmfWWwzg9hah3YwZRFWvAwq91HLjCHkKnxXqP6uLGURUou\"]},\"@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xd7e8ab76fa35c4d8d35a06a6ed538cadab8b75a1aa00594ced1568b2c0cadde3\",\"urls\":[\"bzz-raw://a3f816aa3e6161b4cf882ad34755673848d835f7fb964db49bcef9df14570cef\",\"dweb:/ipfs/QmQACSH1W7pKQnqTAqpuEP8ychp3PvosfnyondLaLE1nVq\"]},\"@openzeppelin/upgrades/contracts/Initializable.sol\":{\"keccak256\":\"0xf79d9851c085aa8412e87d7a26d3485488fe12538ecb4e317ce41fc1f2c3a16a\",\"urls\":[\"bzz-raw://6af1a35ad6aed2169ce9f44095438b3192cd6066903908f769d5c49a06a0caf8\",\"dweb:/ipfs/QmaH41CwJ7WrMQwSnbfCKuL2pd8bxF7sbGSLPZb6JaHBFF\"]}},\"version\":1}", + "bytecode": "0x6080604052610455806100136000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b146100665780638f32d59b1461008a578063c4d66de8146100a6578063f2fde38b146100cc575b600080fd5b6100646100f2565b005b61006e610195565b604080516001600160a01b039092168252519081900360200190f35b6100926101a4565b604080519115158252519081900360200190f35b610064600480360360208110156100bc57600080fd5b50356001600160a01b03166101ca565b610064600480360360208110156100e257600080fd5b50356001600160a01b03166102bc565b6100fa6101a4565b61014b576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b6033546001600160a01b031690565b6033546000906001600160a01b03166101bb610321565b6001600160a01b031614905090565b600054610100900460ff16806101e357506101e3610325565b806101f1575060005460ff16155b61022c5760405162461bcd60e51b815260040180806020018281038252602e8152602001806103f3602e913960400191505060405180910390fd5b600054610100900460ff16158015610257576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a380156102b8576000805461ff00191690555b5050565b6102c46101a4565b610315576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61031e8161032b565b50565b3390565b303b1590565b6001600160a01b0381166103705760405162461bcd60e51b81526004018080602001828103825260268152602001806103cd6026913960400191505060405180910390fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a265627a7a723158208cde8448f5a8d40e7c588e071b7534a10a0075e5720fce1084d50383ca4da02d64736f6c634300050f0032", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c8063715018a61461005c5780638da5cb5b146100665780638f32d59b1461008a578063c4d66de8146100a6578063f2fde38b146100cc575b600080fd5b6100646100f2565b005b61006e610195565b604080516001600160a01b039092168252519081900360200190f35b6100926101a4565b604080519115158252519081900360200190f35b610064600480360360208110156100bc57600080fd5b50356001600160a01b03166101ca565b610064600480360360208110156100e257600080fd5b50356001600160a01b03166102bc565b6100fa6101a4565b61014b576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380546001600160a01b0319169055565b6033546001600160a01b031690565b6033546000906001600160a01b03166101bb610321565b6001600160a01b031614905090565b600054610100900460ff16806101e357506101e3610325565b806101f1575060005460ff16155b61022c5760405162461bcd60e51b815260040180806020018281038252602e8152602001806103f3602e913960400191505060405180910390fd5b600054610100900460ff16158015610257576000805460ff1961ff0019909116610100171660011790555b603380546001600160a01b0319166001600160a01b0384811691909117918290556040519116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a380156102b8576000805461ff00191690555b5050565b6102c46101a4565b610315576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61031e8161032b565b50565b3390565b303b1590565b6001600160a01b0381166103705760405162461bcd60e51b81526004018080602001828103825260268152602001806103cd6026913960400191505060405180910390fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380546001600160a01b0319166001600160a01b039290921691909117905556fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a265627a7a723158208cde8448f5a8d40e7c588e071b7534a10a0075e5720fce1084d50383ca4da02d64736f6c634300050f0032", + "sourceMap": "477:2026:3:-;;;;;;;;;", + "deployedSourceMap": "477:2026:3:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;477:2026:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1746:137;;;:::i;:::-;;959:77;;;:::i;:::-;;;;-1:-1:-1;;;;;959:77:3;;;;;;;;;;;;;;1310:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;741:142;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;741:142:3;-1:-1:-1;;;;;741:142:3;;:::i;2032:107::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2032:107:3;-1:-1:-1;;;;;2032:107:3;;:::i;1746:137::-;1163:9;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;1155:54:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1828:6;;1807:40;;1844:1;;-1:-1:-1;;;;;1828:6:3;;1807:40;;1844:1;;1807:40;1857:6;:19;;-1:-1:-1;;;;;;1857:19:3;;;1746:137::o;959:77::-;1023:6;;-1:-1:-1;;;;;1023:6:3;959:77;:::o;1310:92::-;1389:6;;1350:4;;-1:-1:-1;;;;;1389:6:3;1373:12;:10;:12::i;:::-;-1:-1:-1;;;;;1373:22:3;;1366:29;;1310:92;:::o;741:142::-;1024:12:4;;;;;;;;:31;;;1040:15;:13;:15::i;:::-;1024:47;;;-1:-1:-1;1060:11:4;;;;1059:12;1024:47;1016:106;;;;-1:-1:-1;;;1016:106:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1129:19;1152:12;;;;;;1151:13;1170:80;;;;1198:12;:19;;-1:-1:-1;;;;1198:19:4;;;;;1225:18;1213:4;1225:18;;;1170:80;806:6:3;:15;;-1:-1:-1;;;;;;806:15:3;-1:-1:-1;;;;;806:15:3;;;;;;;;;;;836:40;;869:6;;;-1:-1:-1;;836:40:3;;-1:-1:-1;;836:40:3;1268:14:4;1264:55;;;1307:5;1292:20;;-1:-1:-1;;1292:20:4;;;1264:55;741:142:3;;:::o;2032:107::-;1163:9;:7;:9::i;:::-;1155:54;;;;;-1:-1:-1;;;1155:54:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2104:28;2123:8;2104:18;:28::i;:::-;2032:107;:::o;791:88:2:-;862:10;791:88;:::o;1409:467:4:-;1842:7;1830:20;1864:7;1409:467;:::o;2240:225:3:-;-1:-1:-1;;;;;2313:22:3;;2305:73;;;;-1:-1:-1;;;2305:73:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2414:6;;2393:38;;-1:-1:-1;;;;;2393:38:3;;;;2414:6;;2393:38;;2414:6;;2393:38;2441:6;:17;;-1:-1:-1;;;;;;2441:17:3;-1:-1:-1;;;;;2441:17:3;;;;;;;;;;2240:225::o", + "source": "pragma solidity ^0.5.0;\n\nimport \"@openzeppelin/upgrades/contracts/Initializable.sol\";\n\nimport \"../GSN/Context.sol\";\n\n/**\n * @dev Contract module which provides a basic access control mechanism, where\n * there is an account (an owner) that can be granted exclusive access to\n * specific functions.\n *\n * This module is used through inheritance. It will make available the modifier\n * `onlyOwner`, which can be aplied to your functions to restrict their use to\n * the owner.\n */\ncontract Ownable is Initializable, Context {\n address private _owner;\n\n event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n\n /**\n * @dev Initializes the contract setting the deployer as the initial owner.\n */\n function initialize(address sender) public initializer {\n _owner = sender;\n emit OwnershipTransferred(address(0), _owner);\n }\n\n /**\n * @dev Returns the address of the current owner.\n */\n function owner() public view returns (address) {\n return _owner;\n }\n\n /**\n * @dev Throws if called by any account other than the owner.\n */\n modifier onlyOwner() {\n require(isOwner(), \"Ownable: caller is not the owner\");\n _;\n }\n\n /**\n * @dev Returns true if the caller is the current owner.\n */\n function isOwner() public view returns (bool) {\n return _msgSender() == _owner;\n }\n\n /**\n * @dev Leaves the contract without owner. It will not be possible to call\n * `onlyOwner` functions anymore. Can only be called by the current owner.\n *\n * > Note: Renouncing ownership will leave the contract without an owner,\n * thereby removing any functionality that is only available to the owner.\n */\n function renounceOwnership() public onlyOwner {\n emit OwnershipTransferred(_owner, address(0));\n _owner = address(0);\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n * Can only be called by the current owner.\n */\n function transferOwnership(address newOwner) public onlyOwner {\n _transferOwnership(newOwner);\n }\n\n /**\n * @dev Transfers ownership of the contract to a new account (`newOwner`).\n */\n function _transferOwnership(address newOwner) internal {\n require(newOwner != address(0), \"Ownable: new owner is the zero address\");\n emit OwnershipTransferred(_owner, newOwner);\n _owner = newOwner;\n }\n\n uint256[50] private ______gap;\n}\n", + "sourcePath": "@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol", + "ast": { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol", + "exportedSymbols": { + "Ownable": [ + 294 + ] + }, + "id": 295, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 172, + "literals": [ + "solidity", + "^", + "0.5", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "0:23:3" + }, + { + "absolutePath": "@openzeppelin/upgrades/contracts/Initializable.sol", + "file": "@openzeppelin/upgrades/contracts/Initializable.sol", + "id": 173, + "nodeType": "ImportDirective", + "scope": 295, + "sourceUnit": 358, + "src": "25:60:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol", + "file": "../GSN/Context.sol", + "id": 174, + "nodeType": "ImportDirective", + "scope": 295, + "sourceUnit": 171, + "src": "87:28:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 175, + "name": "Initializable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 357, + "src": "497:13:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Initializable_$357", + "typeString": "contract Initializable" + } + }, + "id": 176, + "nodeType": "InheritanceSpecifier", + "src": "497:13:3" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 177, + "name": "Context", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 170, + "src": "512:7:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Context_$170", + "typeString": "contract Context" + } + }, + "id": 178, + "nodeType": "InheritanceSpecifier", + "src": "512:7:3" + } + ], + "contractDependencies": [ + 170, + 357 + ], + "contractKind": "contract", + "documentation": "@dev Contract module which provides a basic access control mechanism, where\nthere is an account (an owner) that can be granted exclusive access to\nspecific functions.\n * This module is used through inheritance. It will make available the modifier\n`onlyOwner`, which can be aplied to your functions to restrict their use to\nthe owner.", + "fullyImplemented": true, + "id": 294, + "linearizedBaseContracts": [ + 294, + 170, + 357 + ], + "name": "Ownable", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 180, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 294, + "src": "526:22:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "526:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 186, + "name": "OwnershipTransferred", + "nodeType": "EventDefinition", + "parameters": { + "id": 185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 182, + "indexed": true, + "name": "previousOwner", + "nodeType": "VariableDeclaration", + "scope": 186, + "src": "582:29:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 181, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "582:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 184, + "indexed": true, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 186, + "src": "613:24:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 183, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "613:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "581:57:3" + }, + "src": "555:84:3" + }, + { + "body": { + "id": 204, + "nodeType": "Block", + "src": "796:87:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 193, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "806:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 194, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 188, + "src": "815:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "806:15:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 196, + "nodeType": "ExpressionStatement", + "src": "806:15:3" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "865:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "857:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "857:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "argumentTypes": null, + "id": 201, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "869:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 197, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "836:20:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "836:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 203, + "nodeType": "EmitStatement", + "src": "831:45:3" + } + ] + }, + "documentation": "@dev Initializes the contract setting the deployer as the initial owner.", + "id": 205, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 191, + "modifierName": { + "argumentTypes": null, + "id": 190, + "name": "initializer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 338, + "src": "784:11:3", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "784:11:3" + } + ], + "name": "initialize", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 188, + "name": "sender", + "nodeType": "VariableDeclaration", + "scope": 205, + "src": "761:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "761:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "760:16:3" + }, + "returnParameters": { + "id": 192, + "nodeType": "ParameterList", + "parameters": [], + "src": "796:0:3" + }, + "scope": 294, + "src": "741:142:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 212, + "nodeType": "Block", + "src": "1006:30:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 210, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1023:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 209, + "id": 211, + "nodeType": "Return", + "src": "1016:13:3" + } + ] + }, + "documentation": "@dev Returns the address of the current owner.", + "id": 213, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "owner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 206, + "nodeType": "ParameterList", + "parameters": [], + "src": "973:2:3" + }, + "returnParameters": { + "id": 209, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 208, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 213, + "src": "997:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 207, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "997:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "996:9:3" + }, + "scope": 294, + "src": "959:77:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 222, + "nodeType": "Block", + "src": "1145:82:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 216, + "name": "isOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 234, + "src": "1163:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1163:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "id": 218, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1174:34:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "typeString": "literal_string \"Ownable: caller is not the owner\"" + }, + "value": "Ownable: caller is not the owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "typeString": "literal_string \"Ownable: caller is not the owner\"" + } + ], + "id": 215, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 375, + 376 + ], + "referencedDeclaration": 376, + "src": "1155:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1155:54:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 220, + "nodeType": "ExpressionStatement", + "src": "1155:54:3" + }, + { + "id": 221, + "nodeType": "PlaceholderStatement", + "src": "1219:1:3" + } + ] + }, + "documentation": "@dev Throws if called by any account other than the owner.", + "id": 223, + "name": "onlyOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 214, + "nodeType": "ParameterList", + "parameters": [], + "src": "1142:2:3" + }, + "src": "1124:103:3", + "visibility": "internal" + }, + { + "body": { + "id": 233, + "nodeType": "Block", + "src": "1356:46:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 228, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 158, + "src": "1373:10:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1373:12:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 230, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1389:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1373:22:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 227, + "id": 232, + "nodeType": "Return", + "src": "1366:29:3" + } + ] + }, + "documentation": "@dev Returns true if the caller is the current owner.", + "id": 234, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isOwner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 224, + "nodeType": "ParameterList", + "parameters": [], + "src": "1326:2:3" + }, + "returnParameters": { + "id": 227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 226, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 234, + "src": "1350:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 225, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1350:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1349:6:3" + }, + "scope": 294, + "src": "1310:92:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 252, + "nodeType": "Block", + "src": "1792:91:3", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 240, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1828:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1844:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1836:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 243, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1836:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 239, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "1807:20:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1807:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 245, + "nodeType": "EmitStatement", + "src": "1802:45:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 246, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1857:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 248, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1874:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1866:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 249, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1866:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "1857:19:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 251, + "nodeType": "ExpressionStatement", + "src": "1857:19:3" + } + ] + }, + "documentation": "@dev Leaves the contract without owner. It will not be possible to call\n`onlyOwner` functions anymore. Can only be called by the current owner.\n * > Note: Renouncing ownership will leave the contract without an owner,\nthereby removing any functionality that is only available to the owner.", + "id": 253, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 237, + "modifierName": { + "argumentTypes": null, + "id": 236, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "1782:9:3", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1782:9:3" + } + ], + "name": "renounceOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 235, + "nodeType": "ParameterList", + "parameters": [], + "src": "1772:2:3" + }, + "returnParameters": { + "id": 238, + "nodeType": "ParameterList", + "parameters": [], + "src": "1792:0:3" + }, + "scope": 294, + "src": "1746:137:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 264, + "nodeType": "Block", + "src": "2094:45:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 261, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 255, + "src": "2123:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 260, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 289, + "src": "2104:18:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2104:28:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 263, + "nodeType": "ExpressionStatement", + "src": "2104:28:3" + } + ] + }, + "documentation": "@dev Transfers ownership of the contract to a new account (`newOwner`).\nCan only be called by the current owner.", + "id": 265, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 258, + "modifierName": { + "argumentTypes": null, + "id": 257, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "2084:9:3", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "2084:9:3" + } + ], + "name": "transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 256, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 255, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 265, + "src": "2059:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 254, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2059:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2058:18:3" + }, + "returnParameters": { + "id": 259, + "nodeType": "ParameterList", + "parameters": [], + "src": "2094:0:3" + }, + "scope": 294, + "src": "2032:107:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 288, + "nodeType": "Block", + "src": "2295:170:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 271, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 267, + "src": "2313:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2333:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2325:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2325:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "2313:22:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2337:40:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "typeString": "literal_string \"Ownable: new owner is the zero address\"" + }, + "value": "Ownable: new owner is the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "typeString": "literal_string \"Ownable: new owner is the zero address\"" + } + ], + "id": 270, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 375, + 376 + ], + "referencedDeclaration": 376, + "src": "2305:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 277, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2305:73:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 278, + "nodeType": "ExpressionStatement", + "src": "2305:73:3" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 280, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "2414:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 281, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 267, + "src": "2422:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 279, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "2393:20:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2393:38:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 283, + "nodeType": "EmitStatement", + "src": "2388:43:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 284, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "2441:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 285, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 267, + "src": "2450:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2441:17:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 287, + "nodeType": "ExpressionStatement", + "src": "2441:17:3" + } + ] + }, + "documentation": "@dev Transfers ownership of the contract to a new account (`newOwner`).", + "id": 289, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 268, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 267, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 289, + "src": "2268:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 266, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2268:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2267:18:3" + }, + "returnParameters": { + "id": 269, + "nodeType": "ParameterList", + "parameters": [], + "src": "2295:0:3" + }, + "scope": 294, + "src": "2240:225:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 293, + "name": "______gap", + "nodeType": "VariableDeclaration", + "scope": 294, + "src": "2471:29:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$50_storage", + "typeString": "uint256[50]" + }, + "typeName": { + "baseType": { + "id": 290, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2471:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 292, + "length": { + "argumentTypes": null, + "hexValue": "3530", + "id": 291, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2479:2:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + }, + "value": "50" + }, + "nodeType": "ArrayTypeName", + "src": "2471:11:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$50_storage_ptr", + "typeString": "uint256[50]" + } + }, + "value": null, + "visibility": "private" + } + ], + "scope": 295, + "src": "477:2026:3" + } + ], + "src": "0:2504:3" + }, + "legacyAST": { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/ownership/Ownable.sol", + "exportedSymbols": { + "Ownable": [ + 294 + ] + }, + "id": 295, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 172, + "literals": [ + "solidity", + "^", + "0.5", + ".0" + ], + "nodeType": "PragmaDirective", + "src": "0:23:3" + }, + { + "absolutePath": "@openzeppelin/upgrades/contracts/Initializable.sol", + "file": "@openzeppelin/upgrades/contracts/Initializable.sol", + "id": 173, + "nodeType": "ImportDirective", + "scope": 295, + "sourceUnit": 358, + "src": "25:60:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "@openzeppelin/contracts-ethereum-package/contracts/GSN/Context.sol", + "file": "../GSN/Context.sol", + "id": 174, + "nodeType": "ImportDirective", + "scope": 295, + "sourceUnit": 171, + "src": "87:28:3", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 175, + "name": "Initializable", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 357, + "src": "497:13:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Initializable_$357", + "typeString": "contract Initializable" + } + }, + "id": 176, + "nodeType": "InheritanceSpecifier", + "src": "497:13:3" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 177, + "name": "Context", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 170, + "src": "512:7:3", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Context_$170", + "typeString": "contract Context" + } + }, + "id": 178, + "nodeType": "InheritanceSpecifier", + "src": "512:7:3" + } + ], + "contractDependencies": [ + 170, + 357 + ], + "contractKind": "contract", + "documentation": "@dev Contract module which provides a basic access control mechanism, where\nthere is an account (an owner) that can be granted exclusive access to\nspecific functions.\n * This module is used through inheritance. It will make available the modifier\n`onlyOwner`, which can be aplied to your functions to restrict their use to\nthe owner.", + "fullyImplemented": true, + "id": 294, + "linearizedBaseContracts": [ + 294, + 170, + 357 + ], + "name": "Ownable", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 180, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 294, + "src": "526:22:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "526:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "private" + }, + { + "anonymous": false, + "documentation": null, + "id": 186, + "name": "OwnershipTransferred", + "nodeType": "EventDefinition", + "parameters": { + "id": 185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 182, + "indexed": true, + "name": "previousOwner", + "nodeType": "VariableDeclaration", + "scope": 186, + "src": "582:29:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 181, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "582:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 184, + "indexed": true, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 186, + "src": "613:24:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 183, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "613:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "581:57:3" + }, + "src": "555:84:3" + }, + { + "body": { + "id": 204, + "nodeType": "Block", + "src": "796:87:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 193, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "806:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 194, + "name": "sender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 188, + "src": "815:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "806:15:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 196, + "nodeType": "ExpressionStatement", + "src": "806:15:3" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "865:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "857:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "857:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + { + "argumentTypes": null, + "id": 201, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "869:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 197, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "836:20:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "836:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 203, + "nodeType": "EmitStatement", + "src": "831:45:3" + } + ] + }, + "documentation": "@dev Initializes the contract setting the deployer as the initial owner.", + "id": 205, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 191, + "modifierName": { + "argumentTypes": null, + "id": 190, + "name": "initializer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 338, + "src": "784:11:3", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "784:11:3" + } + ], + "name": "initialize", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 188, + "name": "sender", + "nodeType": "VariableDeclaration", + "scope": 205, + "src": "761:14:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "761:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "760:16:3" + }, + "returnParameters": { + "id": 192, + "nodeType": "ParameterList", + "parameters": [], + "src": "796:0:3" + }, + "scope": 294, + "src": "741:142:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 212, + "nodeType": "Block", + "src": "1006:30:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 210, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1023:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 209, + "id": 211, + "nodeType": "Return", + "src": "1016:13:3" + } + ] + }, + "documentation": "@dev Returns the address of the current owner.", + "id": 213, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "owner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 206, + "nodeType": "ParameterList", + "parameters": [], + "src": "973:2:3" + }, + "returnParameters": { + "id": 209, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 208, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 213, + "src": "997:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 207, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "997:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "996:9:3" + }, + "scope": 294, + "src": "959:77:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 222, + "nodeType": "Block", + "src": "1145:82:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 216, + "name": "isOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 234, + "src": "1163:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1163:9:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572", + "id": 218, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1174:34:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "typeString": "literal_string \"Ownable: caller is not the owner\"" + }, + "value": "Ownable: caller is not the owner" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe", + "typeString": "literal_string \"Ownable: caller is not the owner\"" + } + ], + "id": 215, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 375, + 376 + ], + "referencedDeclaration": 376, + "src": "1155:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1155:54:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 220, + "nodeType": "ExpressionStatement", + "src": "1155:54:3" + }, + { + "id": 221, + "nodeType": "PlaceholderStatement", + "src": "1219:1:3" + } + ] + }, + "documentation": "@dev Throws if called by any account other than the owner.", + "id": 223, + "name": "onlyOwner", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 214, + "nodeType": "ParameterList", + "parameters": [], + "src": "1142:2:3" + }, + "src": "1124:103:3", + "visibility": "internal" + }, + { + "body": { + "id": 233, + "nodeType": "Block", + "src": "1356:46:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 228, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 158, + "src": "1373:10:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1373:12:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "id": 230, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1389:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1373:22:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 227, + "id": 232, + "nodeType": "Return", + "src": "1366:29:3" + } + ] + }, + "documentation": "@dev Returns true if the caller is the current owner.", + "id": 234, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isOwner", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 224, + "nodeType": "ParameterList", + "parameters": [], + "src": "1326:2:3" + }, + "returnParameters": { + "id": 227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 226, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 234, + "src": "1350:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 225, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1350:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1349:6:3" + }, + "scope": 294, + "src": "1310:92:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 252, + "nodeType": "Block", + "src": "1792:91:3", + "statements": [ + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 240, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1828:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1844:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1836:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 243, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1836:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + ], + "id": 239, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "1807:20:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1807:40:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 245, + "nodeType": "EmitStatement", + "src": "1802:45:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 246, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "1857:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 248, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1874:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1866:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 249, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1866:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "1857:19:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 251, + "nodeType": "ExpressionStatement", + "src": "1857:19:3" + } + ] + }, + "documentation": "@dev Leaves the contract without owner. It will not be possible to call\n`onlyOwner` functions anymore. Can only be called by the current owner.\n * > Note: Renouncing ownership will leave the contract without an owner,\nthereby removing any functionality that is only available to the owner.", + "id": 253, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 237, + "modifierName": { + "argumentTypes": null, + "id": 236, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "1782:9:3", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "1782:9:3" + } + ], + "name": "renounceOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 235, + "nodeType": "ParameterList", + "parameters": [], + "src": "1772:2:3" + }, + "returnParameters": { + "id": 238, + "nodeType": "ParameterList", + "parameters": [], + "src": "1792:0:3" + }, + "scope": 294, + "src": "1746:137:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 264, + "nodeType": "Block", + "src": "2094:45:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 261, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 255, + "src": "2123:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 260, + "name": "_transferOwnership", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 289, + "src": "2104:18:3", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$", + "typeString": "function (address)" + } + }, + "id": 262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2104:28:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 263, + "nodeType": "ExpressionStatement", + "src": "2104:28:3" + } + ] + }, + "documentation": "@dev Transfers ownership of the contract to a new account (`newOwner`).\nCan only be called by the current owner.", + "id": 265, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": null, + "id": 258, + "modifierName": { + "argumentTypes": null, + "id": 257, + "name": "onlyOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 223, + "src": "2084:9:3", + "typeDescriptions": { + "typeIdentifier": "t_modifier$__$", + "typeString": "modifier ()" + } + }, + "nodeType": "ModifierInvocation", + "src": "2084:9:3" + } + ], + "name": "transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 256, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 255, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 265, + "src": "2059:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 254, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2059:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2058:18:3" + }, + "returnParameters": { + "id": 259, + "nodeType": "ParameterList", + "parameters": [], + "src": "2094:0:3" + }, + "scope": 294, + "src": "2032:107:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 288, + "nodeType": "Block", + "src": "2295:170:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 271, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 267, + "src": "2313:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2333:1:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2325:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2325:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "src": "2313:22:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "argumentTypes": null, + "hexValue": "4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373", + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2337:40:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "typeString": "literal_string \"Ownable: new owner is the zero address\"" + }, + "value": "Ownable: new owner is the zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe", + "typeString": "literal_string \"Ownable: new owner is the zero address\"" + } + ], + "id": 270, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 375, + 376 + ], + "referencedDeclaration": 376, + "src": "2305:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 277, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2305:73:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 278, + "nodeType": "ExpressionStatement", + "src": "2305:73:3" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 280, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "2414:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 281, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 267, + "src": "2422:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 279, + "name": "OwnershipTransferred", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "2393:20:3", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2393:38:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 283, + "nodeType": "EmitStatement", + "src": "2388:43:3" + }, + { + "expression": { + "argumentTypes": null, + "id": 286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 284, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 180, + "src": "2441:6:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 285, + "name": "newOwner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 267, + "src": "2450:8:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2441:17:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 287, + "nodeType": "ExpressionStatement", + "src": "2441:17:3" + } + ] + }, + "documentation": "@dev Transfers ownership of the contract to a new account (`newOwner`).", + "id": 289, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_transferOwnership", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 268, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 267, + "name": "newOwner", + "nodeType": "VariableDeclaration", + "scope": 289, + "src": "2268:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 266, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2268:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2267:18:3" + }, + "returnParameters": { + "id": 269, + "nodeType": "ParameterList", + "parameters": [], + "src": "2295:0:3" + }, + "scope": 294, + "src": "2240:225:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 293, + "name": "______gap", + "nodeType": "VariableDeclaration", + "scope": 294, + "src": "2471:29:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$50_storage", + "typeString": "uint256[50]" + }, + "typeName": { + "baseType": { + "id": 290, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2471:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 292, + "length": { + "argumentTypes": null, + "hexValue": "3530", + "id": 291, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2479:2:3", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + }, + "value": "50" + }, + "nodeType": "ArrayTypeName", + "src": "2471:11:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$50_storage_ptr", + "typeString": "uint256[50]" + } + }, + "value": null, + "visibility": "private" + } + ], + "scope": 295, + "src": "477:2026:3" + } + ], + "src": "0:2504:3" + }, + "compiler": { + "name": "solc", + "version": "0.5.15+commit.6a57276f.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.0.20", + "updatedAt": "2019-12-22T14:03:18.970Z", + "devdoc": { + "details": "Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. * This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be aplied to your functions to restrict their use to the owner.", + "methods": { + "initialize(address)": { + "details": "Initializes the contract setting the deployer as the initial owner." + }, + "isOwner()": { + "details": "Returns true if the caller is the current owner." + }, + "owner()": { + "details": "Returns the address of the current owner." + }, + "renounceOwnership()": { + "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. * > Note: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner." + }, + "transferOwnership(address)": { + "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." + } + } + }, + "userdoc": { + "methods": {} + } +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/OwnableUpgradeSafe.json b/contracts/0.1.2-rc.8/OwnableUpgradeSafe.json new file mode 100644 index 00000000..fcae07a5 --- /dev/null +++ b/contracts/0.1.2-rc.8/OwnableUpgradeSafe.json @@ -0,0 +1,59 @@ +{ + "contractName": "OwnableUpgradeSafe", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506102c8806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063715018a6146100465780638da5cb5b14610050578063f2fde38b14610074575b600080fd5b61004e61009a565b005b61005861014e565b604080516001600160a01b039092168252519081900360200190f35b61004e6004803603602081101561008a57600080fd5b50356001600160a01b031661015d565b6100a2610268565b6065546001600160a01b03908116911614610104576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b610165610268565b6065546001600160a01b039081169116146101c7576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661020c5760405162461bcd60e51b815260040180806020018281038252602681526020018061026d6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a264697066735822122061ca351f77bc207360a99a38d2aec021e9a5ec3f1b89daf351e3b70812a5cb7764736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063715018a6146100465780638da5cb5b14610050578063f2fde38b14610074575b600080fd5b61004e61009a565b005b61005861014e565b604080516001600160a01b039092168252519081900360200190f35b61004e6004803603602081101561008a57600080fd5b50356001600160a01b031661015d565b6100a2610268565b6065546001600160a01b03908116911614610104576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b610165610268565b6065546001600160a01b039081169116146101c7576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661020c5760405162461bcd60e51b815260040180806020018281038252602681526020018061026d6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b339056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a264697066735822122061ca351f77bc207360a99a38d2aec021e9a5ec3f1b89daf351e3b70812a5cb7764736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Package.json b/contracts/0.1.2-rc.8/Package.json new file mode 100644 index 00000000..d56e74a6 --- /dev/null +++ b/contracts/0.1.2-rc.8/Package.json @@ -0,0 +1,234 @@ +{ + "contractName": "Package", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64[3]", + "name": "semanticVersion", + "type": "uint64[3]" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "contentURI", + "type": "bytes" + } + ], + "name": "VersionAdded", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "semanticVersion", + "type": "uint64[3]" + }, + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "bytes", + "name": "contentURI", + "type": "bytes" + } + ], + "name": "addVersion", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "semanticVersion", + "type": "uint64[3]" + } + ], + "name": "getContract", + "outputs": [ + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getLatest", + "outputs": [ + { + "internalType": "uint64[3]", + "name": "semanticVersion", + "type": "uint64[3]" + }, + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "bytes", + "name": "contentURI", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "major", + "type": "uint64" + } + ], + "name": "getLatestByMajor", + "outputs": [ + { + "internalType": "uint64[3]", + "name": "semanticVersion", + "type": "uint64[3]" + }, + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "bytes", + "name": "contentURI", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "semanticVersion", + "type": "uint64[3]" + } + ], + "name": "getVersion", + "outputs": [ + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "bytes", + "name": "contentURI", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "semanticVersion", + "type": "uint64[3]" + } + ], + "name": "hasVersion", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isOwner", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50600080546001600160a01b03191633178082556040516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610e44806100696000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063c356d5b011610066578063c356d5b014610191578063c36af46014610268578063d6ef25d514610270578063e30329e914610359578063f2fde38b146104335761009e565b80631df40eaa146100a357806335ce401614610111578063715018a6146101775780638da5cb5b146101815780638f32d59b14610189575b600080fd5b6100f5600480360360608110156100b957600080fd5b81019080806060019060038060200260405190810160405280929190826003602002808284376000920191909152509194506104599350505050565b604080516001600160a01b039092168252519081900360200190f35b6101636004803603606081101561012757600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091945061048d9350505050565b604080519115158252519081900360200190f35b61017f6104c3565b005b6100f561051e565b61016361052d565b6101b7600480360360208110156101a757600080fd5b50356001600160401b031661053e565b6040518084606080838360005b838110156101dc5781810151838201526020016101c4565b50505050905001836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561022b578181015183820152602001610213565b50505050905090810190601f1680156102585780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b6101b761067e565b61017f600480360360a081101561028657600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091946001600160a01b03843516949093909250604081019150602001356401000000008111156102e457600080fd5b8201836020820111156102f657600080fd5b8035906020019184600183028401116401000000008311171561031857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106ac945050505050565b6103ab6004803603606081101561036f57600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600092019190915250919450610a7f9350505050565b60405180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103f75781810151838201526020016103df565b50505050905090810190601f1680156104245780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61017f6004803603602081101561044957600080fd5b50356001600160a01b0316610b50565b6000806001600061046985610b6d565b81526020810191909152604001600020600101546001600160a01b03169392505050565b6000806001600061049d85610b6d565b81526020810191909152604001600020600101546001600160a01b031615159392505050565b6104cb61052d565b6104d457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b610546610c6e565b6001600160401b03821660009081526002602081815260408084205484526001918290528084209182015481516060808201938490529484936001600160a01b039093169290840191908490600390828a855b82829054906101000a90046001600160401b03166001600160401b031681526020019060080190602082600701049283019260010382029150808411610599575050855460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529699508795509350850191508390508280156106695780601f1061063e57610100808354040283529160200191610669565b820191906000526020600020905b81548152906001019060200180831161064c57829003601f168201915b50505050509050935093509350509193909250565b610686610c6e565b6003546000906060906106a1906001600160401b031661053e565b925092509250909192565b6106b461052d565b6106bd57600080fd5b6001600160a01b038216610718576040805162461bcd60e51b815260206004820152601c60248201527f436f6e7472616374206164647265737320697320726571756972656400000000604482015290519081900360640190fd5b6107218361048d565b1561075d5760405162461bcd60e51b815260040180806020018281038252602e815260200180610de1602e913960400191505060405180910390fd5b61076683610bbd565b156107b8576040805162461bcd60e51b815260206004820152601860248201527f56657273696f6e206d757374206265206e6f6e207a65726f0000000000000000604482015290519081900360640190fd5b60006107c384610b6d565b604080516060810182528681526001600160a01b03861660208083019190915281830186905260008481526001909152919091208151929350909161080b9082906003610c8c565b506020828101516001830180546001600160a01b0319166001600160a01b039092169190911790556040830151805161084a9260028501920190610d31565b505084516003549091506001600160401b03908116908216111561088b5784516003805467ffffffffffffffff19166001600160401b039092169190911790555b6020808601516040808801516001600160401b0385166000908152600285528281205481526001909452818420825160608101938490529394919390926109219284916003918390855b82829054906101000a90046001600160401b03166001600160401b0316815260200190600801906020826007010492830192600103820291508084116108d55790505050505050610bbd565b80610940575080546001600160401b03600160401b9091048116908416115b8061097d575080546001600160401b03848116600160401b9092041614801561097d575080546001600160401b03600160801b9091048116908316115b1561099e576001600160401b03841660009081526002602052604090208590555b7fc5b9b96b4952fc60f5a916010c882de0324dd4fdfaa999f9ad6947f55d8427628888886040518084600360200280838360005b838110156109ea5781810151838201526020016109d2565b50505050905001836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a39578181015183820152602001610a21565b50505050905090810190601f168015610a665780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050565b60006060600060016000610a9286610b6d565b81526020808201929092526040908101600020600180820154600280840180548651601f600019968316156101000296909601909116929092049384018790048702820187019095528281529295506001600160a01b031693839190830182828015610b3f5780601f10610b1457610100808354040283529160200191610b3f565b820191906000526020600020905b815481529060010190602001808311610b2257829003601f168201915b505050505090509250925050915091565b610b5861052d565b610b6157600080fd5b610b6a81610c00565b50565b805160208083015160409384015184516001600160c01b031960c095861b81168286015292851b83166028820152931b166030830152825160188184030181526038909201909252805191012090565b80516000906001600160401b0316158015610be3575060208201516001600160401b0316155b8015610bfa575060408201516001600160401b0316155b92915050565b6001600160a01b038116610c1357600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60405180606001604052806003906020820280368337509192915050565b600183019183908215610d215791602002820160005b83821115610cec57835183826101000a8154816001600160401b0302191690836001600160401b031602179055509260200192600801602081600701049283019260010302610ca2565b8015610d1f5782816101000a8154906001600160401b030219169055600801602081600701049283019260010302610cec565b505b50610d2d929150610dab565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610d7257805160ff1916838001178555610d9f565b82800160010185558215610d9f579182015b82811115610d9f578251825591602001919060010190610d84565b50610d2d929150610dcb565b5b80821115610d2d57805467ffffffffffffffff19168155600101610dac565b5b80821115610d2d5760008155600101610dcc56fe476976656e2076657273696f6e20697320616c7265616479207265676973746572656420696e207061636b616765a2646970667358221220b5a20edf92c48a3a8fb2af9b6a08e21b92c5ffd2c270494b6e8b1502075e9c3364736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c8063c356d5b011610066578063c356d5b014610191578063c36af46014610268578063d6ef25d514610270578063e30329e914610359578063f2fde38b146104335761009e565b80631df40eaa146100a357806335ce401614610111578063715018a6146101775780638da5cb5b146101815780638f32d59b14610189575b600080fd5b6100f5600480360360608110156100b957600080fd5b81019080806060019060038060200260405190810160405280929190826003602002808284376000920191909152509194506104599350505050565b604080516001600160a01b039092168252519081900360200190f35b6101636004803603606081101561012757600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091945061048d9350505050565b604080519115158252519081900360200190f35b61017f6104c3565b005b6100f561051e565b61016361052d565b6101b7600480360360208110156101a757600080fd5b50356001600160401b031661053e565b6040518084606080838360005b838110156101dc5781810151838201526020016101c4565b50505050905001836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561022b578181015183820152602001610213565b50505050905090810190601f1680156102585780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b6101b761067e565b61017f600480360360a081101561028657600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091946001600160a01b03843516949093909250604081019150602001356401000000008111156102e457600080fd5b8201836020820111156102f657600080fd5b8035906020019184600183028401116401000000008311171561031857600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106ac945050505050565b6103ab6004803603606081101561036f57600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600092019190915250919450610a7f9350505050565b60405180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103f75781810151838201526020016103df565b50505050905090810190601f1680156104245780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61017f6004803603602081101561044957600080fd5b50356001600160a01b0316610b50565b6000806001600061046985610b6d565b81526020810191909152604001600020600101546001600160a01b03169392505050565b6000806001600061049d85610b6d565b81526020810191909152604001600020600101546001600160a01b031615159392505050565b6104cb61052d565b6104d457600080fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b610546610c6e565b6001600160401b03821660009081526002602081815260408084205484526001918290528084209182015481516060808201938490529484936001600160a01b039093169290840191908490600390828a855b82829054906101000a90046001600160401b03166001600160401b031681526020019060080190602082600701049283019260010382029150808411610599575050855460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529699508795509350850191508390508280156106695780601f1061063e57610100808354040283529160200191610669565b820191906000526020600020905b81548152906001019060200180831161064c57829003601f168201915b50505050509050935093509350509193909250565b610686610c6e565b6003546000906060906106a1906001600160401b031661053e565b925092509250909192565b6106b461052d565b6106bd57600080fd5b6001600160a01b038216610718576040805162461bcd60e51b815260206004820152601c60248201527f436f6e7472616374206164647265737320697320726571756972656400000000604482015290519081900360640190fd5b6107218361048d565b1561075d5760405162461bcd60e51b815260040180806020018281038252602e815260200180610de1602e913960400191505060405180910390fd5b61076683610bbd565b156107b8576040805162461bcd60e51b815260206004820152601860248201527f56657273696f6e206d757374206265206e6f6e207a65726f0000000000000000604482015290519081900360640190fd5b60006107c384610b6d565b604080516060810182528681526001600160a01b03861660208083019190915281830186905260008481526001909152919091208151929350909161080b9082906003610c8c565b506020828101516001830180546001600160a01b0319166001600160a01b039092169190911790556040830151805161084a9260028501920190610d31565b505084516003549091506001600160401b03908116908216111561088b5784516003805467ffffffffffffffff19166001600160401b039092169190911790555b6020808601516040808801516001600160401b0385166000908152600285528281205481526001909452818420825160608101938490529394919390926109219284916003918390855b82829054906101000a90046001600160401b03166001600160401b0316815260200190600801906020826007010492830192600103820291508084116108d55790505050505050610bbd565b80610940575080546001600160401b03600160401b9091048116908416115b8061097d575080546001600160401b03848116600160401b9092041614801561097d575080546001600160401b03600160801b9091048116908316115b1561099e576001600160401b03841660009081526002602052604090208590555b7fc5b9b96b4952fc60f5a916010c882de0324dd4fdfaa999f9ad6947f55d8427628888886040518084600360200280838360005b838110156109ea5781810151838201526020016109d2565b50505050905001836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a39578181015183820152602001610a21565b50505050905090810190601f168015610a665780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a15050505050505050565b60006060600060016000610a9286610b6d565b81526020808201929092526040908101600020600180820154600280840180548651601f600019968316156101000296909601909116929092049384018790048702820187019095528281529295506001600160a01b031693839190830182828015610b3f5780601f10610b1457610100808354040283529160200191610b3f565b820191906000526020600020905b815481529060010190602001808311610b2257829003601f168201915b505050505090509250925050915091565b610b5861052d565b610b6157600080fd5b610b6a81610c00565b50565b805160208083015160409384015184516001600160c01b031960c095861b81168286015292851b83166028820152931b166030830152825160188184030181526038909201909252805191012090565b80516000906001600160401b0316158015610be3575060208201516001600160401b0316155b8015610bfa575060408201516001600160401b0316155b92915050565b6001600160a01b038116610c1357600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60405180606001604052806003906020820280368337509192915050565b600183019183908215610d215791602002820160005b83821115610cec57835183826101000a8154816001600160401b0302191690836001600160401b031602179055509260200192600801602081600701049283019260010302610ca2565b8015610d1f5782816101000a8154906001600160401b030219169055600801602081600701049283019260010302610cec565b505b50610d2d929150610dab565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610d7257805160ff1916838001178555610d9f565b82800160010185558215610d9f579182015b82811115610d9f578251825591602001919060010190610d84565b50610d2d929150610dcb565b5b80821115610d2d57805467ffffffffffffffff19168155600101610dac565b5b80821115610d2d5760008155600101610dcc56fe476976656e2076657273696f6e20697320616c7265616479207265676973746572656420696e207061636b616765a2646970667358221220b5a20edf92c48a3a8fb2af9b6a08e21b92c5ffd2c270494b6e8b1502075e9c3364736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/PolkaCurve.json b/contracts/0.1.2-rc.8/PolkaCurve.json new file mode 100644 index 00000000..18d93bcf --- /dev/null +++ b/contracts/0.1.2-rc.8/PolkaCurve.json @@ -0,0 +1,52 @@ +{ + "contractName": "PolkaCurve", + "abi": [ + { + "inputs": [], + "name": "SUM_OF_SQRTS", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "TOTAL_REPUTATION", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "calc", + "outputs": [ + { + "internalType": "uint256", + "name": "sqrt", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061010f806100206000396000f3fe6080604052348015600f57600080fd5b5060043610603c5760003560e01c806338c9027a1460415780633f4f781c14606d57806344cac103146073575b600080fd5b605b60048036036020811015605557600080fd5b50356079565b60408051918252519081900360200190f35b605b60cb565b605b60d2565b670de0b6b3a7640000810280600260018201045b8281101560b15780925060028182848160a257fe5b04018160aa57fe5b049050608d565b621a3722620c3500840204633b9aca000292505050919050565b621a372281565b620c35008156fea2646970667358221220fc93adcc97d20d25886e76ec6c175359f29c6aabf4afc3e3349862221daec17564736f6c634300060c0033", + "deployedBytecode": "0x6080604052348015600f57600080fd5b5060043610603c5760003560e01c806338c9027a1460415780633f4f781c14606d57806344cac103146073575b600080fd5b605b60048036036020811015605557600080fd5b50356079565b60408051918252519081900360200190f35b605b60cb565b605b60d2565b670de0b6b3a7640000810280600260018201045b8281101560b15780925060028182848160a257fe5b04018160aa57fe5b049050608d565b621a3722620c3500840204633b9aca000292505050919050565b621a372281565b620c35008156fea2646970667358221220fc93adcc97d20d25886e76ec6c175359f29c6aabf4afc3e3349862221daec17564736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/PriceOracleInterface.json b/contracts/0.1.2-rc.8/PriceOracleInterface.json new file mode 100644 index 00000000..adc0bbab --- /dev/null +++ b/contracts/0.1.2-rc.8/PriceOracleInterface.json @@ -0,0 +1,31 @@ +{ + "contractName": "PriceOracleInterface", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "getPrice", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/PriceOracleMock.json b/contracts/0.1.2-rc.8/PriceOracleMock.json new file mode 100644 index 00000000..d2503102 --- /dev/null +++ b/contracts/0.1.2-rc.8/PriceOracleMock.json @@ -0,0 +1,143 @@ +{ + "contractName": "PriceOracleMock", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "getPrice", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "numerator", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "denominator", + "type": "uint256" + } + ], + "name": "setTokenPrice", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "tokenPrices", + "outputs": [ + { + "internalType": "uint256", + "name": "numerator", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "denominator", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506106c0806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80638da5cb5b1161005b5780638da5cb5b146100f1578063c4d66de814610115578063eb1c03161461013b578063f2fde38b1461016d5761007d565b8063204120bc1461008257806341976e09146100c1578063715018a6146100e7575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610193565b6040805192835260208301919091528051918290030190f35b6100a8600480360360208110156100d757600080fd5b50356001600160a01b03166101ac565b6100ef6101f2565b005b6100f96102a6565b604080516001600160a01b039092168252519081900360200190f35b6100ef6004803603602081101561012b57600080fd5b50356001600160a01b03166102b5565b6100ef6004803603606081101561015157600080fd5b506001600160a01b038135169060208101359060400135610369565b6100ef6004803603602081101561018357600080fd5b50356001600160a01b031661040d565b6097602052600090815260409020805460019091015482565b6000806101b761061c565b5050506001600160a01b0316600090815260976020908152604091829020825180840190935280548084526001909101549290910182905291565b6101fa610518565b6065546001600160a01b0390811691161461025c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff16806102ce57506102ce61051c565b806102dc575060005460ff16155b6103175760405162461bcd60e51b815260040180806020018281038252602e81526020018061065d602e913960400191505060405180910390fd5b600054610100900460ff16158015610342576000805460ff1961ff0019909116610100171660011790555b61034a610522565b6103538261040d565b8015610365576000805461ff00191690555b5050565b610371610518565b6065546001600160a01b039081169116146103d3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60408051808201825292835260208084019283526001600160a01b0390941660009081526097909452909220905181559051600190910155565b610415610518565b6065546001600160a01b03908116911614610477576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104bc5760405162461bcd60e51b81526004018080602001828103825260268152602001806106376026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061053b575061053b61051c565b80610549575060005460ff16155b6105845760405162461bcd60e51b815260040180806020018281038252602e81526020018061065d602e913960400191505060405180910390fd5b600054610100900460ff161580156105af576000805460ff1961ff0019909116610100171660011790555b60006105b9610518565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610619576000805461ff00191690555b50565b60405180604001604052806000815260200160008152509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a264697066735822122080edfcf731c83618ee11410d07b631ad5d7582ebe05b41f5164ff1a3b822ad1864736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80638da5cb5b1161005b5780638da5cb5b146100f1578063c4d66de814610115578063eb1c03161461013b578063f2fde38b1461016d5761007d565b8063204120bc1461008257806341976e09146100c1578063715018a6146100e7575b600080fd5b6100a86004803603602081101561009857600080fd5b50356001600160a01b0316610193565b6040805192835260208301919091528051918290030190f35b6100a8600480360360208110156100d757600080fd5b50356001600160a01b03166101ac565b6100ef6101f2565b005b6100f96102a6565b604080516001600160a01b039092168252519081900360200190f35b6100ef6004803603602081101561012b57600080fd5b50356001600160a01b03166102b5565b6100ef6004803603606081101561015157600080fd5b506001600160a01b038135169060208101359060400135610369565b6100ef6004803603602081101561018357600080fd5b50356001600160a01b031661040d565b6097602052600090815260409020805460019091015482565b6000806101b761061c565b5050506001600160a01b0316600090815260976020908152604091829020825180840190935280548084526001909101549290910182905291565b6101fa610518565b6065546001600160a01b0390811691161461025c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff16806102ce57506102ce61051c565b806102dc575060005460ff16155b6103175760405162461bcd60e51b815260040180806020018281038252602e81526020018061065d602e913960400191505060405180910390fd5b600054610100900460ff16158015610342576000805460ff1961ff0019909116610100171660011790555b61034a610522565b6103538261040d565b8015610365576000805461ff00191690555b5050565b610371610518565b6065546001600160a01b039081169116146103d3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60408051808201825292835260208084019283526001600160a01b0390941660009081526097909452909220905181559051600190910155565b610415610518565b6065546001600160a01b03908116911614610477576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104bc5760405162461bcd60e51b81526004018080602001828103825260268152602001806106376026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061053b575061053b61051c565b80610549575060005460ff16155b6105845760405162461bcd60e51b815260040180806020018281038252602e81526020018061065d602e913960400191505060405180910390fd5b600054610100900460ff161580156105af576000805460ff1961ff0019909116610100171660011790555b60006105b9610518565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610619576000805461ff00191690555b50565b60405180604001604052806000815260200160008152509056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a264697066735822122080edfcf731c83618ee11410d07b631ad5d7582ebe05b41f5164ff1a3b822ad1864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ProposalExecuteInterface.json b/contracts/0.1.2-rc.8/ProposalExecuteInterface.json new file mode 100644 index 00000000..0c45426e --- /dev/null +++ b/contracts/0.1.2-rc.8/ProposalExecuteInterface.json @@ -0,0 +1,31 @@ +{ + "contractName": "ProposalExecuteInterface", + "abi": [ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Proxy.json b/contracts/0.1.2-rc.8/Proxy.json new file mode 100644 index 00000000..bfda56da --- /dev/null +++ b/contracts/0.1.2-rc.8/Proxy.json @@ -0,0 +1,15 @@ +{ + "contractName": "Proxy", + "abi": [ + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/QuorumVote.json b/contracts/0.1.2-rc.8/QuorumVote.json new file mode 100644 index 00000000..77d64eb0 --- /dev/null +++ b/contracts/0.1.2-rc.8/QuorumVote.json @@ -0,0 +1,558 @@ +{ + "contractName": "QuorumVote", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_isProxyVote", + "type": "bool" + } + ], + "name": "AVVoteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "CancelVoting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_decision", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_totalReputation", + "type": "uint256" + } + ], + "name": "ExecuteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "_proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + } + ], + "name": "NewProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_organization", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputation", + "type": "uint256" + } + ], + "name": "VoteProposal", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_NUM_OF_CHOICES", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "cancelVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getAllowedRangeOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "min", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getNumberOfChoices", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "getParametersHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "isAbstainAllow", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "isVotable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizations", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "parameters", + "outputs": [ + { + "internalType": "uint256", + "name": "precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "voteOnBehalf", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "bytes32", + "name": "organizationId", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "open", + "type": "bool" + }, + { + "internalType": "address", + "name": "callbacks", + "type": "address" + }, + { + "internalType": "uint256", + "name": "numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "paramsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "totalVotes", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "proposalsCnt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_numOfChoices", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_paramsHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "_organization", + "type": "address" + } + ], + "name": "propose", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_precReq", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "setParameters", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_voter", + "type": "address" + } + ], + "name": "voteInfo", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_choice", + "type": "uint256" + } + ], + "name": "voteStatus", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506113c4806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b031661050a565b6102226004803603602081101561021b57600080fd5b5035610549565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610589565b604080519115158252519081900360200190f35b61017a6106c9565b6102956106d1565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106d6565b61019b610961565b6103186004803603602081101561031157600080fd5b5035610966565b005b61019b6004803603602081101561033057600080fd5b50356109d7565b61019b6004803603604081101561034d57600080fd5b50803590602001356109ec565b6103776004803603602081101561037057600080fd5b5035610a0d565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a28565b610295600480360360208110156103c657600080fd5b5035610a41565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112e4565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b6104aa576040805162461bcd60e51b815260206004820152601860248201527f5f70726563526571206973206f7574206f662072616e67650000000000000000604482015290519081900360640190fd5b60006104b6848461050a565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105eb576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206106016112fe565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106ad5781602001516001600160a01b0316336001600160a01b0316146106a6576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b50846106b0565b50335b6106bc89828a8a610ab5565b9998505050505050505050565b6000600a9091565b600190565b60008381526020819052604081205461072d576040805162461bcd60e51b81526020600482015260146024820152731c185c985b595d195c9cc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60008511801561073e5750600a8511155b6107795760405162461bcd60e51b815260040180806020018281038252602181526020018061134b6021913960400191505060405180910390fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b8906001610d8e565b6003556107c3611315565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f4576001600160a01b0384166108ca578051600090815260026020526040902080546001600160a01b031916331790556108f4565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c9576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d38233610def565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa3576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aac83610ee8565b91505b50919050565b60008481526001602052604081206002810154841115610b1c576040805162461bcd60e51b815260206004820152601960248201527f766f74696e672076616c7565206973206e6f742076616c696400000000000000604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7a57600080fd5b505afa158015610b8e573d6000803e3d6000fd5b505050506040513d6020811015610ba457600080fd5b5051905080610bfa576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c395760405162461bcd60e51b815260040180806020018281038252602381526020018061136c6023913960400191505060405180910390fd5b8380610c425750805b6001600160a01b038716600090815260068401602052604090206001015415610c6f57610c6f8888610def565b6000868152600584016020526040902054610c8b908290610d8e565b60008781526005850160205260409020556004830154610cac908290610d8e565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8288610ee8565b98975050505050505050565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e056112e4565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e54919061119d565b815160009081526005840160209081526040909120919091558101516004830154610e7e9161119d565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f4a576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d6020811015610fd257600080fd5b50516003830154600090815260208190526040902054909150806064830402836004015411156111915760008060005b8560020154811161104457600081815260058701602052604090205483101561103c57600081815260058701602052604090205492509050805b600101611002565b5061104d611315565b506040805160c08101825286548152600187015460ff81161515602083015261010090046001600160a01b0316918101919091526002860154606082015260038601546080820152600486015460a08201526110a8896111df565b805160009081526002602090815260409182902054825185815291820188905282516001600160a01b03909116928c927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d8a846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561115557600080fd5b505af1158015611169573d6000803e3d6000fd5b505050506040513d602081101561117f57600080fd5b5060019850610aaf9650505050505050565b50600095945050505050565b6000610de883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124d565b6000818152600160205260408120905b816002015481116112135760008181526005830160205260408120556001016111ef565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112dc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112a1578181015183820152602001611289565b50505050905090810190601f1680156112ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe6e756d626572206f662063686f69636573206973206f7574206f662072616e676563616e6e6f7420766f74652077697468206d6f72652072657020766f74657220686173a26469706673582212205ca84e969a5bb5a3a198d5b44c6986ddcc11505507e5f980e06308490a98e4de64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806351d997b2116100a2578063a003651d11610071578063a003651d1461031a578063b451291314610337578063ba51b14e1461035a578063c083510614610393578063e751f271146103b05761010b565b806351d997b2146102b157806388737b5e146102b95780638d22651e146102f35780639525c0cc146102fb5761010b565b8063289647e4116100de578063289647e4146101d957806332ed5b1214610205578063359afa491461025d5780635142bc1e146102a95761010b565b80630250680414610110578063119ce91b1461014e57806321b4b3dc1461019357806323d840f5146101ad575b600080fd5b61012d6004803603602081101561012657600080fd5b50356103cd565b604080519283526001600160a01b0390911660208301528051918290030190f35b61017a6004803603604081101561016457600080fd5b50803590602001356001600160a01b03166103ef565b6040805192835260208301919091528051918290030190f35b61019b610440565b60408051918252519081900360200190f35b61019b600480360360408110156101c357600080fd5b50803590602001356001600160a01b0316610446565b61019b600480360360408110156101ef57600080fd5b50803590602001356001600160a01b031661050a565b6102226004803603602081101561021b57600080fd5b5035610549565b6040805196875294151560208701526001600160a01b03909316858501526060850191909152608084015260a0830152519081900360c00190f35b6102956004803603608081101561027357600080fd5b50803590602081013590604081013590606001356001600160a01b0316610589565b604080519115158252519081900360200190f35b61017a6106c9565b6102956106d1565b61019b600480360360808110156102cf57600080fd5b508035906020810135906001600160a01b03604082013581169160600135166106d6565b61019b610961565b6103186004803603602081101561031157600080fd5b5035610966565b005b61019b6004803603602081101561033057600080fd5b50356109d7565b61019b6004803603604081101561034d57600080fd5b50803590602001356109ec565b6103776004803603602081101561037057600080fd5b5035610a0d565b604080516001600160a01b039092168252519081900360200190f35b610295600480360360208110156103a957600080fd5b5035610a28565b610295600480360360208110156103c657600080fd5b5035610a41565b600060208190529081526040902080546001909101546001600160a01b031682565b6000806103fa6112e4565b50505060008281526001602081815260408084206001600160a01b0386168552600601825292839020835180850190945280548085529201549201829052909250929050565b60035481565b6000606483111580156104595750600083115b6104aa576040805162461bcd60e51b815260206004820152601860248201527f5f70726563526571206973206f7574206f662072616e67650000000000000000604482015290519081900360640190fd5b60006104b6848461050a565b6040805180820182529586526001600160a01b039485166020808801918252600084815290819052919091209551865551600190950180546001600160a01b03191695909416949094179092555090919050565b6040805160208082019490945260609290921b6bffffffffffffffffffffffff1916828201528051808303603401815260549092019052805191012090565b60016020819052600091825260409091208054918101546002820154600383015460049093015460ff8316936101009093046001600160a01b0316929086565b600084815260016020819052604082200154859060ff166105eb576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b60008681526001602052604090206106016112fe565b506003810154600090815260208181526040808320815180830190925280548252600101546001600160a01b03169181018290529190156106ad5781602001516001600160a01b0316336001600160a01b0316146106a6576040805162461bcd60e51b815260206004820152601760248201527f766f746572206973206e6f7420617574686f72697a6564000000000000000000604482015290519081900360640190fd5b50846106b0565b50335b6106bc89828a8a610ab5565b9998505050505050505050565b6000600a9091565b600190565b60008381526020819052604081205461072d576040805162461bcd60e51b81526020600482015260146024820152731c185c985b595d195c9cc81b9bdd08195e1a5cdd60621b604482015290519081900360640190fd5b60008511801561073e5750600a8511155b6107795760405162461bcd60e51b815260040180806020018281038252602181526020018061134b6021913960400191505060405180910390fd5b600354604080513060601b60208083019190915260348083018590528351808403909101815260549092019092528051910120906107b8906001610d8e565b6003556107c3611315565b606081810188815260808301888152336040808601828152815192861b602084810191909152958a901b6bffffffffffffffffffffffff191660348401528151808403602801815260489093018252825192860192909220865260018587018181526000898152828852838120895180825592519381018054965160ff1990971694151594909417610100600160a81b0319166101006001600160a01b03978816021790935595516002808401919091559451600383015560a0880151600490920191909155845291909352902054166108f4576001600160a01b0384166108ca578051600090815260026020526040902080546001600160a01b031916331790556108f4565b8051600090815260026020526040902080546001600160a01b0319166001600160a01b0386161790555b80516000908152600260209081526040918290205482518a8152339281019290925281830189905291516001600160a01b039092169184917f75b4ff136cc5de5957574c797de3334eb1c141271922b825eb071e0487ba2c5c919081900360600190a35095945050505050565b600a81565b60008181526001602081905260409091200154819060ff166109c9576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b6109d38233610def565b5050565b60009081526001602052604090206002015490565b60009182526001602090815260408084209284526005909201905290205490565b6002602052600090815260409020546001600160a01b031681565b6000908152600160208190526040909120015460ff1690565b600081815260016020819052604082200154829060ff16610aa3576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b610aac83610ee8565b91505b50919050565b60008481526001602052604081206002810154841115610b1c576040805162461bcd60e51b815260206004820152601960248201527f766f74696e672076616c7565206973206e6f742076616c696400000000000000604482015290519081900360640190fd5b600181015460408051634ac41bc760e11b81526001600160a01b038881166004830152602482018a90529151600093610100900490921691639588378e91604480820192602092909190829003018186803b158015610b7a57600080fd5b505afa158015610b8e573d6000803e3d6000fd5b505050506040513d6020811015610ba457600080fd5b5051905080610bfa576040805162461bcd60e51b815260206004820152601b60248201527f5f766f746572206d75737420686176652072657075746174696f6e0000000000604482015290519081900360640190fd5b83811015610c395760405162461bcd60e51b815260040180806020018281038252602381526020018061136c6023913960400191505060405180910390fd5b8380610c425750805b6001600160a01b038716600090815260068401602052604090206001015415610c6f57610c6f8888610def565b6000868152600584016020526040902054610c8b908290610d8e565b60008781526005850160205260409020556004830154610cac908290610d8e565b600484015560408051808201825287815260208082018481526001600160a01b03808c16600081815260068a0185528681209551865592516001909501949094558754825260028352908490205484518b8152928301869052845193949116928c927f066c061a3792cb3eb64a441a928655fcbafb4a54b49725fe9cd2951df5e7189e92908290030190a4604080516001600160a01b0389163314158152905189917fe715e19c865cb724f3c292cc2fffc24d9cdd398e179fb366f008cc73028e1c52919081900360200190a2610d8288610ee8565b98975050505050505050565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000828152600160205260409020610e056112e4565b506001600160a01b03821660009081526006820160209081526040808320815180830183528154808252600190920154818501819052918552600586019093529220549091610e54919061119d565b815160009081526005840160209081526040909120919091558101516004830154610e7e9161119d565b60048301556001600160a01b03808416600081815260068501602090815260408083208381556001018390558654835260029091528082205490519293169187917f0ecab23267930de581498fac1af19a95c888ec6583921ee9c47473e16245d3c891a450505050565b600081815260016020819052604082200154829060ff16610f4a576040805162461bcd60e51b815260206004820152601760248201527670726f706f73616c206973206e6f7420766f7461626c6560481b604482015290519081900360640190fd5b600083815260016020818152604080842092830154815163b551c37360e01b81526004810189905291519394936101009091046001600160a01b03169263b551c3739260248082019391829003018186803b158015610fa857600080fd5b505afa158015610fbc573d6000803e3d6000fd5b505050506040513d6020811015610fd257600080fd5b50516003830154600090815260208190526040902054909150806064830402836004015411156111915760008060005b8560020154811161104457600081815260058701602052604090205483101561103c57600081815260058701602052604090205492509050805b600101611002565b5061104d611315565b506040805160c08101825286548152600187015460ff81161515602083015261010090046001600160a01b0316918101919091526002860154606082015260038601546080820152600486015460a08201526110a8896111df565b805160009081526002602090815260409182902054825185815291820188905282516001600160a01b03909116928c927f37471b9c9d295ffb1309ad070b8964700bfb7b555e8e8292d0b6cbc7dba35d10929081900390910190a380604001516001600160a01b0316639d4c162d8a846040518363ffffffff1660e01b81526004018083815260200182815260200192505050602060405180830381600087803b15801561115557600080fd5b505af1158015611169573d6000803e3d6000fd5b505050506040513d602081101561117f57600080fd5b5060019850610aaf9650505050505050565b50600095945050505050565b6000610de883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061124d565b6000818152600160205260408120905b816002015481116112135760008181526005830160205260408120556001016111ef565b50506000908152600160208190526040822082815590810180546001600160a81b0319169055600281018290556003810182905560040155565b600081848411156112dc5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156112a1578181015183820152602001611289565b50505050905090810190601f1680156112ce5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b604051806040016040528060008152602001600081525090565b604080518082019091526000808252602082015290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe6e756d626572206f662063686f69636573206973206f7574206f662072616e676563616e6e6f7420766f74652077697468206d6f72652072657020766f74657220686173a26469706673582212205ca84e969a5bb5a3a198d5b44c6986ddcc11505507e5f980e06308490a98e4de64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/RealMath.json b/contracts/0.1.2-rc.8/RealMath.json new file mode 100644 index 00000000..5641e5fa --- /dev/null +++ b/contracts/0.1.2-rc.8/RealMath.json @@ -0,0 +1,6 @@ +{ + "contractName": "RealMath", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ebfb5fbc2bb764125daee073e39b89164e4d92b879d48d4fbb72e92049f2aed364736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ebfb5fbc2bb764125daee073e39b89164e4d92b879d48d4fbb72e92049f2aed364736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/RealMathTester.json b/contracts/0.1.2-rc.8/RealMathTester.json new file mode 100644 index 00000000..3b407b63 --- /dev/null +++ b/contracts/0.1.2-rc.8/RealMathTester.json @@ -0,0 +1,62 @@ +{ + "contractName": "RealMathTester", + "abi": [ + { + "inputs": [ + { + "internalType": "uint216", + "name": "num", + "type": "uint216" + }, + { + "internalType": "uint216", + "name": "den", + "type": "uint216" + } + ], + "name": "fraction", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint216", + "name": "num", + "type": "uint216" + }, + { + "internalType": "uint216", + "name": "den", + "type": "uint216" + }, + { + "internalType": "uint256", + "name": "exp", + "type": "uint256" + } + ], + "name": "power", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061021f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063c92f92271461003b578063f27be26a14610083575b600080fd5b6100716004803603606081101561005157600080fd5b506001600160d81b038135811691602081013590911690604001356100b1565b60408051918252519081900360200190f35b6100716004803603604081101561009957600080fd5b506001600160d81b03813581169160200135166100d8565b60006100d0826100ca6001600160d81b038716866100f4565b90610117565b949350505050565b60006100ed6001600160d81b038416836100f4565b9392505050565b60006100ed6001600160d81b03808516650100000000009081029185160261016a565b60008282650100000000005b81156101615781600116600114156101425761013f8184610185565b90505b60019190911c90811561015c576101598384610185565b92505b610123565b95945050505050565b6000816501000000000084028161017d57fe5b049392505050565b60008282028284828161019457fe5b04146101df576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c939250505056fea2646970667358221220ae7f5d915ac25aa7403f602ebdbc876a1031d31bd9c52c13c0669bb58b8e2ce264736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063c92f92271461003b578063f27be26a14610083575b600080fd5b6100716004803603606081101561005157600080fd5b506001600160d81b038135811691602081013590911690604001356100b1565b60408051918252519081900360200190f35b6100716004803603604081101561009957600080fd5b506001600160d81b03813581169160200135166100d8565b60006100d0826100ca6001600160d81b038716866100f4565b90610117565b949350505050565b60006100ed6001600160d81b038416836100f4565b9392505050565b60006100ed6001600160d81b03808516650100000000009081029185160261016a565b60008282650100000000005b81156101615781600116600114156101425761013f8184610185565b90505b60019190911c90811561015c576101598384610185565b92505b610123565b95945050505050565b6000816501000000000084028161017d57fe5b049392505050565b60008282028284828161019457fe5b04146101df576040805162461bcd60e51b81526020600482015260156024820152745265616c4d617468206d756c206f766572666c6f7760581b604482015290519081900360640190fd5b60281c939250505056fea2646970667358221220ae7f5d915ac25aa7403f602ebdbc876a1031d31bd9c52c13c0669bb58b8e2ce264736f6c634300060c0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Redeemer.json b/contracts/0.1.2-rc.8/Redeemer.json new file mode 100644 index 00000000..5191345f --- /dev/null +++ b/contracts/0.1.2-rc.8/Redeemer.json @@ -0,0 +1,248 @@ +{ + "contractName": "Redeemer", + "abi": [ + { + "inputs": [ + { + "internalType": "contract ContributionReward", + "name": "_contributionReward", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "crReputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "crNativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crEthReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crExternalTokenReward", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ContributionRewardExt", + "name": "_contributionRewardExt", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemFromCRExt", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "crReputationReward", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "crNativeTokenReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crEthReward", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "crExternalTokenReward", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract FundingRequest", + "name": "_fundingRequest", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemFundingRequest", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Join", + "name": "_join", + "type": "address" + }, + { + "internalType": "contract GenesisProtocol", + "name": "_genesisProtocol", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeemJoin", + "outputs": [ + { + "internalType": "uint256[3]", + "name": "gpRewards", + "type": "uint256[3]" + }, + { + "internalType": "uint256[2]", + "name": "gpDaoBountyReward", + "type": "uint256[2]" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "winningVote", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "joinReputationReward", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506113cc806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806304a95fd1146100515780632a900e95146101015780636fb0347a146101cd578063f72b1de914610209575b600080fd5b61008d6004803603608081101561006757600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166102c0565b6040518085606080838360005b838110156100b257818101518382015260200161009a565b5050505090500184600260200280838360005b838110156100dd5781810151838201526020016100c5565b50505050905001831515815260200182815260200194505050505060405180910390f35b61013d6004803603608081101561011757600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661035d565b6040518089606080838360005b8381101561016257818101518382015260200161014a565b5050505090500188600260200280838360005b8381101561018d578181015183820152602001610175565b5050505090500187151581526020018681526020018581526020018481526020018381526020018281526020019850505050505050505060405180910390f35b61013d600480360360808110156101e357600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661042f565b6102456004803603608081101561021f57600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166104e9565b6040518086606080838360005b8381101561026a578181015183820152602001610252565b5050505090500185600260200280838360005b8381101561029557818101518382015260200161027d565b5050505090500184151581526020018381526020018281526020019550505050505060405180910390f35b6102c861131b565b6102d0611339565b60008060006102e088888861059d565b939850919650945092509050801561035157886001600160a01b031663eda1122c886040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561033857600080fd5b505af115801561034c573d6000803e3d6000fd5b505050505b50945094509450949050565b61036561131b565b61036d611339565b60008060008060008060006103838c8c8c61059d565b939c50919a50985096509050801561041f578c6001600160a01b031663cbba1f5a8c6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156103d957600080fd5b505afa1580156103ed573d6000803e3d6000fd5b505050506040513d602081101561040357600080fd5b50511561041f576104148d8c610941565b929750909550935091505b5094995094995094999196509450565b61043761131b565b61043f611339565b60008060008060008060006104558c8c8c61059d565b939c50919a50985096509050801561041f5760008d6001600160a01b0316635d353bef8d6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156104ad57600080fd5b505afa1580156104c1573d6000803e3d6000fd5b505050506040513d60208110156104d757600080fd5b5051111561041f576104148d8c610d91565b6104f161131b565b6104f9611339565b60008060008061050a89898961059d565b939950919750955093509050801561059157896001600160a01b031663c7916cf9896040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b15801561056257600080fd5b505af1158015610576573d6000803e3d6000fd5b505050506040513d602081101561058c57600080fd5b505191505b50945094509450945094565b6105a561131b565b6105ad611339565b600080600080886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156105f757600080fd5b505afa15801561060b573d6000803e3d6000fd5b505050506040513d602081101561062157600080fd5b50519050600381600681111561063357fe5b148061064a5750600481600681111561064857fe5b145b806106605750600581600681111561065e57fe5b145b806106765750600681600681111561067457fe5b145b156106f057886001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b505050506040513d60208110156106eb57600080fd5b505193505b886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561073457600080fd5b505afa158015610748573d6000803e3d6000fd5b505050506040513d602081101561075e57600080fd5b50519050600281600681111561077057fe5b14806107875750600181600681111561078557fe5b145b1561093557886001600160a01b031663cc3bf9e989896040518363ffffffff1660e01b815260040180838152602001826001600160a01b0316815260200192505050606060405180830381600087803b1580156107e357600080fd5b505af11580156107f7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250606081101561081c57600080fd5b509550600281600681111561082d57fe5b14156108be5760408051636359036b60e01b8152600481018a90526001600160a01b0389811660248301528251908c1692636359036b92604480820193918290030181600087803b15801561088157600080fd5b505af1158015610895573d6000803e3d6000fd5b505050506040513d60408110156108ab57600080fd5b5080516020918201519187019190915285525b886001600160a01b0316633c133818896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561090257600080fd5b505afa158015610916573d6000803e3d6000fd5b505050506040513d602081101561092c57600080fd5b50519250600191505b50939792965093509350565b60008060008061094f611357565b600180825260208083019190915260408051639f874c9960e01b81526004810189905290516000926001600160a01b038b1692639f874c999260248083019392829003018186803b1580156109a357600080fd5b505afa1580156109b7573d6000803e3d6000fd5b505050506040513d60208110156109cd57600080fd5b505160408051632938bd2f60e11b8152600481018a905290519192506000916001600160a01b038b16916352717a5e916024808301926020929190829003018186803b158015610a1c57600080fd5b505afa158015610a30573d6000803e3d6000fd5b505050506040513d6020811015610a4657600080fd5b505160408051637e078b5560e01b8152600481018b905290519192506000916001600160a01b038c1691637e078b55916024808301926020929190829003018186803b158015610a9557600080fd5b505afa158015610aa9573d6000803e3d6000fd5b505050506040513d6020811015610abf57600080fd5b50519050821580610bab5750828a6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0557600080fd5b505afa158015610b19573d6000803e3d6000fd5b505050506040513d6020811015610b2f57600080fd5b50516040805163fbfa77cf60e01b815290516001600160a01b039092169163fbfa77cf91600480820192602092909190829003018186803b158015610b7357600080fd5b505afa158015610b87573d6000803e3d6000fd5b505050506040513d6020811015610b9d57600080fd5b50516001600160a01b031631105b15610bbc5760006040850152610bc4565b600160408501525b811580610cb4575081816001600160a01b03166370a082318c6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610c1557600080fd5b505afa158015610c29573d6000803e3d6000fd5b505050506040513d6020811015610c3f57600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b039092166004830152516024808301926020929190829003018186803b158015610c8657600080fd5b505afa158015610c9a573d6000803e3d6000fd5b505050506040513d6020811015610cb057600080fd5b5051105b15610cc55760006060850152610ccd565b600160608501525b604051633a0284ff60e01b8152600481018a81526001600160a01b038c1691633a0284ff918c9188919060240182608080838360005b83811015610d1b578181015183820152602001610d03565b5050505090500192505050608060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6080811015610d6a57600080fd5b50805160208201516040830151606090930151919d909c50919a5098509650505050505050565b600080600080610d9f611357565b600180825260208083019190915260408051630743ec0760e01b8152600481018990526002602482015290516000926001600160a01b038b1692630743ec079260448083019392829003018186803b158015610dfa57600080fd5b505afa158015610e0e573d6000803e3d6000fd5b505050506040513d6020811015610e2457600080fd5b505160408051639f874c9960e01b8152600481018a905290519192506000916001600160a01b038b1691639f874c99916024808301926020929190829003018186803b158015610e7357600080fd5b505afa158015610e87573d6000803e3d6000fd5b505050506040513d6020811015610e9d57600080fd5b505160408051632938bd2f60e11b8152600481018b905290519192506000916001600160a01b038c16916352717a5e916024808301926020929190829003018186803b158015610eec57600080fd5b505afa158015610f00573d6000803e3d6000fd5b505050506040513d6020811015610f1657600080fd5b505160408051637e078b5560e01b8152600481018c905290519192506000916001600160a01b038d1691637e078b55916024808301926020929190829003018186803b158015610f6557600080fd5b505afa158015610f79573d6000803e3d6000fd5b505050506040513d6020811015610f8f57600080fd5b50519050610f9d84846112b9565b925060008b6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610fda57600080fd5b505afa158015610fee573d6000803e3d6000fd5b505050506040513d602081101561100457600080fd5b50516040805163fbfa77cf60e01b815290519192506000916001600160a01b0384169163fbfa77cf916004808301926020929190829003018186803b15801561104c57600080fd5b505afa158015611060573d6000803e3d6000fd5b505050506040513d602081101561107657600080fd5b50519050841580611090575084816001600160a01b031631105b156110a157600060408801526110a9565b600160408801525b8c6001600160a01b0316630743ec078d60036040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156110f657600080fd5b505afa15801561110a573d6000803e3d6000fd5b505050506040513d602081101561112057600080fd5b5051955061112e86856112b9565b93508315806111b4575083836001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561118657600080fd5b505afa15801561119a573d6000803e3d6000fd5b505050506040513d60208110156111b057600080fd5b5051105b156111c557600060608801526111cd565b600160608801525b604051633a0284ff60e01b8152600481018d81526001600160a01b038f1691633a0284ff918f918b919060240182608080838360005b8381101561121b578181015183820152602001611203565b5050505090500192505050608060405180830381600087803b15801561124057600080fd5b505af1158015611254573d6000803e3d6000fd5b505050506040513d608081101561126a57600080fd5b8101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050809b50819c50829d50839e50505050505050505050505092959194509250565b6000826112c857506000611315565b828202828482816112d557fe5b04146113125760405162461bcd60e51b81526004018080602001828103825260218152602001806113766021913960400191505060405180910390fd5b90505b92915050565b60405180606001604052806003906020820280368337509192915050565b60405180604001604052806002906020820280368337509192915050565b6040518060800160405280600490602082028036833750919291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220fc2d68529fa1e06036bb611fa5a3933bd4ebed3e17c729a71553705384dfdc0364736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806304a95fd1146100515780632a900e95146101015780636fb0347a146101cd578063f72b1de914610209575b600080fd5b61008d6004803603608081101561006757600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166102c0565b6040518085606080838360005b838110156100b257818101518382015260200161009a565b5050505090500184600260200280838360005b838110156100dd5781810151838201526020016100c5565b50505050905001831515815260200182815260200194505050505060405180910390f35b61013d6004803603608081101561011757600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661035d565b6040518089606080838360005b8381101561016257818101518382015260200161014a565b5050505090500188600260200280838360005b8381101561018d578181015183820152602001610175565b5050505090500187151581526020018681526020018581526020018481526020018381526020018281526020019850505050505050505060405180910390f35b61013d600480360360808110156101e357600080fd5b506001600160a01b0381358116916020810135821691604082013591606001351661042f565b6102456004803603608081101561021f57600080fd5b506001600160a01b038135811691602081013582169160408201359160600135166104e9565b6040518086606080838360005b8381101561026a578181015183820152602001610252565b5050505090500185600260200280838360005b8381101561029557818101518382015260200161027d565b5050505090500184151581526020018381526020018281526020019550505050505060405180910390f35b6102c861131b565b6102d0611339565b60008060006102e088888861059d565b939850919650945092509050801561035157886001600160a01b031663eda1122c886040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561033857600080fd5b505af115801561034c573d6000803e3d6000fd5b505050505b50945094509450949050565b61036561131b565b61036d611339565b60008060008060008060006103838c8c8c61059d565b939c50919a50985096509050801561041f578c6001600160a01b031663cbba1f5a8c6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156103d957600080fd5b505afa1580156103ed573d6000803e3d6000fd5b505050506040513d602081101561040357600080fd5b50511561041f576104148d8c610941565b929750909550935091505b5094995094995094999196509450565b61043761131b565b61043f611339565b60008060008060008060006104558c8c8c61059d565b939c50919a50985096509050801561041f5760008d6001600160a01b0316635d353bef8d6040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156104ad57600080fd5b505afa1580156104c1573d6000803e3d6000fd5b505050506040513d60208110156104d757600080fd5b5051111561041f576104148d8c610d91565b6104f161131b565b6104f9611339565b60008060008061050a89898961059d565b939950919750955093509050801561059157896001600160a01b031663c7916cf9896040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b15801561056257600080fd5b505af1158015610576573d6000803e3d6000fd5b505050506040513d602081101561058c57600080fd5b505191505b50945094509450945094565b6105a561131b565b6105ad611339565b600080600080886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b1580156105f757600080fd5b505afa15801561060b573d6000803e3d6000fd5b505050506040513d602081101561062157600080fd5b50519050600381600681111561063357fe5b148061064a5750600481600681111561064857fe5b145b806106605750600581600681111561065e57fe5b145b806106765750600681600681111561067457fe5b145b156106f057886001600160a01b031663e751f271896040518263ffffffff1660e01b815260040180828152602001915050602060405180830381600087803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b505050506040513d60208110156106eb57600080fd5b505193505b886001600160a01b03166361d585da896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561073457600080fd5b505afa158015610748573d6000803e3d6000fd5b505050506040513d602081101561075e57600080fd5b50519050600281600681111561077057fe5b14806107875750600181600681111561078557fe5b145b1561093557886001600160a01b031663cc3bf9e989896040518363ffffffff1660e01b815260040180838152602001826001600160a01b0316815260200192505050606060405180830381600087803b1580156107e357600080fd5b505af11580156107f7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250606081101561081c57600080fd5b509550600281600681111561082d57fe5b14156108be5760408051636359036b60e01b8152600481018a90526001600160a01b0389811660248301528251908c1692636359036b92604480820193918290030181600087803b15801561088157600080fd5b505af1158015610895573d6000803e3d6000fd5b505050506040513d60408110156108ab57600080fd5b5080516020918201519187019190915285525b886001600160a01b0316633c133818896040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561090257600080fd5b505afa158015610916573d6000803e3d6000fd5b505050506040513d602081101561092c57600080fd5b50519250600191505b50939792965093509350565b60008060008061094f611357565b600180825260208083019190915260408051639f874c9960e01b81526004810189905290516000926001600160a01b038b1692639f874c999260248083019392829003018186803b1580156109a357600080fd5b505afa1580156109b7573d6000803e3d6000fd5b505050506040513d60208110156109cd57600080fd5b505160408051632938bd2f60e11b8152600481018a905290519192506000916001600160a01b038b16916352717a5e916024808301926020929190829003018186803b158015610a1c57600080fd5b505afa158015610a30573d6000803e3d6000fd5b505050506040513d6020811015610a4657600080fd5b505160408051637e078b5560e01b8152600481018b905290519192506000916001600160a01b038c1691637e078b55916024808301926020929190829003018186803b158015610a9557600080fd5b505afa158015610aa9573d6000803e3d6000fd5b505050506040513d6020811015610abf57600080fd5b50519050821580610bab5750828a6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610b0557600080fd5b505afa158015610b19573d6000803e3d6000fd5b505050506040513d6020811015610b2f57600080fd5b50516040805163fbfa77cf60e01b815290516001600160a01b039092169163fbfa77cf91600480820192602092909190829003018186803b158015610b7357600080fd5b505afa158015610b87573d6000803e3d6000fd5b505050506040513d6020811015610b9d57600080fd5b50516001600160a01b031631105b15610bbc5760006040850152610bc4565b600160408501525b811580610cb4575081816001600160a01b03166370a082318c6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610c1557600080fd5b505afa158015610c29573d6000803e3d6000fd5b505050506040513d6020811015610c3f57600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b039092166004830152516024808301926020929190829003018186803b158015610c8657600080fd5b505afa158015610c9a573d6000803e3d6000fd5b505050506040513d6020811015610cb057600080fd5b5051105b15610cc55760006060850152610ccd565b600160608501525b604051633a0284ff60e01b8152600481018a81526001600160a01b038c1691633a0284ff918c9188919060240182608080838360005b83811015610d1b578181015183820152602001610d03565b5050505090500192505050608060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6080811015610d6a57600080fd5b50805160208201516040830151606090930151919d909c50919a5098509650505050505050565b600080600080610d9f611357565b600180825260208083019190915260408051630743ec0760e01b8152600481018990526002602482015290516000926001600160a01b038b1692630743ec079260448083019392829003018186803b158015610dfa57600080fd5b505afa158015610e0e573d6000803e3d6000fd5b505050506040513d6020811015610e2457600080fd5b505160408051639f874c9960e01b8152600481018a905290519192506000916001600160a01b038b1691639f874c99916024808301926020929190829003018186803b158015610e7357600080fd5b505afa158015610e87573d6000803e3d6000fd5b505050506040513d6020811015610e9d57600080fd5b505160408051632938bd2f60e11b8152600481018b905290519192506000916001600160a01b038c16916352717a5e916024808301926020929190829003018186803b158015610eec57600080fd5b505afa158015610f00573d6000803e3d6000fd5b505050506040513d6020811015610f1657600080fd5b505160408051637e078b5560e01b8152600481018c905290519192506000916001600160a01b038d1691637e078b55916024808301926020929190829003018186803b158015610f6557600080fd5b505afa158015610f79573d6000803e3d6000fd5b505050506040513d6020811015610f8f57600080fd5b50519050610f9d84846112b9565b925060008b6001600160a01b0316635aef7de66040518163ffffffff1660e01b815260040160206040518083038186803b158015610fda57600080fd5b505afa158015610fee573d6000803e3d6000fd5b505050506040513d602081101561100457600080fd5b50516040805163fbfa77cf60e01b815290519192506000916001600160a01b0384169163fbfa77cf916004808301926020929190829003018186803b15801561104c57600080fd5b505afa158015611060573d6000803e3d6000fd5b505050506040513d602081101561107657600080fd5b50519050841580611090575084816001600160a01b031631105b156110a157600060408801526110a9565b600160408801525b8c6001600160a01b0316630743ec078d60036040518363ffffffff1660e01b8152600401808381526020018281526020019250505060206040518083038186803b1580156110f657600080fd5b505afa15801561110a573d6000803e3d6000fd5b505050506040513d602081101561112057600080fd5b5051955061112e86856112b9565b93508315806111b4575083836001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561118657600080fd5b505afa15801561119a573d6000803e3d6000fd5b505050506040513d60208110156111b057600080fd5b5051105b156111c557600060608801526111cd565b600160608801525b604051633a0284ff60e01b8152600481018d81526001600160a01b038f1691633a0284ff918f918b919060240182608080838360005b8381101561121b578181015183820152602001611203565b5050505090500192505050608060405180830381600087803b15801561124057600080fd5b505af1158015611254573d6000803e3d6000fd5b505050506040513d608081101561126a57600080fd5b8101908080519060200190929190805190602001909291908051906020019092919080519060200190929190505050809b50819c50829d50839e50505050505050505050505092959194509250565b6000826112c857506000611315565b828202828482816112d557fe5b04146113125760405162461bcd60e51b81526004018080602001828103825260218152602001806113766021913960400191505060405180910390fd5b90505b92915050565b60405180606001604052806003906020820280368337509192915050565b60405180604001604052806002906020820280368337509192915050565b6040518060800160405280600490602082028036833750919291505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220fc2d68529fa1e06036bb611fa5a3933bd4ebed3e17c729a71553705384dfdc0364736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/RepAllocation.json b/contracts/0.1.2-rc.8/RepAllocation.json new file mode 100644 index 00000000..b029f7fb --- /dev/null +++ b/contracts/0.1.2-rc.8/RepAllocation.json @@ -0,0 +1,185 @@ +{ + "contractName": "RepAllocation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "BeneficiaryAddressAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "addBeneficiaries", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "addBeneficiary", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "freeze", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isFreeze", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "reputationAllocations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061096f806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c806396074e701161006657806396074e7014610137578063a961065514610163578063c154d6ca1461028a578063c4d66de8146102a6578063f2fde38b146102cc5761009e565b80630b98d181146100a357806362a5af3b146100db57806370a08231146100e5578063715018a61461010b5780638da5cb5b14610113575b600080fd5b6100c9600480360360208110156100b957600080fd5b50356001600160a01b03166102f2565b60408051918252519081900360200190f35b6100e3610304565b005b6100c9600480360360208110156100fb57600080fd5b50356001600160a01b031661036b565b6100e3610386565b61011b610428565b604080516001600160a01b039092168252519081900360200190f35b6100e36004803603604081101561014d57600080fd5b506001600160a01b038135169060200135610437565b6100e36004803603604081101561017957600080fd5b81019060208101813564010000000081111561019457600080fd5b8201836020820111156101a657600080fd5b803590602001918460208302840111640100000000831117156101c857600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021857600080fd5b82018360208201111561022a57600080fd5b8035906020019184602083028401116401000000008311171561024c57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610536945050505050565b6102926105e5565b604080519115158252519081900360200190f35b6100e3600480360360208110156102bc57600080fd5b50356001600160a01b03166105ee565b6100e3600480360360208110156102e257600080fd5b50356001600160a01b03166106a1565b60976020526000908152604090205481565b61030c61079a565b6065546001600160a01b0390811691161461035c576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b6098805460ff19166001179055565b6001600160a01b031660009081526097602052604090205490565b61038e61079a565b6065546001600160a01b039081169116146103de576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b61043f61079a565b6065546001600160a01b0390811691161461048f576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b60985460ff16156104d15760405162461bcd60e51b81526004018080602001828103825260278152602001806109136027913960400191505060405180910390fd5b6001600160a01b038216600090815260976020526040902054610532576001600160a01b038216600081815260976020526040808220849055518392917fbf94baaff7b294d05de11f4ad7c615c6b8d41f4defab8fa5b962a0437842c58e91a35b5050565b61053e61079a565b6065546001600160a01b0390811691161461058e576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b805182511461059c57600080fd5b60005b82518110156105e0576105d88382815181106105b757fe5b60200260200101518383815181106105cb57fe5b6020026020010151610437565b60010161059f565b505050565b60985460ff1681565b600054610100900460ff1680610607575061060761079e565b80610615575060005460ff16155b6106505760405162461bcd60e51b815260040180806020018281038252602e8152602001806108e5602e913960400191505060405180910390fd5b600054610100900460ff1615801561067b576000805460ff1961ff0019909116610100171660011790555b6106836107a4565b61068c826106a1565b8015610532576000805461ff00191690555050565b6106a961079a565b6065546001600160a01b039081169116146106f9576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b6001600160a01b03811661073e5760405162461bcd60e51b815260040180806020018281038252602681526020018061089f6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806107bd57506107bd61079e565b806107cb575060005460ff16155b6108065760405162461bcd60e51b815260040180806020018281038252602e8152602001806108e5602e913960400191505060405180910390fd5b600054610100900460ff16158015610831576000805460ff1961ff0019909116610100171660011790555b600061083b61079a565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561089b576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656463616e206164642062656e6566696369617279206f6e6c79206966206e6f742064697361626c65a26469706673582212205c95e781bbbb7d70fb9bcdedf20c50cdf3918b832d2f32a0319d3e499dcbb15864736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c806396074e701161006657806396074e7014610137578063a961065514610163578063c154d6ca1461028a578063c4d66de8146102a6578063f2fde38b146102cc5761009e565b80630b98d181146100a357806362a5af3b146100db57806370a08231146100e5578063715018a61461010b5780638da5cb5b14610113575b600080fd5b6100c9600480360360208110156100b957600080fd5b50356001600160a01b03166102f2565b60408051918252519081900360200190f35b6100e3610304565b005b6100c9600480360360208110156100fb57600080fd5b50356001600160a01b031661036b565b6100e3610386565b61011b610428565b604080516001600160a01b039092168252519081900360200190f35b6100e36004803603604081101561014d57600080fd5b506001600160a01b038135169060200135610437565b6100e36004803603604081101561017957600080fd5b81019060208101813564010000000081111561019457600080fd5b8201836020820111156101a657600080fd5b803590602001918460208302840111640100000000831117156101c857600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929594936020810193503591505064010000000081111561021857600080fd5b82018360208201111561022a57600080fd5b8035906020019184602083028401116401000000008311171561024c57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610536945050505050565b6102926105e5565b604080519115158252519081900360200190f35b6100e3600480360360208110156102bc57600080fd5b50356001600160a01b03166105ee565b6100e3600480360360208110156102e257600080fd5b50356001600160a01b03166106a1565b60976020526000908152604090205481565b61030c61079a565b6065546001600160a01b0390811691161461035c576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b6098805460ff19166001179055565b6001600160a01b031660009081526097602052604090205490565b61038e61079a565b6065546001600160a01b039081169116146103de576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b61043f61079a565b6065546001600160a01b0390811691161461048f576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b60985460ff16156104d15760405162461bcd60e51b81526004018080602001828103825260278152602001806109136027913960400191505060405180910390fd5b6001600160a01b038216600090815260976020526040902054610532576001600160a01b038216600081815260976020526040808220849055518392917fbf94baaff7b294d05de11f4ad7c615c6b8d41f4defab8fa5b962a0437842c58e91a35b5050565b61053e61079a565b6065546001600160a01b0390811691161461058e576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b805182511461059c57600080fd5b60005b82518110156105e0576105d88382815181106105b757fe5b60200260200101518383815181106105cb57fe5b6020026020010151610437565b60010161059f565b505050565b60985460ff1681565b600054610100900460ff1680610607575061060761079e565b80610615575060005460ff16155b6106505760405162461bcd60e51b815260040180806020018281038252602e8152602001806108e5602e913960400191505060405180910390fd5b600054610100900460ff1615801561067b576000805460ff1961ff0019909116610100171660011790555b6106836107a4565b61068c826106a1565b8015610532576000805461ff00191690555050565b6106a961079a565b6065546001600160a01b039081169116146106f9576040805162461bcd60e51b815260206004820181905260248201526000805160206108c5833981519152604482015290519081900360640190fd5b6001600160a01b03811661073e5760405162461bcd60e51b815260040180806020018281038252602681526020018061089f6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806107bd57506107bd61079e565b806107cb575060005460ff16155b6108065760405162461bcd60e51b815260040180806020018281038252602e8152602001806108e5602e913960400191505060405180910390fd5b600054610100900460ff16158015610831576000805460ff1961ff0019909116610100171660011790555b600061083b61079a565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561089b576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a656463616e206164642062656e6566696369617279206f6e6c79206966206e6f742064697361626c65a26469706673582212205c95e781bbbb7d70fb9bcdedf20c50cdf3918b832d2f32a0319d3e499dcbb15864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Reputation.json b/contracts/0.1.2-rc.8/Reputation.json new file mode 100644 index 00000000..1f9d2d27 --- /dev/null +++ b/contracts/0.1.2-rc.8/Reputation.json @@ -0,0 +1,289 @@ +{ + "contractName": "Reputation", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Burn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Mint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "balanceOfAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "balances", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_blockNumber", + "type": "uint256" + } + ], + "name": "totalSupplyAt", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "totalSupplyHistory", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x60806040526097805460ff1916601217905534801561001d57600080fd5b50610cac8061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063715018a61161008c5780639dc29fac116100665780639dc29fac14610206578063c4d66de814610232578063cbf1304d14610258578063f2fde38b14610284576100cf565b8063715018a6146101bb5780638da5cb5b146101c5578063981b24d0146101e9576100cf565b806318160ddd146100d4578063313ce567146100ee57806340c10f191461010c5780634ee2cd7e1461014c5780636641d9a01461017857806370a0823114610195575b600080fd5b6100dc6102aa565b60408051918252519081900360200190f35b6100f66102ba565b6040805160ff9092168252519081900360200190f35b6101386004803603604081101561012257600080fd5b506001600160a01b0381351690602001356102c3565b604080519115158252519081900360200190f35b6100dc6004803603604081101561016257600080fd5b506001600160a01b03813516906020013561044b565b6100dc6004803603602081101561018e57600080fd5b50356104da565b6100dc600480360360208110156101ab57600080fd5b50356001600160a01b03166104f8565b6101c361050c565b005b6101cd6105ae565b604080516001600160a01b039092168252519081900360200190f35b6100dc600480360360208110156101ff57600080fd5b50356105bd565b6101386004803603604081101561021c57600080fd5b506001600160a01b03813516906020013561060e565b6101c36004803603602081101561024857600080fd5b50356001600160a01b031661070a565b6100dc6004803603604081101561026e57600080fd5b506001600160a01b0381351690602001356107be565b6101c36004803603602081101561029a57600080fd5b50356001600160a01b03166107ec565b60006102b5436105bd565b905090565b60975460ff1681565b60006102cd6108e5565b6065546001600160a01b0390811691161461031d576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b60006103276102aa565b9050808382011015610378576040805162461bcd60e51b8152602060048201526015602482015274746f74616c20737570706c79206f766572666c6f7760581b604482015290519081900360640190fd5b6000610383856104f8565b90508084820110156103ce576040805162461bcd60e51b815260206004820152600f60248201526e62616c616365206f766572666c6f7760881b604482015290519081900360640190fd5b6103db60998584016108e9565b6001600160a01b03851660009081526098602052604090206103ff908286016108e9565b6040805185815290516001600160a01b038716917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a26001925050505b92915050565b6001600160a01b03821660009081526098602052604081205415806104a457506001600160a01b0383166000908152609860205260408120805484929061048e57fe5b90600052602060002001546001600160801b0316115b156104b157506000610445565b6001600160a01b03831660009081526098602052604090206104d390836109ed565b9050610445565b609981815481106104e757fe5b600091825260209091200154905081565b6000610504824361044b565b90505b919050565b6105146108e5565b6065546001600160a01b03908116911614610564576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b60995460009015806105ef57508160996000815481106105d957fe5b90600052602060002001546001600160801b0316115b156105fc57506000610507565b6106076099836109ed565b9050610507565b60006106186108e5565b6065546001600160a01b03908116911614610668576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b60006106726102aa565b9050826000610680866104f8565b90508181101561068e578091505b61069b60998385036108e9565b6001600160a01b03861660009081526098602052604090206106bf908383036108e9565b6040805183815290516001600160a01b038816917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600195945050505050565b600054610100900460ff16806107235750610723610b02565b80610731575060005460ff16155b61076c5760405162461bcd60e51b815260040180806020018281038252602e815260200180610c49602e913960400191505060405180910390fd5b600054610100900460ff16158015610797576000805460ff1961ff0019909116610100171660011790555b61079f610b08565b6107a8826107ec565b80156107ba576000805461ff00191690555b5050565b609860205281600052604060002081815481106107d757fe5b90600052602060002001600091509150505481565b6107f46108e5565b6065546001600160a01b03908116911614610844576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b6001600160a01b0381166108895760405162461bcd60e51b8152600401808060200182810382526026815260200180610c036026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b80816001600160801b03161461093c576040805162461bcd60e51b815260206004820152601360248201527272657075746174696f6e206f766572666c6f7760681b604482015290519081900360640190fd5b8154158061096f5750815443908390600019810190811061095957fe5b90600052602060002001546001600160801b0316105b1561099d5781546001810183556000838152602090206001600160801b034316608084901b179101556107ba565b608081901b6001600160801b03836001858054905003815481106109bd57fe5b90600052602060002001541617826001848054905003815481106109dd57fe5b6000918252602090912001555050565b81546000906109fe57506000610445565b825483906000198101908110610a1057fe5b90600052602060002001546001600160801b03168210610a5357825460809084906000198101908110610a3f57fe5b9060005260206000200154901c9050610445565b82600081548110610a6057fe5b90600052602060002001546001600160801b0316821015610a8357506000610445565b8254600090600019015b81811115610add576000600260018385010104905084868281548110610aaf57fe5b90600052602060002001546001600160801b031611610ad057809250610ad7565b6001810391505b50610a8d565b6080858381548110610aeb57fe5b9060005260206000200154901c9250505092915050565b303b1590565b600054610100900460ff1680610b215750610b21610b02565b80610b2f575060005460ff16155b610b6a5760405162461bcd60e51b815260040180806020018281038252602e815260200180610c49602e913960400191505060405180910390fd5b600054610100900460ff16158015610b95576000805460ff1961ff0019909116610100171660011790555b6000610b9f6108e5565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610bff576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220d7beb017e8d9463ed98787bd5ea9a659e1ff5f9bf896329f11c7ee70409a3c7264736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063715018a61161008c5780639dc29fac116100665780639dc29fac14610206578063c4d66de814610232578063cbf1304d14610258578063f2fde38b14610284576100cf565b8063715018a6146101bb5780638da5cb5b146101c5578063981b24d0146101e9576100cf565b806318160ddd146100d4578063313ce567146100ee57806340c10f191461010c5780634ee2cd7e1461014c5780636641d9a01461017857806370a0823114610195575b600080fd5b6100dc6102aa565b60408051918252519081900360200190f35b6100f66102ba565b6040805160ff9092168252519081900360200190f35b6101386004803603604081101561012257600080fd5b506001600160a01b0381351690602001356102c3565b604080519115158252519081900360200190f35b6100dc6004803603604081101561016257600080fd5b506001600160a01b03813516906020013561044b565b6100dc6004803603602081101561018e57600080fd5b50356104da565b6100dc600480360360208110156101ab57600080fd5b50356001600160a01b03166104f8565b6101c361050c565b005b6101cd6105ae565b604080516001600160a01b039092168252519081900360200190f35b6100dc600480360360208110156101ff57600080fd5b50356105bd565b6101386004803603604081101561021c57600080fd5b506001600160a01b03813516906020013561060e565b6101c36004803603602081101561024857600080fd5b50356001600160a01b031661070a565b6100dc6004803603604081101561026e57600080fd5b506001600160a01b0381351690602001356107be565b6101c36004803603602081101561029a57600080fd5b50356001600160a01b03166107ec565b60006102b5436105bd565b905090565b60975460ff1681565b60006102cd6108e5565b6065546001600160a01b0390811691161461031d576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b60006103276102aa565b9050808382011015610378576040805162461bcd60e51b8152602060048201526015602482015274746f74616c20737570706c79206f766572666c6f7760581b604482015290519081900360640190fd5b6000610383856104f8565b90508084820110156103ce576040805162461bcd60e51b815260206004820152600f60248201526e62616c616365206f766572666c6f7760881b604482015290519081900360640190fd5b6103db60998584016108e9565b6001600160a01b03851660009081526098602052604090206103ff908286016108e9565b6040805185815290516001600160a01b038716917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a26001925050505b92915050565b6001600160a01b03821660009081526098602052604081205415806104a457506001600160a01b0383166000908152609860205260408120805484929061048e57fe5b90600052602060002001546001600160801b0316115b156104b157506000610445565b6001600160a01b03831660009081526098602052604090206104d390836109ed565b9050610445565b609981815481106104e757fe5b600091825260209091200154905081565b6000610504824361044b565b90505b919050565b6105146108e5565b6065546001600160a01b03908116911614610564576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b60995460009015806105ef57508160996000815481106105d957fe5b90600052602060002001546001600160801b0316115b156105fc57506000610507565b6106076099836109ed565b9050610507565b60006106186108e5565b6065546001600160a01b03908116911614610668576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b60006106726102aa565b9050826000610680866104f8565b90508181101561068e578091505b61069b60998385036108e9565b6001600160a01b03861660009081526098602052604090206106bf908383036108e9565b6040805183815290516001600160a01b038816917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600195945050505050565b600054610100900460ff16806107235750610723610b02565b80610731575060005460ff16155b61076c5760405162461bcd60e51b815260040180806020018281038252602e815260200180610c49602e913960400191505060405180910390fd5b600054610100900460ff16158015610797576000805460ff1961ff0019909116610100171660011790555b61079f610b08565b6107a8826107ec565b80156107ba576000805461ff00191690555b5050565b609860205281600052604060002081815481106107d757fe5b90600052602060002001600091509150505481565b6107f46108e5565b6065546001600160a01b03908116911614610844576040805162461bcd60e51b81526020600482018190526024820152600080516020610c29833981519152604482015290519081900360640190fd5b6001600160a01b0381166108895760405162461bcd60e51b8152600401808060200182810382526026815260200180610c036026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b80816001600160801b03161461093c576040805162461bcd60e51b815260206004820152601360248201527272657075746174696f6e206f766572666c6f7760681b604482015290519081900360640190fd5b8154158061096f5750815443908390600019810190811061095957fe5b90600052602060002001546001600160801b0316105b1561099d5781546001810183556000838152602090206001600160801b034316608084901b179101556107ba565b608081901b6001600160801b03836001858054905003815481106109bd57fe5b90600052602060002001541617826001848054905003815481106109dd57fe5b6000918252602090912001555050565b81546000906109fe57506000610445565b825483906000198101908110610a1057fe5b90600052602060002001546001600160801b03168210610a5357825460809084906000198101908110610a3f57fe5b9060005260206000200154901c9050610445565b82600081548110610a6057fe5b90600052602060002001546001600160801b0316821015610a8357506000610445565b8254600090600019015b81811115610add576000600260018385010104905084868281548110610aaf57fe5b90600052602060002001546001600160801b031611610ad057809250610ad7565b6001810391505b50610a8d565b6080858381548110610aeb57fe5b9060005260206000200154901c9250505092915050565b303b1590565b600054610100900460ff1680610b215750610b21610b02565b80610b2f575060005460ff16155b610b6a5760405162461bcd60e51b815260040180806020018281038252602e815260200180610c49602e913960400191505060405180910390fd5b600054610100900460ff16158015610b95576000805460ff1961ff0019909116610100171660011790555b6000610b9f6108e5565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610bff576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220d7beb017e8d9463ed98787bd5ea9a659e1ff5f9bf896329f11c7ee70409a3c7264736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ReputationAdmin.json b/contracts/0.1.2-rc.8/ReputationAdmin.json new file mode 100644 index 00000000..8eb54cd1 --- /dev/null +++ b/contracts/0.1.2-rc.8/ReputationAdmin.json @@ -0,0 +1,219 @@ +{ + "contractName": "ReputationAdmin", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "activationEndTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "activationStartTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_activationStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_activationEndTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_maxRepReward", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "limitRepReward", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "repRewardLeft", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "reputationBurn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "_beneficiaries", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "_amounts", + "type": "uint256[]" + } + ], + "name": "reputationMint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611012806100206000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636f15e1e01161008c578063c0b7a42d11610066578063c0b7a42d1461023c578063cc5cd2e7146102fa578063e843cc1814610302578063f2fde38b1461030a576100cf565b80636f15e1e014610224578063715018a61461022c5780638da5cb5b14610234576100cf565b80630f3ce408146100d45780633edf7ca1146101945780634271f6d3146101b85780634ea2c7ec146101d25780635aef7de6146101da5780636c28e349146101e2575b600080fd5b610192600480360360408110156100ea57600080fd5b810190602081018135600160201b81111561010457600080fd5b82018360208201111561011657600080fd5b803590602001918460208302840111600160201b8311171561013757600080fd5b919390929091602081019035600160201b81111561015457600080fd5b82018360208201111561016657600080fd5b803590602001918460208302840111600160201b8311171561018757600080fd5b509092509050610330565b005b61019c610426565b604080516001600160a01b039092168252519081900360200190f35b6101c0610435565b60408051918252519081900360200190f35b6101c061043b565b61019c610441565b610192600480360360a08110156101f857600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160809091013516610450565b6101c06104bc565b6101926104c2565b61019c610564565b6101926004803603604081101561025257600080fd5b810190602081018135600160201b81111561026c57600080fd5b82018360208201111561027e57600080fd5b803590602001918460208302840111600160201b8311171561029f57600080fd5b919390929091602081019035600160201b8111156102bc57600080fd5b8201836020820111156102ce57600080fd5b803590602001918460208302840111600160201b831117156102ef57600080fd5b509092509050610573565b6101c0610662565b6101c0610668565b6101926004803603602081101561032057600080fd5b50356001600160a01b031661066e565b610338610767565b6065546001600160a01b03908116911614610388576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b8281146103d5576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b8381101561041f576104178585838181106103ef57fe5b905060200201356001600160a01b031684848481811061040b57fe5b9050602002013561076b565b6001016103d8565b5050505050565b6098546001600160a01b031681565b609c5481565b60995481565b6097546001600160a01b031681565b82841061048e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b61049785610961565b609a849055609b839055609c829055609d8290556104b3610a79565b61041f8161066e565b609d5481565b6104ca610767565b6065546001600160a01b0390811691161461051a576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b61057b610767565b6065546001600160a01b039081169116146105cb576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b828114610618576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b8381101561041f5761065a85858381811061063257fe5b905060200201356001600160a01b031684848481811061064e57fe5b90506020020135610b73565b60010161061b565b609b5481565b609a5481565b610676610767565b6065546001600160a01b039081169116146106c6576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b6001600160a01b03811661070b5760405162461bcd60e51b8152600401808060200182810382526026815260200180610f1f6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b609a544210156107c2576040805162461bcd60e51b815260206004820181905260248201527f4d696e74696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b609b544210610810576040805162461bcd60e51b815260206004820152601560248201527426b4b73a34b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b609d541561082957609c546108259082610dde565b609c555b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561087757600080fd5b505afa15801561088b573d6000803e3d6000fd5b505050506040513d60208110156108a157600080fd5b50516040805163dea9e24d60e01b8152600481018490526001600160a01b0385811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156108f657600080fd5b505af115801561090a573d6000803e3d6000fd5b505050506040513d602081101561092057600080fd5b505161095d5760405162461bcd60e51b8152600401808060200182810382526021815260200180610f456021913960400191505060405180910390fd5b5050565b600054610100900460ff168061097a575061097a610e27565b80610988575060005460ff16155b6109c35760405162461bcd60e51b815260040180806020018281038252602e815260200180610faf602e913960400191505060405180910390fd5b600054610100900460ff161580156109ee576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610a49576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b609780546001600160a01b0319166001600160a01b038416179055801561095d576000805461ff00191690555050565b600054610100900460ff1680610a925750610a92610e27565b80610aa0575060005460ff16155b610adb5760405162461bcd60e51b815260040180806020018281038252602e815260200180610faf602e913960400191505060405180910390fd5b600054610100900460ff16158015610b06576000805460ff1961ff0019909116610100171660011790555b6000610b10610767565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610b70576000805461ff00191690555b50565b609a54421015610bca576040805162461bcd60e51b815260206004820181905260248201527f4275726e696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b609b544210610c18576040805162461bcd60e51b8152602060048201526015602482015274213ab93734b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b609d5415610c9457609c54609d54610c2f91610dde565b811115610c83576040805162461bcd60e51b815260206004820152601c60248201527f43616e6e6f74206275726e206d6f7265207468616e206d696e74656400000000604482015290519081900360640190fd5b609c54610c909082610e2d565b609c555b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ce257600080fd5b505afa158015610cf6573d6000803e3d6000fd5b505050506040513d6020811015610d0c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018490526001600160a01b0385811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015610d6157600080fd5b505af1158015610d75573d6000803e3d6000fd5b505050506040513d6020811015610d8b57600080fd5b505161095d576040805162461bcd60e51b815260206004820152601e60248201527f4275726e2072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6000610e2083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e87565b9392505050565b303b1590565b600082820183811015610e20576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610f165760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610edb578181015183820152602001610ec3565b50505050905090810190601f168015610f085780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734d696e74696e672072657075746174696f6e2073686f756c6420737563636565645f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212200408a40c977af1a1f6cb215e31a3da278c803d42c1d5afcce8458200f0fd58a864736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636f15e1e01161008c578063c0b7a42d11610066578063c0b7a42d1461023c578063cc5cd2e7146102fa578063e843cc1814610302578063f2fde38b1461030a576100cf565b80636f15e1e014610224578063715018a61461022c5780638da5cb5b14610234576100cf565b80630f3ce408146100d45780633edf7ca1146101945780634271f6d3146101b85780634ea2c7ec146101d25780635aef7de6146101da5780636c28e349146101e2575b600080fd5b610192600480360360408110156100ea57600080fd5b810190602081018135600160201b81111561010457600080fd5b82018360208201111561011657600080fd5b803590602001918460208302840111600160201b8311171561013757600080fd5b919390929091602081019035600160201b81111561015457600080fd5b82018360208201111561016657600080fd5b803590602001918460208302840111600160201b8311171561018757600080fd5b509092509050610330565b005b61019c610426565b604080516001600160a01b039092168252519081900360200190f35b6101c0610435565b60408051918252519081900360200190f35b6101c061043b565b61019c610441565b610192600480360360a08110156101f857600080fd5b506001600160a01b03813581169160208101359160408201359160608101359160809091013516610450565b6101c06104bc565b6101926104c2565b61019c610564565b6101926004803603604081101561025257600080fd5b810190602081018135600160201b81111561026c57600080fd5b82018360208201111561027e57600080fd5b803590602001918460208302840111600160201b8311171561029f57600080fd5b919390929091602081019035600160201b8111156102bc57600080fd5b8201836020820111156102ce57600080fd5b803590602001918460208302840111600160201b831117156102ef57600080fd5b509092509050610573565b6101c0610662565b6101c0610668565b6101926004803603602081101561032057600080fd5b50356001600160a01b031661066e565b610338610767565b6065546001600160a01b03908116911614610388576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b8281146103d5576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b8381101561041f576104178585838181106103ef57fe5b905060200201356001600160a01b031684848481811061040b57fe5b9050602002013561076b565b6001016103d8565b5050505050565b6098546001600160a01b031681565b609c5481565b60995481565b6097546001600160a01b031681565b82841061048e5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b61049785610961565b609a849055609b839055609c829055609d8290556104b3610a79565b61041f8161066e565b609d5481565b6104ca610767565b6065546001600160a01b0390811691161461051a576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b61057b610767565b6065546001600160a01b039081169116146105cb576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b828114610618576040805162461bcd60e51b8152602060048201526016602482015275082e4e4c2f2e640d8cadccee8d040dad2e6dac2e8c6d60531b604482015290519081900360640190fd5b60005b8381101561041f5761065a85858381811061063257fe5b905060200201356001600160a01b031684848481811061064e57fe5b90506020020135610b73565b60010161061b565b609b5481565b609a5481565b610676610767565b6065546001600160a01b039081169116146106c6576040805162461bcd60e51b81526020600482018190526024820152600080516020610f8f833981519152604482015290519081900360640190fd5b6001600160a01b03811661070b5760405162461bcd60e51b8152600401808060200182810382526026815260200180610f1f6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b609a544210156107c2576040805162461bcd60e51b815260206004820181905260248201527f4d696e74696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b609b544210610810576040805162461bcd60e51b815260206004820152601560248201527426b4b73a34b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b609d541561082957609c546108259082610dde565b609c555b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561087757600080fd5b505afa15801561088b573d6000803e3d6000fd5b505050506040513d60208110156108a157600080fd5b50516040805163dea9e24d60e01b8152600481018490526001600160a01b0385811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b1580156108f657600080fd5b505af115801561090a573d6000803e3d6000fd5b505050506040513d602081101561092057600080fd5b505161095d5760405162461bcd60e51b8152600401808060200182810382526021815260200180610f456021913960400191505060405180910390fd5b5050565b600054610100900460ff168061097a575061097a610e27565b80610988575060005460ff16155b6109c35760405162461bcd60e51b815260040180806020018281038252602e815260200180610faf602e913960400191505060405180910390fd5b600054610100900460ff161580156109ee576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610a49576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b609780546001600160a01b0319166001600160a01b038416179055801561095d576000805461ff00191690555050565b600054610100900460ff1680610a925750610a92610e27565b80610aa0575060005460ff16155b610adb5760405162461bcd60e51b815260040180806020018281038252602e815260200180610faf602e913960400191505060405180910390fd5b600054610100900460ff16158015610b06576000805460ff1961ff0019909116610100171660011790555b6000610b10610767565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610b70576000805461ff00191690555b50565b609a54421015610bca576040805162461bcd60e51b815260206004820181905260248201527f4275726e696e6720706572696f6420646964206e6f7420737461727420796574604482015290519081900360640190fd5b609b544210610c18576040805162461bcd60e51b8152602060048201526015602482015274213ab93734b733903832b934b7b21032b73232b21760591b604482015290519081900360640190fd5b609d5415610c9457609c54609d54610c2f91610dde565b811115610c83576040805162461bcd60e51b815260206004820152601c60248201527f43616e6e6f74206275726e206d6f7265207468616e206d696e74656400000000604482015290519081900360640190fd5b609c54610c909082610e2d565b609c555b609760009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ce257600080fd5b505afa158015610cf6573d6000803e3d6000fd5b505050506040513d6020811015610d0c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018490526001600160a01b0385811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015610d6157600080fd5b505af1158015610d75573d6000803e3d6000fd5b505050506040513d6020811015610d8b57600080fd5b505161095d576040805162461bcd60e51b815260206004820152601e60248201527f4275726e2072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b6000610e2083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e87565b9392505050565b303b1590565b600082820183811015610e20576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610f165760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610edb578181015183820152602001610ec3565b50505050905090810190601f168015610f085780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734d696e74696e672072657075746174696f6e2073686f756c6420737563636565645f61637469766174696f6e537461727454696d65203c205f61637469766174696f6e456e6454696d654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212200408a40c977af1a1f6cb215e31a3da278c803d42c1d5afcce8458200f0fd58a864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ReputationFromToken.json b/contracts/0.1.2-rc.8/ReputationFromToken.json new file mode 100644 index 00000000..74c5ce50 --- /dev/null +++ b/contracts/0.1.2-rc.8/ReputationFromToken.json @@ -0,0 +1,200 @@ +{ + "contractName": "ReputationFromToken", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "Redeem", + "type": "event" + }, + { + "inputs": [], + "name": "DELEGATION_HASH_EIP712", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curve", + "outputs": [ + { + "internalType": "contract CurveInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "_tokenContract", + "type": "address" + }, + { + "internalType": "contract CurveInterface", + "name": "_curve", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "redeem", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_signatureType", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_signature", + "type": "bytes" + } + ], + "name": "redeemWithSignature", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "redeems", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "tokenContract", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610cab806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80635aef7de6116100665780635aef7de61461012b5780637165485d1461013357806395a2251f1461013b578063c0c53b8b14610161578063e9d481251461019b5761009e565b806330ca0a53146100a35780633edf7ca1146100bd5780634ea2c7ec146100e1578063511ffbff146100e957806355a373d614610123575b600080fd5b6100ab610220565b60408051918252519081900360200190f35b6100c561026a565b604080516001600160a01b039092168252519081900360200190f35b6100ab610279565b61010f600480360360208110156100ff57600080fd5b50356001600160a01b031661027f565b604080519115158252519081900360200190f35b6100c5610294565b6100c56102a3565b6100c56102b2565b6100ab6004803603602081101561015157600080fd5b50356001600160a01b03166102c1565b6101996004803603606081101561017757600080fd5b506001600160a01b0381358116916020810135821691604090910135166102d3565b005b6100ab600480360360608110156101b157600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156101e157600080fd5b8201836020820111156101f357600080fd5b8035906020019184600183028401116401000000008311171561021557600080fd5b50909250905061030b565b604051602001806022610c2682396022018072616464726573732042656e656669636961727960681b81525060130190506040516020818303038152906040528051906020012081565b6034546001600160a01b031681565b60355481565b60386020526000908152604090205460ff1681565b6036546001600160a01b031681565b6033546001600160a01b031681565b6037546001600160a01b031681565b60006102cd82336104cc565b92915050565b6102dc83610852565b603680546001600160a01b039384166001600160a01b0319918216179091556037805492909316911617905550565b60008084600214156103c457604051602001806022610c26823972616464726573732042656e656669636961727960681b6022820152604080518083036015018152603583018252805160209182012030606090811b60558601528b901b6bffffffffffffffffffffffff191660698501528251808503605d018152607d85018452805190830120609d85019190915260bd808501919091528251808503909101815260dd909301909152815191012091506104169050565b610413308760405160200180836001600160a01b031660601b8152601401826001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012061096b565b90505b600061045a85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506109bc9050565b90506001600160a01b0381166104b7576040805162461bcd60e51b815260206004820152601c60248201527f72656465656d657220616464726573732063616e6e6f74206265203000000000604482015290519081900360640190fd5b6104c187826104cc565b979650505050505050565b6033546000906001600160a01b031661052c576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b6001600160a01b03821660009081526038602052604090205460ff16156105845760405162461bcd60e51b8152600401808060200182810382526034815260200180610bae6034913960400191505060405180910390fd5b6001600160a01b038083166000818152603860209081526040808320805460ff1916600117905560365481516370a0823160e01b815260048101959095529051929416926370a082319260248083019392829003018186803b1580156105e957600080fd5b505afa1580156105fd573d6000803e3d6000fd5b505050506040513d602081101561061357600080fd5b50516037549091506001600160a01b0316156106a45760375460408051631c64813d60e11b81526004810184905290516001600160a01b03909216916338c9027a91602480820192602092909190829003018186803b15801561067557600080fd5b505afa158015610689573d6000803e3d6000fd5b505050506040513d602081101561069f57600080fd5b505190505b6001600160a01b0384166106b6578293505b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561070457600080fd5b505afa158015610718573d6000803e3d6000fd5b505050506040513d602081101561072e57600080fd5b50516040805163dea9e24d60e01b8152600481018490526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b505050506040513d60208110156107ad57600080fd5b5051610800576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b826001600160a01b0316846001600160a01b03167fd12200efa34901b99367694174c3b0d32c99585fdf37c7c26892136ddd0836d9836040518082815260200191505060405180910390a39392505050565b600054610100900460ff168061086b575061086b610ba7565b80610879575060005460ff16155b6108b45760405162461bcd60e51b815260040180806020018281038252602e815260200180610c48602e913960400191505060405180910390fd5b600054610100900460ff161580156108df576000805460ff1961ff0019909116610100171660011790555b6001600160a01b03821661093a576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610967576000805461ff00191690555b5050565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114610a14576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115610a855760405162461bcd60e51b8152600401808060200182810382526022815260200180610be26022913960400191505060405180910390fd5b8060ff16601b14158015610a9d57508060ff16601c14155b15610ad95760405162461bcd60e51b8152600401808060200182810382526022815260200180610c046022913960400191505060405180910390fd5b600060018783868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610b35573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9d576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b9695505050505050565b303b159056fe72656465656d696e672074776963652066726f6d207468652073616d65206163636f756e74206973206e6f7420616c6c6f77656445434453413a20696e76616c6964207369676e6174757265202773272076616c756545434453413a20696e76616c6964207369676e6174757265202776272076616c7565616464726573732052657075746174696f6e46726f6d546f6b656e41646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220c5751671b4dae63c9c527ccba30c05a613cb3231f797eba8812912064d46c57864736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c80635aef7de6116100665780635aef7de61461012b5780637165485d1461013357806395a2251f1461013b578063c0c53b8b14610161578063e9d481251461019b5761009e565b806330ca0a53146100a35780633edf7ca1146100bd5780634ea2c7ec146100e1578063511ffbff146100e957806355a373d614610123575b600080fd5b6100ab610220565b60408051918252519081900360200190f35b6100c561026a565b604080516001600160a01b039092168252519081900360200190f35b6100ab610279565b61010f600480360360208110156100ff57600080fd5b50356001600160a01b031661027f565b604080519115158252519081900360200190f35b6100c5610294565b6100c56102a3565b6100c56102b2565b6100ab6004803603602081101561015157600080fd5b50356001600160a01b03166102c1565b6101996004803603606081101561017757600080fd5b506001600160a01b0381358116916020810135821691604090910135166102d3565b005b6100ab600480360360608110156101b157600080fd5b6001600160a01b03823516916020810135918101906060810160408201356401000000008111156101e157600080fd5b8201836020820111156101f357600080fd5b8035906020019184600183028401116401000000008311171561021557600080fd5b50909250905061030b565b604051602001806022610c2682396022018072616464726573732042656e656669636961727960681b81525060130190506040516020818303038152906040528051906020012081565b6034546001600160a01b031681565b60355481565b60386020526000908152604090205460ff1681565b6036546001600160a01b031681565b6033546001600160a01b031681565b6037546001600160a01b031681565b60006102cd82336104cc565b92915050565b6102dc83610852565b603680546001600160a01b039384166001600160a01b0319918216179091556037805492909316911617905550565b60008084600214156103c457604051602001806022610c26823972616464726573732042656e656669636961727960681b6022820152604080518083036015018152603583018252805160209182012030606090811b60558601528b901b6bffffffffffffffffffffffff191660698501528251808503605d018152607d85018452805190830120609d85019190915260bd808501919091528251808503909101815260dd909301909152815191012091506104169050565b610413308760405160200180836001600160a01b031660601b8152601401826001600160a01b031660601b8152601401925050506040516020818303038152906040528051906020012061096b565b90505b600061045a85858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525086939250506109bc9050565b90506001600160a01b0381166104b7576040805162461bcd60e51b815260206004820152601c60248201527f72656465656d657220616464726573732063616e6e6f74206265203000000000604482015290519081900360640190fd5b6104c187826104cc565b979650505050505050565b6033546000906001600160a01b031661052c576040805162461bcd60e51b815260206004820152601760248201527f73686f756c6420696e697469616c697a65206669727374000000000000000000604482015290519081900360640190fd5b6001600160a01b03821660009081526038602052604090205460ff16156105845760405162461bcd60e51b8152600401808060200182810382526034815260200180610bae6034913960400191505060405180910390fd5b6001600160a01b038083166000818152603860209081526040808320805460ff1916600117905560365481516370a0823160e01b815260048101959095529051929416926370a082319260248083019392829003018186803b1580156105e957600080fd5b505afa1580156105fd573d6000803e3d6000fd5b505050506040513d602081101561061357600080fd5b50516037549091506001600160a01b0316156106a45760375460408051631c64813d60e11b81526004810184905290516001600160a01b03909216916338c9027a91602480820192602092909190829003018186803b15801561067557600080fd5b505afa158015610689573d6000803e3d6000fd5b505050506040513d602081101561069f57600080fd5b505190505b6001600160a01b0384166106b6578293505b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561070457600080fd5b505afa158015610718573d6000803e3d6000fd5b505050506040513d602081101561072e57600080fd5b50516040805163dea9e24d60e01b8152600481018490526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b505050506040513d60208110156107ad57600080fd5b5051610800576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b826001600160a01b0316846001600160a01b03167fd12200efa34901b99367694174c3b0d32c99585fdf37c7c26892136ddd0836d9836040518082815260200191505060405180910390a39392505050565b600054610100900460ff168061086b575061086b610ba7565b80610879575060005460ff16155b6108b45760405162461bcd60e51b815260040180806020018281038252602e815260200180610c48602e913960400191505060405180910390fd5b600054610100900460ff161580156108df576000805460ff1961ff0019909116610100171660011790555b6001600160a01b03821661093a576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610967576000805461ff00191690555b5050565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c8083019490945282518083039094018452605c909101909152815191012090565b60008151604114610a14576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115610a855760405162461bcd60e51b8152600401808060200182810382526022815260200180610be26022913960400191505060405180910390fd5b8060ff16601b14158015610a9d57508060ff16601c14155b15610ad95760405162461bcd60e51b8152600401808060200182810382526022815260200180610c046022913960400191505060405180910390fd5b600060018783868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610b35573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610b9d576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b9695505050505050565b303b159056fe72656465656d696e672074776963652066726f6d207468652073616d65206163636f756e74206973206e6f7420616c6c6f77656445434453413a20696e76616c6964207369676e6174757265202773272076616c756545434453413a20696e76616c6964207369676e6174757265202776272076616c7565616464726573732052657075746174696f6e46726f6d546f6b656e41646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220c5751671b4dae63c9c527ccba30c05a613cb3231f797eba8812912064d46c57864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ReputationTestHelper.json b/contracts/0.1.2-rc.8/ReputationTestHelper.json new file mode 100644 index 00000000..517f9ec0 --- /dev/null +++ b/contracts/0.1.2-rc.8/ReputationTestHelper.json @@ -0,0 +1,91 @@ +{ + "contractName": "ReputationTestHelper", + "abi": [ + { + "inputs": [ + { + "internalType": "contract Reputation", + "name": "_reputation", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_numberOfBurn", + "type": "uint256" + } + ], + "name": "multipleBurn", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_user", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_numberOfMint", + "type": "uint256" + } + ], + "name": "multipleMint", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "reputation", + "outputs": [ + { + "internalType": "contract Reputation", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516102c43803806102c48339818101604052602081101561003357600080fd5b5051600080546001600160a01b039092166001600160a01b031990921691909117905561025f806100656000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80635653eeeb1461004657806391d61f3e1461008a578063c52164c6146100bc575b600080fd5b6100786004803603606081101561005c57600080fd5b506001600160a01b0381351690602081013590604001356100e0565b60408051918252519081900360200190f35b610078600480360360608110156100a057600080fd5b506001600160a01b038135169060208101359060400135610181565b6100c461021a565b604080516001600160a01b039092168252519081900360200190f35b6000805b828110156101795760008054604080516340c10f1960e01b81526001600160a01b03898116600483015260248201899052915191909216926340c10f1992604480820193602093909283900390910190829087803b15801561014557600080fd5b505af1158015610159573d6000803e3d6000fd5b505050506040513d602081101561016f57600080fd5b50506001016100e4565b509392505050565b6000805b82811015610179576000805460408051632770a7eb60e21b81526001600160a01b0389811660048301526024820189905291519190921692639dc29fac92604480820193602093909283900390910190829087803b1580156101e657600080fd5b505af11580156101fa573d6000803e3d6000fd5b505050506040513d602081101561021057600080fd5b5050600101610185565b6000546001600160a01b03168156fea264697066735822122094918311a45381201d9af5d4ee714a61a0b1ad3f33a3775ce861875c0f44997f64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80635653eeeb1461004657806391d61f3e1461008a578063c52164c6146100bc575b600080fd5b6100786004803603606081101561005c57600080fd5b506001600160a01b0381351690602081013590604001356100e0565b60408051918252519081900360200190f35b610078600480360360608110156100a057600080fd5b506001600160a01b038135169060208101359060400135610181565b6100c461021a565b604080516001600160a01b039092168252519081900360200190f35b6000805b828110156101795760008054604080516340c10f1960e01b81526001600160a01b03898116600483015260248201899052915191909216926340c10f1992604480820193602093909283900390910190829087803b15801561014557600080fd5b505af1158015610159573d6000803e3d6000fd5b505050506040513d602081101561016f57600080fd5b50506001016100e4565b509392505050565b6000805b82811015610179576000805460408051632770a7eb60e21b81526001600160a01b0389811660048301526024820189905291519190921692639dc29fac92604480820193602093909283900390910190829087803b1580156101e657600080fd5b505af11580156101fa573d6000803e3d6000fd5b505050506040513d602081101561021057600080fd5b5050600101610185565b6000546001600160a01b03168156fea264697066735822122094918311a45381201d9af5d4ee714a61a0b1ad3f33a3775ce861875c0f44997f64736f6c634300060c0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/ReputationTokenTrade.json b/contracts/0.1.2-rc.8/ReputationTokenTrade.json new file mode 100644 index 00000000..7fd78756 --- /dev/null +++ b/contracts/0.1.2-rc.8/ReputationTokenTrade.json @@ -0,0 +1,489 @@ +{ + "contractName": "ReputationTokenTrade", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_sendToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_sendTokenAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputationAmount", + "type": "uint256" + } + ], + "name": "TokenTradeProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_sendToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_sendTokenAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_reputationAmount", + "type": "uint256" + } + ], + "name": "TokenTradeProposed", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "address", + "name": "beneficiary", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "sendToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "sendTokenAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reputationAmount", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "passed", + "type": "bool" + }, + { + "internalType": "bool", + "name": "decided", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_sendToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_sendTokenAmount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_reputationAmount", + "type": "uint256" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeTokenTrade", + "outputs": [ + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611b7e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063bea75f2811610066578063bea75f2814610373578063d29b5d2f146103af578063e751f271146103e1578063f81f8bf6146103fe576100f5565b80639588378e1461023157806396aee8ea1461025d5780639d4c162d1461031f578063b551c37314610356576100f5565b8063540fbeb3116100d3578063540fbeb3146101985780635aef7de6146101e05780636b8eb403146101e85780637a5cb92c14610214576100f5565b806332ed5b12146100fa5780633edf7ca11461015a5780634ea2c7ec1461017e575b600080fd5b6101176004803603602081101561011057600080fd5b5035610430565b604080516001600160a01b03978816815295909616602086015284860193909352606084019190915215156080830152151560a082015290519081900360c00190f35b610162610477565b604080516001600160a01b039092168252519081900360200190f35b610186610486565b60408051918252519081900360200190f35b6101de60048036036101e08110156101af57600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0013561048c565b005b6101626104ca565b610186600480360360408110156101fe57600080fd5b506001600160a01b0381351690602001356104d9565b6101866004803603602081101561022a57600080fd5b50356105b3565b6101866004803603604081101561024757600080fd5b506001600160a01b0381351690602001356105c5565b6101866004803603608081101561027357600080fd5b6001600160a01b0382351691602081013591604082013591908101906080810160608201356401000000008111156102aa57600080fd5b8201836020820111156102bc57600080fd5b803590602001918460018302840111640100000000831117156102de57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106f6945050505050565b6103426004803603604081101561033557600080fd5b50803590602001356109cb565b604080519115158252519081900360200190f35b6101866004803603602081101561036c57600080fd5b5035610ab6565b6103426004803603608081101561038957600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610d52565b610342600480360360608110156103c557600080fd5b508035906001600160a01b036020820135169060400135610eb6565b6101de600480360360208110156103f757600080fd5b5035611011565b6103426004803603606081101561041457600080fd5b508035906001600160a01b036020820135169060400135611330565b603760205260009081526040902080546001820154600283015460038401546004909401546001600160a01b03938416949390921692909160ff8082169161010090041686565b6034546001600160a01b031681565b60355481565b6104c385858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506114569050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610532576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561057f57600080fd5b505afa158015610593573d6000803e3d6000fd5b505050506040513d60208110156105a957600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b0316331461061e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561066c57600080fd5b505afa158015610680573d6000803e3d6000fd5b505050506040513d602081101561069657600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561057f57600080fd5b60006001600160a01b038516610753576040805162461bcd60e51b815260206004820152601e60248201527f546f6b656e2061646472657373206d757374206e6f74206265206e756c6c0000604482015290519081900360640190fd5b6000841180156107635750600083115b61079e5760405162461bcd60e51b8152600401808060200182810382526032815260200180611abf6032913960400191505060405180910390fd5b6107b36001600160a01b0386163330876116bf565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b039182166064840152519216916388737b5e916084808201926020929091908290030181600087803b15801561081b57600080fd5b505af115801561082f573d6000803e3d6000fd5b505050506040513d602081101561084557600080fd5b50516040805160c081018252338082526001600160a01b0389811660208481018281528587018c815260608088018d815260006080808b0182815260a0808d018481528f855260378a528e85209d518e54908d166001600160a01b0319918216178f55985160018f018054918e1691909a1617909855955160028d0155925160038c015591516004909a018054955115156101000261ff00199b151560ff19909716969096179a909a1694909417909855603684528883204390556033548951808601969096529885018e905284018c90528684528a5196840196909652895197985093968896909316947f1c6bd286568d62058ab20f22bf4c73c316548e32fa0663b4377c6c4b314d19a0948a948e948e948e94919384939284019291890191908190849084905b8381101561098657818101518382015260200161096e565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a4949350505050565b60345460009083906001600160a01b03163314610a24576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b8260011415610a4a576000848152603760205260409020600401805460ff191660011790555b600084815260376020908152604091829020600401805461ff0019166101001790556033548251868152925187936001600160a01b03909216927fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0928290030190a35060019392505050565b60345460009082906001600160a01b03163314610b0f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b5d57600080fd5b505afa158015610b71573d6000803e3d6000fd5b505050506040513d6020811015610b8757600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610bd157600080fd5b505afa158015610be5573d6000803e3d6000fd5b505050506040513d6020811015610bfb57600080fd5b5051610c4e576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c9c57600080fd5b505afa158015610cb0573d6000803e3d6000fd5b505050506040513d6020811015610cc657600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610d1f57600080fd5b505afa158015610d33573d6000803e3d6000fd5b505050506040513d6020811015610d4957600080fd5b50519392505050565b60345460009082906001600160a01b03163314610dab576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610df957600080fd5b505afa158015610e0d573d6000803e3d6000fd5b505050506040513d6020811015610e2357600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610e8057600080fd5b505af1158015610e94573d6000803e3d6000fd5b505050506040513d6020811015610eaa57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314610f0f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f5d57600080fd5b505afa158015610f71573d6000803e3d6000fd5b505050506040513d6020811015610f8757600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015610fdc57600080fd5b505af1158015610ff0573d6000803e3d6000fd5b505050506040513d602081101561100657600080fd5b505195945050505050565b611019611a89565b50600081815260376020908152604091829020825160c08101845281546001600160a01b039081168252600183015416928101929092526002810154928201929092526003820154606082015260049091015460ff8082161515608084015261010090910416151560a082018190526110d9576040805162461bcd60e51b815260206004820152601a60248201527f6d757374206265206120646563696465642070726f706f73616c000000000000604482015290519081900360640190fd5b8060800151156112c85760335460408201516020830151611108926001600160a01b039182169291169061171f565b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561115657600080fd5b505afa15801561116a573d6000803e3d6000fd5b505050506040513d602081101561118057600080fd5b5051606082015182516040805163dea9e24d60e01b815260048101939093526001600160a01b0391821660248401525192169163dea9e24d916044808201926020929091908290030181600087803b1580156111db57600080fd5b505af11580156111ef573d6000803e3d6000fd5b505050506040513d602081101561120557600080fd5b5051611258576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b805160335460208084015160408086015160608088015183516001600160a01b03958616815295860192909252848301919091529051948216948794909216927fa9d8ae828ff6f14e3e1a57423bf74c56d938f7e5099f8c13b92416ae3cd78f33929081900390910190a46112e9565b8051604082015160208301516112e9926001600160a01b039091169161171f565b50600090815260376020526040812080546001600160a01b031990811682556001820180549091169055600281018290556003810191909155600401805461ffff19169055565b60345460009082906001600160a01b03163314611389576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113d757600080fd5b505afa1580156113eb573d6000803e3d6000fd5b505050506040513d602081101561140157600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015610fdc57600080fd5b6001600160a01b0384166114b1576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6114ba85611776565b603480546001600160a01b0319166001600160a01b038616179055826116b6576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561152457818101518382015260200161150c565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561155657600080fd5b505afa15801561156a573d6000803e3d6000fd5b505050506040513d602081101561158057600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b1580156115d257600080fd5b505afa1580156115e6573d6000803e3d6000fd5b505050506040513d6101a08110156115fd57600080fd5b50519050806116af57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561164e578181015183820152602001611636565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561168257600080fd5b505af1158015611696573d6000803e3d6000fd5b505050506040513d60208110156116ac57600080fd5b50505b50506104c3565b50506035555050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261171990859061188f565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261177190849061188f565b505050565b600054610100900460ff168061178f575061178f611a47565b8061179d575060005460ff16155b6117d85760405162461bcd60e51b815260040180806020018281038252602e815260200180611af1602e913960400191505060405180910390fd5b600054610100900460ff16158015611803576000805460ff1961ff0019909116610100171660011790555b6001600160a01b03821661185e576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b038416179055801561188b576000805461ff00191690555b5050565b6118a1826001600160a01b0316611a4d565b6118f2576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106119305780518252601f199092019160209182019101611911565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611992576040519150601f19603f3d011682016040523d82523d6000602084013e611997565b606091505b5091509150816119ee576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b80511561171957808060200190516020811015611a0a57600080fd5b50516117195760405162461bcd60e51b815260040180806020018281038252602a815260200180611b1f602a913960400191505060405180910390fd5b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611a8157508115155b949350505050565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe546f6b656e20616e642072657075746174696f6e20616d6f756e74206d7573742062652067726561746572207468616e2030436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220dd611d57ad2663e477e980eb995ec21a5ce0ac4ecdd69f7342d0d8a7231b54ca64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063bea75f2811610066578063bea75f2814610373578063d29b5d2f146103af578063e751f271146103e1578063f81f8bf6146103fe576100f5565b80639588378e1461023157806396aee8ea1461025d5780639d4c162d1461031f578063b551c37314610356576100f5565b8063540fbeb3116100d3578063540fbeb3146101985780635aef7de6146101e05780636b8eb403146101e85780637a5cb92c14610214576100f5565b806332ed5b12146100fa5780633edf7ca11461015a5780634ea2c7ec1461017e575b600080fd5b6101176004803603602081101561011057600080fd5b5035610430565b604080516001600160a01b03978816815295909616602086015284860193909352606084019190915215156080830152151560a082015290519081900360c00190f35b610162610477565b604080516001600160a01b039092168252519081900360200190f35b610186610486565b60408051918252519081900360200190f35b6101de60048036036101e08110156101af57600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0013561048c565b005b6101626104ca565b610186600480360360408110156101fe57600080fd5b506001600160a01b0381351690602001356104d9565b6101866004803603602081101561022a57600080fd5b50356105b3565b6101866004803603604081101561024757600080fd5b506001600160a01b0381351690602001356105c5565b6101866004803603608081101561027357600080fd5b6001600160a01b0382351691602081013591604082013591908101906080810160608201356401000000008111156102aa57600080fd5b8201836020820111156102bc57600080fd5b803590602001918460018302840111640100000000831117156102de57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106f6945050505050565b6103426004803603604081101561033557600080fd5b50803590602001356109cb565b604080519115158252519081900360200190f35b6101866004803603602081101561036c57600080fd5b5035610ab6565b6103426004803603608081101561038957600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610d52565b610342600480360360608110156103c557600080fd5b508035906001600160a01b036020820135169060400135610eb6565b6101de600480360360208110156103f757600080fd5b5035611011565b6103426004803603606081101561041457600080fd5b508035906001600160a01b036020820135169060400135611330565b603760205260009081526040902080546001820154600283015460038401546004909401546001600160a01b03938416949390921692909160ff8082169161010090041686565b6034546001600160a01b031681565b60355481565b6104c385858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506114569050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610532576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561057f57600080fd5b505afa158015610593573d6000803e3d6000fd5b505050506040513d60208110156105a957600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b0316331461061e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561066c57600080fd5b505afa158015610680573d6000803e3d6000fd5b505050506040513d602081101561069657600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561057f57600080fd5b60006001600160a01b038516610753576040805162461bcd60e51b815260206004820152601e60248201527f546f6b656e2061646472657373206d757374206e6f74206265206e756c6c0000604482015290519081900360640190fd5b6000841180156107635750600083115b61079e5760405162461bcd60e51b8152600401808060200182810382526032815260200180611abf6032913960400191505060405180910390fd5b6107b36001600160a01b0386163330876116bf565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b039182166064840152519216916388737b5e916084808201926020929091908290030181600087803b15801561081b57600080fd5b505af115801561082f573d6000803e3d6000fd5b505050506040513d602081101561084557600080fd5b50516040805160c081018252338082526001600160a01b0389811660208481018281528587018c815260608088018d815260006080808b0182815260a0808d018481528f855260378a528e85209d518e54908d166001600160a01b0319918216178f55985160018f018054918e1691909a1617909855955160028d0155925160038c015591516004909a018054955115156101000261ff00199b151560ff19909716969096179a909a1694909417909855603684528883204390556033548951808601969096529885018e905284018c90528684528a5196840196909652895197985093968896909316947f1c6bd286568d62058ab20f22bf4c73c316548e32fa0663b4377c6c4b314d19a0948a948e948e948e94919384939284019291890191908190849084905b8381101561098657818101518382015260200161096e565b50505050905090810190601f1680156109b35780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a4949350505050565b60345460009083906001600160a01b03163314610a24576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b8260011415610a4a576000848152603760205260409020600401805460ff191660011790555b600084815260376020908152604091829020600401805461ff0019166101001790556033548251868152925187936001600160a01b03909216927fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0928290030190a35060019392505050565b60345460009082906001600160a01b03163314610b0f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610b5d57600080fd5b505afa158015610b71573d6000803e3d6000fd5b505050506040513d6020811015610b8757600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610bd157600080fd5b505afa158015610be5573d6000803e3d6000fd5b505050506040513d6020811015610bfb57600080fd5b5051610c4e576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610c9c57600080fd5b505afa158015610cb0573d6000803e3d6000fd5b505050506040513d6020811015610cc657600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610d1f57600080fd5b505afa158015610d33573d6000803e3d6000fd5b505050506040513d6020811015610d4957600080fd5b50519392505050565b60345460009082906001600160a01b03163314610dab576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610df957600080fd5b505afa158015610e0d573d6000803e3d6000fd5b505050506040513d6020811015610e2357600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610e8057600080fd5b505af1158015610e94573d6000803e3d6000fd5b505050506040513d6020811015610eaa57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314610f0f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f5d57600080fd5b505afa158015610f71573d6000803e3d6000fd5b505050506040513d6020811015610f8757600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015610fdc57600080fd5b505af1158015610ff0573d6000803e3d6000fd5b505050506040513d602081101561100657600080fd5b505195945050505050565b611019611a89565b50600081815260376020908152604091829020825160c08101845281546001600160a01b039081168252600183015416928101929092526002810154928201929092526003820154606082015260049091015460ff8082161515608084015261010090910416151560a082018190526110d9576040805162461bcd60e51b815260206004820152601a60248201527f6d757374206265206120646563696465642070726f706f73616c000000000000604482015290519081900360640190fd5b8060800151156112c85760335460408201516020830151611108926001600160a01b039182169291169061171f565b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561115657600080fd5b505afa15801561116a573d6000803e3d6000fd5b505050506040513d602081101561118057600080fd5b5051606082015182516040805163dea9e24d60e01b815260048101939093526001600160a01b0391821660248401525192169163dea9e24d916044808201926020929091908290030181600087803b1580156111db57600080fd5b505af11580156111ef573d6000803e3d6000fd5b505050506040513d602081101561120557600080fd5b5051611258576040805162461bcd60e51b815260206004820152601e60248201527f6d696e742072657075746174696f6e2073686f756c6420737563636565640000604482015290519081900360640190fd5b805160335460208084015160408086015160608088015183516001600160a01b03958616815295860192909252848301919091529051948216948794909216927fa9d8ae828ff6f14e3e1a57423bf74c56d938f7e5099f8c13b92416ae3cd78f33929081900390910190a46112e9565b8051604082015160208301516112e9926001600160a01b039091169161171f565b50600090815260376020526040812080546001600160a01b031990811682556001820180549091169055600281018290556003810191909155600401805461ffff19169055565b60345460009082906001600160a01b03163314611389576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113d757600080fd5b505afa1580156113eb573d6000803e3d6000fd5b505050506040513d602081101561140157600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015610fdc57600080fd5b6001600160a01b0384166114b1576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6114ba85611776565b603480546001600160a01b0319166001600160a01b038616179055826116b6576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561152457818101518382015260200161150c565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561155657600080fd5b505afa15801561156a573d6000803e3d6000fd5b505050506040513d602081101561158057600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b1580156115d257600080fd5b505afa1580156115e6573d6000803e3d6000fd5b505050506040513d6101a08110156115fd57600080fd5b50519050806116af57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561164e578181015183820152602001611636565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561168257600080fd5b505af1158015611696573d6000803e3d6000fd5b505050506040513d60208110156116ac57600080fd5b50505b50506104c3565b50506035555050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261171990859061188f565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b17905261177190849061188f565b505050565b600054610100900460ff168061178f575061178f611a47565b8061179d575060005460ff16155b6117d85760405162461bcd60e51b815260040180806020018281038252602e815260200180611af1602e913960400191505060405180910390fd5b600054610100900460ff16158015611803576000805460ff1961ff0019909116610100171660011790555b6001600160a01b03821661185e576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b038416179055801561188b576000805461ff00191690555b5050565b6118a1826001600160a01b0316611a4d565b6118f2576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b602083106119305780518252601f199092019160209182019101611911565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611992576040519150601f19603f3d011682016040523d82523d6000602084013e611997565b606091505b5091509150816119ee576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b80511561171957808060200190516020811015611a0a57600080fd5b50516117195760405162461bcd60e51b815260040180806020018281038252602a815260200180611b1f602a913960400191505060405180910390fd5b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611a8157508115155b949350505050565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091529056fe546f6b656e20616e642072657075746174696f6e20616d6f756e74206d7573742062652067726561746572207468616e2030436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220dd611d57ad2663e477e980eb995ec21a5ce0ac4ecdd69f7342d0d8a7231b54ca64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Rewarder.json b/contracts/0.1.2-rc.8/Rewarder.json new file mode 100644 index 00000000..31c5d5c2 --- /dev/null +++ b/contracts/0.1.2-rc.8/Rewarder.json @@ -0,0 +1,20 @@ +{ + "contractName": "Rewarder", + "abi": [ + { + "inputs": [ + { + "internalType": "address payable", + "name": "", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/RewarderMock.json b/contracts/0.1.2-rc.8/RewarderMock.json new file mode 100644 index 00000000..684b7d4d --- /dev/null +++ b/contracts/0.1.2-rc.8/RewarderMock.json @@ -0,0 +1,125 @@ +{ + "contractName": "RewarderMock", + "abi": [ + { + "inputs": [], + "name": "contributionRewardExt", + "outputs": [ + { + "internalType": "contract ContributionRewardExt", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "_contributionRewardExt", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemEtherByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemExternalTokenByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemNativeTokenByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "redeemReputationByRewarder", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610363806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80632ac8c1b2146100675780636e8a61881461009b578063a65cd35a146100cd578063c4a17ec9146100f1578063c4d66de814610123578063de9a957a14610149575b600080fd5b6100996004803603606081101561007d57600080fd5b508035906001600160a01b03602082013516906040013561017b565b005b610099600480360360608110156100b157600080fd5b508035906001600160a01b0360208201351690604001356101f1565b6100d561024a565b604080516001600160a01b039092168252519081900360200190f35b6100996004803603606081101561010757600080fd5b508035906001600160a01b036020820135169060400135610259565b6100996004803603602081101561013957600080fd5b50356001600160a01b03166102b2565b6100996004803603606081101561015f57600080fd5b508035906001600160a01b0360208201351690604001356102d4565b600080546040805163156460d960e11b8152600481018790526001600160a01b0386811660248301526044820186905291519190921692632ac8c1b2926064808201939182900301818387803b1580156101d457600080fd5b505af11580156101e8573d6000803e3d6000fd5b50505050505050565b6000805460408051630dd14c3160e31b8152600481018790526001600160a01b0386811660248301526044820186905291519190921692636e8a6188926064808201939182900301818387803b1580156101d457600080fd5b6000546001600160a01b031681565b600080546040805163c4a17ec960e01b8152600481018790526001600160a01b038681166024830152604482018690529151919092169263c4a17ec9926064808201939182900301818387803b1580156101d457600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000805460408051636f4d4abd60e11b8152600481018790526001600160a01b038681166024830152604482018690529151919092169263de9a957a926064808201939182900301818387803b1580156101d457600080fdfea2646970667358221220f46b72a3ce38a0f031c3ad1da40cf995c78f860d43dcedff5064a9c8d28ae20064736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c80632ac8c1b2146100675780636e8a61881461009b578063a65cd35a146100cd578063c4a17ec9146100f1578063c4d66de814610123578063de9a957a14610149575b600080fd5b6100996004803603606081101561007d57600080fd5b508035906001600160a01b03602082013516906040013561017b565b005b610099600480360360608110156100b157600080fd5b508035906001600160a01b0360208201351690604001356101f1565b6100d561024a565b604080516001600160a01b039092168252519081900360200190f35b6100996004803603606081101561010757600080fd5b508035906001600160a01b036020820135169060400135610259565b6100996004803603602081101561013957600080fd5b50356001600160a01b03166102b2565b6100996004803603606081101561015f57600080fd5b508035906001600160a01b0360208201351690604001356102d4565b600080546040805163156460d960e11b8152600481018790526001600160a01b0386811660248301526044820186905291519190921692632ac8c1b2926064808201939182900301818387803b1580156101d457600080fd5b505af11580156101e8573d6000803e3d6000fd5b50505050505050565b6000805460408051630dd14c3160e31b8152600481018790526001600160a01b0386811660248301526044820186905291519190921692636e8a6188926064808201939182900301818387803b1580156101d457600080fd5b6000546001600160a01b031681565b600080546040805163c4a17ec960e01b8152600481018790526001600160a01b038681166024830152604482018690529151919092169263c4a17ec9926064808201939182900301818387803b1580156101d457600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000805460408051636f4d4abd60e11b8152600481018790526001600160a01b038681166024830152604482018690529151919092169263de9a957a926064808201939182900301818387803b1580156101d457600080fdfea2646970667358221220f46b72a3ce38a0f031c3ad1da40cf995c78f860d43dcedff5064a9c8d28ae20064736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/SafeERC20.json b/contracts/0.1.2-rc.8/SafeERC20.json new file mode 100644 index 00000000..822365ef --- /dev/null +++ b/contracts/0.1.2-rc.8/SafeERC20.json @@ -0,0 +1,6 @@ +{ + "contractName": "SafeERC20", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202106998467b2ab1d20a7dbab89fb85bb411b22a9f4519b2e9d698377f53f831b64736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202106998467b2ab1d20a7dbab89fb85bb411b22a9f4519b2e9d698377f53f831b64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/SafeMath.json b/contracts/0.1.2-rc.8/SafeMath.json new file mode 100644 index 00000000..5519a4fa --- /dev/null +++ b/contracts/0.1.2-rc.8/SafeMath.json @@ -0,0 +1,6 @@ +{ + "contractName": "SafeMath", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208563d890a7279358a13be2ada6cd662ae2417d1d3111accb32d931f7787c4cc464736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212208563d890a7279358a13be2ada6cd662ae2417d1d3111accb32d931f7787c4cc464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/SchemeFactory.json b/contracts/0.1.2-rc.8/SchemeFactory.json new file mode 100644 index 00000000..dab258dc --- /dev/null +++ b/contracts/0.1.2-rc.8/SchemeFactory.json @@ -0,0 +1,482 @@ +{ + "contractName": "SchemeFactory", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_schemeName", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_schemeData", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint64[3]", + "name": "_packageVersion", + "type": "uint64[3]" + }, + { + "indexed": false, + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + }, + { + "indexed": false, + "internalType": "address", + "name": "_schemeToReplace", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewSchemeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "daoFactory", + "outputs": [ + { + "internalType": "contract DAOFactory", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + }, + { + "internalType": "contract DAOFactory", + "name": "_daoFactory", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "string", + "name": "schemeName", + "type": "string" + }, + { + "internalType": "bytes", + "name": "schemeData", + "type": "bytes" + }, + { + "internalType": "address", + "name": "schemeToReplace", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "permissions", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "_packageVersion", + "type": "uint64[3]" + }, + { + "internalType": "string", + "name": "_schemeName", + "type": "string" + }, + { + "internalType": "bytes", + "name": "_schemeData", + "type": "bytes" + }, + { + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + }, + { + "internalType": "address", + "name": "_schemeToReplace", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeScheme", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061262b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80637a5cb92c11610097578063b551c37311610066578063b551c37314610566578063bea75f2814610583578063d29b5d2f146105bf578063f81f8bf6146105f1576100f5565b80637a5cb92c146104975780639588378e146104b4578063985e313f146104e05780639d4c162d1461052f576100f5565b80634ea2c7ec116100d35780634ea2c7ec146102425780635aef7de61461025c57806369270334146102645780636b8eb4031461046b576100f5565b806332ed5b12146100fa5780633edf7ca11461021657806348f7f2a31461023a575b600080fd5b6101176004803603602081101561011057600080fd5b5035610623565b604051808060200180602001856001600160a01b03168152602001846001600160e01b0319168152602001838103835287818151815260200191508051906020019080838360005b8381101561017757818101518382015260200161015f565b50505050905090810190601f1680156101a45780820380516001836020036101000a031916815260200191505b50838103825286518152865160209182019188019080838360005b838110156101d75781810151838201526020016101bf565b50505050905090810190601f1680156102045780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b61021e61077d565b604080516001600160a01b039092168252519081900360200190f35b61021e61078c565b61024a61079b565b60408051918252519081900360200190f35b61021e6107a1565b61024a600480360361010081101561027b57600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600092019190915250919493926020810192503590506401000000008111156102c957600080fd5b8201836020820111156102db57600080fd5b803590602001918460018302840111640100000000831117156102fd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561035057600080fd5b82018360208201111561036257600080fd5b8035906020019184600183028401116401000000008311171561038457600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092956001600160e01b0319853516956001600160a01b03602087013516959194509250606081019150604001356401000000008111156103f657600080fd5b82018360208201111561040857600080fd5b8035906020019184600183028401116401000000008311171561042a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506107b0945050505050565b61024a6004803603604081101561048157600080fd5b506001600160a01b038135169060200135610f35565b61024a600480360360208110156104ad57600080fd5b503561100f565b61024a600480360360408110156104ca57600080fd5b506001600160a01b038135169060200135611021565b61052d60048036036102008110156104f757600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0013516611152565b005b6105526004803603604081101561054557600080fd5b50803590602001356111b0565b604080519115158252519081900360200190f35b61024a6004803603602081101561057c57600080fd5b5035611927565b6105526004803603608081101561059957600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611bbe565b610552600480360360608110156105d557600080fd5b508035906001600160a01b036020820135169060400135611d22565b6105526004803603606081101561060757600080fd5b508035906001600160a01b036020820135169060400135611e7d565b60376020908152600091825260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529092918391908301828280156106ba5780601f1061068f576101008083540402835291602001916106ba565b820191906000526020600020905b81548152906001019060200180831161069d57829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107585780601f1061072d57610100808354040283529160200191610758565b820191906000526020600020905b81548152906001019060200180831161073b57829003601f168201915b505050600390930154919250506001600160a01b03811690600160a01b900460e01b84565b6034546001600160a01b031681565b6038546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107f557600080fd5b505afa158015610809573d6000803e3d6000fd5b505050506040513d602081101561081f57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561086957600080fd5b505afa15801561087d573d6000803e3d6000fd5b505050506040513d602081101561089357600080fd5b50516108e1576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b855115610a3557603854604051632346e68b60e01b81526000916001600160a01b031690632346e68b908a908a90600401808360608083838b5b8381101561093357818101518382015260200161091b565b5050505090500180602001828103825283818151815260200191508051906020019080838360005b8381101561097357818101518382015260200161095b565b50505050905090810190601f1680156109a05780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b1580156109be57600080fd5b505afa1580156109d2573d6000803e3d6000fd5b505050506040513d60208110156109e857600080fd5b50516001600160a01b03161415610a305760405162461bcd60e51b81526004018080602001828103825260258152602001806125286025913960400191505060405180910390fd5b610ba6565b6001600160a01b03831615610b6f5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610a8957600080fd5b505afa158015610a9d573d6000803e3d6000fd5b505050506040513d6020811015610ab357600080fd5b505160408051632074193160e21b81526001600160a01b0387811660048301529151929350908316916381d064c491602480820192602092909190829003018186803b158015610b0257600080fd5b505afa158015610b16573d6000803e3d6000fd5b505050506040513d6020811015610b2c57600080fd5b5051610b695760405162461bcd60e51b815260040180806020018281038252603781526020018061254d6037913960400191505060405180910390fd5b50610ba6565b60405162461bcd60e51b81526004018080602001828103825260448152602001806125846044913960600191505060405180910390fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610c1157600080fd5b505af1158015610c25573d6000803e3d6000fd5b505050506040513d6020811015610c3b57600080fd5b50519050610c4761232f565b6040518060a001604052808981526020018881526020018a8152602001866001600160a01b03168152602001876001600160e01b0319168152509050603460009054906101000a90046001600160a01b03166001600160a01b031682603360009054906101000a90046001600160a01b03166001600160a01b03167fb390521055def5ff9aeb5a6ab0b72337c61966ac7070f15dc31fd2df4adf9bf38b8b8e8c8c8c60405180806020018060200187600360200280838360005b83811015610d19578181015183820152602001610d01565b50505050905001866001600160e01b0319168152602001856001600160a01b031681526020018060200184810384528a818151815260200191508051906020019080838360005b83811015610d78578181015183820152602001610d60565b50505050905090810190601f168015610da55780820380516001836020036101000a031916815260200191505b5084810383528951815289516020918201918b019080838360005b83811015610dd8578181015183820152602001610dc0565b50505050905090810190601f168015610e055780820380516001836020036101000a031916815260200191505b50848103825285518152855160209182019187019080838360005b83811015610e38578181015183820152602001610e20565b50505050905090810190601f168015610e655780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a46000828152603760209081526040909120825180518493610e9e928492910190612364565b506020828101518051610eb79260018501920190612364565b506040820151610ecd90600283019060036123e2565b5060608201516003909101805460809093015160e01c600160a01b0263ffffffff60a01b196001600160a01b039093166001600160a01b0319909416939093179190911691909117905550600081815260366020526040902043905590509695505050505050565b60345460009082906001600160a01b03163314610f8e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610fdb57600080fd5b505afa158015610fef573d6000803e3d6000fd5b505050506040513d602081101561100557600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b0316331461107a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156110c857600080fd5b505afa1580156110dc573d6000803e3d6000fd5b505050506040513d60208110156110f257600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610fdb57600080fd5b61118986868487600b806020026040519081016040528092919082600b60200280828437600092019190915250899150611fa39050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b03163314611209576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b61121161232f565b6000858152603760209081526040918290208251815460026001821615610100026000190190911604601f8101849004909302810160c090810190945260a081018381529093919284928491908401828280156112af5780601f10611284576101008083540402835291602001916112af565b820191906000526020600020905b81548152906001019060200180831161129257829003601f168201915b50505050508152602001600182018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113515780601f1061132657610100808354040283529160200191611351565b820191906000526020600020905b81548152906001019060200180831161133457829003601f168201915b5050509183525050604080516060810191829052602090920191906002840190600390826000855b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001906008019060208260070104928301926001038202915080841161137957505050928452505050600391909101546001600160a01b038116602080840191909152600160a01b90910460e01b6001600160e01b031916604092830152600088815260379091529081209192506114138282612486565b611421600183016000612486565b61142f6002830160006124cd565b5060030180546001600160c01b031916905560335460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156114be57600080fd5b505afa1580156114d2573d6000803e3d6000fd5b505050506040513d60208110156114e857600080fd5b5051905060018514156118d8578151511561176e57603854604080840151845160335460208701519351634b6c2f7760e11b81526000956001600160a01b03908116956396d85eee95949390911691600401808560608083838d5b8381101561155b578181015183820152602001611543565b5050505090500180602001846001600160a01b0316815260200180602001838103835286818151815260200191508051906020019080838360005b838110156115ae578181015183820152602001611596565b50505050905090810190601f1680156115db5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b8381101561160e5781810151838201526020016115f6565b50505050905090810190601f16801561163b5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b15801561165e57600080fd5b505af1158015611672573d6000803e3d6000fd5b505050506040513d602081101561168857600080fd5b5051608084015160408051635d1da8cb60e01b81526001600160a01b0380851660048301526001600160e01b03199093166024820152905192935090841691635d1da8cb916044808201926020929091908290030181600087803b1580156116ef57600080fd5b505af1158015611703573d6000803e3d6000fd5b505050506040513d602081101561171957600080fd5b505161176c576040805162461bcd60e51b815260206004820152601c60248201527f6661696c6420746f207265676973746572206e657720736368656d6500000000604482015290519081900360640190fd5b505b60608201516001600160a01b0316158015906118035750806001600160a01b03166381d064c483606001516040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b1580156117d657600080fd5b505afa1580156117ea573d6000803e3d6000fd5b505050506040513d602081101561180057600080fd5b50515b156118d857806001600160a01b031663653915e583606001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b15801561185b57600080fd5b505af115801561186f573d6000803e3d6000fd5b505050506040513d602081101561188557600080fd5b50516118d8576040805162461bcd60e51b815260206004820152601e60248201527f6661696c6420746f20756e7265676973746572206f6c6420736368656d650000604482015290519081900360640190fd5b60335460408051878152905188926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a350600195945050505050565b60345460009082906001600160a01b03163314611980576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156119ce57600080fd5b505afa1580156119e2573d6000803e3d6000fd5b505050506040513d60208110156119f857600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611a4257600080fd5b505afa158015611a56573d6000803e3d6000fd5b505050506040513d6020811015611a6c57600080fd5b5051611aba576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611b0857600080fd5b505afa158015611b1c573d6000803e3d6000fd5b505050506040513d6020811015611b3257600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611b8b57600080fd5b505afa158015611b9f573d6000803e3d6000fd5b505050506040513d6020811015611bb557600080fd5b50519392505050565b60345460009082906001600160a01b03163314611c17576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c6557600080fd5b505afa158015611c79573d6000803e3d6000fd5b505050506040513d6020811015611c8f57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611cec57600080fd5b505af1158015611d00573d6000803e3d6000fd5b505050506040513d6020811015611d1657600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611d7b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611dc957600080fd5b505afa158015611ddd573d6000803e3d6000fd5b505050506040513d6020811015611df357600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015611e4857600080fd5b505af1158015611e5c573d6000803e3d6000fd5b505050506040513d6020811015611e7257600080fd5b505195945050505050565b60345460009082906001600160a01b03163314611ed6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611f2457600080fd5b505afa158015611f38573d6000803e3d6000fd5b505050506040513d6020811015611f4e57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015611e4857600080fd5b6001600160a01b038416611ffe576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61200785612210565b603480546001600160a01b0319166001600160a01b03861617905582612203576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015612071578181015183820152602001612059565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156120a357600080fd5b505afa1580156120b7573d6000803e3d6000fd5b505050506040513d60208110156120cd57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561211f57600080fd5b505afa158015612133573d6000803e3d6000fd5b505050506040513d6101a081101561214a57600080fd5b50519050806121fc57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561219b578181015183820152602001612183565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156121cf57600080fd5b505af11580156121e3573d6000803e3d6000fd5b505050506040513d60208110156121f957600080fd5b50505b5050612209565b60358390555b5050505050565b600054610100900460ff16806122295750612229612329565b80612237575060005460ff16155b6122725760405162461bcd60e51b815260040180806020018281038252602e8152602001806125c8602e913960400191505060405180910390fd5b600054610100900460ff1615801561229d576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166122f8576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015612325576000805461ff00191690555b5050565b303b1590565b6040518060a0016040528060608152602001606081526020016123506124d4565b815260006020820181905260409091015290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123a557805160ff19168380011785556123d2565b828001600101855582156123d2579182015b828111156123d25782518255916020019190600101906123b7565b506123de9291506124f2565b5090565b60018301918390821561247a5791602002820160005b8382111561244457835183826101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555092602001926008016020816007010492830192600103026123f8565b80156124785782816101000a81549067ffffffffffffffff0219169055600801602081600701049283019260010302612444565b505b506123de929150612507565b50805460018160011615610100020316600290046000825580601f106124ac57506124ca565b601f0160209004906000526020600020908101906124ca91906124f2565b50565b5060009055565b60405180606001604052806003906020820280368337509192915050565b5b808211156123de57600081556001016124f3565b5b808211156123de57805467ffffffffffffffff1916815560010161250856fe736368656d65206e616d6520646f6573206e6f7420657869737420696e2041726348697665736368656d6520746f207265706c616365206973206e6f74207265676973746572656420696e20746865206f7267616e697a6174696f6e70726f706f73616c206d7573742068617665206120736368656d65206e616d6520746f2072656973746572206f72206164647265737320746f20756e7265676973746572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212200b8ab90af5b2f97c563437b8c88c232d33069623f6dec2c5274c330b0f1eaaee64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80637a5cb92c11610097578063b551c37311610066578063b551c37314610566578063bea75f2814610583578063d29b5d2f146105bf578063f81f8bf6146105f1576100f5565b80637a5cb92c146104975780639588378e146104b4578063985e313f146104e05780639d4c162d1461052f576100f5565b80634ea2c7ec116100d35780634ea2c7ec146102425780635aef7de61461025c57806369270334146102645780636b8eb4031461046b576100f5565b806332ed5b12146100fa5780633edf7ca11461021657806348f7f2a31461023a575b600080fd5b6101176004803603602081101561011057600080fd5b5035610623565b604051808060200180602001856001600160a01b03168152602001846001600160e01b0319168152602001838103835287818151815260200191508051906020019080838360005b8381101561017757818101518382015260200161015f565b50505050905090810190601f1680156101a45780820380516001836020036101000a031916815260200191505b50838103825286518152865160209182019188019080838360005b838110156101d75781810151838201526020016101bf565b50505050905090810190601f1680156102045780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b61021e61077d565b604080516001600160a01b039092168252519081900360200190f35b61021e61078c565b61024a61079b565b60408051918252519081900360200190f35b61021e6107a1565b61024a600480360361010081101561027b57600080fd5b8101908080606001906003806020026040519081016040528092919082600360200280828437600092019190915250919493926020810192503590506401000000008111156102c957600080fd5b8201836020820111156102db57600080fd5b803590602001918460018302840111640100000000831117156102fd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929594936020810193503591505064010000000081111561035057600080fd5b82018360208201111561036257600080fd5b8035906020019184600183028401116401000000008311171561038457600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092956001600160e01b0319853516956001600160a01b03602087013516959194509250606081019150604001356401000000008111156103f657600080fd5b82018360208201111561040857600080fd5b8035906020019184600183028401116401000000008311171561042a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506107b0945050505050565b61024a6004803603604081101561048157600080fd5b506001600160a01b038135169060200135610f35565b61024a600480360360208110156104ad57600080fd5b503561100f565b61024a600480360360408110156104ca57600080fd5b506001600160a01b038135169060200135611021565b61052d60048036036102008110156104f757600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0013516611152565b005b6105526004803603604081101561054557600080fd5b50803590602001356111b0565b604080519115158252519081900360200190f35b61024a6004803603602081101561057c57600080fd5b5035611927565b6105526004803603608081101561059957600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611bbe565b610552600480360360608110156105d557600080fd5b508035906001600160a01b036020820135169060400135611d22565b6105526004803603606081101561060757600080fd5b508035906001600160a01b036020820135169060400135611e7d565b60376020908152600091825260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529092918391908301828280156106ba5780601f1061068f576101008083540402835291602001916106ba565b820191906000526020600020905b81548152906001019060200180831161069d57829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107585780601f1061072d57610100808354040283529160200191610758565b820191906000526020600020905b81548152906001019060200180831161073b57829003601f168201915b505050600390930154919250506001600160a01b03811690600160a01b900460e01b84565b6034546001600160a01b031681565b6038546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107f557600080fd5b505afa158015610809573d6000803e3d6000fd5b505050506040513d602081101561081f57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561086957600080fd5b505afa15801561087d573d6000803e3d6000fd5b505050506040513d602081101561089357600080fd5b50516108e1576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b855115610a3557603854604051632346e68b60e01b81526000916001600160a01b031690632346e68b908a908a90600401808360608083838b5b8381101561093357818101518382015260200161091b565b5050505090500180602001828103825283818151815260200191508051906020019080838360005b8381101561097357818101518382015260200161095b565b50505050905090810190601f1680156109a05780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b1580156109be57600080fd5b505afa1580156109d2573d6000803e3d6000fd5b505050506040513d60208110156109e857600080fd5b50516001600160a01b03161415610a305760405162461bcd60e51b81526004018080602001828103825260258152602001806125286025913960400191505060405180910390fd5b610ba6565b6001600160a01b03831615610b6f5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610a8957600080fd5b505afa158015610a9d573d6000803e3d6000fd5b505050506040513d6020811015610ab357600080fd5b505160408051632074193160e21b81526001600160a01b0387811660048301529151929350908316916381d064c491602480820192602092909190829003018186803b158015610b0257600080fd5b505afa158015610b16573d6000803e3d6000fd5b505050506040513d6020811015610b2c57600080fd5b5051610b695760405162461bcd60e51b815260040180806020018281038252603781526020018061254d6037913960400191505060405180910390fd5b50610ba6565b60405162461bcd60e51b81526004018080602001828103825260448152602001806125846044913960600191505060405180910390fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b158015610c1157600080fd5b505af1158015610c25573d6000803e3d6000fd5b505050506040513d6020811015610c3b57600080fd5b50519050610c4761232f565b6040518060a001604052808981526020018881526020018a8152602001866001600160a01b03168152602001876001600160e01b0319168152509050603460009054906101000a90046001600160a01b03166001600160a01b031682603360009054906101000a90046001600160a01b03166001600160a01b03167fb390521055def5ff9aeb5a6ab0b72337c61966ac7070f15dc31fd2df4adf9bf38b8b8e8c8c8c60405180806020018060200187600360200280838360005b83811015610d19578181015183820152602001610d01565b50505050905001866001600160e01b0319168152602001856001600160a01b031681526020018060200184810384528a818151815260200191508051906020019080838360005b83811015610d78578181015183820152602001610d60565b50505050905090810190601f168015610da55780820380516001836020036101000a031916815260200191505b5084810383528951815289516020918201918b019080838360005b83811015610dd8578181015183820152602001610dc0565b50505050905090810190601f168015610e055780820380516001836020036101000a031916815260200191505b50848103825285518152855160209182019187019080838360005b83811015610e38578181015183820152602001610e20565b50505050905090810190601f168015610e655780820380516001836020036101000a031916815260200191505b50995050505050505050505060405180910390a46000828152603760209081526040909120825180518493610e9e928492910190612364565b506020828101518051610eb79260018501920190612364565b506040820151610ecd90600283019060036123e2565b5060608201516003909101805460809093015160e01c600160a01b0263ffffffff60a01b196001600160a01b039093166001600160a01b0319909416939093179190911691909117905550600081815260366020526040902043905590509695505050505050565b60345460009082906001600160a01b03163314610f8e576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610fdb57600080fd5b505afa158015610fef573d6000803e3d6000fd5b505050506040513d602081101561100557600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b0316331461107a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156110c857600080fd5b505afa1580156110dc573d6000803e3d6000fd5b505050506040513d60208110156110f257600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610fdb57600080fd5b61118986868487600b806020026040519081016040528092919082600b60200280828437600092019190915250899150611fa39050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b03163314611209576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b61121161232f565b6000858152603760209081526040918290208251815460026001821615610100026000190190911604601f8101849004909302810160c090810190945260a081018381529093919284928491908401828280156112af5780601f10611284576101008083540402835291602001916112af565b820191906000526020600020905b81548152906001019060200180831161129257829003601f168201915b50505050508152602001600182018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113515780601f1061132657610100808354040283529160200191611351565b820191906000526020600020905b81548152906001019060200180831161133457829003601f168201915b5050509183525050604080516060810191829052602090920191906002840190600390826000855b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001906008019060208260070104928301926001038202915080841161137957505050928452505050600391909101546001600160a01b038116602080840191909152600160a01b90910460e01b6001600160e01b031916604092830152600088815260379091529081209192506114138282612486565b611421600183016000612486565b61142f6002830160006124cd565b5060030180546001600160c01b031916905560335460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156114be57600080fd5b505afa1580156114d2573d6000803e3d6000fd5b505050506040513d60208110156114e857600080fd5b5051905060018514156118d8578151511561176e57603854604080840151845160335460208701519351634b6c2f7760e11b81526000956001600160a01b03908116956396d85eee95949390911691600401808560608083838d5b8381101561155b578181015183820152602001611543565b5050505090500180602001846001600160a01b0316815260200180602001838103835286818151815260200191508051906020019080838360005b838110156115ae578181015183820152602001611596565b50505050905090810190601f1680156115db5780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b8381101561160e5781810151838201526020016115f6565b50505050905090810190601f16801561163b5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b15801561165e57600080fd5b505af1158015611672573d6000803e3d6000fd5b505050506040513d602081101561168857600080fd5b5051608084015160408051635d1da8cb60e01b81526001600160a01b0380851660048301526001600160e01b03199093166024820152905192935090841691635d1da8cb916044808201926020929091908290030181600087803b1580156116ef57600080fd5b505af1158015611703573d6000803e3d6000fd5b505050506040513d602081101561171957600080fd5b505161176c576040805162461bcd60e51b815260206004820152601c60248201527f6661696c6420746f207265676973746572206e657720736368656d6500000000604482015290519081900360640190fd5b505b60608201516001600160a01b0316158015906118035750806001600160a01b03166381d064c483606001516040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b1580156117d657600080fd5b505afa1580156117ea573d6000803e3d6000fd5b505050506040513d602081101561180057600080fd5b50515b156118d857806001600160a01b031663653915e583606001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b15801561185b57600080fd5b505af115801561186f573d6000803e3d6000fd5b505050506040513d602081101561188557600080fd5b50516118d8576040805162461bcd60e51b815260206004820152601e60248201527f6661696c6420746f20756e7265676973746572206f6c6420736368656d650000604482015290519081900360640190fd5b60335460408051878152905188926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a350600195945050505050565b60345460009082906001600160a01b03163314611980576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156119ce57600080fd5b505afa1580156119e2573d6000803e3d6000fd5b505050506040513d60208110156119f857600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015611a4257600080fd5b505afa158015611a56573d6000803e3d6000fd5b505050506040513d6020811015611a6c57600080fd5b5051611aba576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015611b0857600080fd5b505afa158015611b1c573d6000803e3d6000fd5b505050506040513d6020811015611b3257600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015611b8b57600080fd5b505afa158015611b9f573d6000803e3d6000fd5b505050506040513d6020811015611bb557600080fd5b50519392505050565b60345460009082906001600160a01b03163314611c17576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c6557600080fd5b505afa158015611c79573d6000803e3d6000fd5b505050506040513d6020811015611c8f57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015611cec57600080fd5b505af1158015611d00573d6000803e3d6000fd5b505050506040513d6020811015611d1657600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611d7b576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611dc957600080fd5b505afa158015611ddd573d6000803e3d6000fd5b505050506040513d6020811015611df357600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015611e4857600080fd5b505af1158015611e5c573d6000803e3d6000fd5b505050506040513d6020811015611e7257600080fd5b505195945050505050565b60345460009082906001600160a01b03163314611ed6576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611f2457600080fd5b505afa158015611f38573d6000803e3d6000fd5b505050506040513d6020811015611f4e57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015611e4857600080fd5b6001600160a01b038416611ffe576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61200785612210565b603480546001600160a01b0319166001600160a01b03861617905582612203576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015612071578181015183820152602001612059565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156120a357600080fd5b505afa1580156120b7573d6000803e3d6000fd5b505050506040513d60208110156120cd57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561211f57600080fd5b505afa158015612133573d6000803e3d6000fd5b505050506040513d6101a081101561214a57600080fd5b50519050806121fc57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561219b578181015183820152602001612183565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156121cf57600080fd5b505af11580156121e3573d6000803e3d6000fd5b505050506040513d60208110156121f957600080fd5b50505b5050612209565b60358390555b5050505050565b600054610100900460ff16806122295750612229612329565b80612237575060005460ff16155b6122725760405162461bcd60e51b815260040180806020018281038252602e8152602001806125c8602e913960400191505060405180910390fd5b600054610100900460ff1615801561229d576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166122f8576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015612325576000805461ff00191690555b5050565b303b1590565b6040518060a0016040528060608152602001606081526020016123506124d4565b815260006020820181905260409091015290565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106123a557805160ff19168380011785556123d2565b828001600101855582156123d2579182015b828111156123d25782518255916020019190600101906123b7565b506123de9291506124f2565b5090565b60018301918390821561247a5791602002820160005b8382111561244457835183826101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555092602001926008016020816007010492830192600103026123f8565b80156124785782816101000a81549067ffffffffffffffff0219169055600801602081600701049283019260010302612444565b505b506123de929150612507565b50805460018160011615610100020316600290046000825580601f106124ac57506124ca565b601f0160209004906000526020600020908101906124ca91906124f2565b50565b5060009055565b60405180606001604052806003906020820280368337509192915050565b5b808211156123de57600081556001016124f3565b5b808211156123de57805467ffffffffffffffff1916815560010161250856fe736368656d65206e616d6520646f6573206e6f7420657869737420696e2041726348697665736368656d6520746f207265706c616365206973206e6f74207265676973746572656420696e20746865206f7267616e697a6174696f6e70726f706f73616c206d7573742068617665206120736368656d65206e616d6520746f2072656973746572206f72206164647265737320746f20756e7265676973746572436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212200b8ab90af5b2f97c563437b8c88c232d33069623f6dec2c5274c330b0f1eaaee64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/SchemeMock.json b/contracts/0.1.2-rc.8/SchemeMock.json new file mode 100644 index 00000000..3f77eaed --- /dev/null +++ b/contracts/0.1.2-rc.8/SchemeMock.json @@ -0,0 +1,213 @@ +{ + "contractName": "SchemeMock", + "abi": [ + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_a", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_b", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_c", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCall", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "address", + "name": "_contract", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_a", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_b", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_c", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "genericCallDirect", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_testData", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_testData", + "type": "uint256" + } + ], + "name": "initializeGovernance", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "testData", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610b83806100206000396000f3fe608060405234801561001057600080fd5b50600436106100875760003560e01c80634ea2c7ec1161005b5780634ea2c7ec146101e45780635aef7de6146101ec578063b9642c0e146101f4578063cd6dc6871461023e57610087565b80624080961461008c578063016cbd511461015757806303346df5146101715780633edf7ca1146101c0575b600080fd5b6100d6600480360360c08110156100a257600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a0013561026a565b60405180831515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561011b578181015183820152602001610103565b50505050905090810190601f1680156101485780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61015f610475565b60408051918252519081900360200190f35b6101be600480360361020081101561018857600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0810135906101e0013561047b565b005b6101c86104bc565b604080516001600160a01b039092168252519081900360200190f35b61015f6104cb565b6101c86104d1565b6100d6600480360360c081101561020a57600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a001356104e0565b6101be6004803603604081101561025457600080fd5b506001600160a01b038135169060200135610784565b6040805160248082018790526001600160a01b038681166044808501919091526064808501889052855180860382018152608495860187526020810180516001600160e01b0316630f3e8dcd60e41b178152965163057e2c8b60e31b81528c851660048201908152938101899052606095810186815282519382019390935281516000989697958f1696632bf16458968f9694958c95949093910191908083838e5b8381101561032457818101518382015260200161030c565b50505050905090810190601f1680156103515780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561037257600080fd5b505af1158015610386573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160409081528110156103af57600080fd5b8151602083018051604051929492938301929190846401000000008211156103d657600080fd5b9083019060208201858111156103eb57600080fd5b825164010000000081118282018810171561040557600080fd5b82525081516020918201929091019080838360005b8381101561043257818101518382015260200161041a565b50505050905090810190601f16801561045f5780820380516001836020036101000a031916815260200191505b5060405250505091509150965096945050505050565b60365481565b6104b286868487600b806020026040519081016040528092919082600b602002808284376000920191909152508991506107939050565b6036555050505050565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b600060606000886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561051f57600080fd5b505afa158015610533573d6000803e3d6000fd5b505050506040513d602081101561054957600080fd5b81019080805190602001909291905050509050806001600160a01b0316632bf164588989898960405160240180848152602001836001600160a01b031681526020018281526020019350505050604051602081830303815290604052630f3e8dcd60e41b6001600160e01b0319166020820180516001600160e01b038381831617835250505050876040518463ffffffff1660e01b815260040180846001600160a01b0316815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561063257818101518382015260200161061a565b50505050905090810190601f16801561065f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561068057600080fd5b505af1158015610694573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160409081528110156106bd57600080fd5b8151602083018051604051929492938301929190846401000000008211156106e457600080fd5b9083019060208201858111156106f957600080fd5b825164010000000081118282018810171561071357600080fd5b82525081516020918201929091019080838360005b83811015610740578181015183820152602001610728565b50505050905090810190601f16801561076d5780820380516001836020036101000a031916815260200191505b506040525050509250925050965096945050505050565b61078d82610a00565b60365550565b6001600160a01b0384166107ee576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6107f785610a00565b603480546001600160a01b0319166001600160a01b038616179055826109f3576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015610861578181015183820152602001610849565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561089357600080fd5b505afa1580156108a7573d6000803e3d6000fd5b505050506040513d60208110156108bd57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561090f57600080fd5b505afa158015610923573d6000803e3d6000fd5b505050506040513d6101a081101561093a57600080fd5b50519050806109ec57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561098b578181015183820152602001610973565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156109bf57600080fd5b505af11580156109d3573d6000803e3d6000fd5b505050506040513d60208110156109e957600080fd5b50505b50506109f9565b60358390555b5050505050565b600054610100900460ff1680610a195750610a19610b19565b80610a27575060005460ff16155b610a625760405162461bcd60e51b815260040180806020018281038252602e815260200180610b20602e913960400191505060405180910390fd5b600054610100900460ff16158015610a8d576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610ae8576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610b15576000805461ff00191690555b5050565b303b159056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212207927f4a4e9ee1b23cf140be52cfcff1a12bc3814a555a425319dbaac084d9bd464736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100875760003560e01c80634ea2c7ec1161005b5780634ea2c7ec146101e45780635aef7de6146101ec578063b9642c0e146101f4578063cd6dc6871461023e57610087565b80624080961461008c578063016cbd511461015757806303346df5146101715780633edf7ca1146101c0575b600080fd5b6100d6600480360360c08110156100a257600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a0013561026a565b60405180831515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561011b578181015183820152602001610103565b50505050905090810190601f1680156101485780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61015f610475565b60408051918252519081900360200190f35b6101be600480360361020081101561018857600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0810135906101e0013561047b565b005b6101c86104bc565b604080516001600160a01b039092168252519081900360200190f35b61015f6104cb565b6101c86104d1565b6100d6600480360360c081101561020a57600080fd5b506001600160a01b038135811691602081013582169160408201359160608101359091169060808101359060a001356104e0565b6101be6004803603604081101561025457600080fd5b506001600160a01b038135169060200135610784565b6040805160248082018790526001600160a01b038681166044808501919091526064808501889052855180860382018152608495860187526020810180516001600160e01b0316630f3e8dcd60e41b178152965163057e2c8b60e31b81528c851660048201908152938101899052606095810186815282519382019390935281516000989697958f1696632bf16458968f9694958c95949093910191908083838e5b8381101561032457818101518382015260200161030c565b50505050905090810190601f1680156103515780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561037257600080fd5b505af1158015610386573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160409081528110156103af57600080fd5b8151602083018051604051929492938301929190846401000000008211156103d657600080fd5b9083019060208201858111156103eb57600080fd5b825164010000000081118282018810171561040557600080fd5b82525081516020918201929091019080838360005b8381101561043257818101518382015260200161041a565b50505050905090810190601f16801561045f5780820380516001836020036101000a031916815260200191505b5060405250505091509150965096945050505050565b60365481565b6104b286868487600b806020026040519081016040528092919082600b602002808284376000920191909152508991506107939050565b6036555050505050565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b600060606000886001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561051f57600080fd5b505afa158015610533573d6000803e3d6000fd5b505050506040513d602081101561054957600080fd5b81019080805190602001909291905050509050806001600160a01b0316632bf164588989898960405160240180848152602001836001600160a01b031681526020018281526020019350505050604051602081830303815290604052630f3e8dcd60e41b6001600160e01b0319166020820180516001600160e01b038381831617835250505050876040518463ffffffff1660e01b815260040180846001600160a01b0316815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b8381101561063257818101518382015260200161061a565b50505050905090810190601f16801561065f5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b15801561068057600080fd5b505af1158015610694573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160409081528110156106bd57600080fd5b8151602083018051604051929492938301929190846401000000008211156106e457600080fd5b9083019060208201858111156106f957600080fd5b825164010000000081118282018810171561071357600080fd5b82525081516020918201929091019080838360005b83811015610740578181015183820152602001610728565b50505050905090810190601f16801561076d5780820380516001836020036101000a031916815260200191505b506040525050509250925050965096945050505050565b61078d82610a00565b60365550565b6001600160a01b0384166107ee576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6107f785610a00565b603480546001600160a01b0319166001600160a01b038616179055826109f3576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015610861578181015183820152602001610849565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b15801561089357600080fd5b505afa1580156108a7573d6000803e3d6000fd5b505050506040513d60208110156108bd57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561090f57600080fd5b505afa158015610923573d6000803e3d6000fd5b505050506040513d6101a081101561093a57600080fd5b50519050806109ec57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b8381101561098b578181015183820152602001610973565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156109bf57600080fd5b505af11580156109d3573d6000803e3d6000fd5b505050506040513d60208110156109e957600080fd5b50505b50506109f9565b60358390555b5050505050565b600054610100900460ff1680610a195750610a19610b19565b80610a27575060005460ff16155b610a625760405162461bcd60e51b815260040180806020018281038252602e815260200180610b20602e913960400191505060405180910390fd5b600054610100900460ff16158015610a8d576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216610ae8576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015610b15576000805461ff00191690555b5050565b303b159056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212207927f4a4e9ee1b23cf140be52cfcff1a12bc3814a555a425319dbaac084d9bd464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/SchemeRegistrar.json b/contracts/0.1.2-rc.8/SchemeRegistrar.json new file mode 100644 index 00000000..71b529ca --- /dev/null +++ b/contracts/0.1.2-rc.8/SchemeRegistrar.json @@ -0,0 +1,528 @@ +{ + "contractName": "SchemeRegistrar", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewSchemeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "RemoveSchemeProposal", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParamsRegister", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalfRegister", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteRegisterParamsHash", + "type": "bytes32" + }, + { + "internalType": "uint256[11]", + "name": "_votingParamsRemove", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalfRemove", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteRemoveParamsHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "address", + "name": "scheme", + "type": "address" + }, + { + "internalType": "bool", + "name": "addScheme", + "type": "bool" + }, + { + "internalType": "bytes4", + "name": "permissions", + "type": "bytes4" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "_permissions", + "type": "bytes4" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeScheme", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_scheme", + "type": "address" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeToRemoveScheme", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteRegisterParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "voteRemoveParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611d2b806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80637a5cb92c116100a2578063bea75f2811610071578063bea75f2814610341578063d29b5d2f1461037d578063d8145e2d146103af578063f81f8bf6146103fe578063ff1a7f0a146104305761010b565b80637a5cb92c146102a45780639588378e146102c15780639d4c162d146102ed578063b551c373146103245761010b565b806358613592116100de578063586135921461015e5780635aef7de614610214578063681d50841461021c5780636b8eb403146102785761010b565b80633ed2bc55146101105780633edf7ca11461012a5780634a650ecf1461014e5780634ea2c7ec14610156575b600080fd5b6101186104f5565b60408051918252519081900360200190f35b6101326104fb565b604080516001600160a01b039092168252519081900360200190f35b61011861050a565b610118610510565b6101186004803603604081101561017457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561019f57600080fd5b8201836020820111156101b157600080fd5b803590602001918460018302840111640100000000831117156101d357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b61013261082e565b610276600480360361038081101561023357600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e08101916103408201351690610360013561083d565b005b6101186004803603604081101561028e57600080fd5b506001600160a01b038135169060200135610c11565b610118600480360360208110156102ba57600080fd5b5035610ceb565b610118600480360360408110156102d757600080fd5b506001600160a01b038135169060200135610cfd565b6103106004803603604081101561030357600080fd5b5080359060200135610e2e565b604080519115158252519081900360200190f35b6101186004803603602081101561033a57600080fd5b5035611149565b6103106004803603608081101561035757600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356113e0565b6103106004803603606081101561039357600080fd5b508035906001600160a01b036020820135169060400135611544565b6103cc600480360360208110156103c557600080fd5b503561169f565b604080516001600160a01b03909416845291151560208401526001600160e01b03191682820152519081900360600190f35b6103106004803603606081101561041457600080fd5b508035906001600160a01b0360208201351690604001356116d1565b6101186004803603606081101561044657600080fd5b6001600160a01b03823516916001600160e01b03196020820135169181019060608101604082013564010000000081111561048057600080fd5b82018360208201111561049257600080fd5b803590602001918460018302840111640100000000831117156104b457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506117f7945050505050565b60395481565b6034546001600160a01b031681565b60385481565b60355481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561055b57600080fd5b505afa15801561056f573d6000803e3d6000fd5b505050506040513d602081101561058557600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156105cf57600080fd5b505afa1580156105e3573d6000803e3d6000fd5b505050506040513d60208110156105f957600080fd5b5051610647576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6001600160a01b03831661069a576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b60345460395460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561070557600080fd5b505af1158015610719573d6000803e3d6000fd5b505050506040513d602081101561072f57600080fd5b5051600081815260376020908152604080832080546001600160a01b0319166001600160a01b038a811691821790925560345460335484519283528286018581528b51958401959095528a5197985090831696889691909316947f504b6bd2558241a5f0532c970f3444e1fc24e1f7cf3d7c49a8d213bd612e9055948c948c94939192606085019290860191908190849084905b838110156107db5781810151838201526020016107c3565b50505050905090810190601f1680156108085780820380516001836020036101000a031916815260200191505b50935050505060405180910390a460008181526036602052604090204390559392505050565b6033546001600160a01b031681565b61084688611b88565b603480546001600160a01b0319166001600160a01b03891617905583610a2e576040516307b4e1e360e01b815287906001600160a01b038216906307b4e1e39089908990600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b031681526020019250505060206040518083038186803b1580156108d857600080fd5b505afa1580156108ec573d6000803e3d6000fd5b505050506040513d602081101561090257600080fd5b505160388190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561095457600080fd5b505afa158015610968573d6000803e3d6000fd5b505050506040513d6101a081101561097f57600080fd5b5051905080610a2757604051638894c41b60e01b81526001600160a01b03831690638894c41b908a908a90600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b0316815260200192505050602060405180830381600087803b1580156109fa57600080fd5b505af1158015610a0e573d6000803e3d6000fd5b505050506040513d6020811015610a2457600080fd5b50505b5050610a34565b60388490555b80610c01576040516307b4e1e360e01b815287906001600160a01b038216906307b4e1e39086908690600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b031681526020019250505060206040518083038186803b158015610aab57600080fd5b505afa158015610abf573d6000803e3d6000fd5b505050506040513d6020811015610ad557600080fd5b505160398190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015610b2757600080fd5b505afa158015610b3b573d6000803e3d6000fd5b505050506040513d6101a0811015610b5257600080fd5b5051905080610bfa57604051638894c41b60e01b81526001600160a01b03831690638894c41b9087908790600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b0316815260200192505050602060405180830381600087803b158015610bcd57600080fd5b505af1158015610be1573d6000803e3d6000fd5b505050506040513d6020811015610bf757600080fd5b50505b5050610c07565b60398190555b5050505050505050565b60345460009082906001600160a01b03163314610c6a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610cb757600080fd5b505afa158015610ccb573d6000803e3d6000fd5b505050506040513d6020811015610ce157600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610d56576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610da457600080fd5b505afa158015610db8573d6000803e3d6000fd5b505050506040513d6020811015610dce57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610cb757600080fd5b60345460009083906001600160a01b03163314610e87576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610e8f611ca7565b50600084815260376020908152604091829020825160608101845290546001600160a01b038116808352600160a01b820460ff16151593830193909352600160a81b900460e01b6001600160e01b03191692810192909252610ef057600080fd5b60008581526037602052604080822080546001600160c81b0319169055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a383600114156110fb5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610f9157600080fd5b505afa158015610fa5573d6000803e3d6000fd5b505050506040513d6020811015610fbb57600080fd5b505160208301519091501561106857806001600160a01b0316635d1da8cb836000015184604001516040518363ffffffff1660e01b815260040180836001600160a01b03168152602001826001600160e01b031916815260200192505050602060405180830381600087803b15801561103357600080fd5b505af1158015611047573d6000803e3d6000fd5b505050506040513d602081101561105d57600080fd5b505161106857600080fd5b81602001516110f957806001600160a01b031663653915e583600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b1580156110c457600080fd5b505af11580156110d8573d6000803e3d6000fd5b505050506040513d60208110156110ee57600080fd5b50516110f957600080fd5b505b60335460408051868152905187926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a3506001949350505050565b60345460009082906001600160a01b031633146111a2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111f057600080fd5b505afa158015611204573d6000803e3d6000fd5b505050506040513d602081101561121a57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561126457600080fd5b505afa158015611278573d6000803e3d6000fd5b505050506040513d602081101561128e57600080fd5b50516112dc576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561132a57600080fd5b505afa15801561133e573d6000803e3d6000fd5b505050506040513d602081101561135457600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b1580156113ad57600080fd5b505afa1580156113c1573d6000803e3d6000fd5b505050506040513d60208110156113d757600080fd5b50519392505050565b60345460009082906001600160a01b03163314611439576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561148757600080fd5b505afa15801561149b573d6000803e3d6000fd5b505050506040513d60208110156114b157600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561150e57600080fd5b505af1158015611522573d6000803e3d6000fd5b505050506040513d602081101561153857600080fd5b50519695505050505050565b60345460009082906001600160a01b0316331461159d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115eb57600080fd5b505afa1580156115ff573d6000803e3d6000fd5b505050506040513d602081101561161557600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561166a57600080fd5b505af115801561167e573d6000803e3d6000fd5b505050506040513d602081101561169457600080fd5b505195945050505050565b6037602052600090815260409020546001600160a01b0381169060ff600160a01b82041690600160a81b900460e01b83565b60345460009082906001600160a01b0316331461172a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561177857600080fd5b505afa15801561178c573d6000803e3d6000fd5b505050506040513d60208110156117a257600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561166a57600080fd5b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561183c57600080fd5b505afa158015611850573d6000803e3d6000fd5b505050506040513d602081101561186657600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156118b057600080fd5b505afa1580156118c4573d6000803e3d6000fd5b505050506040513d60208110156118da57600080fd5b5051611928576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6001600160a01b03841661197b576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b60345460385460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156119e657600080fd5b505af11580156119fa573d6000803e3d6000fd5b505050506040513d6020811015611a1057600080fd5b50519050611a1c611ca7565b5060408051606080820183526001600160a01b0380891680845260016020808601919091526001600160e01b03198a168587018190526034546033548851948552848401929092529683018581528a519584019590955289519596841695889591909416937fe3d6017b3686d60e6c60aa29ac7ec5d94a1f957618ba3fe74462e9f5b54adef3938d938d938d93909160808401919085019080838360005b83811015611ad2578181015183820152602001611aba565b50505050905090810190601f168015611aff5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a4600082815260376020908152604080832084518154848701519684015160e01c600160a81b0263ffffffff60a81b19971515600160a01b0260ff60a01b196001600160a01b039094166001600160a01b03199093169290921792909216179590951694909417909355603690522043905590509392505050565b600054610100900460ff1680611ba15750611ba1611ca1565b80611baf575060005460ff16155b611bea5760405162461bcd60e51b815260040180806020018281038252602e815260200180611cc8602e913960400191505060405180910390fd5b600054610100900460ff16158015611c15576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611c70576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611c9d576000805461ff00191690555b5050565b303b1590565b60408051606081018252600080825260208201819052918101919091529056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212202499fecaf165b1790fe1c8e9a19fc7bd1662953170b1402069f5eb6735b68deb64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80637a5cb92c116100a2578063bea75f2811610071578063bea75f2814610341578063d29b5d2f1461037d578063d8145e2d146103af578063f81f8bf6146103fe578063ff1a7f0a146104305761010b565b80637a5cb92c146102a45780639588378e146102c15780639d4c162d146102ed578063b551c373146103245761010b565b806358613592116100de578063586135921461015e5780635aef7de614610214578063681d50841461021c5780636b8eb403146102785761010b565b80633ed2bc55146101105780633edf7ca11461012a5780634a650ecf1461014e5780634ea2c7ec14610156575b600080fd5b6101186104f5565b60408051918252519081900360200190f35b6101326104fb565b604080516001600160a01b039092168252519081900360200190f35b61011861050a565b610118610510565b6101186004803603604081101561017457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561019f57600080fd5b8201836020820111156101b157600080fd5b803590602001918460018302840111640100000000831117156101d357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610516945050505050565b61013261082e565b610276600480360361038081101561023357600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e08101916103408201351690610360013561083d565b005b6101186004803603604081101561028e57600080fd5b506001600160a01b038135169060200135610c11565b610118600480360360208110156102ba57600080fd5b5035610ceb565b610118600480360360408110156102d757600080fd5b506001600160a01b038135169060200135610cfd565b6103106004803603604081101561030357600080fd5b5080359060200135610e2e565b604080519115158252519081900360200190f35b6101186004803603602081101561033a57600080fd5b5035611149565b6103106004803603608081101561035757600080fd5b506001600160a01b038135811691602081013590911690604081013590606001356113e0565b6103106004803603606081101561039357600080fd5b508035906001600160a01b036020820135169060400135611544565b6103cc600480360360208110156103c557600080fd5b503561169f565b604080516001600160a01b03909416845291151560208401526001600160e01b03191682820152519081900360600190f35b6103106004803603606081101561041457600080fd5b508035906001600160a01b0360208201351690604001356116d1565b6101186004803603606081101561044657600080fd5b6001600160a01b03823516916001600160e01b03196020820135169181019060608101604082013564010000000081111561048057600080fd5b82018360208201111561049257600080fd5b803590602001918460018302840111640100000000831117156104b457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506117f7945050505050565b60395481565b6034546001600160a01b031681565b60385481565b60355481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561055b57600080fd5b505afa15801561056f573d6000803e3d6000fd5b505050506040513d602081101561058557600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156105cf57600080fd5b505afa1580156105e3573d6000803e3d6000fd5b505050506040513d60208110156105f957600080fd5b5051610647576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6001600160a01b03831661069a576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b60345460395460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561070557600080fd5b505af1158015610719573d6000803e3d6000fd5b505050506040513d602081101561072f57600080fd5b5051600081815260376020908152604080832080546001600160a01b0319166001600160a01b038a811691821790925560345460335484519283528286018581528b51958401959095528a5197985090831696889691909316947f504b6bd2558241a5f0532c970f3444e1fc24e1f7cf3d7c49a8d213bd612e9055948c948c94939192606085019290860191908190849084905b838110156107db5781810151838201526020016107c3565b50505050905090810190601f1680156108085780820380516001836020036101000a031916815260200191505b50935050505060405180910390a460008181526036602052604090204390559392505050565b6033546001600160a01b031681565b61084688611b88565b603480546001600160a01b0319166001600160a01b03891617905583610a2e576040516307b4e1e360e01b815287906001600160a01b038216906307b4e1e39089908990600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b031681526020019250505060206040518083038186803b1580156108d857600080fd5b505afa1580156108ec573d6000803e3d6000fd5b505050506040513d602081101561090257600080fd5b505160388190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561095457600080fd5b505afa158015610968573d6000803e3d6000fd5b505050506040513d6101a081101561097f57600080fd5b5051905080610a2757604051638894c41b60e01b81526001600160a01b03831690638894c41b908a908a90600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b0316815260200192505050602060405180830381600087803b1580156109fa57600080fd5b505af1158015610a0e573d6000803e3d6000fd5b505050506040513d6020811015610a2457600080fd5b50505b5050610a34565b60388490555b80610c01576040516307b4e1e360e01b815287906001600160a01b038216906307b4e1e39086908690600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b031681526020019250505060206040518083038186803b158015610aab57600080fd5b505afa158015610abf573d6000803e3d6000fd5b505050506040513d6020811015610ad557600080fd5b505160398190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015610b2757600080fd5b505afa158015610b3b573d6000803e3d6000fd5b505050506040513d6101a0811015610b5257600080fd5b5051905080610bfa57604051638894c41b60e01b81526001600160a01b03831690638894c41b9087908790600401808361016080828437600081840152601f19601f820116905080830192505050826001600160a01b0316815260200192505050602060405180830381600087803b158015610bcd57600080fd5b505af1158015610be1573d6000803e3d6000fd5b505050506040513d6020811015610bf757600080fd5b50505b5050610c07565b60398190555b5050505050505050565b60345460009082906001600160a01b03163314610c6a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b158015610cb757600080fd5b505afa158015610ccb573d6000803e3d6000fd5b505050506040513d6020811015610ce157600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610d56576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610da457600080fd5b505afa158015610db8573d6000803e3d6000fd5b505050506040513d6020811015610dce57600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b158015610cb757600080fd5b60345460009083906001600160a01b03163314610e87576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610e8f611ca7565b50600084815260376020908152604091829020825160608101845290546001600160a01b038116808352600160a01b820460ff16151593830193909352600160a81b900460e01b6001600160e01b03191692810192909252610ef057600080fd5b60008581526037602052604080822080546001600160c81b0319169055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a383600114156110fb5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610f9157600080fd5b505afa158015610fa5573d6000803e3d6000fd5b505050506040513d6020811015610fbb57600080fd5b505160208301519091501561106857806001600160a01b0316635d1da8cb836000015184604001516040518363ffffffff1660e01b815260040180836001600160a01b03168152602001826001600160e01b031916815260200192505050602060405180830381600087803b15801561103357600080fd5b505af1158015611047573d6000803e3d6000fd5b505050506040513d602081101561105d57600080fd5b505161106857600080fd5b81602001516110f957806001600160a01b031663653915e583600001516040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050602060405180830381600087803b1580156110c457600080fd5b505af11580156110d8573d6000803e3d6000fd5b505050506040513d60208110156110ee57600080fd5b50516110f957600080fd5b505b60335460408051868152905187926001600160a01b0316917fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0919081900360200190a3506001949350505050565b60345460009082906001600160a01b031633146111a2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111f057600080fd5b505afa158015611204573d6000803e3d6000fd5b505050506040513d602081101561121a57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561126457600080fd5b505afa158015611278573d6000803e3d6000fd5b505050506040513d602081101561128e57600080fd5b50516112dc576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561132a57600080fd5b505afa15801561133e573d6000803e3d6000fd5b505050506040513d602081101561135457600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b1580156113ad57600080fd5b505afa1580156113c1573d6000803e3d6000fd5b505050506040513d60208110156113d757600080fd5b50519392505050565b60345460009082906001600160a01b03163314611439576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561148757600080fd5b505afa15801561149b573d6000803e3d6000fd5b505050506040513d60208110156114b157600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561150e57600080fd5b505af1158015611522573d6000803e3d6000fd5b505050506040513d602081101561153857600080fd5b50519695505050505050565b60345460009082906001600160a01b0316331461159d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115eb57600080fd5b505afa1580156115ff573d6000803e3d6000fd5b505050506040513d602081101561161557600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561166a57600080fd5b505af115801561167e573d6000803e3d6000fd5b505050506040513d602081101561169457600080fd5b505195945050505050565b6037602052600090815260409020546001600160a01b0381169060ff600160a01b82041690600160a81b900460e01b83565b60345460009082906001600160a01b0316331461172a576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561177857600080fd5b505afa15801561178c573d6000803e3d6000fd5b505050506040513d60208110156117a257600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561166a57600080fd5b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561183c57600080fd5b505afa158015611850573d6000803e3d6000fd5b505050506040513d602081101561186657600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156118b057600080fd5b505afa1580156118c4573d6000803e3d6000fd5b505050506040513d60208110156118da57600080fd5b5051611928576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6001600160a01b03841661197b576040805162461bcd60e51b8152602060048201526015602482015274736368656d652063616e6e6f74206265207a65726f60581b604482015290519081900360640190fd5b60345460385460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156119e657600080fd5b505af11580156119fa573d6000803e3d6000fd5b505050506040513d6020811015611a1057600080fd5b50519050611a1c611ca7565b5060408051606080820183526001600160a01b0380891680845260016020808601919091526001600160e01b03198a168587018190526034546033548851948552848401929092529683018581528a519584019590955289519596841695889591909416937fe3d6017b3686d60e6c60aa29ac7ec5d94a1f957618ba3fe74462e9f5b54adef3938d938d938d93909160808401919085019080838360005b83811015611ad2578181015183820152602001611aba565b50505050905090810190601f168015611aff5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a4600082815260376020908152604080832084518154848701519684015160e01c600160a81b0263ffffffff60a81b19971515600160a01b0260ff60a01b196001600160a01b039094166001600160a01b03199093169290921792909216179590951694909417909355603690522043905590509392505050565b600054610100900460ff1680611ba15750611ba1611ca1565b80611baf575060005460ff16155b611bea5760405162461bcd60e51b815260040180806020018281038252602e815260200180611cc8602e913960400191505060405180910390fd5b600054610100900460ff16158015611c15576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611c70576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611c9d576000805461ff00191690555b5050565b303b1590565b60408051606081018252600080825260208201819052918101919091529056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212202499fecaf165b1790fe1c8e9a19fc7bd1662953170b1402069f5eb6735b68deb64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/SignalScheme.json b/contracts/0.1.2-rc.8/SignalScheme.json new file mode 100644 index 00000000..812906a8 --- /dev/null +++ b/contracts/0.1.2-rc.8/SignalScheme.json @@ -0,0 +1,414 @@ +{ + "contractName": "SignalScheme", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_signalType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewSignalProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_signalType", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "Signal", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_param", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_signalType", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_voteApproveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "params", + "outputs": [ + { + "internalType": "bytes32", + "name": "voteApproveParams", + "type": "bytes32" + }, + { + "internalType": "contract IntVoteInterface", + "name": "intVote", + "type": "address" + }, + { + "internalType": "uint256", + "name": "signalType", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "string", + "name": "descriptionHash", + "type": "string" + }, + { + "internalType": "bool", + "name": "executed", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeSignal", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5061186f806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063cff0ab9611610066578063cff0ab9614610353578063d176ffc214610381578063d29b5d2f146103cc578063f81f8bf6146103fe576100f5565b80639588378e146102975780639d4c162d146102c3578063b551c373146102fa578063bea75f2814610317576100f5565b80635aef7de6116100d35780635aef7de6146101d65780636b8eb403146101de5780637a5cb92c1461020a5780638543478814610227576100f5565b806332ed5b12146100fa5780633edf7ca1146101985780634ea2c7ec146101bc575b600080fd5b6101176004803603602081101561011057600080fd5b5035610430565b60405180806020018315158152602001828103825284818151815260200191508051906020019080838360005b8381101561015c578181015183820152602001610144565b50505050905090810190601f1680156101895780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101a06104da565b604080516001600160a01b039092168252519081900360200190f35b6101c46104e9565b60408051918252519081900360200190f35b6101a06104ef565b6101c4600480360360408110156101f457600080fd5b506001600160a01b0381351690602001356104fe565b6101c46004803603602081101561022057600080fd5b50356105d8565b6101c46004803603602081101561023d57600080fd5b81019060208101813564010000000081111561025857600080fd5b82018360208201111561026a57600080fd5b8035906020019184600183028401116401000000008311171561028c57600080fd5b5090925090506105ea565b6101c4600480360360408110156102ad57600080fd5b506001600160a01b038135169060200135610993565b6102e6600480360360408110156102d957600080fd5b5080359060200135610ac4565b604080519115158252519081900360200190f35b6101c46004803603602081101561031057600080fd5b5035610c33565b6102e66004803603608081101561032d57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610eca565b61035b61102e565b604080519384526001600160a01b03909216602084015282820152519081900360600190f35b6103ca600480360361020081101561039857600080fd5b506001600160a01b038135811691602081013591604082013591606081013582169160808201916101e0013516611046565b005b6102e6600480360360608110156103e257600080fd5b508035906001600160a01b03602082013516906040013561116b565b6102e66004803603606081101561041457600080fd5b508035906001600160a01b0360208201351690604001356112c6565b60376020908152600091825260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529092918391908301828280156104c75780601f1061049c576101008083540402835291602001916104c7565b820191906000526020600020905b8154815290600101906020018083116104aa57829003601f168201915b5050506001909301549192505060ff1682565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610557576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d60208110156105ce57600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561062f57600080fd5b505afa158015610643573d6000803e3d6000fd5b505050506040513d602081101561065957600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156106a357600080fd5b505afa1580156106b7573d6000803e3d6000fd5b505050506040513d60208110156106cd57600080fd5b505161071b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d602081101561079357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156107dd57600080fd5b505afa1580156107f1573d6000803e3d6000fd5b505050506040513d602081101561080757600080fd5b5051610855576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60395460385460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b505050506040513d60208110156108ea57600080fd5b50516000818152603760205260409020909150610908908585611778565b50603a54603354604080516020808252810187905284926001600160a01b0316917f940af78fa85d990be5623aeca8b988922784c8c782b1c2c2fb416d83c05547fb91899189919081908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a460008181526036602052604090204390559392505050565b60345460009082906001600160a01b031633146109ec576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610a3a57600080fd5b505afa158015610a4e573d6000803e3d6000fd5b505050506040513d6020811015610a6457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105a457600080fd5b60345460009083906001600160a01b03163314610b1d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b60008481526037602052604090206001015460ff1615610b3c57600080fd5b60008481526037602052604090206001908101805460ff191682179055831415610c2957603a54603354600086815260376020908152604091829020825182815281546002600019600183161561010002019091160492810183905289946001600160a01b0316937fefc186437cd31fb390ee7bfa83473db0ede42b31121c466bb7afb8b3f665ca9893829182019084908015610c1a5780601f10610bef57610100808354040283529160200191610c1a565b820191906000526020600020905b815481529060010190602001808311610bfd57829003601f168201915b50509250505060405180910390a45b5060019392505050565b60345460009082906001600160a01b03163314610c8c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cda57600080fd5b505afa158015610cee573d6000803e3d6000fd5b505050506040513d6020811015610d0457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610d4e57600080fd5b505afa158015610d62573d6000803e3d6000fd5b505050506040513d6020811015610d7857600080fd5b5051610dc6576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610e1457600080fd5b505afa158015610e28573d6000803e3d6000fd5b505050506040513d6020811015610e3e57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610e9757600080fd5b505afa158015610eab573d6000803e3d6000fd5b505050506040513d6020811015610ec157600080fd5b50519392505050565b60345460009082906001600160a01b03163314610f23576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f7157600080fd5b505afa158015610f85573d6000803e3d6000fd5b505050506040513d6020811015610f9b57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610ff857600080fd5b505af115801561100c573d6000803e3d6000fd5b505050506040513d602081101561102257600080fd5b50519695505050505050565b603854603954603a546001600160a01b039091169083565b600054610100900460ff168061105f575061105f6113ec565b8061106d575060005460ff16155b6110a85760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156110d3576000805460ff1961ff0019909116610100171660011790555b61110a87858786600b806020026040519081016040528092919082600b602002808284376000920191909152508891506113f29050565b604080516060810182526035548082526001600160a01b0387166020830181905291909201889052603891909155603980546001600160a01b0319169091179055603a8690558015611162576000805461ff00191690555b50505050505050565b60345460009082906001600160a01b031633146111c4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561121257600080fd5b505afa158015611226573d6000803e3d6000fd5b505050506040513d602081101561123c57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561129157600080fd5b505af11580156112a5573d6000803e3d6000fd5b505050506040513d60208110156112bb57600080fd5b505195945050505050565b60345460009082906001600160a01b0316331461131f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561129157600080fd5b303b1590565b6001600160a01b03841661144d576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6114568561165f565b603480546001600160a01b0319166001600160a01b03861617905582611652576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156114c05781810151838201526020016114a8565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156114f257600080fd5b505afa158015611506573d6000803e3d6000fd5b505050506040513d602081101561151c57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561156e57600080fd5b505afa158015611582573d6000803e3d6000fd5b505050506040513d6101a081101561159957600080fd5b505190508061164b57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156115ea5781810151838201526020016115d2565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561161e57600080fd5b505af1158015611632573d6000803e3d6000fd5b505050506040513d602081101561164857600080fd5b50505b5050611658565b60358390555b5050505050565b600054610100900460ff168061167857506116786113ec565b80611686575060005460ff16155b6116c15760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156116ec576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611747576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611774576000805461ff00191690555b5050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117b95782800160ff198235161785556117e6565b828001600101855582156117e6579182015b828111156117e65782358255916020019190600101906117cb565b506117f29291506117f6565b5090565b5b808211156117f257600081556001016117f756fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220ae93608691bae1b1514eef8c03ab47f928aeaa11dea25940f6f44c40b828bef864736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063cff0ab9611610066578063cff0ab9614610353578063d176ffc214610381578063d29b5d2f146103cc578063f81f8bf6146103fe576100f5565b80639588378e146102975780639d4c162d146102c3578063b551c373146102fa578063bea75f2814610317576100f5565b80635aef7de6116100d35780635aef7de6146101d65780636b8eb403146101de5780637a5cb92c1461020a5780638543478814610227576100f5565b806332ed5b12146100fa5780633edf7ca1146101985780634ea2c7ec146101bc575b600080fd5b6101176004803603602081101561011057600080fd5b5035610430565b60405180806020018315158152602001828103825284818151815260200191508051906020019080838360005b8381101561015c578181015183820152602001610144565b50505050905090810190601f1680156101895780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b6101a06104da565b604080516001600160a01b039092168252519081900360200190f35b6101c46104e9565b60408051918252519081900360200190f35b6101a06104ef565b6101c4600480360360408110156101f457600080fd5b506001600160a01b0381351690602001356104fe565b6101c46004803603602081101561022057600080fd5b50356105d8565b6101c46004803603602081101561023d57600080fd5b81019060208101813564010000000081111561025857600080fd5b82018360208201111561026a57600080fd5b8035906020019184600183028401116401000000008311171561028c57600080fd5b5090925090506105ea565b6101c4600480360360408110156102ad57600080fd5b506001600160a01b038135169060200135610993565b6102e6600480360360408110156102d957600080fd5b5080359060200135610ac4565b604080519115158252519081900360200190f35b6101c46004803603602081101561031057600080fd5b5035610c33565b6102e66004803603608081101561032d57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610eca565b61035b61102e565b604080519384526001600160a01b03909216602084015282820152519081900360600190f35b6103ca600480360361020081101561039857600080fd5b506001600160a01b038135811691602081013591604082013591606081013582169160808201916101e0013516611046565b005b6102e6600480360360608110156103e257600080fd5b508035906001600160a01b03602082013516906040013561116b565b6102e66004803603606081101561041457600080fd5b508035906001600160a01b0360208201351690604001356112c6565b60376020908152600091825260409182902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529092918391908301828280156104c75780601f1061049c576101008083540402835291602001916104c7565b820191906000526020600020905b8154815290600101906020018083116104aa57829003601f168201915b5050506001909301549192505060ff1682565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610557576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d60208110156105ce57600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561062f57600080fd5b505afa158015610643573d6000803e3d6000fd5b505050506040513d602081101561065957600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156106a357600080fd5b505afa1580156106b7573d6000803e3d6000fd5b505050506040513d60208110156106cd57600080fd5b505161071b576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d602081101561079357600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156107dd57600080fd5b505afa1580156107f1573d6000803e3d6000fd5b505050506040513d602081101561080757600080fd5b5051610855576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b60395460385460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156108c057600080fd5b505af11580156108d4573d6000803e3d6000fd5b505050506040513d60208110156108ea57600080fd5b50516000818152603760205260409020909150610908908585611778565b50603a54603354604080516020808252810187905284926001600160a01b0316917f940af78fa85d990be5623aeca8b988922784c8c782b1c2c2fb416d83c05547fb91899189919081908101848480828437600083820152604051601f909101601f19169092018290039550909350505050a460008181526036602052604090204390559392505050565b60345460009082906001600160a01b031633146109ec576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610a3a57600080fd5b505afa158015610a4e573d6000803e3d6000fd5b505050506040513d6020811015610a6457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105a457600080fd5b60345460009083906001600160a01b03163314610b1d576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b60008481526037602052604090206001015460ff1615610b3c57600080fd5b60008481526037602052604090206001908101805460ff191682179055831415610c2957603a54603354600086815260376020908152604091829020825182815281546002600019600183161561010002019091160492810183905289946001600160a01b0316937fefc186437cd31fb390ee7bfa83473db0ede42b31121c466bb7afb8b3f665ca9893829182019084908015610c1a5780601f10610bef57610100808354040283529160200191610c1a565b820191906000526020600020905b815481529060010190602001808311610bfd57829003601f168201915b50509250505060405180910390a45b5060019392505050565b60345460009082906001600160a01b03163314610c8c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cda57600080fd5b505afa158015610cee573d6000803e3d6000fd5b505050506040513d6020811015610d0457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610d4e57600080fd5b505afa158015610d62573d6000803e3d6000fd5b505050506040513d6020811015610d7857600080fd5b5051610dc6576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610e1457600080fd5b505afa158015610e28573d6000803e3d6000fd5b505050506040513d6020811015610e3e57600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610e9757600080fd5b505afa158015610eab573d6000803e3d6000fd5b505050506040513d6020811015610ec157600080fd5b50519392505050565b60345460009082906001600160a01b03163314610f23576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f7157600080fd5b505afa158015610f85573d6000803e3d6000fd5b505050506040513d6020811015610f9b57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b158015610ff857600080fd5b505af115801561100c573d6000803e3d6000fd5b505050506040513d602081101561102257600080fd5b50519695505050505050565b603854603954603a546001600160a01b039091169083565b600054610100900460ff168061105f575061105f6113ec565b8061106d575060005460ff16155b6110a85760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156110d3576000805460ff1961ff0019909116610100171660011790555b61110a87858786600b806020026040519081016040528092919082600b602002808284376000920191909152508891506113f29050565b604080516060810182526035548082526001600160a01b0387166020830181905291909201889052603891909155603980546001600160a01b0319169091179055603a8690558015611162576000805461ff00191690555b50505050505050565b60345460009082906001600160a01b031633146111c4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561121257600080fd5b505afa158015611226573d6000803e3d6000fd5b505050506040513d602081101561123c57600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561129157600080fd5b505af11580156112a5573d6000803e3d6000fd5b505050506040513d60208110156112bb57600080fd5b505195945050505050565b60345460009082906001600160a01b0316331461131f576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561136d57600080fd5b505afa158015611381573d6000803e3d6000fd5b505050506040513d602081101561139757600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561129157600080fd5b303b1590565b6001600160a01b03841661144d576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b6114568561165f565b603480546001600160a01b0319166001600160a01b03861617905582611652576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156114c05781810151838201526020016114a8565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156114f257600080fd5b505afa158015611506573d6000803e3d6000fd5b505050506040513d602081101561151c57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561156e57600080fd5b505afa158015611582573d6000803e3d6000fd5b505050506040513d6101a081101561159957600080fd5b505190508061164b57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156115ea5781810151838201526020016115d2565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b15801561161e57600080fd5b505af1158015611632573d6000803e3d6000fd5b505050506040513d602081101561164857600080fd5b50505b5050611658565b60358390555b5050505050565b600054610100900460ff168061167857506116786113ec565b80611686575060005460ff16155b6116c15760405162461bcd60e51b815260040180806020018281038252602e81526020018061180c602e913960400191505060405180910390fd5b600054610100900460ff161580156116ec576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611747576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611774576000805461ff00191690555b5050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117b95782800160ff198235161785556117e6565b828001600101855582156117e6579182015b828111156117e65782358255916020019190600101906117cb565b506117f29291506117f6565b5090565b5b808211156117f257600081556001016117f756fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220ae93608691bae1b1514eef8c03ab47f928aeaa11dea25940f6f44c40b828bef864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/StringUtil.json b/contracts/0.1.2-rc.8/StringUtil.json new file mode 100644 index 00000000..ba1c97bc --- /dev/null +++ b/contracts/0.1.2-rc.8/StringUtil.json @@ -0,0 +1,6 @@ +{ + "contractName": "StringUtil", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212209d64d54cc61ec18fe67f19b5db745b46836a776529ba1067e0286f7969cf4a6a64736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212209d64d54cc61ec18fe67f19b5db745b46836a776529ba1067e0286f7969cf4a6a64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Strings.json b/contracts/0.1.2-rc.8/Strings.json new file mode 100644 index 00000000..90c11c62 --- /dev/null +++ b/contracts/0.1.2-rc.8/Strings.json @@ -0,0 +1,6 @@ +{ + "contractName": "Strings", + "abi": [], + "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f79d46223f137f7d094593b5af2690a0f771a90a83076c6f6fd04c7d02e38b2a64736f6c634300060c0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f79d46223f137f7d094593b5af2690a0f771a90a83076c6f6fd04c7d02e38b2a64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/TokenCapGC.json b/contracts/0.1.2-rc.8/TokenCapGC.json new file mode 100644 index 00000000..454999a8 --- /dev/null +++ b/contracts/0.1.2-rc.8/TokenCapGC.json @@ -0,0 +1,104 @@ +{ + "contractName": "TokenCapGC", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_cap", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "parameters", + "outputs": [ + { + "internalType": "contract IERC20", + "name": "token", + "type": "address" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "post", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "pre", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "when", + "outputs": [ + { + "internalType": "enum GlobalConstraintInterface.CallPhase", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610356806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c8063890357301461005c578063c63b7d0914610087578063cd6dc687146100c7578063d57a58fa146100f5578063e2b0caef14610121575b600080fd5b61006461014a565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6100b36004803603604081101561009d57600080fd5b506001600160a01b03813516906020013561015f565b604080519115158252519081900360200190f35b6100f3600480360360408110156100dd57600080fd5b506001600160a01b038135169060200135610168565b005b6100b36004803603604081101561010b57600080fd5b506001600160a01b038135169060200135610243565b6101296102e7565b6040518082600281111561013957fe5b815260200191505060405180910390f35b6033546034546001600160a01b039091169082565b60015b92915050565b600054610100900460ff168061018157506101816102ec565b8061018f575060005460ff16155b6101ca5760405162461bcd60e51b815260040180806020018281038252602e8152602001806102f3602e913960400191505060405180910390fd5b600054610100900460ff161580156101f5576000805460ff1961ff0019909116610100171660011790555b604080518082019091526001600160a01b0384168082526020909101839052603380546001600160a01b03191690911790556034829055801561023e576000805461ff00191690555b505050565b6033546000906001600160a01b0316158015906102d15750603454603354604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156102a357600080fd5b505afa1580156102b7573d6000803e3d6000fd5b505050506040513d60208110156102cd57600080fd5b5051115b156102de57506000610162565b50600192915050565b600190565b303b159056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220fd3274293fc4ca814836356847926ec820e58f26ef3bc57cdd0a33989d60df5b64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c8063890357301461005c578063c63b7d0914610087578063cd6dc687146100c7578063d57a58fa146100f5578063e2b0caef14610121575b600080fd5b61006461014a565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6100b36004803603604081101561009d57600080fd5b506001600160a01b03813516906020013561015f565b604080519115158252519081900360200190f35b6100f3600480360360408110156100dd57600080fd5b506001600160a01b038135169060200135610168565b005b6100b36004803603604081101561010b57600080fd5b506001600160a01b038135169060200135610243565b6101296102e7565b6040518082600281111561013957fe5b815260200191505060405180910390f35b6033546034546001600160a01b039091169082565b60015b92915050565b600054610100900460ff168061018157506101816102ec565b8061018f575060005460ff16155b6101ca5760405162461bcd60e51b815260040180806020018281038252602e8152602001806102f3602e913960400191505060405180910390fd5b600054610100900460ff161580156101f5576000805460ff1961ff0019909116610100171660011790555b604080518082019091526001600160a01b0384168082526020909101839052603380546001600160a01b03191690911790556034829055801561023e576000805461ff00191690555b505050565b6033546000906001600160a01b0316158015906102d15750603454603354604080516318160ddd60e01b815290516001600160a01b03909216916318160ddd91600480820192602092909190829003018186803b1580156102a357600080fd5b505afa1580156102b7573d6000803e3d6000fd5b505050506040513d60208110156102cd57600080fd5b5051115b156102de57506000610162565b50600192915050565b600190565b303b159056fe436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220fd3274293fc4ca814836356847926ec820e58f26ef3bc57cdd0a33989d60df5b64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/TokenTrade.json b/contracts/0.1.2-rc.8/TokenTrade.json new file mode 100644 index 00000000..3621eb3b --- /dev/null +++ b/contracts/0.1.2-rc.8/TokenTrade.json @@ -0,0 +1,511 @@ +{ + "contractName": "TokenTrade", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_sendToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_sendTokenAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_receiveToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_receiveTokenAmount", + "type": "uint256" + } + ], + "name": "TokenTradeProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + }, + { + "indexed": true, + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_sendToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_sendTokenAmount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "contract IERC20", + "name": "_receiveToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_receiveTokenAmount", + "type": "uint256" + } + ], + "name": "TokenTradeProposed", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposals", + "outputs": [ + { + "internalType": "address", + "name": "beneficiary", + "type": "address" + }, + { + "internalType": "contract IERC20", + "name": "sendToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "sendTokenAmount", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "receiveToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "receiveTokenAmount", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "passed", + "type": "bool" + }, + { + "internalType": "bool", + "name": "decided", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_sendToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_sendTokenAmount", + "type": "uint256" + }, + { + "internalType": "contract IERC20", + "name": "_receiveToken", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_receiveTokenAmount", + "type": "uint256" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeTokenTrade", + "outputs": [ + { + "internalType": "bytes32", + "name": "proposalId", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611f31806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063bea75f2811610066578063bea75f2814610384578063d29b5d2f146103c0578063e751f271146103f2578063f81f8bf61461040f576100f5565b80639588378e146102385780639d4c162d14610264578063b4055b8c1461029b578063b551c37314610367576100f5565b8063540fbeb3116100d3578063540fbeb31461019f5780635aef7de6146101e75780636b8eb403146101ef5780637a5cb92c1461021b576100f5565b806332ed5b12146100fa5780633edf7ca1146101615780634ea2c7ec14610185575b600080fd5b6101176004803603602081101561011057600080fd5b5035610441565b604080516001600160a01b039889168152968816602088015286810195909552929095166060850152608084015292151560a083015291151560c082015290519081900360e00190f35b610169610491565b604080516001600160a01b039092168252519081900360200190f35b61018d6104a0565b60408051918252519081900360200190f35b6101e560048036036101e08110156101b657600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c001356104a6565b005b6101696104e4565b61018d6004803603604081101561020557600080fd5b506001600160a01b0381351690602001356104f3565b61018d6004803603602081101561023157600080fd5b50356105cd565b61018d6004803603604081101561024e57600080fd5b506001600160a01b0381351690602001356105df565b6102876004803603604081101561027a57600080fd5b5080359060200135610710565b604080519115158252519081900360200190f35b61018d600480360360a08110156102b157600080fd5b6001600160a01b0382358116926020810135926040820135909216916060820135919081019060a0810160808201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506107fb945050505050565b61018d6004803603602081101561037d57600080fd5b5035610cfd565b6102876004803603608081101561039a57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610f94565b610287600480360360608110156103d657600080fd5b508035906001600160a01b0360208201351690604001356110f8565b6101e56004803603602081101561040857600080fd5b5035611253565b6102876004803603606081101561042557600080fd5b508035906001600160a01b0360208201351690604001356116cb565b6037602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b0394851695938516949293919092169160ff8082169161010090041687565b6034546001600160a01b031681565b60355481565b6104dd85858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506117f19050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b0316331461054c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561059957600080fd5b505afa1580156105ad573d6000803e3d6000fd5b505050506040513d60208110156105c357600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610638576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561068657600080fd5b505afa15801561069a573d6000803e3d6000fd5b505050506040513d60208110156106b057600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561059957600080fd5b60345460009083906001600160a01b03163314610769576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b826001141561078f576000848152603760205260409020600501805460ff191660011790555b600084815260376020908152604091829020600501805461ff0019166101001790556033548251868152925187936001600160a01b03909216927fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0928290030190a35060019392505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561084057600080fd5b505afa158015610854573d6000803e3d6000fd5b505050506040513d602081101561086a57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156108b457600080fd5b505afa1580156108c8573d6000803e3d6000fd5b505050506040513d60208110156108de57600080fd5b505161092c576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6001600160a01b0386161580159061094c57506001600160a01b03841615155b61099d576040805162461bcd60e51b815260206004820152601e60248201527f546f6b656e2061646472657373206d757374206e6f74206265206e756c6c0000604482015290519081900360640190fd5b6000851180156109ad5750600083115b6109e85760405162461bcd60e51b8152600401808060200182810382526023815260200180611e5b6023913960400191505060405180910390fd5b6109fd6001600160a01b038716333088611a5a565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b039182166064840152519216916388737b5e916084808201926020929091908290030181600087803b158015610a6557600080fd5b505af1158015610a79573d6000803e3d6000fd5b505050506040513d6020811015610a8f57600080fd5b810190808051906020019092919050505090506040518060e00160405280336001600160a01b03168152602001876001600160a01b03168152602001868152602001856001600160a01b03168152602001848152602001600015158152602001600015158152506037600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c08201518160050160016101000a81548160ff021916908315150217905550905050436036600083815260200190815260200160002081905550336001600160a01b031681603360009054906101000a90046001600160a01b03166001600160a01b03167fa8b65a34d8d48dd5c751760a4c3e0a58076df37c4a930ddf02be57f059535acd858a8a8a8a6040518080602001866001600160a01b03168152602001858152602001846001600160a01b03168152602001838152602001828103825287818151815260200191508051906020019080838360005b83811015610cb6578181015183820152602001610c9e565b50505050905090810190601f168015610ce35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a495945050505050565b60345460009082906001600160a01b03163314610d56576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610da457600080fd5b505afa158015610db8573d6000803e3d6000fd5b505050506040513d6020811015610dce57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610e1857600080fd5b505afa158015610e2c573d6000803e3d6000fd5b505050506040513d6020811015610e4257600080fd5b5051610e90576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610ede57600080fd5b505afa158015610ef2573d6000803e3d6000fd5b505050506040513d6020811015610f0857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610f6157600080fd5b505afa158015610f75573d6000803e3d6000fd5b505050506040513d6020811015610f8b57600080fd5b50519392505050565b60345460009082906001600160a01b03163314610fed576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561103b57600080fd5b505afa15801561104f573d6000803e3d6000fd5b505050506040513d602081101561106557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156110c257600080fd5b505af11580156110d6573d6000803e3d6000fd5b505050506040513d60208110156110ec57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611151576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561119f57600080fd5b505afa1580156111b3573d6000803e3d6000fd5b505050506040513d60208110156111c957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561121e57600080fd5b505af1158015611232573d6000803e3d6000fd5b505050506040513d602081101561124857600080fd5b505195945050505050565b60008181526037602052604090206005810154610100900460ff166112bf576040805162461bcd60e51b815260206004820152601a60248201527f6d757374206265206120646563696465642070726f706f73616c000000000000604482015290519081900360640190fd5b600581015460ff161561150057603354600282015460018301546112f1926001600160a01b0391821692911690611aba565b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133f57600080fd5b505afa158015611353573d6000803e3d6000fd5b505050506040513d602081101561136957600080fd5b5051600382015482546004808501546040805163dab0efff60e01b81526001600160a01b0395861693810193909352928416602483015260448201529051919092169163dab0efff9160648083019260209291908290030181600087803b1580156113d357600080fd5b505af11580156113e7573d6000803e3d6000fd5b505050506040513d60208110156113fd57600080fd5b505161143a5760405162461bcd60e51b8152600401808060200182810382526026815260200180611ed66026913960400191505060405180910390fd5b80546033546001830154600284015460038501546004860154604080516001600160a01b039586168152602081019490945291841683830152606083015251938216938693909216917f04d310ea86a87276bab720887c4d37967fddfd69b62a952dc35a0bd8314764729181900360800190a4600082815260376020526040812080546001600160a01b03199081168255600182018054821690556002820183905560038201805490911690556004810191909155600501805461ffff191690556116c7565b611508611e1e565b603760008481526020019081526020016000206040518060e00160405290816000820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020016001820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016005820160019054906101000a900460ff161515151581525050905060376000848152602001908152602001600020600080820160006101000a8154906001600160a01b0302191690556001820160006101000a8154906001600160a01b03021916905560028201600090556003820160006101000a8154906001600160a01b03021916905560048201600090556005820160006101000a81549060ff02191690556005820160016101000a81549060ff021916905550506116c58160000151826040015183602001516001600160a01b0316611aba9092919063ffffffff16565b505b5050565b60345460009082906001600160a01b03163314611724576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561177257600080fd5b505afa158015611786573d6000803e3d6000fd5b505050506040513d602081101561179c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561121e57600080fd5b6001600160a01b03841661184c576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61185585611b0c565b603480546001600160a01b0319166001600160a01b03861617905582611a51576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156118bf5781810151838201526020016118a7565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156118f157600080fd5b505afa158015611905573d6000803e3d6000fd5b505050506040513d602081101561191b57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561196d57600080fd5b505afa158015611981573d6000803e3d6000fd5b505050506040513d6101a081101561199857600080fd5b5051905080611a4a57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156119e95781810151838201526020016119d1565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611a1d57600080fd5b505af1158015611a31573d6000803e3d6000fd5b505050506040513d6020811015611a4757600080fd5b50505b50506104dd565b50506035555050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611ab4908590611c24565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526116c5908490611c24565b600054610100900460ff1680611b255750611b25611ddc565b80611b33575060005460ff16155b611b6e5760405162461bcd60e51b815260040180806020018281038252602e815260200180611e7e602e913960400191505060405180910390fd5b600054610100900460ff16158015611b99576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611bf4576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b03841617905580156116c7576000805461ff00191690555050565b611c36826001600160a01b0316611de2565b611c87576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310611cc55780518252601f199092019160209182019101611ca6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611d27576040519150601f19603f3d011682016040523d82523d6000602084013e611d2c565b606091505b509150915081611d83576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b805115611ab457808060200190516020811015611d9f57600080fd5b5051611ab45760405162461bcd60e51b815260040180806020018281038252602a815260200180611eac602a913960400191505060405180910390fd5b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611e1657508115155b949350505050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c08101919091529056fe546f6b656e20616d6f756e74206d7573742062652067726561746572207468616e2030436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565646661696c656420746f207472616e7366657220746f6b656e732066726f6d207468652044414fa2646970667358221220dae9cf0e53e91ea8658bf5002d391ef5e72c9f21aeed4542137fa48c0770998d64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80639588378e11610097578063bea75f2811610066578063bea75f2814610384578063d29b5d2f146103c0578063e751f271146103f2578063f81f8bf61461040f576100f5565b80639588378e146102385780639d4c162d14610264578063b4055b8c1461029b578063b551c37314610367576100f5565b8063540fbeb3116100d3578063540fbeb31461019f5780635aef7de6146101e75780636b8eb403146101ef5780637a5cb92c1461021b576100f5565b806332ed5b12146100fa5780633edf7ca1146101615780634ea2c7ec14610185575b600080fd5b6101176004803603602081101561011057600080fd5b5035610441565b604080516001600160a01b039889168152968816602088015286810195909552929095166060850152608084015292151560a083015291151560c082015290519081900360e00190f35b610169610491565b604080516001600160a01b039092168252519081900360200190f35b61018d6104a0565b60408051918252519081900360200190f35b6101e560048036036101e08110156101b657600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c001356104a6565b005b6101696104e4565b61018d6004803603604081101561020557600080fd5b506001600160a01b0381351690602001356104f3565b61018d6004803603602081101561023157600080fd5b50356105cd565b61018d6004803603604081101561024e57600080fd5b506001600160a01b0381351690602001356105df565b6102876004803603604081101561027a57600080fd5b5080359060200135610710565b604080519115158252519081900360200190f35b61018d600480360360a08110156102b157600080fd5b6001600160a01b0382358116926020810135926040820135909216916060820135919081019060a0810160808201356401000000008111156102f257600080fd5b82018360208201111561030457600080fd5b8035906020019184600183028401116401000000008311171561032657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506107fb945050505050565b61018d6004803603602081101561037d57600080fd5b5035610cfd565b6102876004803603608081101561039a57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610f94565b610287600480360360608110156103d657600080fd5b508035906001600160a01b0360208201351690604001356110f8565b6101e56004803603602081101561040857600080fd5b5035611253565b6102876004803603606081101561042557600080fd5b508035906001600160a01b0360208201351690604001356116cb565b6037602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b0394851695938516949293919092169160ff8082169161010090041687565b6034546001600160a01b031681565b60355481565b6104dd85858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506117f19050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b0316331461054c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b15801561059957600080fd5b505afa1580156105ad573d6000803e3d6000fd5b505050506040513d60208110156105c357600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610638576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561068657600080fd5b505afa15801561069a573d6000803e3d6000fd5b505050506040513d60208110156106b057600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b15801561059957600080fd5b60345460009083906001600160a01b03163314610769576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b826001141561078f576000848152603760205260409020600501805460ff191660011790555b600084815260376020908152604091829020600501805461ff0019166101001790556033548251868152925187936001600160a01b03909216927fd2632e80f5364f02aded1c64e8a04637b7c8bb9c2db2bedf4b6ac47c013acbc0928290030190a35060019392505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561084057600080fd5b505afa158015610854573d6000803e3d6000fd5b505050506040513d602081101561086a57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156108b457600080fd5b505afa1580156108c8573d6000803e3d6000fd5b505050506040513d60208110156108de57600080fd5b505161092c576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b6001600160a01b0386161580159061094c57506001600160a01b03841615155b61099d576040805162461bcd60e51b815260206004820152601e60248201527f546f6b656e2061646472657373206d757374206e6f74206265206e756c6c0000604482015290519081900360640190fd5b6000851180156109ad5750600083115b6109e85760405162461bcd60e51b8152600401808060200182810382526023815260200180611e5b6023913960400191505060405180910390fd5b6109fd6001600160a01b038716333088611a5a565b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b039182166064840152519216916388737b5e916084808201926020929091908290030181600087803b158015610a6557600080fd5b505af1158015610a79573d6000803e3d6000fd5b505050506040513d6020811015610a8f57600080fd5b810190808051906020019092919050505090506040518060e00160405280336001600160a01b03168152602001876001600160a01b03168152602001868152602001856001600160a01b03168152602001848152602001600015158152602001600015158152506037600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060208201518160010160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506040820151816002015560608201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c08201518160050160016101000a81548160ff021916908315150217905550905050436036600083815260200190815260200160002081905550336001600160a01b031681603360009054906101000a90046001600160a01b03166001600160a01b03167fa8b65a34d8d48dd5c751760a4c3e0a58076df37c4a930ddf02be57f059535acd858a8a8a8a6040518080602001866001600160a01b03168152602001858152602001846001600160a01b03168152602001838152602001828103825287818151815260200191508051906020019080838360005b83811015610cb6578181015183820152602001610c9e565b50505050905090810190601f168015610ce35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a495945050505050565b60345460009082906001600160a01b03163314610d56576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610da457600080fd5b505afa158015610db8573d6000803e3d6000fd5b505050506040513d6020811015610dce57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610e1857600080fd5b505afa158015610e2c573d6000803e3d6000fd5b505050506040513d6020811015610e4257600080fd5b5051610e90576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610ede57600080fd5b505afa158015610ef2573d6000803e3d6000fd5b505050506040513d6020811015610f0857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b158015610f6157600080fd5b505afa158015610f75573d6000803e3d6000fd5b505050506040513d6020811015610f8b57600080fd5b50519392505050565b60345460009082906001600160a01b03163314610fed576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561103b57600080fd5b505afa15801561104f573d6000803e3d6000fd5b505050506040513d602081101561106557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156110c257600080fd5b505af11580156110d6573d6000803e3d6000fd5b505050506040513d60208110156110ec57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611151576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561119f57600080fd5b505afa1580156111b3573d6000803e3d6000fd5b505050506040513d60208110156111c957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561121e57600080fd5b505af1158015611232573d6000803e3d6000fd5b505050506040513d602081101561124857600080fd5b505195945050505050565b60008181526037602052604090206005810154610100900460ff166112bf576040805162461bcd60e51b815260206004820152601a60248201527f6d757374206265206120646563696465642070726f706f73616c000000000000604482015290519081900360640190fd5b600581015460ff161561150057603354600282015460018301546112f1926001600160a01b0391821692911690611aba565b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133f57600080fd5b505afa158015611353573d6000803e3d6000fd5b505050506040513d602081101561136957600080fd5b5051600382015482546004808501546040805163dab0efff60e01b81526001600160a01b0395861693810193909352928416602483015260448201529051919092169163dab0efff9160648083019260209291908290030181600087803b1580156113d357600080fd5b505af11580156113e7573d6000803e3d6000fd5b505050506040513d60208110156113fd57600080fd5b505161143a5760405162461bcd60e51b8152600401808060200182810382526026815260200180611ed66026913960400191505060405180910390fd5b80546033546001830154600284015460038501546004860154604080516001600160a01b039586168152602081019490945291841683830152606083015251938216938693909216917f04d310ea86a87276bab720887c4d37967fddfd69b62a952dc35a0bd8314764729181900360800190a4600082815260376020526040812080546001600160a01b03199081168255600182018054821690556002820183905560038201805490911690556004810191909155600501805461ffff191690556116c7565b611508611e1e565b603760008481526020019081526020016000206040518060e00160405290816000820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b031681526020016001820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016005820160019054906101000a900460ff161515151581525050905060376000848152602001908152602001600020600080820160006101000a8154906001600160a01b0302191690556001820160006101000a8154906001600160a01b03021916905560028201600090556003820160006101000a8154906001600160a01b03021916905560048201600090556005820160006101000a81549060ff02191690556005820160016101000a81549060ff021916905550506116c58160000151826040015183602001516001600160a01b0316611aba9092919063ffffffff16565b505b5050565b60345460009082906001600160a01b03163314611724576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561177257600080fd5b505afa158015611786573d6000803e3d6000fd5b505050506040513d602081101561179c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561121e57600080fd5b6001600160a01b03841661184c576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61185585611b0c565b603480546001600160a01b0319166001600160a01b03861617905582611a51576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b838110156118bf5781810151838201526020016118a7565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156118f157600080fd5b505afa158015611905573d6000803e3d6000fd5b505050506040513d602081101561191b57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561196d57600080fd5b505afa158015611981573d6000803e3d6000fd5b505050506040513d6101a081101561199857600080fd5b5051905080611a4a57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156119e95781810151838201526020016119d1565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611a1d57600080fd5b505af1158015611a31573d6000803e3d6000fd5b505050506040513d6020811015611a4757600080fd5b50505b50506104dd565b50506035555050565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b179052611ab4908590611c24565b50505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526116c5908490611c24565b600054610100900460ff1680611b255750611b25611ddc565b80611b33575060005460ff16155b611b6e5760405162461bcd60e51b815260040180806020018281038252602e815260200180611e7e602e913960400191505060405180910390fd5b600054610100900460ff16158015611b99576000805460ff1961ff0019909116610100171660011790555b6001600160a01b038216611bf4576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b03841617905580156116c7576000805461ff00191690555050565b611c36826001600160a01b0316611de2565b611c87576040805162461bcd60e51b815260206004820152601f60248201527f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e747261637400604482015290519081900360640190fd5b60006060836001600160a01b0316836040518082805190602001908083835b60208310611cc55780518252601f199092019160209182019101611ca6565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114611d27576040519150601f19603f3d011682016040523d82523d6000602084013e611d2c565b606091505b509150915081611d83576040805162461bcd60e51b815260206004820181905260248201527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604482015290519081900360640190fd5b805115611ab457808060200190516020811015611d9f57600080fd5b5051611ab45760405162461bcd60e51b815260040180806020018281038252602a815260200180611eac602a913960400191505060405180910390fd5b303b1590565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470818114801590611e1657508115155b949350505050565b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c08101919091529056fe546f6b656e20616d6f756e74206d7573742062652067726561746572207468616e2030436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a65645361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565646661696c656420746f207472616e7366657220746f6b656e732066726f6d207468652044414fa2646970667358221220dae9cf0e53e91ea8658bf5002d391ef5e72c9f21aeed4542137fa48c0770998d64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/UpgradeScheme.json b/contracts/0.1.2-rc.8/UpgradeScheme.json new file mode 100644 index 00000000..ff6607ef --- /dev/null +++ b/contracts/0.1.2-rc.8/UpgradeScheme.json @@ -0,0 +1,458 @@ +{ + "contractName": "UpgradeScheme", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint64[3]", + "name": "_packageVersion", + "type": "uint64[3]" + }, + { + "indexed": false, + "internalType": "bytes32[]", + "name": "_contractsNames", + "type": "bytes32[]" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "_contractsToUpgrade", + "type": "address[]" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewUpgradeProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "_decision", + "type": "bool" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "_upgradedContracts", + "type": "address[]" + } + ], + "name": "UpgradedContracts", + "type": "event" + }, + { + "inputs": [], + "name": "arcPackage", + "outputs": [ + { + "internalType": "contract Package", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + }, + { + "internalType": "contract Package", + "name": "_package", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "bool", + "name": "exist", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64[3]", + "name": "_packageVersion", + "type": "uint64[3]" + }, + { + "internalType": "bytes32[]", + "name": "_contractsNames", + "type": "bytes32[]" + }, + { + "internalType": "address[]", + "name": "_contractsToUpgrade", + "type": "address[]" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeUpgrade", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50612419806100206000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063985e313f11610097578063bea75f2811610066578063bea75f281461043b578063d29b5d2f14610477578063d8145e2d146104a9578063f81f8bf6146104c6576100f5565b8063985e313f146101bd5780639d4c162d1461020c578063a191f8e814610243578063b551c3731461041e576100f5565b80635aef7de6116100d35780635aef7de6146101405780636b8eb403146101485780637a5cb92c146101745780639588378e14610191576100f5565b80632b304bc5146100fa5780633edf7ca11461011e5780634ea2c7ec14610126575b600080fd5b6101026104f8565b604080516001600160a01b039092168252519081900360200190f35b610102610507565b61012e610516565b60408051918252519081900360200190f35b61010261051c565b61012e6004803603604081101561015e57600080fd5b506001600160a01b03813516906020013561052b565b61012e6004803603602081101561018a57600080fd5b5035610605565b61012e600480360360408110156101a757600080fd5b506001600160a01b038135169060200135610617565b61020a60048036036102008110156101d457600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0013516610748565b005b61022f6004803603604081101561022257600080fd5b50803590602001356107a6565b604080519115158252519081900360200190f35b61012e600480360360c081101561025957600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091949392602081019250359050600160201b8111156102a657600080fd5b8201836020820111156102b857600080fd5b803590602001918460208302840111600160201b831117156102d957600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561032857600080fd5b82018360208201111561033a57600080fd5b803590602001918460208302840111600160201b8311171561035b57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b8111156103aa57600080fd5b8201836020820111156103bc57600080fd5b803590602001918460018302840111600160201b831117156103dd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610ed7945050505050565b61012e6004803603602081101561043457600080fd5b50356115ed565b61022f6004803603608081101561045157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611884565b61022f6004803603606081101561048d57600080fd5b508035906001600160a01b0360208201351690604001356119e8565b61022f600480360360208110156104bf57600080fd5b5035611b43565b61022f600480360360608110156104dc57600080fd5b508035906001600160a01b036020820135169060400135611b5b565b6038546001600160a01b031681565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610584576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105d157600080fd5b505afa1580156105e5573d6000803e3d6000fd5b505050506040513d60208110156105fb57600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610670576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106be57600080fd5b505afa1580156106d2573d6000803e3d6000fd5b505050506040513d60208110156106e857600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105d157600080fd5b61077f86868487600b806020026040519081016040528092919082600b60200280828437600092019190915250899150611c819050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b031633146107ff576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152603760205260409020600381015460ff16610866576040805162461bcd60e51b815260206004820152601760248201527f6d7573742062652061206c6976652070726f706f73616c000000000000000000604482015290519081900360640190fd5b8360011415610e0d5760038101805460ff1916905560028101805460408051602080840282018101909252828152606093909290918301828280156108d457602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108b6575b5050505050905060005b8151811015610d895760008360010182815481106108f857fe5b90600052602060002001549050606061091082611eee565b603854604051630efa075560e11b81529192506000916001600160a01b0390911690631df40eaa90889060048101906064018286835b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff1681526020019060080190602082600701049283019260010382029150808411610946579050505091505060206040518083038186803b1580156109a757600080fd5b505afa1580156109bb573d6000803e3d6000fd5b505050506040513d60208110156109d157600080fd5b50516040516335b41c4b60e11b81526020600482018181528551602484015285516001600160a01b0390941693636b68389693879383926044909201919085019080838360005b83811015610a30578181015183820152602001610a18565b50505050905090810190601f168015610a5d5780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b158015610a7a57600080fd5b505afa158015610a8e573d6000803e3d6000fd5b505050506040513d6020811015610aa457600080fd5b505160335460408051638da5cb5b60e01b815290519293506000926001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b158015610af157600080fd5b505afa158015610b05573d6000803e3d6000fd5b505050506040513d6020811015610b1b57600080fd5b505186519091506000906001600160a01b03831690632bf1645890899089908110610b4257fe5b60200260200101518560405160240180826001600160a01b03168152602001915050604051602081830303815290604052631b2ce7f360e11b6001600160e01b0319166020820180516001600160e01b03838183161783525050505060006040518463ffffffff1660e01b815260040180846001600160a01b0316815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015610c01578181015183820152602001610be9565b50505050905090810190601f168015610c2e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610c4f57600080fd5b505af1158015610c63573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610c8c57600080fd5b815160208301805160405192949293830192919084600160201b821115610cb257600080fd5b908301906020820185811115610cc757600080fd5b8251600160201b811182820188101715610ce057600080fd5b82525081516020918201929091019080838360005b83811015610d0d578181015183820152602001610cf5565b50505050905090810190601f168015610d3a5780820380516001836020036101000a031916815260200191505b5060405250505050905080610d78576000878781518110610d5757fe5b60200260200101906001600160a01b031690816001600160a01b0316815250505b5050600190930192506108de915050565b5060335460408051602080825284518183015284516001600160a01b03909416937f46b8ba2f89eecbe06b4e49568dd05bcdc85759f982a55b8d2448c701577cf39b93869392839291830191818601910280838360005b83811015610df8578181015183820152602001610de0565b505050509050019250505060405180910390a2505b600085815260376020526040812090610e26828261212d565b610e34600183016000612134565b610e42600283016000612134565b50600301805460ff1916905560335460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360335460408051600187148152905187926001600160a01b0316917fd8b58d7c4ba1519b89f0a4b59f85c776d1bb2876a5087a4e604403c4c3c69f6d919081900360200190a3506001949350505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610f1c57600080fd5b505afa158015610f30573d6000803e3d6000fd5b505050506040513d6020811015610f4657600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610f9057600080fd5b505afa158015610fa4573d6000803e3d6000fd5b505050506040513d6020811015610fba57600080fd5b5051611008576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603c845111156110495760405162461bcd60e51b815260040180806020018281038252602881526020018061235f6028913960400191505060405180910390fd5b82518451146110895760405162461bcd60e51b81526004018080602001828103825260378152602001806122fa6037913960400191505060405180910390fd5b603854604051631ae7200b60e11b81526001600160a01b03909116906335ce40169087906004018082606080838360005b838110156110d25781810151838201526020016110ba565b5050505090500191505060206040518083038186803b1580156110f457600080fd5b505afa158015611108573d6000803e3d6000fd5b505050506040513d602081101561111e57600080fd5b505161115b5760405162461bcd60e51b815260040180806020018281038252602e815260200180612331602e913960400191505060405180910390fd5b60005b835181101561133f57603854604051630efa075560e11b81526000916001600160a01b031690631df40eaa908990600401808260608083838a5b838110156111b0578181015183820152602001611198565b5050505090500191505060206040518083038186803b1580156111d257600080fd5b505afa1580156111e6573d6000803e3d6000fd5b505050506040513d60208110156111fc57600080fd5b505186516001600160a01b0390911690636b6838969061122f9089908690811061122257fe5b6020026020010151611eee565b6040518263ffffffff1660e01b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561127b578181015183820152602001611263565b50505050905090810190601f1680156112a85780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b1580156112c557600080fd5b505afa1580156112d9573d6000803e3d6000fd5b505050506040513d60208110156112ef57600080fd5b50516001600160a01b031614156113375760405162461bcd60e51b815260040180806020018281038252602f8152602001806123b5602f913960400191505060405180910390fd5b60010161115e565b5060345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156113ab57600080fd5b505af11580156113bf573d6000803e3d6000fd5b505050506040513d60208110156113d557600080fd5b50516040805160808101825288815260208181018990528183018890526001606083015260008481526037909152919091208151929350909161141b9082906003612155565b50602082810151805161143492600185019201906121fd565b5060408201518051611450916002840191602090910190612244565b50606091820151600391909101805460ff1916911515919091179055600082815260366020526040808220439055603354905184936001600160a01b03909216927f8e0f592dd8219624d327cf775f602bbbc5547e2db7af547d55de187aa0bd6970928b928b928b928b9291829187918190849084905b838110156114df5781810151838201526020016114c7565b50505050905001806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b8381101561152a578181015183820152602001611512565b50505050905001848103835286818151815260200191508051906020019060200280838360005b83811015611569578181015183820152602001611551565b50505050905001848103825285818151815260200191508051906020019080838360005b838110156115a557818101518382015260200161158d565b50505050905090810190601f1680156115d25780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a395945050505050565b60345460009082906001600160a01b03163314611646576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561169457600080fd5b505afa1580156116a8573d6000803e3d6000fd5b505050506040513d60208110156116be57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561170857600080fd5b505afa15801561171c573d6000803e3d6000fd5b505050506040513d602081101561173257600080fd5b5051611780576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156117ce57600080fd5b505afa1580156117e2573d6000803e3d6000fd5b505050506040513d60208110156117f857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561185157600080fd5b505afa158015611865573d6000803e3d6000fd5b505050506040513d602081101561187b57600080fd5b50519392505050565b60345460009082906001600160a01b031633146118dd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561192b57600080fd5b505afa15801561193f573d6000803e3d6000fd5b505050506040513d602081101561195557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156119b257600080fd5b505af11580156119c6573d6000803e3d6000fd5b505050506040513d60208110156119dc57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611a41576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a8f57600080fd5b505afa158015611aa3573d6000803e3d6000fd5b505050506040513d6020811015611ab957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015611b0e57600080fd5b505af1158015611b22573d6000803e3d6000fd5b505050506040513d6020811015611b3857600080fd5b505195945050505050565b60376020526000908152604090206003015460ff1681565b60345460009082906001600160a01b03163314611bb4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c0257600080fd5b505afa158015611c16573d6000803e3d6000fd5b505050506040513d6020811015611c2c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015611b0e57600080fd5b6001600160a01b038416611cdc576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b611ce58561200e565b603480546001600160a01b0319166001600160a01b03861617905582611ee1576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015611d4f578181015183820152602001611d37565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b158015611d8157600080fd5b505afa158015611d95573d6000803e3d6000fd5b505050506040513d6020811015611dab57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015611dfd57600080fd5b505afa158015611e11573d6000803e3d6000fd5b505050506040513d6101a0811015611e2857600080fd5b5051905080611eda57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015611e79578181015183820152602001611e61565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611ead57600080fd5b505af1158015611ec1573d6000803e3d6000fd5b505050506040513d6020811015611ed757600080fd5b50505b5050611ee7565b60358390555b5050505050565b6040805160208082528183019092526060918291906020820181803683370190505090506000805b6020811015611f6c576008810260020a85026001600160f81b0319811615611f635780848481518110611f4557fe5b60200101906001600160f81b031916908160001a9053506001909201915b50600101611f16565b60608267ffffffffffffffff81118015611f8557600080fd5b506040519080825280601f01601f191660200182016040528015611fb0576020820181803683370190505b509050600091505b8282101561200557838281518110611fcc57fe5b602001015160f81c60f81b818381518110611fe357fe5b60200101906001600160f81b031916908160001a905350600190910190611fb8565b95945050505050565b600054610100900460ff16806120275750612027612127565b80612035575060005460ff16155b6120705760405162461bcd60e51b815260040180806020018281038252602e815260200180612387602e913960400191505060405180910390fd5b600054610100900460ff1615801561209b576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166120f6576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015612123576000805461ff00191690555b5050565b303b1590565b5060009055565b508054600082559060005260206000209081019061215291906122a5565b50565b6001830191839082156121ed5791602002820160005b838211156121b757835183826101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550926020019260080160208160070104928301926001030261216b565b80156121eb5782816101000a81549067ffffffffffffffff02191690556008016020816007010492830192600103026121b7565b505b506121f99291506122ba565b5090565b828054828255906000526020600020908101928215612238579160200282015b8281111561223857825182559160200191906001019061221d565b506121f99291506122a5565b828054828255906000526020600020908101928215612299579160200282015b8281111561229957825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190612264565b506121f99291506122da565b5b808211156121f957600081556001016122a6565b5b808211156121f957805467ffffffffffffffff191681556001016122bb565b5b808211156121f95780546001600160a01b03191681556001016122db56fe75706772616465206e616d6520616e64206164647265737320617272617973206d757374206861766520657175616c206c656e677468735370656369666965642076657273696f6e20646f65736e277420657869737420696e20746865205061636b61676563616e207570677261646520757020746f20363020636f6e74726163747320617420612074696d65436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564436f6e7472616374206e616d6520646f6573206e6f7420657869737420696e2041726348697665207061636b616765a2646970667358221220abe957ec6c5a09257ed3a606cdfb6f6962bbef9a1f7ba4cdcccedf6f85e423d564736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063985e313f11610097578063bea75f2811610066578063bea75f281461043b578063d29b5d2f14610477578063d8145e2d146104a9578063f81f8bf6146104c6576100f5565b8063985e313f146101bd5780639d4c162d1461020c578063a191f8e814610243578063b551c3731461041e576100f5565b80635aef7de6116100d35780635aef7de6146101405780636b8eb403146101485780637a5cb92c146101745780639588378e14610191576100f5565b80632b304bc5146100fa5780633edf7ca11461011e5780634ea2c7ec14610126575b600080fd5b6101026104f8565b604080516001600160a01b039092168252519081900360200190f35b610102610507565b61012e610516565b60408051918252519081900360200190f35b61010261051c565b61012e6004803603604081101561015e57600080fd5b506001600160a01b03813516906020013561052b565b61012e6004803603602081101561018a57600080fd5b5035610605565b61012e600480360360408110156101a757600080fd5b506001600160a01b038135169060200135610617565b61020a60048036036102008110156101d457600080fd5b506001600160a01b038135811691602081013582169160408201916101a08101358216916101c0820135916101e0013516610748565b005b61022f6004803603604081101561022257600080fd5b50803590602001356107a6565b604080519115158252519081900360200190f35b61012e600480360360c081101561025957600080fd5b810190808060600190600380602002604051908101604052809291908260036020028082843760009201919091525091949392602081019250359050600160201b8111156102a657600080fd5b8201836020820111156102b857600080fd5b803590602001918460208302840111600160201b831117156102d957600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561032857600080fd5b82018360208201111561033a57600080fd5b803590602001918460208302840111600160201b8311171561035b57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b8111156103aa57600080fd5b8201836020820111156103bc57600080fd5b803590602001918460018302840111600160201b831117156103dd57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610ed7945050505050565b61012e6004803603602081101561043457600080fd5b50356115ed565b61022f6004803603608081101561045157600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611884565b61022f6004803603606081101561048d57600080fd5b508035906001600160a01b0360208201351690604001356119e8565b61022f600480360360208110156104bf57600080fd5b5035611b43565b61022f600480360360608110156104dc57600080fd5b508035906001600160a01b036020820135169060400135611b5b565b6038546001600160a01b031681565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b03163314610584576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156105d157600080fd5b505afa1580156105e5573d6000803e3d6000fd5b505050506040513d60208110156105fb57600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610670576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156106be57600080fd5b505afa1580156106d2573d6000803e3d6000fd5b505050506040513d60208110156106e857600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156105d157600080fd5b61077f86868487600b806020026040519081016040528092919082600b60200280828437600092019190915250899150611c819050565b603880546001600160a01b0319166001600160a01b03929092169190911790555050505050565b60345460009083906001600160a01b031633146107ff576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b6000848152603760205260409020600381015460ff16610866576040805162461bcd60e51b815260206004820152601760248201527f6d7573742062652061206c6976652070726f706f73616c000000000000000000604482015290519081900360640190fd5b8360011415610e0d5760038101805460ff1916905560028101805460408051602080840282018101909252828152606093909290918301828280156108d457602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116108b6575b5050505050905060005b8151811015610d895760008360010182815481106108f857fe5b90600052602060002001549050606061091082611eee565b603854604051630efa075560e11b81529192506000916001600160a01b0390911690631df40eaa90889060048101906064018286835b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff1681526020019060080190602082600701049283019260010382029150808411610946579050505091505060206040518083038186803b1580156109a757600080fd5b505afa1580156109bb573d6000803e3d6000fd5b505050506040513d60208110156109d157600080fd5b50516040516335b41c4b60e11b81526020600482018181528551602484015285516001600160a01b0390941693636b68389693879383926044909201919085019080838360005b83811015610a30578181015183820152602001610a18565b50505050905090810190601f168015610a5d5780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b158015610a7a57600080fd5b505afa158015610a8e573d6000803e3d6000fd5b505050506040513d6020811015610aa457600080fd5b505160335460408051638da5cb5b60e01b815290519293506000926001600160a01b0390921691638da5cb5b91600480820192602092909190829003018186803b158015610af157600080fd5b505afa158015610b05573d6000803e3d6000fd5b505050506040513d6020811015610b1b57600080fd5b505186519091506000906001600160a01b03831690632bf1645890899089908110610b4257fe5b60200260200101518560405160240180826001600160a01b03168152602001915050604051602081830303815290604052631b2ce7f360e11b6001600160e01b0319166020820180516001600160e01b03838183161783525050505060006040518463ffffffff1660e01b815260040180846001600160a01b0316815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015610c01578181015183820152602001610be9565b50505050905090810190601f168015610c2e5780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610c4f57600080fd5b505af1158015610c63573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610c8c57600080fd5b815160208301805160405192949293830192919084600160201b821115610cb257600080fd5b908301906020820185811115610cc757600080fd5b8251600160201b811182820188101715610ce057600080fd5b82525081516020918201929091019080838360005b83811015610d0d578181015183820152602001610cf5565b50505050905090810190601f168015610d3a5780820380516001836020036101000a031916815260200191505b5060405250505050905080610d78576000878781518110610d5757fe5b60200260200101906001600160a01b031690816001600160a01b0316815250505b5050600190930192506108de915050565b5060335460408051602080825284518183015284516001600160a01b03909416937f46b8ba2f89eecbe06b4e49568dd05bcdc85759f982a55b8d2448c701577cf39b93869392839291830191818601910280838360005b83811015610df8578181015183820152602001610de0565b505050509050019250505060405180910390a2505b600085815260376020526040812090610e26828261212d565b610e34600183016000612134565b610e42600283016000612134565b50600301805460ff1916905560335460405186916001600160a01b0316907f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe90600090a360335460408051600187148152905187926001600160a01b0316917fd8b58d7c4ba1519b89f0a4b59f85c776d1bb2876a5087a4e604403c4c3c69f6d919081900360200190a3506001949350505050565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610f1c57600080fd5b505afa158015610f30573d6000803e3d6000fd5b505050506040513d6020811015610f4657600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b158015610f9057600080fd5b505afa158015610fa4573d6000803e3d6000fd5b505050506040513d6020811015610fba57600080fd5b5051611008576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603c845111156110495760405162461bcd60e51b815260040180806020018281038252602881526020018061235f6028913960400191505060405180910390fd5b82518451146110895760405162461bcd60e51b81526004018080602001828103825260378152602001806122fa6037913960400191505060405180910390fd5b603854604051631ae7200b60e11b81526001600160a01b03909116906335ce40169087906004018082606080838360005b838110156110d25781810151838201526020016110ba565b5050505090500191505060206040518083038186803b1580156110f457600080fd5b505afa158015611108573d6000803e3d6000fd5b505050506040513d602081101561111e57600080fd5b505161115b5760405162461bcd60e51b815260040180806020018281038252602e815260200180612331602e913960400191505060405180910390fd5b60005b835181101561133f57603854604051630efa075560e11b81526000916001600160a01b031690631df40eaa908990600401808260608083838a5b838110156111b0578181015183820152602001611198565b5050505090500191505060206040518083038186803b1580156111d257600080fd5b505afa1580156111e6573d6000803e3d6000fd5b505050506040513d60208110156111fc57600080fd5b505186516001600160a01b0390911690636b6838969061122f9089908690811061122257fe5b6020026020010151611eee565b6040518263ffffffff1660e01b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561127b578181015183820152602001611263565b50505050905090810190601f1680156112a85780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b1580156112c557600080fd5b505afa1580156112d9573d6000803e3d6000fd5b505050506040513d60208110156112ef57600080fd5b50516001600160a01b031614156113375760405162461bcd60e51b815260040180806020018281038252602f8152602001806123b5602f913960400191505060405180910390fd5b60010161115e565b5060345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b1580156113ab57600080fd5b505af11580156113bf573d6000803e3d6000fd5b505050506040513d60208110156113d557600080fd5b50516040805160808101825288815260208181018990528183018890526001606083015260008481526037909152919091208151929350909161141b9082906003612155565b50602082810151805161143492600185019201906121fd565b5060408201518051611450916002840191602090910190612244565b50606091820151600391909101805460ff1916911515919091179055600082815260366020526040808220439055603354905184936001600160a01b03909216927f8e0f592dd8219624d327cf775f602bbbc5547e2db7af547d55de187aa0bd6970928b928b928b928b9291829187918190849084905b838110156114df5781810151838201526020016114c7565b50505050905001806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b8381101561152a578181015183820152602001611512565b50505050905001848103835286818151815260200191508051906020019060200280838360005b83811015611569578181015183820152602001611551565b50505050905001848103825285818151815260200191508051906020019080838360005b838110156115a557818101518382015260200161158d565b50505050905090810190601f1680156115d25780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a395945050505050565b60345460009082906001600160a01b03163314611646576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561169457600080fd5b505afa1580156116a8573d6000803e3d6000fd5b505050506040513d60208110156116be57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561170857600080fd5b505afa15801561171c573d6000803e3d6000fd5b505050506040513d602081101561173257600080fd5b5051611780576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156117ce57600080fd5b505afa1580156117e2573d6000803e3d6000fd5b505050506040513d60208110156117f857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561185157600080fd5b505afa158015611865573d6000803e3d6000fd5b505050506040513d602081101561187b57600080fd5b50519392505050565b60345460009082906001600160a01b031633146118dd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561192b57600080fd5b505afa15801561193f573d6000803e3d6000fd5b505050506040513d602081101561195557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156119b257600080fd5b505af11580156119c6573d6000803e3d6000fd5b505050506040513d60208110156119dc57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611a41576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a8f57600080fd5b505afa158015611aa3573d6000803e3d6000fd5b505050506040513d6020811015611ab957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b158015611b0e57600080fd5b505af1158015611b22573d6000803e3d6000fd5b505050506040513d6020811015611b3857600080fd5b505195945050505050565b60376020526000908152604090206003015460ff1681565b60345460009082906001600160a01b03163314611bb4576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611c0257600080fd5b505afa158015611c16573d6000803e3d6000fd5b505050506040513d6020811015611c2c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b158015611b0e57600080fd5b6001600160a01b038416611cdc576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b611ce58561200e565b603480546001600160a01b0319166001600160a01b03861617905582611ee1576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b83811015611d4f578181015183820152602001611d37565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b158015611d8157600080fd5b505afa158015611d95573d6000803e3d6000fd5b505050506040513d6020811015611dab57600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b158015611dfd57600080fd5b505afa158015611e11573d6000803e3d6000fd5b505050506040513d6101a0811015611e2857600080fd5b5051905080611eda57604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b83811015611e79578181015183820152602001611e61565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b158015611ead57600080fd5b505af1158015611ec1573d6000803e3d6000fd5b505050506040513d6020811015611ed757600080fd5b50505b5050611ee7565b60358390555b5050505050565b6040805160208082528183019092526060918291906020820181803683370190505090506000805b6020811015611f6c576008810260020a85026001600160f81b0319811615611f635780848481518110611f4557fe5b60200101906001600160f81b031916908160001a9053506001909201915b50600101611f16565b60608267ffffffffffffffff81118015611f8557600080fd5b506040519080825280601f01601f191660200182016040528015611fb0576020820181803683370190505b509050600091505b8282101561200557838281518110611fcc57fe5b602001015160f81c60f81b818381518110611fe357fe5b60200101906001600160f81b031916908160001a905350600190910190611fb8565b95945050505050565b600054610100900460ff16806120275750612027612127565b80612035575060005460ff16155b6120705760405162461bcd60e51b815260040180806020018281038252602e815260200180612387602e913960400191505060405180910390fd5b600054610100900460ff1615801561209b576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166120f6576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015612123576000805461ff00191690555b5050565b303b1590565b5060009055565b508054600082559060005260206000209081019061215291906122a5565b50565b6001830191839082156121ed5791602002820160005b838211156121b757835183826101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550926020019260080160208160070104928301926001030261216b565b80156121eb5782816101000a81549067ffffffffffffffff02191690556008016020816007010492830192600103026121b7565b505b506121f99291506122ba565b5090565b828054828255906000526020600020908101928215612238579160200282015b8281111561223857825182559160200191906001019061221d565b506121f99291506122a5565b828054828255906000526020600020908101928215612299579160200282015b8281111561229957825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190612264565b506121f99291506122da565b5b808211156121f957600081556001016122a6565b5b808211156121f957805467ffffffffffffffff191681556001016122bb565b5b808211156121f95780546001600160a01b03191681556001016122db56fe75706772616465206e616d6520616e64206164647265737320617272617973206d757374206861766520657175616c206c656e677468735370656369666965642076657273696f6e20646f65736e277420657869737420696e20746865205061636b61676563616e207570677261646520757020746f20363020636f6e74726163747320617420612074696d65436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564436f6e7472616374206e616d6520646f6573206e6f7420657869737420696e2041726348697665207061636b616765a2646970667358221220abe957ec6c5a09257ed3a606cdfb6f6962bbef9a1f7ba4cdcccedf6f85e423d564736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/UpgradeabilityProxy.json b/contracts/0.1.2-rc.8/UpgradeabilityProxy.json new file mode 100644 index 00000000..fe708a7e --- /dev/null +++ b/contracts/0.1.2-rc.8/UpgradeabilityProxy.json @@ -0,0 +1,44 @@ +{ + "contractName": "UpgradeabilityProxy", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_logic", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x60806040526040516103173803806103178339818101604052604081101561002657600080fd5b81516020830180516040519294929383019291908464010000000082111561004d57600080fd5b90830190602082018581111561006257600080fd5b825164010000000081118282018810171561007c57600080fd5b82525081516020918201929091019080838360005b838110156100a9578181015183820152602001610091565b50505050905090810190601f1680156100d65780820380516001836020036101000a031916815260200191505b50604052506100e3915050565b6100ec826101ab565b8051156101a4576000826001600160a01b0316826040518082805190602001908083835b6020831061012f5780518252601f199092019160209182019101610110565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d806000811461018f576040519150601f19603f3d011682016040523d82523d6000602084013e610194565b606091505b50509050806101a257600080fd5b505b5050610223565b6101be8161021d60201b6100271760201c565b6101f95760405162461bcd60e51b815260040180806020018281038252603b8152602001806102dc603b913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b3b151590565b60ab806102316000396000f3fe608060405236601057600e6013565b005b600e5b60196025565b60256021602d565b6052565b565b3b151590565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156070573d6000f35b3d6000fdfea2646970667358221220877db6715e40b6844f466e62b7dae9653d964f1cda4f0d5e77f1fbf6c2076fa864736f6c634300060c003343616e6e6f742073657420612070726f787920696d706c656d656e746174696f6e20746f2061206e6f6e2d636f6e74726163742061646472657373", + "deployedBytecode": "0x608060405236601057600e6013565b005b600e5b60196025565b60256021602d565b6052565b565b3b151590565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b3660008037600080366000845af43d6000803e8080156070573d6000f35b3d6000fdfea2646970667358221220877db6715e40b6844f466e62b7dae9653d964f1cda4f0d5e77f1fbf6c2076fa864736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Vault.json b/contracts/0.1.2-rc.8/Vault.json new file mode 100644 index 00000000..c52b10d3 --- /dev/null +++ b/contracts/0.1.2-rc.8/Vault.json @@ -0,0 +1,138 @@ +{ + "contractName": "Vault", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ReceiveEther", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "SendEther", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amountInWei", + "type": "uint256" + }, + { + "internalType": "address payable", + "name": "_to", + "type": "address" + } + ], + "name": "sendEther", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506106e7806100206000396000f3fe60806040526004361061004e5760003560e01c8063715018a6146100905780638da5cb5b146100a7578063c4d66de8146100d8578063cb16d4a21461010b578063f2fde38b146101585761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100a561018b565b005b3480156100b357600080fd5b506100bc61023f565b604080516001600160a01b039092168252519081900360200190f35b3480156100e457600080fd5b506100a5600480360360208110156100fb57600080fd5b50356001600160a01b031661024e565b34801561011757600080fd5b506101446004803603604081101561012e57600080fd5b50803590602001356001600160a01b0316610302565b604080519115158252519081900360200190f35b34801561016457600080fd5b506100a56004803603602081101561017b57600080fd5b50356001600160a01b031661044e565b610193610559565b6065546001600160a01b039081169116146101f5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff1680610267575061026761055d565b80610275575060005460ff16155b6102b05760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156102db576000805460ff1961ff0019909116610100171660011790555b6102e3610563565b6102ec8261044e565b80156102fe576000805461ff00191690555b5050565b600061030c610559565b6065546001600160a01b0390811691161461036e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6040516000906001600160a01b0384169085908381818185875af1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5050905080610408576040805162461bcd60e51b815260206004820152601160248201527039b2b73222ba3432b9103330b4b632b21760791b604482015290519081900360640190fd5b6040805185815290516001600160a01b038516917f5cf9c3dc0403b88750b3ce5ea792cdca787ff26128f6d508b99b2d3853ae13ec919081900360200190a25092915050565b610456610559565b6065546001600160a01b039081169116146104b8576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104fd5760405162461bcd60e51b815260040180806020018281038252602681526020018061065e6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061057c575061057c61055d565b8061058a575060005460ff16155b6105c55760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156105f0576000805460ff1961ff0019909116610100171660011790555b60006105fa610559565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561065a576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220157c7771cc4a87a41a603a3d9de8b49468f6f837834ee592668d5dde0c6c763e64736f6c634300060c0033", + "deployedBytecode": "0x60806040526004361061004e5760003560e01c8063715018a6146100905780638da5cb5b146100a7578063c4d66de8146100d8578063cb16d4a21461010b578063f2fde38b146101585761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100a561018b565b005b3480156100b357600080fd5b506100bc61023f565b604080516001600160a01b039092168252519081900360200190f35b3480156100e457600080fd5b506100a5600480360360208110156100fb57600080fd5b50356001600160a01b031661024e565b34801561011757600080fd5b506101446004803603604081101561012e57600080fd5b50803590602001356001600160a01b0316610302565b604080519115158252519081900360200190f35b34801561016457600080fd5b506100a56004803603602081101561017b57600080fd5b50356001600160a01b031661044e565b610193610559565b6065546001600160a01b039081169116146101f5576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff1680610267575061026761055d565b80610275575060005460ff16155b6102b05760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156102db576000805460ff1961ff0019909116610100171660011790555b6102e3610563565b6102ec8261044e565b80156102fe576000805461ff00191690555b5050565b600061030c610559565b6065546001600160a01b0390811691161461036e576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6040516000906001600160a01b0384169085908381818185875af1925050503d80600081146103b9576040519150601f19603f3d011682016040523d82523d6000602084013e6103be565b606091505b5050905080610408576040805162461bcd60e51b815260206004820152601160248201527039b2b73222ba3432b9103330b4b632b21760791b604482015290519081900360640190fd5b6040805185815290516001600160a01b038516917f5cf9c3dc0403b88750b3ce5ea792cdca787ff26128f6d508b99b2d3853ae13ec919081900360200190a25092915050565b610456610559565b6065546001600160a01b039081169116146104b8576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166104fd5760405162461bcd60e51b815260040180806020018281038252602681526020018061065e6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff168061057c575061057c61055d565b8061058a575060005460ff16155b6105c55760405162461bcd60e51b815260040180806020018281038252602e815260200180610684602e913960400191505060405180910390fd5b600054610100900460ff161580156105f0576000805460ff1961ff0019909116610100171660011790555b60006105fa610559565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561065a576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a2646970667358221220157c7771cc4a87a41a603a3d9de8b49468f6f837834ee592668d5dde0c6c763e64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/VoteInOrganizationScheme.json b/contracts/0.1.2-rc.8/VoteInOrganizationScheme.json new file mode 100644 index 00000000..45c0509d --- /dev/null +++ b/contracts/0.1.2-rc.8/VoteInOrganizationScheme.json @@ -0,0 +1,448 @@ +{ + "contractName": "VoteInOrganizationScheme", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "_intVoteInterface", + "type": "address" + }, + { + "indexed": false, + "internalType": "contract IntVoteInterface", + "name": "_originalIntVote", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "_originalProposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "NewVoteProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "ProposalDeleted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_avatar", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "int256", + "name": "_param", + "type": "int256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_callReturnValue", + "type": "bytes" + } + ], + "name": "ProposalExecuted", + "type": "event" + }, + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + }, + { + "internalType": "int256", + "name": "_decision", + "type": "int256" + } + ], + "name": "executeProposal", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract Avatar", + "name": "_avatar", + "type": "address" + }, + { + "internalType": "contract IntVoteInterface", + "name": "_votingMachine", + "type": "address" + }, + { + "internalType": "uint256[11]", + "name": "_votingParams", + "type": "uint256[11]" + }, + { + "internalType": "address", + "name": "_voteOnBehalf", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_voteParamsHash", + "type": "bytes32" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "organizationProposals", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "originalIntVote", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "originalProposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "vote", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "exist", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "_originalIntVote", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_originalProposalId", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_vote", + "type": "uint256" + }, + { + "internalType": "string", + "name": "_descriptionHash", + "type": "string" + } + ], + "name": "proposeVote", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611b18806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f2814610308578063d29b5d2f14610344578063d8145e2d14610376578063f81f8bf6146103c5576100ea565b80639588378e146102885780639d4c162d146102b4578063b551c373146102eb576100ea565b80635aef7de6116100c85780635aef7de6146101755780636b8eb4031461017d5780637a5cb92c146101a95780637d6513b2146101c6576100ea565b80633edf7ca1146100ef5780634ea2c7ec14610113578063540fbeb31461012d575b600080fd5b6100f76103f7565b604080516001600160a01b039092168252519081900360200190f35b61011b610406565b60408051918252519081900360200190f35b61017360048036036101e081101561014457600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0013561040c565b005b6100f761044a565b61011b6004803603604081101561019357600080fd5b506001600160a01b038135169060200135610459565b61011b600480360360208110156101bf57600080fd5b5035610533565b61011b600480360360808110156101dc57600080fd5b6001600160a01b03823516916020810135916040820135919081019060808101606082013564010000000081111561021357600080fd5b82018360208201111561022557600080fd5b8035906020019184600183028401116401000000008311171561024757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610545945050505050565b61011b6004803603604081101561029e57600080fd5b506001600160a01b038135169060200135610a43565b6102d7600480360360408110156102ca57600080fd5b5080359060200135610b74565b604080519115158252519081900360200190f35b61011b6004803603602081101561030157600080fd5b5035610ffd565b6102d76004803603608081101561031e57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611294565b6102d76004803603606081101561035a57600080fd5b508035906001600160a01b0360208201351690604001356113f8565b6103936004803603602081101561038c57600080fd5b5035611553565b604080516001600160a01b03909516855260208501939093528383019190915215156060830152519081900360800190f35b6102d7600480360360608110156103db57600080fd5b508035906001600160a01b036020820135169060400135611587565b6034546001600160a01b031681565b60355481565b61044385858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506116ad9050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146104b2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156104ff57600080fd5b505afa158015610513573d6000803e3d6000fd5b505050506040513d602081101561052957600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561058a57600080fd5b505afa15801561059e573d6000803e3d6000fd5b505050506040513d60208110156105b457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156105fe57600080fd5b505afa158015610612573d6000803e3d6000fd5b505050506040513d602081101561062857600080fd5b5051610676576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b600080866001600160a01b0316635142bc1e6040518163ffffffff1660e01b8152600401604080518083038186803b1580156106b157600080fd5b505afa1580156106c5573d6000803e3d6000fd5b505050506040513d60408110156106db57600080fd5b50805160209091015190925090508085118015906106f95750818510155b6107345760405162461bcd60e51b8152600401808060200182810382526023815260200180611a5d6023913960400191505060405180910390fd5b866001600160a01b031663a003651d876040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561077857600080fd5b505afa15801561078c573d6000803e3d6000fd5b505050506040513d60208110156107a257600080fd5b50518511156107e25760405162461bcd60e51b8152600401808060200182810382526035815260200180611a806035913960400191505060405180910390fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505050506040513d602081101561087757600080fd5b810190808051906020019092919050505090506040518060800160405280896001600160a01b03168152602001888152602001878152602001600115158152506037600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015560608201518160030160006101000a81548160ff021916908315150217905550905050603460009054906101000a90046001600160a01b03166001600160a01b031681603360009054906101000a90046001600160a01b03166001600160a01b03167f612d055dc0e586b349ae636d1de3fc64fbcf367d8c8c7406bd1823267cfe7e208b8b8b8b60405180856001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156109ea5781810151838201526020016109d2565b50505050905090810190601f168015610a175780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46000818152603660205260409020439055979650505050505050565b60345460009082906001600160a01b03163314610a9c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610aea57600080fd5b505afa158015610afe573d6000803e3d6000fd5b505050506040513d6020811015610b1457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156104ff57600080fd5b60345460009083906001600160a01b03163314610bcd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610bd5611a35565b50600084815260376020908152604091829020825160808101845281546001600160a01b0316815260018201549281019290925260028101549282019290925260039091015460ff16151560608201819052610c3057600080fd5b60008581526037602052604080822080546001600160a01b03191681556001810183905560028101839055600301805460ff19169055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3606060008560011415610f3d5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610cee57600080fd5b505afa158015610d02573d6000803e3d6000fd5b505050506040513d6020811015610d1857600080fd5b505184516020868101516040808901518151602480820194909452604480820192909252600060648083018290523060848085019190915285518085038201815260a4909401865296830180516001600160e01b031663359afa4960e01b178152945163057e2c8b60e31b81526001600160a01b038981166004830190815295820184905260609782019788528451928201929092528351999a50908a1698632bf164589897939692959293919091019190808383885b83811015610de7578181015183820152602001610dcf565b50505050905090810190601f168015610e145780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610e3557600080fd5b505af1158015610e49573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610e7257600080fd5b815160208301805160405192949293830192919084640100000000821115610e9957600080fd5b908301906020820185811115610eae57600080fd5b8251640100000000811182820188101715610ec857600080fd5b82525081516020918201929091019080838360005b83811015610ef5578181015183820152602001610edd565b50505050905090810190601f168015610f225780820380516001836020036101000a031916815260200191505b50604052505050809450819350505081610f3b57600080fd5b505b60335460408051888152602080820183815286519383019390935285518b946001600160a01b0316937f7c1ea889aeb873862488f79e0228a2240ec23e80244de201dd45f39f603fc3c4938c938993919291606084019185019080838360005b83811015610fb5578181015183820152602001610f9d565b50505050905090810190601f168015610fe25780820380516001836020036101000a031916815260200191505b50935050505060405180910390a35060019695505050505050565b60345460009082906001600160a01b03163314611056576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110a457600080fd5b505afa1580156110b8573d6000803e3d6000fd5b505050506040513d60208110156110ce57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561111857600080fd5b505afa15801561112c573d6000803e3d6000fd5b505050506040513d602081101561114257600080fd5b5051611190576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156111de57600080fd5b505afa1580156111f2573d6000803e3d6000fd5b505050506040513d602081101561120857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561126157600080fd5b505afa158015611275573d6000803e3d6000fd5b505050506040513d602081101561128b57600080fd5b50519392505050565b60345460009082906001600160a01b031633146112ed576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133b57600080fd5b505afa15801561134f573d6000803e3d6000fd5b505050506040513d602081101561136557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156113c257600080fd5b505af11580156113d6573d6000803e3d6000fd5b505050506040513d60208110156113ec57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611451576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561149f57600080fd5b505afa1580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561151e57600080fd5b505af1158015611532573d6000803e3d6000fd5b505050506040513d602081101561154857600080fd5b505195945050505050565b60376020526000908152604090208054600182015460028301546003909301546001600160a01b0390921692909160ff1684565b60345460009082906001600160a01b031633146115e0576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561162e57600080fd5b505afa158015611642573d6000803e3d6000fd5b505050506040513d602081101561165857600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561151e57600080fd5b6001600160a01b038416611708576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61171185611916565b603480546001600160a01b0319166001600160a01b0386161790558261190d576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561177b578181015183820152602001611763565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156117ad57600080fd5b505afa1580156117c1573d6000803e3d6000fd5b505050506040513d60208110156117d757600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561182957600080fd5b505afa15801561183d573d6000803e3d6000fd5b505050506040513d6101a081101561185457600080fd5b505190508061190657604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156118a557818101518382015260200161188d565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156118d957600080fd5b505af11580156118ed573d6000803e3d6000fd5b505050506040513d602081101561190357600080fd5b50505b5050610443565b50506035555050565b600054610100900460ff168061192f575061192f611a2f565b8061193d575060005460ff16155b6119785760405162461bcd60e51b815260040180806020018281038252602e815260200180611ab5602e913960400191505060405180910390fd5b600054610100900460ff161580156119a3576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166119fe576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611a2b576000805461ff00191690555b5050565b303b1590565b6040805160808101825260008082526020820181905291810182905260608101919091529056fe766f74652073686f756c6420626520696e2074686520616c6c6f7765642072616e6765766f74652073686f756c64206265203c3d206f726967696e616c2070726f706f73616c206e756d626572206f662063686f69636573436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212202081b41d9a301de67be95b7acecc65764df028ecc6a27a08a86ecd140b83d7bf64736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80639588378e1161008c578063bea75f2811610066578063bea75f2814610308578063d29b5d2f14610344578063d8145e2d14610376578063f81f8bf6146103c5576100ea565b80639588378e146102885780639d4c162d146102b4578063b551c373146102eb576100ea565b80635aef7de6116100c85780635aef7de6146101755780636b8eb4031461017d5780637a5cb92c146101a95780637d6513b2146101c6576100ea565b80633edf7ca1146100ef5780634ea2c7ec14610113578063540fbeb31461012d575b600080fd5b6100f76103f7565b604080516001600160a01b039092168252519081900360200190f35b61011b610406565b60408051918252519081900360200190f35b61017360048036036101e081101561014457600080fd5b506001600160a01b038135811691602081013582169160408201916101a0810135909116906101c0013561040c565b005b6100f761044a565b61011b6004803603604081101561019357600080fd5b506001600160a01b038135169060200135610459565b61011b600480360360208110156101bf57600080fd5b5035610533565b61011b600480360360808110156101dc57600080fd5b6001600160a01b03823516916020810135916040820135919081019060808101606082013564010000000081111561021357600080fd5b82018360208201111561022557600080fd5b8035906020019184600183028401116401000000008311171561024757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610545945050505050565b61011b6004803603604081101561029e57600080fd5b506001600160a01b038135169060200135610a43565b6102d7600480360360408110156102ca57600080fd5b5080359060200135610b74565b604080519115158252519081900360200190f35b61011b6004803603602081101561030157600080fd5b5035610ffd565b6102d76004803603608081101561031e57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611294565b6102d76004803603606081101561035a57600080fd5b508035906001600160a01b0360208201351690604001356113f8565b6103936004803603602081101561038c57600080fd5b5035611553565b604080516001600160a01b03909516855260208501939093528383019190915215156060830152519081900360800190f35b6102d7600480360360608110156103db57600080fd5b508035906001600160a01b036020820135169060400135611587565b6034546001600160a01b031681565b60355481565b61044385858386600b806020026040519081016040528092919082600b602002808284376000920191909152508891506116ad9050565b5050505050565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146104b2576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156104ff57600080fd5b505afa158015610513573d6000803e3d6000fd5b505050506040513d602081101561052957600080fd5b5051949350505050565b60366020526000908152604090205481565b60335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561058a57600080fd5b505afa15801561059e573d6000803e3d6000fd5b505050506040513d60208110156105b457600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b1580156105fe57600080fd5b505afa158015610612573d6000803e3d6000fd5b505050506040513d602081101561062857600080fd5b5051610676576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b600080866001600160a01b0316635142bc1e6040518163ffffffff1660e01b8152600401604080518083038186803b1580156106b157600080fd5b505afa1580156106c5573d6000803e3d6000fd5b505050506040513d60408110156106db57600080fd5b50805160209091015190925090508085118015906106f95750818510155b6107345760405162461bcd60e51b8152600401808060200182810382526023815260200180611a5d6023913960400191505060405180910390fd5b866001600160a01b031663a003651d876040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561077857600080fd5b505afa15801561078c573d6000803e3d6000fd5b505050506040513d60208110156107a257600080fd5b50518511156107e25760405162461bcd60e51b8152600401808060200182810382526035815260200180611a806035913960400191505060405180910390fd5b60345460355460335460408051634439bdaf60e11b81526002600482015260248101939093523360448401526001600160a01b0391821660648401525160009391909116916388737b5e91608480830192602092919082900301818787803b15801561084d57600080fd5b505af1158015610861573d6000803e3d6000fd5b505050506040513d602081101561087757600080fd5b810190808051906020019092919050505090506040518060800160405280896001600160a01b03168152602001888152602001878152602001600115158152506037600083815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550602082015181600101556040820151816002015560608201518160030160006101000a81548160ff021916908315150217905550905050603460009054906101000a90046001600160a01b03166001600160a01b031681603360009054906101000a90046001600160a01b03166001600160a01b03167f612d055dc0e586b349ae636d1de3fc64fbcf367d8c8c7406bd1823267cfe7e208b8b8b8b60405180856001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156109ea5781810151838201526020016109d2565b50505050905090810190601f168015610a175780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a46000818152603660205260409020439055979650505050505050565b60345460009082906001600160a01b03163314610a9c576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b158015610aea57600080fd5b505afa158015610afe573d6000803e3d6000fd5b505050506040513d6020811015610b1457600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156104ff57600080fd5b60345460009083906001600160a01b03163314610bcd576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b610bd5611a35565b50600084815260376020908152604091829020825160808101845281546001600160a01b0316815260018201549281019290925260028101549282019290925260039091015460ff16151560608201819052610c3057600080fd5b60008581526037602052604080822080546001600160a01b03191681556001810183905560028101839055600301805460ff19169055603354905187926001600160a01b03909216917f6bc0cb9e9967b59a69ace442598e1df4368d38661bd5c0800fbcbc9fe855fbbe91a3606060008560011415610f3d5760335460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610cee57600080fd5b505afa158015610d02573d6000803e3d6000fd5b505050506040513d6020811015610d1857600080fd5b505184516020868101516040808901518151602480820194909452604480820192909252600060648083018290523060848085019190915285518085038201815260a4909401865296830180516001600160e01b031663359afa4960e01b178152945163057e2c8b60e31b81526001600160a01b038981166004830190815295820184905260609782019788528451928201929092528351999a50908a1698632bf164589897939692959293919091019190808383885b83811015610de7578181015183820152602001610dcf565b50505050905090810190601f168015610e145780820380516001836020036101000a031916815260200191505b50945050505050600060405180830381600087803b158015610e3557600080fd5b505af1158015610e49573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040908152811015610e7257600080fd5b815160208301805160405192949293830192919084640100000000821115610e9957600080fd5b908301906020820185811115610eae57600080fd5b8251640100000000811182820188101715610ec857600080fd5b82525081516020918201929091019080838360005b83811015610ef5578181015183820152602001610edd565b50505050905090810190601f168015610f225780820380516001836020036101000a031916815260200191505b50604052505050809450819350505081610f3b57600080fd5b505b60335460408051888152602080820183815286519383019390935285518b946001600160a01b0316937f7c1ea889aeb873862488f79e0228a2240ec23e80244de201dd45f39f603fc3c4938c938993919291606084019185019080838360005b83811015610fb5578181015183820152602001610f9d565b50505050905090810190601f168015610fe25780820380516001836020036101000a031916815260200191505b50935050505060405180910390a35060019695505050505050565b60345460009082906001600160a01b03163314611056576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110a457600080fd5b505afa1580156110b8573d6000803e3d6000fd5b505050506040513d60208110156110ce57600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561111857600080fd5b505afa15801561112c573d6000803e3d6000fd5b505050506040513d602081101561114257600080fd5b5051611190576040805162461bcd60e51b81526020600482015260186024820152771cd8da195b59481a5cc81b9bdd081c9959da5cdd195c995960421b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156111de57600080fd5b505afa1580156111f2573d6000803e3d6000fd5b505050506040513d602081101561120857600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b15801561126157600080fd5b505afa158015611275573d6000803e3d6000fd5b505050506040513d602081101561128b57600080fd5b50519392505050565b60345460009082906001600160a01b031633146112ed576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561133b57600080fd5b505afa15801561134f573d6000803e3d6000fd5b505050506040513d602081101561136557600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b1580156113c257600080fd5b505af11580156113d6573d6000803e3d6000fd5b505050506040513d60208110156113ec57600080fd5b50519695505050505050565b60345460009082906001600160a01b03163314611451576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561149f57600080fd5b505afa1580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561151e57600080fd5b505af1158015611532573d6000803e3d6000fd5b505050506040513d602081101561154857600080fd5b505195945050505050565b60376020526000908152604090208054600182015460028301546003909301546001600160a01b0390921692909160ff1684565b60345460009082906001600160a01b031633146115e0576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561162e57600080fd5b505afa158015611642573d6000803e3d6000fd5b505050506040513d602081101561165857600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561151e57600080fd5b6001600160a01b038416611708576040805162461bcd60e51b815260206004820152601c60248201527f766f74696e674d616368696e652063616e6e6f74206265207a65726f00000000604482015290519081900360640190fd5b61171185611916565b603480546001600160a01b0319166001600160a01b0386161790558261190d576040516307b4e1e360e01b815284906001600160a01b038216906307b4e1e39085908590600401808361016080838360005b8381101561177b578181015183820152602001611763565b50505050905001826001600160a01b031681526020019250505060206040518083038186803b1580156117ad57600080fd5b505afa1580156117c1573d6000803e3d6000fd5b505050506040513d60208110156117d757600080fd5b505160358190556040805162941a0160e21b81526004810192909252516000916001600160a01b038416916302506804916024808201926101a092909190829003018186803b15801561182957600080fd5b505afa15801561183d573d6000803e3d6000fd5b505050506040513d6101a081101561185457600080fd5b505190508061190657604051638894c41b60e01b81526001600160a01b03831690638894c41b9086908690600401808361016080838360005b838110156118a557818101518382015260200161188d565b50505050905001826001600160a01b0316815260200192505050602060405180830381600087803b1580156118d957600080fd5b505af11580156118ed573d6000803e3d6000fd5b505050506040513d602081101561190357600080fd5b50505b5050610443565b50506035555050565b600054610100900460ff168061192f575061192f611a2f565b8061193d575060005460ff16155b6119785760405162461bcd60e51b815260040180806020018281038252602e815260200180611ab5602e913960400191505060405180910390fd5b600054610100900460ff161580156119a3576000805460ff1961ff0019909116610100171660011790555b6001600160a01b0382166119fe576040805162461bcd60e51b815260206004820152601760248201527f536368656d65206d757374206861766520617661746172000000000000000000604482015290519081900360640190fd5b603380546001600160a01b0319166001600160a01b0384161790558015611a2b576000805461ff00191690555b5050565b303b1590565b6040805160808101825260008082526020820181905291810182905260608101919091529056fe766f74652073686f756c6420626520696e2074686520616c6c6f7765642072616e6765766f74652073686f756c64206265203c3d206f726967696e616c2070726f706f73616c206e756d626572206f662063686f69636573436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212202081b41d9a301de67be95b7acecc65764df028ecc6a27a08a86ecd140b83d7bf64736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/VotingMachineCallbacks.json b/contracts/0.1.2-rc.8/VotingMachineCallbacks.json new file mode 100644 index 00000000..d3a6743e --- /dev/null +++ b/contracts/0.1.2-rc.8/VotingMachineCallbacks.json @@ -0,0 +1,224 @@ +{ + "contractName": "VotingMachineCallbacks", + "abi": [ + { + "inputs": [], + "name": "avatar", + "outputs": [ + { + "internalType": "contract Avatar", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "proposalsBlockNumber", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "voteParamsHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "votingMachine", + "outputs": [ + { + "internalType": "contract IntVoteInterface", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610b27806100206000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80639588378e116100665780639588378e14610132578063b551c3731461015e578063bea75f281461017b578063d29b5d2f146101cb578063f81f8bf6146101fd5761009e565b80633edf7ca1146100a35780634ea2c7ec146100c75780635aef7de6146100e15780636b8eb403146100e95780637a5cb92c14610115575b600080fd5b6100ab61022f565b604080516001600160a01b039092168252519081900360200190f35b6100cf61023e565b60408051918252519081900360200190f35b6100ab610244565b6100cf600480360360408110156100ff57600080fd5b506001600160a01b038135169060200135610253565b6100cf6004803603602081101561012b57600080fd5b503561032d565b6100cf6004803603604081101561014857600080fd5b506001600160a01b03813516906020013561033f565b6100cf6004803603602081101561017457600080fd5b5035610470565b6101b76004803603608081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013561070c565b604080519115158252519081900360200190f35b6101b7600480360360608110156101e157600080fd5b508035906001600160a01b036020820135169060400135610870565b6101b76004803603606081101561021357600080fd5b508035906001600160a01b0360208201351690604001356109cb565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146102ac576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156102f957600080fd5b505afa15801561030d573d6000803e3d6000fd5b505050506040513d602081101561032357600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610398576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156103e657600080fd5b505afa1580156103fa573d6000803e3d6000fd5b505050506040513d602081101561041057600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156102f957600080fd5b60345460009082906001600160a01b031633146104c9576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561051757600080fd5b505afa15801561052b573d6000803e3d6000fd5b505050506040513d602081101561054157600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561058b57600080fd5b505afa15801561059f573d6000803e3d6000fd5b505050506040513d60208110156105b557600080fd5b5051610608576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561065657600080fd5b505afa15801561066a573d6000803e3d6000fd5b505050506040513d602081101561068057600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b1580156106d957600080fd5b505afa1580156106ed573d6000803e3d6000fd5b505050506040513d602081101561070357600080fd5b50519392505050565b60345460009082906001600160a01b03163314610765576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156107b357600080fd5b505afa1580156107c7573d6000803e3d6000fd5b505050506040513d60208110156107dd57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561083a57600080fd5b505af115801561084e573d6000803e3d6000fd5b505050506040513d602081101561086457600080fd5b50519695505050505050565b60345460009082906001600160a01b031633146108c9576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561091757600080fd5b505afa15801561092b573d6000803e3d6000fd5b505050506040513d602081101561094157600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561099657600080fd5b505af11580156109aa573d6000803e3d6000fd5b505050506040513d60208110156109c057600080fd5b505195945050505050565b60345460009082906001600160a01b03163314610a24576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a7257600080fd5b505afa158015610a86573d6000803e3d6000fd5b505050506040513d6020811015610a9c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561099657600080fdfea264697066735822122074ff2ed4077e0630bba5532d5457b701faeea715a1d8a83e734c8aa325ba188464736f6c634300060c0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009e5760003560e01c80639588378e116100665780639588378e14610132578063b551c3731461015e578063bea75f281461017b578063d29b5d2f146101cb578063f81f8bf6146101fd5761009e565b80633edf7ca1146100a35780634ea2c7ec146100c75780635aef7de6146100e15780636b8eb403146100e95780637a5cb92c14610115575b600080fd5b6100ab61022f565b604080516001600160a01b039092168252519081900360200190f35b6100cf61023e565b60408051918252519081900360200190f35b6100ab610244565b6100cf600480360360408110156100ff57600080fd5b506001600160a01b038135169060200135610253565b6100cf6004803603602081101561012b57600080fd5b503561032d565b6100cf6004803603604081101561014857600080fd5b506001600160a01b03813516906020013561033f565b6100cf6004803603602081101561017457600080fd5b5035610470565b6101b76004803603608081101561019157600080fd5b506001600160a01b0381358116916020810135909116906040810135906060013561070c565b604080519115158252519081900360200190f35b6101b7600480360360608110156101e157600080fd5b508035906001600160a01b036020820135169060400135610870565b6101b76004803603606081101561021357600080fd5b508035906001600160a01b0360208201351690604001356109cb565b6034546001600160a01b031681565b60355481565b6033546001600160a01b031681565b60345460009082906001600160a01b031633146102ac576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603354604080516370a0823160e01b81526001600160a01b0392831660048201529051918616916370a0823191602480820192602092909190829003018186803b1580156102f957600080fd5b505afa15801561030d573d6000803e3d6000fd5b505050506040513d602081101561032357600080fd5b5051949350505050565b60366020526000908152604090205481565b60345460009082906001600160a01b03163314610398576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b1580156103e657600080fd5b505afa1580156103fa573d6000803e3d6000fd5b505050506040513d602081101561041057600080fd5b505160008481526036602090815260409182902054825163277166bf60e11b81526001600160a01b03898116600483015260248201929092529251931692634ee2cd7e926044808201939291829003018186803b1580156102f957600080fd5b60345460009082906001600160a01b031633146104c9576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561051757600080fd5b505afa15801561052b573d6000803e3d6000fd5b505050506040513d602081101561054157600080fd5b505160408051632074193160e21b815230600482015290516001600160a01b03909216916381d064c491602480820192602092909190829003018186803b15801561058b57600080fd5b505afa15801561059f573d6000803e3d6000fd5b505050506040513d60208110156105b557600080fd5b5051610608576040805162461bcd60e51b815260206004820152601860248201527f736368656d65206973206e6f7420726567697374657265640000000000000000604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b03166389ae1c906040518163ffffffff1660e01b815260040160206040518083038186803b15801561065657600080fd5b505afa15801561066a573d6000803e3d6000fd5b505050506040513d602081101561068057600080fd5b5051600084815260366020908152604091829020548251630981b24d60e41b8152600481019190915291516001600160a01b039093169263981b24d0926024808201939291829003018186803b1580156106d957600080fd5b505afa1580156106ed573d6000803e3d6000fd5b505050506040513d602081101561070357600080fd5b50519392505050565b60345460009082906001600160a01b03163314610765576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156107b357600080fd5b505afa1580156107c7573d6000803e3d6000fd5b505050506040513d60208110156107dd57600080fd5b50516040805163dab0efff60e01b81526001600160a01b0389811660048301528881166024830152604482018890529151919092169163dab0efff9160648083019260209291908290030181600087803b15801561083a57600080fd5b505af115801561084e573d6000803e3d6000fd5b505050506040513d602081101561086457600080fd5b50519695505050505050565b60345460009082906001600160a01b031633146108c9576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561091757600080fd5b505afa15801561092b573d6000803e3d6000fd5b505050506040513d602081101561094157600080fd5b50516040805163dea9e24d60e01b8152600481018890526001600160a01b0387811660248301529151919092169163dea9e24d9160448083019260209291908290030181600087803b15801561099657600080fd5b505af11580156109aa573d6000803e3d6000fd5b505050506040513d60208110156109c057600080fd5b505195945050505050565b60345460009082906001600160a01b03163314610a24576040805162461bcd60e51b81526020600482015260126024820152716f6e6c7920566f74696e674d616368696e6560701b604482015290519081900360640190fd5b603360009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610a7257600080fd5b505afa158015610a86573d6000803e3d6000fd5b505050506040513d6020811015610a9c57600080fd5b50516040805163ddbfcc6b60e01b8152600481018890526001600160a01b0387811660248301529151919092169163ddbfcc6b9160448083019260209291908290030181600087803b15801561099657600080fdfea264697066735822122074ff2ed4077e0630bba5532d5457b701faeea715a1d8a83e734c8aa325ba188464736f6c634300060c0033" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/VotingMachineCallbacksInterface.json b/contracts/0.1.2-rc.8/VotingMachineCallbacksInterface.json new file mode 100644 index 00000000..78933cfd --- /dev/null +++ b/contracts/0.1.2-rc.8/VotingMachineCallbacksInterface.json @@ -0,0 +1,166 @@ +{ + "contractName": "VotingMachineCallbacksInterface", + "abi": [ + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "balanceOfStakingToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "burnReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "getTotalReputationSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "mintReputation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "reputationOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IERC20", + "name": "_stakingToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_beneficiary", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "_proposalId", + "type": "bytes32" + } + ], + "name": "stakingTokenTransfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x" +} \ No newline at end of file diff --git a/contracts/0.1.2-rc.8/Wallet.json b/contracts/0.1.2-rc.8/Wallet.json new file mode 100644 index 00000000..adad4e58 --- /dev/null +++ b/contracts/0.1.2-rc.8/Wallet.json @@ -0,0 +1,127 @@ +{ + "contractName": "Wallet", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "Pay", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "ReceiveEther", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address payable", + "name": "_beneficiary", + "type": "address" + } + ], + "name": "pay", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610667806100206000396000f3fe60806040526004361061004e5760003560e01c80630c11dedd14610090578063715018a6146100c55780638da5cb5b146100da578063c4d66de81461010b578063f2fde38b1461013e5761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100c3600480360360208110156100b357600080fd5b50356001600160a01b0316610171565b005b3480156100d157600080fd5b506100c3610257565b3480156100e657600080fd5b506100ef61030b565b604080516001600160a01b039092168252519081900360200190f35b34801561011757600080fd5b506100c36004803603602081101561012e57600080fd5b50356001600160a01b031661031a565b34801561014a57600080fd5b506100c36004803603602081101561016157600080fd5b50356001600160a01b03166103ce565b6101796104d9565b6065546001600160a01b039081169116146101db576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610213573d6000803e3d6000fd5b506040805182815290516001600160a01b038416917f357b676c439b9e49b4410f8eb8680bee4223724802d8e3fd422e1756f87b475f919081900360200190a25050565b61025f6104d9565b6065546001600160a01b039081169116146102c1576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff168061033357506103336104dd565b80610341575060005460ff16155b61037c5760405162461bcd60e51b815260040180806020018281038252602e815260200180610604602e913960400191505060405180910390fd5b600054610100900460ff161580156103a7576000805460ff1961ff0019909116610100171660011790555b6103af6104e3565b6103b8826103ce565b80156103ca576000805461ff00191690555b5050565b6103d66104d9565b6065546001600160a01b03908116911614610438576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661047d5760405162461bcd60e51b81526004018080602001828103825260268152602001806105de6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806104fc57506104fc6104dd565b8061050a575060005460ff16155b6105455760405162461bcd60e51b815260040180806020018281038252602e815260200180610604602e913960400191505060405180910390fd5b600054610100900460ff16158015610570576000805460ff1961ff0019909116610100171660011790555b600061057a6104d9565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156105da576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212209bd827465f9e7ca29d914a9d39f7286c22114189dd37e82845fece39aa99b8be64736f6c634300060c0033", + "deployedBytecode": "0x60806040526004361061004e5760003560e01c80630c11dedd14610090578063715018a6146100c55780638da5cb5b146100da578063c4d66de81461010b578063f2fde38b1461013e5761008b565b3661008b5760408051348152905133917ff32a9f77675fd5917534c7746608fd3e309eac68fbdcbf5925e24ca97a704396919081900360200190a2005b600080fd5b34801561009c57600080fd5b506100c3600480360360208110156100b357600080fd5b50356001600160a01b0316610171565b005b3480156100d157600080fd5b506100c3610257565b3480156100e657600080fd5b506100ef61030b565b604080516001600160a01b039092168252519081900360200190f35b34801561011757600080fd5b506100c36004803603602081101561012e57600080fd5b50356001600160a01b031661031a565b34801561014a57600080fd5b506100c36004803603602081101561016157600080fd5b50356001600160a01b03166103ce565b6101796104d9565b6065546001600160a01b039081169116146101db576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60405147906001600160a01b0383169082156108fc029083906000818181858888f19350505050158015610213573d6000803e3d6000fd5b506040805182815290516001600160a01b038416917f357b676c439b9e49b4410f8eb8680bee4223724802d8e3fd422e1756f87b475f919081900360200190a25050565b61025f6104d9565b6065546001600160a01b039081169116146102c1576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6065546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3606580546001600160a01b0319169055565b6065546001600160a01b031690565b600054610100900460ff168061033357506103336104dd565b80610341575060005460ff16155b61037c5760405162461bcd60e51b815260040180806020018281038252602e815260200180610604602e913960400191505060405180910390fd5b600054610100900460ff161580156103a7576000805460ff1961ff0019909116610100171660011790555b6103af6104e3565b6103b8826103ce565b80156103ca576000805461ff00191690555b5050565b6103d66104d9565b6065546001600160a01b03908116911614610438576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661047d5760405162461bcd60e51b81526004018080602001828103825260268152602001806105de6026913960400191505060405180910390fd5b6065546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3606580546001600160a01b0319166001600160a01b0392909216919091179055565b3390565b303b1590565b600054610100900460ff16806104fc57506104fc6104dd565b8061050a575060005460ff16155b6105455760405162461bcd60e51b815260040180806020018281038252602e815260200180610604602e913960400191505060405180910390fd5b600054610100900460ff16158015610570576000805460ff1961ff0019909116610100171660011790555b600061057a6104d9565b606580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156105da576000805461ff00191690555b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373436f6e747261637420696e7374616e63652068617320616c7265616479206265656e20696e697469616c697a6564a26469706673582212209bd827465f9e7ca29d914a9d39f7286c22114189dd37e82845fece39aa99b8be64736f6c634300060c0033" +} \ No newline at end of file diff --git a/migration.json b/migration.json index 966c1079..9bee9164 100644 --- a/migration.json +++ b/migration.json @@ -334,6 +334,56 @@ "Wallet": "0xD3582fFEF0cF22F8B9E4218eAAbF5c22587486d5", "DAORegistryInstance": "0x6258F90A25c4fB7B8ee6331903767edD49De44e0", "DAOFactoryInstance": "0x7B08143e8B24F98Bc48D432f52C29b3cE15Ba78A" + }, + "0.1.2-rc.8": { + "Package": "0x55Db01E043a48bc0d11037c51E3911A9Eb8dbe24", + "ImplementationDirectory": "0x6FF16d7EBfCA1a17F897FC48e5350503fD88a55b", + "App": "0x970e1d481CEDbeaeFE776275F0d1b4E1B301bB3b", + "GEN": "0xD833215cBcc3f914bD1C9ece3EE7BF8B14f841bb", + "Agreement": "0xf51B62641D4c472E6EC0DB7Ea50382aE66Ff092e", + "Auction4Reputation": "0xEC0fCd000BEaE049134EFEc813E8f81ad24E38e5", + "Avatar": "0x30E4659D445e29beB4626413Cd4239DF80C50156", + "CL4RRedeemer": "0x00936F571dDD39E5DC13291b3e93C941A208998A", + "Competition": "0x80EaE59c5f92F9f65338bba4F26FFC8Ca2b6224A", + "ContinuousLocking4Reputation": "0x13BdacF2fd86DE458022fA78f8632D594dE6D916", + "ContributionReward": "0x54537c7A445372d8Cfdb880d4B3F85191986c6B4", + "ContributionRewardExt": "0x03670D965e0E7ec5C3323510eb5A735a2814138D", + "Controller": "0x3c574B30F493e585FB9054F0baB0d02CE1D4f42b", + "ControllerUpgradeScheme": "0x72BD4Bd2004999270c83bcdc59d6325Bf7DD55a4", + "DAOFactory": "0xd0e3D320A010f1CfB4b874F9c62b605af6384ae9", + "DAORegistry": "0xDDb64fE46a91D46ee29420539FC25FD07c5FEa3E", + "DAOToken": "0x06ef7018Af25ec846aDe8f8B5cB591A914a46347", + "Dictator": "0x2A37316b62D784A493183d25fB7bC7aA92879bDe", + "ExternalLocking4Reputation": "0x0424a6234446c235A6232CA04c8e21Ae83BdAbF9", + "FixedReputationAllocation": "0xB32DeAE2D1976Aec4caaD09A41Fb6b4e70Eac2a0", + "FundingRequest": "0x2Af2917370e20E83E49dd73Be5256E04928375E9", + "GenericScheme": "0xE558f7d2207440691c45EDE382453339c8Fe880d", + "GenesisProtocol": "0x397171A11b37152118B7F20d91B26572D45744D3", + "GlobalConstraintRegistrar": "0xcEf3Df25BcDd2516951c78f8821e3c1Bd416936c", + "Join": "0xC5201BFa8593103583CB2A269C163bB6379646dD", + "Locking4Reputation": "0xa2567d06c4a2A0627F39E1840f1cD285cC9031FB", + "LockingEth4Reputation": "0xD04606AF314eaB9782c7e4713C6F55FDc5E44146", + "LockingToken4Reputation": "0x96751c36B358A73fe4D8e74Ed64827d2Ec863f1d", + "NectarRepAllocation": "0x3c3363309BbA42a844418D4F1B36941d8B86eDec", + "PolkaCurve": "0x3365B69c6EDb737C6c8d4594246776A07B841412", + "Redeemer": "0xAB303880C3524ccf05697Ba66fbaB48A59d35f47", + "RepAllocation": "0xAc9198b9ccCCa76b69AB64d10513667a49C7d3bD", + "Reputation": "0xd0fef44a2f2467429f8620444aDAdD37247114EF", + "ReputationAdmin": "0xDb1DAdccA7acC905AF7F3336828C36c85dc0f39b", + "ReputationFromToken": "0x3a936D6Ec8e28f7254A1603D33d040eE044a8340", + "ReputationTokenTrade": "0xcF53b36F32DE753139C7a619124767741ab65c38", + "SchemeFactory": "0x5CF5F2dAFDF7998D9085ffafF5beB1B2b6e4c13c", + "SchemeMock": "0x0DB84570A89A95d91eB331f8248fEeba8491cd04", + "SchemeRegistrar": "0x419974f76Ab611FC370477F8a5e9bE19eaB89Ec4", + "SignalScheme": "0x9F1Cdfa4501a5B601E39141B1dF10B4ba3EAB978", + "TokenTrade": "0x7b52060D25439062aF8eAE679887f91ca8ac67fB", + "UpgradeScheme": "0xFF58EdDDB503A14463eCd77B73397CAf58D0dFaE", + "Vault": "0xd517fA80Ed2Aa312cB3e8FDD32CB3BBE7D28f5BC", + "VoteInOrganizationScheme": "0xa39C2a815823f2C71824c5F9d0e230CdAC22E31B", + "VotingMachineCallbacks": "0x181624443B104B040F99D013D62b7A92Ee3C15f0", + "Wallet": "0xD3582fFEF0cF22F8B9E4218eAAbF5c22587486d5", + "DAORegistryInstance": "0x6258F90A25c4fB7B8ee6331903767edD49De44e0", + "DAOFactoryInstance": "0x7B08143e8B24F98Bc48D432f52C29b3cE15Ba78A" } }, "dao": { @@ -700,6 +750,58 @@ } ], "arcVersion": "0.1.2-rc.7" + }, + "0.1.2-rc.8": { + "name": "My DAO", + "Avatar": "0x28B6d87Df2d040A818a2aABA1BDDD155e0Ffc215", + "DAOToken": "0x744Ec4Ee2253569cc41A069d51d04a341b87531E", + "Reputation": "0xfEB2A396981E315605F2874d9008849079DF585b", + "Controller": "0xc6F4d3f8b14F6b6b2aa7eC31Cb99ad108b5764B0", + "Schemes": [ + { + "name": "ContributionReward", + "alias": "ContributionRewardAlias", + "address": "0x26c667b464991EcA5B243ac200cd5098dFbd50d9" + }, + { + "name": "SchemeRegistrar", + "alias": "SchemeRegistrarAlias", + "address": "0xEc601b9dC1E7884a4B5F9aA54F6eb932787230a3" + }, + { + "name": "UpgradeScheme", + "alias": "UpgradeSchemeAlias", + "address": "0x191A7efF5Ef321d9e3CE9ebD48edB116d50cfB3C" + }, + { + "name": "GenericScheme", + "alias": "GenericSchemeAlias", + "address": "0xD97343CEd4b3b5175711f43F8de33093e0D562C7" + }, + { + "name": "ContributionRewardExt", + "alias": "ContributionRewardExt", + "address": "0x211217C2E064e9111eF8Ec2C80859E45678fc639" + }, + { + "name": "SchemeFactory", + "alias": "SchemeRegistrarAlias", + "address": "0x1690A23B42d276c2F158EFa8f44615e37B5A9471" + }, + { + "name": "FundingRequest", + "alias": "FundingRequestAlias", + "address": "0x442F0B85A2397DC9b7d53803379F68749944e99D" + } + ], + "StandAloneContracts": [ + { + "name": "Wallet", + "address": "0xf262B4be7b3e9c2bc607517BE7b713C8E0Dcc62e", + "arcVersion": "0.1.2-rc.8" + } + ], + "arcVersion": "0.1.2-rc.8" } } }, @@ -949,6 +1051,56 @@ "Wallet": "0x213E095e27960BF8ddb7783c461dAe47daB572b3", "DAORegistryInstance": "0xF58AC7c49d4520504e488c9B10865502FC8c5b7f", "DAOFactoryInstance": "0xb7181b3dc2e3263F76F7f11fC7FCF3Bf1F10659a" + }, + "0.1.2-rc.8": { + "Package": "0x0794Fe0BB5898008aA8BC6b0deC57fd77609d341", + "ImplementationDirectory": "0x41dfF773AB0b2Aa93b9BDc0C6894631b68156506", + "App": "0x4714560FD2a20aF1cfFca6f4EeBF735deFd0dDb7", + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "Agreement": "0xE5D6f82dF8a904dE9F17e1628aF0E06cF7a809e6", + "Auction4Reputation": "0xf763846D62509B98d9dC196AEf5A47eE64657777", + "Avatar": "0x0bF9235480f90894225bE9eE8cb092121379b737", + "CL4RRedeemer": "0x5796602374f4371A75147551621419239943CaD9", + "Competition": "0xEB37D5596F7D3aAA683e668248Aa3EE53e757679", + "ContinuousLocking4Reputation": "0x3e83E86091B5fDB52834ecdDBe84A7C650DB4713", + "ContributionReward": "0x711d22E308BE0e1B0be74e3481D63B1D624B36Ab", + "ContributionRewardExt": "0xfd02B7F476f7c705a83Dea87552835698792488e", + "Controller": "0xD5234edC2ac5D1b522d61157D165fbE13E53959e", + "ControllerUpgradeScheme": "0xe1094582D1Fd51eB70077a99024417927fafB169", + "DAOFactory": "0x132Ae269746fd4c44654C11EdC49ac57ff5B5627", + "DAORegistry": "0x82127B78b7Cb92ecf21F7ee8BBee979D351FC0C5", + "DAOToken": "0x9AAF75e7c390d6fee6865D6d1768B564fbfF2537", + "Dictator": "0xEDf07c7B865256bc9e1BedDb7E1B57849A0A6274", + "ExternalLocking4Reputation": "0xf8419D351833F1d5F32aF7A62DD392d38bd80B91", + "FixedReputationAllocation": "0x7F722e0940C3Dd4A2ae40936aE9d40184E97C46b", + "FundingRequest": "0xcb25114b7573aD8f9A55a5d5ee8e23f6f78dC7EF", + "GenericScheme": "0x94b6Fe0b877a37dbc4672336502b21978337B9ab", + "GenesisProtocol": "0x8ED26f823338575a3D40025859D2e7dF74744378", + "GlobalConstraintRegistrar": "0xF48caa7fD4ab5fDe4aeebc3642C0BD9e69DF6ae7", + "Join": "0x6070Bc36E3BC2c67007Aeb0dFd1B9AF5511c9C48", + "Locking4Reputation": "0x960C070792F14C3FE14D2a2a26B8941FfF17f5Ee", + "LockingEth4Reputation": "0xFE625bF49e6c5DDe6603DC982B874496EF92C95c", + "LockingToken4Reputation": "0xa34342ab9F8d56FF905bd171Cde0a3a082972642", + "NectarRepAllocation": "0x5b96C792386901A5f4eBc1C31863feF99f83ff9F", + "PolkaCurve": "0x7a7F863834F992cAa2ef3ADc975583A17Aae092D", + "Redeemer": "0x71cDb0374ffF6734E6793b9797FF9bdd632F2778", + "RepAllocation": "0x635E2CAd04B8f147e800d6b332A54d1FCc309d76", + "Reputation": "0x7b15207739Ca53eA2A9A10FF96A0070A46E2A0E5", + "ReputationAdmin": "0xC17bb13D3F58C229Bec5Dc29398E7a995c09d220", + "ReputationFromToken": "0x8A16739a15cC6facEAEc32CabB118012EFd3eCf5", + "ReputationTokenTrade": "0xEa6F41812a35cdEeA8f742ed951D78834B950960", + "SchemeFactory": "0x04042972a549b1D28b17D5858c706270E2bC81b5", + "SchemeMock": "0x422bE1812C0d40Ed17D5954021A28Fab00BD2395", + "SchemeRegistrar": "0x011bb5e27f86B3A7f799FA49B2BFf96A2149B3B6", + "SignalScheme": "0xDe908107f30297EccA140D342999Fea26a8C03f2", + "TokenTrade": "0x76C532e3774d4958909037364EC25cD7254E676a", + "UpgradeScheme": "0x421Ef751abeDE451A3Ae0E7C45ae2433Fdc16747", + "Vault": "0x67883470ae73347a6742376D3db8BF13bc9358a8", + "VoteInOrganizationScheme": "0x4563C1f76B13a694DeC4e8f99148559B85c1Fa54", + "VotingMachineCallbacks": "0x6Af6ceFB21B17A4B23D47Dd8E06dF47bdd02af3A", + "Wallet": "0x213E095e27960BF8ddb7783c461dAe47daB572b3", + "DAORegistryInstance": "0xF58AC7c49d4520504e488c9B10865502FC8c5b7f", + "DAOFactoryInstance": "0xb7181b3dc2e3263F76F7f11fC7FCF3Bf1F10659a" } } }, @@ -1197,6 +1349,56 @@ "Wallet": "0xB27C99f4734446425ce353df9A981CeF586aD819", "DAORegistryInstance": "0x602d13ab47Ba3c8A9D8009fD1687042e624F4658", "DAOFactoryInstance": "0x548c0CC4f687b558BC874394850a5A63c39848d9" + }, + "0.1.2-rc.8": { + "Package": "0xA0B9e9b0eE1e14Fb1bc4Afdd451c9578B9a1958b", + "ImplementationDirectory": "0x13B03D07210652C3005af1232a57b51a8Ab60836", + "App": "0x176AbF85c839Ff6832C21BccaE4724A1326adc5b", + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "Agreement": "0x7dF88496596076e4C5584C2b008dca28999b7083", + "Auction4Reputation": "0x63a9732Ba6bb4bd24fa6584869D409CD3F2b2b7c", + "Avatar": "0x1Fe2Faada4c95BB20d2B345bA914CC9905E48f9B", + "CL4RRedeemer": "0x98fEcd5824B364A1f34F761B09d0ba2c3E517d14", + "Competition": "0x57d5a93a8d3f0B31A3E549DB1B698416d61c74cD", + "ContinuousLocking4Reputation": "0x23f5Fb66134422CaC9C746a133DDDB06E47b2754", + "ContributionReward": "0x4A43AF6b22BA253655c3c8433518c5eaD670Bf77", + "ContributionRewardExt": "0x86677DBF8020B2F73b144AE681d7aFa7a60F79Be", + "Controller": "0xC720FB57DfEaC0222E567D37dCFf351DF2E8B1e8", + "ControllerUpgradeScheme": "0x64210348622174B3fc130Df19baD25107ff26AF7", + "DAOFactory": "0xcEBEb66CE3b927c922fc877169586AF516e1c4D0", + "DAORegistry": "0x2285Fd48be57f1AA02bD2A7Da11a939e1C7f43Cf", + "DAOToken": "0x43BF4326B3E6928E6Ca1e72D0868834aa7410A4E", + "Dictator": "0xE21CF2b19866577F4Af395A5aE56eb7f224Fe4EE", + "ExternalLocking4Reputation": "0x5313522860A18052C7ce211a4a997737da527c06", + "FixedReputationAllocation": "0xba2EF03446781Aa7200456E301fb532db236c777", + "FundingRequest": "0x2004028B8E762636BE322C8A6D20bC265740e96a", + "GenericScheme": "0xB0259A75961628071a0a50C391b6aBAAdA1B0ee1", + "GenesisProtocol": "0x2Fc2B66EAfdF107347950b93A4B471A367Fc98c2", + "GlobalConstraintRegistrar": "0xF56a2D6c8FFf2B65bce0f5873CAF03F474B575df", + "Join": "0xb06939cf4dDF82B540FfB07523e16b471cce61dE", + "Locking4Reputation": "0xE480F65D0b508ec59bB78D8B2F7f19BCbD4A1045", + "LockingEth4Reputation": "0xeF08736c2b7A7b0B2D672d995F5855fDA06853E2", + "LockingToken4Reputation": "0x86AE915c7b5a46E6317f37CF6DA21a2db0FbFc92", + "NectarRepAllocation": "0xC17B7Feb9cc7C280aE6bf4dcCC4970e875fb3818", + "PolkaCurve": "0xFB68d57408bba1BB5AD3c05a1842131A9447E9Fa", + "Redeemer": "0x45E885393770fD3729036df1CaFEAA6165c654aF", + "RepAllocation": "0xC9409d84432A591c6254aa8633A6D20b4Fa8f8Ae", + "Reputation": "0x07d4d6fEdE657621f357eda1745784eE851B18Be", + "ReputationAdmin": "0x1156DF300Dd1d3844Cd1BFa734CF0e02d7EB8968", + "ReputationFromToken": "0xD646215D358B85c1ECFD7522274d41C015561C2b", + "ReputationTokenTrade": "0xCDE957B4C8B1790461FEC6b37d28fE99e333C4f6", + "SchemeFactory": "0xef092316208BffBAFf4B82A28223663c1250B4d9", + "SchemeMock": "0x2AcF1bAF6148440cc6a9a8Bb9350f959e801BD45", + "SchemeRegistrar": "0x232522DF3915c8a776101461E65C481Bd402AC5A", + "SignalScheme": "0x0E446b670C1E37269826D670E5F437bf79b39986", + "TokenTrade": "0x5eBBa5F4CfBb736753643e75b3E7CF3bBf9D7A38", + "UpgradeScheme": "0x2A4D68880826c4e4f78dCA09eDfCe7A572f3520C", + "Vault": "0x771679De930fEbA3Fa3F22E5b7711e8D2d14508F", + "VoteInOrganizationScheme": "0xE6868Ef96Dbfea1119F0Da5a15Aca480E26b8Cc2", + "VotingMachineCallbacks": "0x927a99454ae79298D0Cb20266d6a31Ec19306aB2", + "Wallet": "0xB27C99f4734446425ce353df9A981CeF586aD819", + "DAORegistryInstance": "0x602d13ab47Ba3c8A9D8009fD1687042e624F4658", + "DAOFactoryInstance": "0x548c0CC4f687b558BC874394850a5A63c39848d9" } } }, @@ -1301,6 +1503,56 @@ "DAORegistryInstance": "0xE9451142a3b561f327b8d93E6D4e213e098E9ea3", "DAOFactoryInstance": "0x1ba55723eAE3c5f0A268edA12697754d9f0708Fc", "AdminUpgradeabilityProxy": "0x1ba55723eAE3c5f0A268edA12697754d9f0708Fc" + }, + "0.1.2-rc.8": { + "Package": "0x97e87652dF535c2299089D31F7f18CC7872631dB", + "ImplementationDirectory": "0x03F1d796d4eE8EB2Ed17652BCb8533aAE1e1DD29", + "App": "0x2c8E77b22F11791132600058A0873B32aDb482e1", + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "Agreement": "0x93635040F665F54a714176473B2cc4B1119c9354", + "Auction4Reputation": "0x977DF8ca4827f01A4eC94E65b77A5c4bC30E1f44", + "Avatar": "0x31D68371ae97ed861dbe660305a64A0E49bB0dBB", + "CL4RRedeemer": "0xb901d97A579428334eAE67B04a0808C30f761e28", + "Competition": "0x2A4C91C12b0d9A6D64C25c9447fc7D6a36d2B906", + "ContinuousLocking4Reputation": "0x86088582aa0CAbD098F9A4cd27F3679Be431625E", + "ContributionReward": "0xfE56336E0f2C11361082d4A4559dca7D65Ca8FC5", + "ContributionRewardExt": "0xccA90Be1fBBf81BF436fe09B6d41d29EBACc74ad", + "Controller": "0x01Ca67F04d7e442db19542F780790D6C3a7FCf45", + "ControllerUpgradeScheme": "0x8e8bc591D5061629FCcC7Ee2646081b3e3B2c9AC", + "DAOFactory": "0x9Cd0B6c8128aD7173eA49bAf4f492b18de9FBd4a", + "DAORegistry": "0xDb3F721E9649B319B11A461ed72A1Cd2a988aC61", + "DAOToken": "0x8fA48d2F221125283FCf81A6648AA989e69a56E8", + "Dictator": "0x17010493Bf9Ee28A4f91Dfd8BA8e66409Cf03518", + "ExternalLocking4Reputation": "0x47BCE40AC9D35c0faEB017bC98f58bd8E884636C", + "FixedReputationAllocation": "0xDaEaf965077A39095Eb61523551711370181f25A", + "FundingRequest": "0x8074C8C6B04Da22016A342ecFd65830D28e44d85", + "GenericScheme": "0xAfB9236bDD15E0CbCEb68A5839ed753f3293FbEd", + "GenesisProtocol": "0xdB10F21ccd6a76cA150547e45846FFcE72438643", + "GlobalConstraintRegistrar": "0x448Bb18338703d5fF113f9ec777636439D3AA3ab", + "Join": "0x823e9c0D647eCDD8ba584A37Db09E35E755B3a6B", + "Locking4Reputation": "0x6874C287B82390266Bb991C31e6857bEd639714d", + "LockingEth4Reputation": "0x00deA1937Fe9e5aC777809F1405ee27a376AB389", + "LockingToken4Reputation": "0xA5BBE04e391e0036a923194BDC7E3DF998B35202", + "NectarRepAllocation": "0x8d7546295DF7CB046b5D22DA3C5a2e1E652cf03b", + "PolkaCurve": "0x757b0f13402b049A30bfC7e9801B5484AF4950c3", + "Redeemer": "0x18d10e42208540f1fAC044D8f8BA47f57596Ac47", + "RepAllocation": "0xbd1421aA1C45d6Fca24194a33D3889ee4b6D9e1e", + "Reputation": "0x3C8496386B97a14eBE48723be8CC9C9bf4D433dA", + "ReputationAdmin": "0x5027C30250e15af4F17a4a4be03b9760D50581b6", + "ReputationFromToken": "0xb030C8Ba5C138DFEd3BF6f94Df8090364513B6fB", + "ReputationTokenTrade": "0xa4026Ba0BF7b44C9e828165aFA3C0fE53E72b658", + "SchemeFactory": "0xc2A95C1788E7091CC6c2bdBDf55Ac555e434c5A3", + "SchemeMock": "0x3bE4aeAab43313E7F4Ae24168D35a2D1474d8243", + "SchemeRegistrar": "0x1A7Bc04cDf09ac22aE56d5070521e9E2BbB496a9", + "SignalScheme": "0x8e2c6847667CB7636D86ABD39850646927035Ab7", + "TokenTrade": "0xFDb49235E3B26a4Dcbb750870c870e0c7668319a", + "UpgradeScheme": "0x550e8596Bbf2C67072e91eC86F4B0755b392593a", + "Vault": "0x277428FE2950B3d3C0E79a3d9BE9a903EdA47185", + "VoteInOrganizationScheme": "0x5a7AC3d5D3A7D45Ff395d36750A7ec85a3a11CC0", + "VotingMachineCallbacks": "0x4c56e5550C89a56fD1D188aa0658B3F276319828", + "Wallet": "0x6E8F82448402C90f9E46301629065001bAe01C86", + "DAORegistryInstance": "0xE9451142a3b561f327b8d93E6D4e213e098E9ea3", + "DAOFactoryInstance": "0x1ba55723eAE3c5f0A268edA12697754d9f0708Fc" } }, "dao": { @@ -1603,6 +1855,56 @@ "Wallet": "0x8127801A17977AA2EBecf318817142E89de237eE", "DAORegistryInstance": "0x3D0EfcA073dc2A4Df10893dA7aCd32206a917421", "DAOFactoryInstance": "0x58C8F6791C6eB734345BefdB490BDB0CEdF83d35" + }, + "0.1.2-rc.8": { + "Package": "0x3C1b8d42634B2a5631C69Ee31dDC529f829b81c9", + "ImplementationDirectory": "0x91f11e487f1a0Af5d498371935812E7fD1007efd", + "App": "0x1d49bE6a52B9CA283a2ede165B31763c38dbBA16", + "GEN": "0x543Ff227F64Aa17eA132Bf9886cAb5DB55DCAddf", + "Agreement": "0x1B3558168b7026F759f8d3121C002A32224b9f1A", + "Auction4Reputation": "0xC7eB323EDa775987AaC91bBde2B093B9F7B38076", + "Avatar": "0xaFd0DF2245DaeDd206E59377369d3A634f8E5AFE", + "CL4RRedeemer": "0xE88BeA4047f70F0F6ebfe9f7a1AEeB08976c0eB3", + "Competition": "0x60435356Acf15B79E1bFEae6B1D3cFB35D921f3b", + "ContinuousLocking4Reputation": "0x33ca988bCDF10b2BA0B505006f461FaeC73471b0", + "ContributionReward": "0x4a3bEA366DBf56d9610d250a227a5f27A6EaEE5f", + "ContributionRewardExt": "0xADaacf84a5f0725421673eD861891356A3FBCA28", + "Controller": "0xEf3B1aa64FFBF96EB5427b830b1Aa5F7C6169938", + "ControllerUpgradeScheme": "0x1b8616CB4358EC198F0A68C2950F3E284eb92681", + "DAOFactory": "0xc0D804A6D23b34FD829aF13410147a7BB6E320Ba", + "DAORegistry": "0x1f6bBf291dc7eC23B6BE5f46A413adb4EC8e1e81", + "DAOToken": "0x6355C42009cFd8e4c7AFA535918E21487d1a28D0", + "Dictator": "0xf28B8B72BBDac4A02243d86d8159BBEA237E8D4f", + "ExternalLocking4Reputation": "0x4BD2642Ba87FC9dB5f52D0D0b2C12C1A9b601Fb3", + "FixedReputationAllocation": "0x87129D79Afb86B2D7Ad93C9802b945C7C4364a54", + "FundingRequest": "0x98152762ca20695A2DE7124eb2ec9d62eEB179ba", + "GenericScheme": "0xF46F8d32E7c0FfE653314042e50DEED9BAfE31A5", + "GenesisProtocol": "0xbbfC8B9da8851330BC4d2968aa953D506eFffCC5", + "GlobalConstraintRegistrar": "0xaA4Bf807a0b0255B9a4a0642FdBb5fAE8eCb1d28", + "Join": "0x951621681D621d7a39a0344B17883CB9ed602452", + "Locking4Reputation": "0x2c4e41425b6a8395bd62faC87C7808e2ca785088", + "LockingEth4Reputation": "0xe1B56d47F632B6Dc193CC8182294AD9a5B23D548", + "LockingToken4Reputation": "0x828ea38E7f94D0e826ed4d48A839397Cba028bEe", + "NectarRepAllocation": "0x0c788cC480AfF0Ce0AcBf32fcB575eEEE3C99Ed9", + "PolkaCurve": "0x4C0Ae17281ACb8835106Ae2FD11269169AC8F965", + "Redeemer": "0xeDbbb0Ee50C5453887D3fb18478fEA789AB6eaDe", + "RepAllocation": "0x442F49cEF1adf13f89B36b36d6af3FA88aED2711", + "Reputation": "0x9b296bDbB67d7E6a1FDDfec59685D624D037B8E2", + "ReputationAdmin": "0xB5F4A7199F735f7951C8D6484304f2534757b64A", + "ReputationFromToken": "0xD98847ed6A782f22D34b8F4af32aE35a6E7cBE80", + "ReputationTokenTrade": "0x46B4c8A12a4C35896E15Fa29897D6d154a63140A", + "SchemeFactory": "0xD5Dd8E61aABbACCBC8cafb042229a8CCf1469633", + "SchemeMock": "0x4edd6a14D7bDbE1bAc27821d69078940e6153B7c", + "SchemeRegistrar": "0xE2a925360251C7cC56177312b0471dBf84086379", + "SignalScheme": "0xfA2A3f13Bf9B6DB8D7ceb31239f6FBB1114D4380", + "TokenTrade": "0xaDA236dcEe6F997f28Cb2bD13d04592b33302148", + "UpgradeScheme": "0xA675071E108213cc78ce736e8B726C295aB93257", + "Vault": "0x1613cD66F7A54F455Ef41dB56B608171E7F932de", + "VoteInOrganizationScheme": "0x3870A5800c1B48456b3f66395D64f16D457BDc50", + "VotingMachineCallbacks": "0x51753606f67008A0754DFf4f120eCD3Dac424504", + "Wallet": "0x8127801A17977AA2EBecf318817142E89de237eE", + "DAORegistryInstance": "0x3D0EfcA073dc2A4Df10893dA7aCd32206a917421", + "DAOFactoryInstance": "0x58C8F6791C6eB734345BefdB490BDB0CEdF83d35" } } }, diff --git a/package-lock.json b/package-lock.json index 6ea3f2de..76ba9d27 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@daostack/migration-experimental", - "version": "0.1.2-rc.7-v1", + "version": "0.1.2-rc.8-v0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -25,9 +25,9 @@ } }, "@daostack/arc-experimental": { - "version": "0.1.2-rc.7", - "resolved": "https://registry.npmjs.org/@daostack/arc-experimental/-/arc-experimental-0.1.2-rc.7.tgz", - "integrity": "sha512-j52zzQZgxGyHNlqmoOXKkc/aBy6vDFIeVBpMMHPnMC3SpIbsXhpxiwMDGtOilKYihIVm2zyWQAUzUVSM/g12iw==", + "version": "0.1.2-rc.8", + "resolved": "https://registry.npmjs.org/@daostack/arc-experimental/-/arc-experimental-0.1.2-rc.8.tgz", + "integrity": "sha512-ZRpz+Js4U9AGXXgN9vz56YRp3xi28oP+tSz+hbO33cWFsT1HJOuhdYe2Yr14OOVzx9bndKb/8hdrPdZIFO/9gA==", "requires": { "@daostack/infra-experimental": "0.1.1-rc.22", "@daostack/upgrades": "2.8.0-rc.1", @@ -123,9 +123,9 @@ }, "dependencies": { "@types/node": { - "version": "12.19.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.19.1.tgz", - "integrity": "sha512-/xaVmBBjOGh55WCqumLAHXU9VhjGtmyTGqJzFBXRWZzByOXI5JAJNx9xPVGEsNizrNwcec92fQMj458MWfjN1A==" + "version": "12.19.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.19.3.tgz", + "integrity": "sha512-8Jduo8wvvwDzEVJCOvS/G6sgilOLvvhn1eMmK3TW8/T217O7u1jdrK6ImKLv80tVryaPSVeKu6sjDEiFjd4/eg==" }, "eth-lib": { "version": "0.2.7", @@ -188,9 +188,9 @@ }, "dependencies": { "@types/node": { - "version": "10.17.42", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.42.tgz", - "integrity": "sha512-HElxYF7C/MSkuvlaHB2c+82zhXiuO49Cq056Dol8AQuTph7oJtduo2n6J8rFa+YhJyNgQ/Lm20ZaxqD0vxU0+Q==" + "version": "10.17.44", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.44.tgz", + "integrity": "sha512-vHPAyBX1ffLcy4fQHmDyIUMUb42gHZjPHU66nhvbMzAWJqHnySGZ6STwN3rwrnSd1FHB0DI/RWgGELgKSYRDmw==" } } }, @@ -291,9 +291,9 @@ }, "dependencies": { "@types/node": { - "version": "10.17.42", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.42.tgz", - "integrity": "sha512-HElxYF7C/MSkuvlaHB2c+82zhXiuO49Cq056Dol8AQuTph7oJtduo2n6J8rFa+YhJyNgQ/Lm20ZaxqD0vxU0+Q==" + "version": "10.17.44", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.44.tgz", + "integrity": "sha512-vHPAyBX1ffLcy4fQHmDyIUMUb42gHZjPHU66nhvbMzAWJqHnySGZ6STwN3rwrnSd1FHB0DI/RWgGELgKSYRDmw==" }, "elliptic": { "version": "6.3.3", @@ -2189,11 +2189,11 @@ "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" }, "bufferutil": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.1.tgz", - "integrity": "sha512-xowrxvpxojqkagPcWRQVXZl0YXhRhAtBEIq3VoER1NH5Mw1n1o0ojdspp+GS2J//2gCVyrzQDApQ4unGF+QOoA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.2.tgz", + "integrity": "sha512-AtnG3W6M8B2n4xDQ5R+70EXvOpnXsFYg/AK2yTZd+HQ/oxAdz+GI+DvjmhBw3L0ole+LJ0ngqY4JMbDzkfNzhA==", "requires": { - "node-gyp-build": "~3.7.0" + "node-gyp-build": "^4.2.0" } }, "builtin-modules": { @@ -5550,9 +5550,9 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, "node-gyp-build": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-3.7.0.tgz", - "integrity": "sha512-L/Eg02Epx6Si2NXmedx+Okg+4UHqmaf3TNcxd50SF9NQGcJaON3AtU++kax69XV7YWz4tUspqZSAsVofhFKG2w==" + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.2.3.tgz", + "integrity": "sha512-MN6ZpzmfNCRM+3t57PTJHgHyw/h4OWnZ6mR8P5j/uZtqQr46RRuDE/P+g3n0YR/AiYXeWixZZzaip77gdICfRg==" }, "nofilter": { "version": "1.0.3", @@ -7429,11 +7429,11 @@ "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" }, "utf-8-validate": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.2.tgz", - "integrity": "sha512-SwV++i2gTD5qh2XqaPzBnNX88N6HdyhQrNNRykvcS0QKvItV9u3vPEJr+X5Hhfb1JC0r0e1alL0iB09rY8+nmw==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.3.tgz", + "integrity": "sha512-jtJM6fpGv8C1SoH4PtG22pGto6x+Y8uPprW0tw3//gGFhDDTiuksgradgFN6yRayDP4SyZZa6ZMGHLIa17+M8A==", "requires": { - "node-gyp-build": "~3.7.0" + "node-gyp-build": "^4.2.0" } }, "utf8": { diff --git a/package.json b/package.json index c55ffaa9..8e027f1c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@daostack/migration-experimental", - "version": "0.1.2-rc.7-v1", + "version": "0.1.2-rc.8-v0", "description": "A repo for handling DAOstack contract migrations", "main": "index.js", "bin": { @@ -45,7 +45,7 @@ }, "homepage": "https://github.com/daostack/migration#readme", "dependencies": { - "@daostack/arc-experimental": "0.1.2-rc.7", + "@daostack/arc-experimental": "0.1.2-rc.8", "@daostack/arc-hive": "0.0.1-rc.5", "ethereumjs-wallet": "^0.6.3", "fstream": "^1.0.12", diff --git a/prepare-release.sh b/prepare-release.sh index 420265b9..8dd7380a 100755 --- a/prepare-release.sh +++ b/prepare-release.sh @@ -45,7 +45,7 @@ fi if [ ! -z "$mainnet_private_key" ]; then # migrate mainnet echo "Migrating mainnet..." -# npm run migrate.base -- --disableconfs --gasPrice 55 --provider $mainnet_provider --private-key $mainnet_private_key "$@" +npm run migrate.base -- --disableconfs --gasPrice 30 --provider $mainnet_provider --private-key $mainnet_private_key "$@" fi if [ ! -z "$xdai_private_key" ]; then # migrate xdai