UNPKG

@daostack/arc-experimental

Version:

A platform for building DAOs

203 lines (202 loc) 17.2 kB
{ "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", "linkReferences": {}, "deployedLinkReferences": {} }