@daostack/arc-experimental
Version:
A platform for building DAOs
523 lines (522 loc) • 24.9 kB
JSON
{
"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",
"linkReferences": {},
"deployedLinkReferences": {}
}