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