1 tx
3k calls
constructor
constructor(address _controller, address _token, address _wsdToken)
functions
controller
viewfunction controller() view returns (address)
rewardPerToken
viewfunction rewardPerToken() view returns (uint256)
token
viewfunction token() view returns (address)
totalRewards
viewfunction totalRewards() view returns (uint256)
userRewardPerTokenPaid
viewfunction userRewardPerTokenPaid(address) view returns (uint256)
userRewards
viewfunction userRewards(address) view returns (uint256)
withdrawableRewards
viewfunction withdrawableRewards(address _account) view returns (uint256)
withdrawableRewardsWrapped
viewfunction withdrawableRewardsWrapped(address _account) view returns (uint256)
wsdToken
viewfunction wsdToken() view returns (address)
distributeRewards
nonpayablefunction distributeRewards()
onTokenTransfer
nonpayablefunction onTokenTransfer(address, uint256, bytes)
updateReward
nonpayablefunction updateReward(address _account)
withdraw
nonpayablefunction withdraw()
withdraw
nonpayablefunction withdraw(address _account)
events
DistributeRewards
event DistributeRewards(address indexed sender, uint256 amountStaked, uint256 amount)
Withdraw
event Withdraw(address indexed account, uint256 amount)
errors
No errors.
creation bytecode
0x60c060405234801561001057600080fd5b5060405161115b38038061115b83398101604081905261002f91610079565b6001600160a01b0392831660a052908216608052600480546001600160a01b031916919092161790556100bc565b80516001600160a01b038116811461007457600080fd5b919050565b60008060006060848603121561008e57600080fd5b6100978461005d565b92506100a56020850161005d565b91506100b36040850161005d565b90509250925092565b60805160a05161103b610120600039600081816101f5015281816102e1015281816103d5015281816106c6015281816108380152610a7301526000818161021c015281816104cb015281816105860152818161076c01526109fd015261103b6000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80636f4a2cd01161008c578063cd3daf9d11610066578063cd3daf9d146101bc578063f6c3372f146101c5578063f77c4791146101f0578063fc0c546a1461021757600080fd5b80636f4a2cd0146101815780638b87634714610189578063a4c0ed36146101a957600080fd5b80633ccfd60b116100c85780633ccfd60b1461013e57806349dcce931461014857806351cff8d91461015b578063632447c91461016e57600080fd5b80630660f1e8146100ef5780630e15561a146101225780630f14b4d61461012b575b600080fd5b61010f6100fd366004610e27565b60036020526000908152604090205481565b6040519081526020015b60405180910390f35b61010f60015481565b61010f610139366004610e27565b61023e565b6101466102c0565b005b61010f610156366004610e27565b6102cb565b610146610169366004610e27565b6102d6565b61014661017c366004610e27565b610351565b6101466103d1565b61010f610197366004610e27565b60026020526000908152604090205481565b6101466101b7366004610e42565b610761565b61010f60005481565b6004546101d8906001600160a01b031681565b6040516001600160a01b039091168152602001610119565b6101d87f000000000000000000000000000000000000000000000000000000000000000081565b6101d87f000000000000000000000000000000000000000000000000000000000000000081565b6004546000906001600160a01b031663da9a6cf861025b846107e0565b6040518263ffffffff1660e01b815260040161027991815260200190565b602060405180830381865afa158015610296573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ba9190610ec9565b92915050565b6102c9336108c1565b565b60006102ba826107e0565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146103455760405162461bcd60e51b815260206004820152600f60248201526e436f6e74726f6c6c6572206f6e6c7960881b60448201526064015b60405180910390fd5b61034e816108c1565b50565b6001600160a01b038116600090815260036020526040812054610373836102cb565b61037d9190610ef8565b905080156103b3576001600160a01b038216600090815260036020526040812080548392906103ad908490610f0f565b90915550505b50600080546001600160a01b03909216815260026020526040902055565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663817b1cd26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610431573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104559190610ec9565b116104b35760405162461bcd60e51b815260206004820152602860248201527f43616e6e6f742064697374726962757465207768656e206e6f7468696e6720696044820152671cc81cdd185ad95960c21b606482015260840161033c565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa15801561051a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053e9190610ec9565b60048054604051630200057560e51b81526001600160a01b039182169281019290925260248201839052606060448301526002606483015261060f60f31b60848301529192507f000000000000000000000000000000000000000000000000000000000000000090911690634000aea09060a4016020604051808303816000875af11580156105d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f59190610f27565b50600154600480546040516370a0823160e01b81523092810192909252600092916001600160a01b03909116906370a0823190602401602060405180830381865afa158015610648573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066c9190610ec9565b6106769190610ef8565b9050806001600082825461068a9190610f0f565b90915550610699905081610a6f565b336001600160a01b03167f3a748d40c2a4d1652cf9e6faa37c5e347459597272d02843e21e96eb956423727f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663817b1cd26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610722573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107469190610ec9565b60408051918252602082018690520160405180910390a25050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146107d25760405162461bcd60e51b815260206004820152601660248201527527b7363c9031b0b63630b1363290313c903a37b5b2b760511b604482015260640161033c565b6107da6103d1565b50505050565b6001600160a01b03811660009081526003602090815260408083205460029092528220548254670de0b6b3a76400009161081991610ef8565b6040516326201f6160e21b81526001600160a01b0386811660048301527f000000000000000000000000000000000000000000000000000000000000000016906398807d8490602401602060405180830381865afa15801561087f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a39190610ec9565b6108ad9190610f49565b6108b79190610f68565b6102ba9190610f0f565b60006108cc826102cb565b60048054604051631b534d9f60e31b81529182018390529192506000916001600160a01b03169063da9a6cf890602401602060405180830381865afa158015610919573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061093d9190610ec9565b90508115610a6a5761094e83610351565b6001600160a01b03831660009081526003602052604081208054849290610976908490610ef8565b92505081905550816001600082825461098f9190610ef8565b909155505060048054604051636f074d1f60e11b81529182018490526001600160a01b03169063de0e9a3e90602401600060405180830381600087803b1580156109d857600080fd5b505af11580156109ec573d6000803e3d6000fd5b50610a269250506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690508483610b7b565b826001600160a01b03167f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a942436482604051610a6191815260200190565b60405180910390a25b505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663817b1cd26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610acf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af39190610ec9565b905060008111610b455760405162461bcd60e51b815260206004820152601960248201527f5374616b656420616d6f756e74206d757374206265203e203000000000000000604482015260640161033c565b80610b5883670de0b6b3a7640000610f49565b610b629190610f68565b600080828254610b729190610f0f565b90915550505050565b604080516001600160a01b03848116602483015260448083018590528351808403909101815260649092018352602080830180516001600160e01b031663a9059cbb60e01b17905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656490840152610a6a92869291600091610c0b918516908490610c88565b805190915015610a6a5780806020019051810190610c299190610f27565b610a6a5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161033c565b6060610c978484600085610ca1565b90505b9392505050565b606082471015610d025760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161033c565b6001600160a01b0385163b610d595760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161033c565b600080866001600160a01b03168587604051610d759190610fb6565b60006040518083038185875af1925050503d8060008114610db2576040519150601f19603f3d011682016040523d82523d6000602084013e610db7565b606091505b5091509150610dc7828286610dd2565b979650505050505050565b60608315610de1575081610c9a565b825115610df15782518084602001fd5b8160405162461bcd60e51b815260040161033c9190610fd2565b80356001600160a01b0381168114610e2257600080fd5b919050565b600060208284031215610e3957600080fd5b610c9a82610e0b565b60008060008060608587031215610e5857600080fd5b610e6185610e0b565b935060208501359250604085013567ffffffffffffffff80821115610e8557600080fd5b818701915087601f830112610e9957600080fd5b813581811115610ea857600080fd5b886020828501011115610eba57600080fd5b95989497505060200194505050565b600060208284031215610edb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b600082821015610f0a57610f0a610ee2565b500390565b60008219821115610f2257610f22610ee2565b500190565b600060208284031215610f3957600080fd5b81518015158114610c9a57600080fd5b6000816000190483118215151615610f6357610f63610ee2565b500290565b600082610f8557634e487b7160e01b600052601260045260246000fd5b500490565b60005b83811015610fa5578181015183820152602001610f8d565b838111156107da5750506000910152565b60008251610fc8818460208701610f8a565b9190910192915050565b6020815260008251806020840152610ff1816040850160208701610f8a565b601f01601f1916919091016040019291505056fea2646970667358221220b86fe72985277642b6dd198d7ed619a4b1d2e1fd8f7665b3034b6ffb7be5237d64736f6c634300080f00330000000000000000000000000b2ef910ad0b34bf575eb09d37fd7da6c148ca4d000000000000000000000000b8b295df2cd735b15be5eb419517aa626fc43cd5000000000000000000000000911d86c72155c33993d594b0ec7e6206b4c803da