UNPKG

@daostack/arc-experimental

Version:

A platform for building DAOs

258 lines (257 loc) 18.9 kB
{ "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", "linkReferences": {}, "deployedLinkReferences": {} }