0 txs
7 calls
constructor
No constructor.
functions
ADMIN_ROLE
viewfunction ADMIN_ROLE() view returns (bytes32)
balances
viewfunction balances(address) view returns (uint256)
currency
viewfunction currency() view returns (address)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getRoleMember
viewfunction getRoleMember(bytes32 role, uint256 index) view returns (address)
getRoleMemberCount
viewfunction getRoleMemberCount(bytes32 role) view returns (uint256)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
rewardPercent
viewfunction rewardPercent() view returns (uint256)
totalReward
viewfunction totalReward() view returns (uint256)
version
purefunction version() pure returns (uint256)
__Rewards_init
nonpayablefunction __Rewards_init(address token, uint256 percent)
addReward
nonpayablefunction addReward(address referrer, address referral, uint256 stakedAmount)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setCurrency
nonpayablefunction setCurrency(address token)
setRewardPercent
nonpayablefunction setRewardPercent(uint256 percent)
withdrawReward
nonpayablefunction withdrawReward()
events
RewardAdded
event RewardAdded(address indexed referrer, address indexed referral, uint256 stakedAmount, uint256 rewardAmount)
RewardWithdrawn
event RewardWithdrawn(address indexed referrer, uint256 amount)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b5061155b806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806391d14854116100ad578063d030205111610071578063d0302051146102dc578063d0ed26ae146102e4578063d547741f1461031a578063e5a6b10f14610346578063ff9e09b61461034e57610121565b806391d1485414610252578063a217fddf14610292578063c1c5dd271461029a578063c885bc58146102b7578063ca15c873146102bf57610121565b806336568abe116100f457806336568abe146101cf57806354fd4d50146101fb578063750142e61461020357806375b238fc1461020b5780639010d07c1461021357610121565b8063248a9ca31461012657806327e235e3146101555780632f2ff15d1461017b5780632f84c391146101a9575b600080fd5b6101436004803603602081101561013c57600080fd5b503561037a565b60408051918252519081900360200190f35b6101436004803603602081101561016b57600080fd5b50356001600160a01b031661038f565b6101a76004803603604081101561019157600080fd5b50803590602001356001600160a01b03166103a1565b005b6101a7600480360360208110156101bf57600080fd5b50356001600160a01b031661040d565b6101a7600480360360408110156101e557600080fd5b50803590602001356001600160a01b03166104ea565b61014361054b565b610143610550565b610143610556565b6102366004803603604081101561022957600080fd5b5080359060200135610568565b604080516001600160a01b039092168252519081900360200190f35b61027e6004803603604081101561026857600080fd5b50803590602001356001600160a01b0316610589565b604080519115158252519081900360200190f35b6101436105a1565b6101a7600480360360208110156102b057600080fd5b50356105a6565b6101a7610662565b610143600480360360208110156102d557600080fd5b50356107b5565b6101436107cc565b6101a7600480360360608110156102fa57600080fd5b506001600160a01b038135811691602081013590911690604001356107d2565b6101a76004803603604081101561033057600080fd5b50803590602001356001600160a01b03166108fe565b610236610957565b6101a76004803603604081101561036457600080fd5b506001600160a01b038135169060200135610966565b60009081526033602052604090206002015490565b60996020526000908152604090205481565b6000828152603360205260409020600201546103c4906103bf610afe565b610589565b6103ff5760405162461bcd60e51b815260040180806020018281038252602f8152602001806113d9602f913960400191505060405180910390fd5b6104098282610b02565b5050565b6000805160206114ad8339815191526104366000805160206114ad8339815191526103bf610afe565b610475576040805162461bcd60e51b815260206004820152600b60248201526a139bdd08185b1b1bddd95960aa1b604482015290519081900360640190fd5b6001600160a01b0382166104c7576040805162461bcd60e51b8152602060048201526014602482015273546f6b656e2063616e6e6f74206265207a65726f60601b604482015290519081900360640190fd5b50609780546001600160a01b0319166001600160a01b0392909216919091179055565b6104f2610afe565b6001600160a01b0316816001600160a01b0316146105415760405162461bcd60e51b815260040180806020018281038252602f8152602001806114f7602f913960400191505060405180910390fd5b6104098282610b6b565b606690565b609a5481565b6000805160206114ad83398151915281565b60008281526033602052604081206105809083610bd4565b90505b92915050565b60008281526033602052604081206105809083610be0565b600081565b6000805160206114ad8339815191526105cf6000805160206114ad8339815191526103bf610afe565b61060e576040805162461bcd60e51b815260206004820152600b60248201526a139bdd08185b1b1bddd95960aa1b604482015290519081900360640190fd5b6000821161065c576040805162461bcd60e51b815260206004820152601660248201527550657263656e742063616e6e6f74206265207a65726f60501b604482015290519081900360640190fd5b50609855565b600260655414156106ba576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b600260655560006106c9610afe565b6001600160a01b0381166000908152609960205260409020549091508061072d576040805162461bcd60e51b81526020600482015260136024820152724e6f7468696e6720746f20776974686472617760681b604482015290519081900360640190fd5b6001600160a01b038216600090815260996020526040812055609a546107539082610bf5565b609a5560975461076d906001600160a01b03168383610c52565b6040805182815290516001600160a01b038416917f1d3eee4ca001cff39eec6ec7615aacf2f2bd61791273830728ba00ccbd6e1337919081900360200190a250506001606555565b600081815260336020526040812061058390610ca4565b60985481565b6000805160206114ad8339815191526107fb6000805160206114ad8339815191526103bf610afe565b61083a576040805162461bcd60e51b815260206004820152600b60248201526a139bdd08185b1b1bddd95960aa1b604482015290519081900360640190fd5b600061085d61271061085760985486610caf90919063ffffffff16565b90610d08565b6001600160a01b0386166000908152609960205260409020549091506108839082610d6f565b6001600160a01b038616600090815260996020526040902055609a546108a99082610d6f565b609a55604080518481526020810183905281516001600160a01b0380881693908916927fd788be73362710455c53c86bf25cb901f5950cb2f35141025e055657332e1f7b929081900390910190a35050505050565b60008281526033602052604090206002015461091c906103bf610afe565b6105415760405162461bcd60e51b815260040180806020018281038252603081526020018061142e6030913960400191505060405180910390fd5b6097546001600160a01b031681565b600054610100900460ff168061097f575061097f610dc9565b8061098d575060005460ff16155b6109c85760405162461bcd60e51b815260040180806020018281038252602e81526020018061145e602e913960400191505060405180910390fd5b600054610100900460ff161580156109f3576000805460ff1961ff0019909116610100171660011790555b6109fb610dda565b610a0d6000610a08610afe565b6103ff565b610a276000805160206114ad833981519152610a08610afe565b6001600160a01b038316610a79576040805162461bcd60e51b8152602060048201526014602482015273546f6b656e2063616e6e6f74206265207a65726f60601b604482015290519081900360640190fd5b60008211610ac7576040805162461bcd60e51b815260206004820152601660248201527550657263656e742063616e6e6f74206265207a65726f60501b604482015290519081900360640190fd5b609780546001600160a01b0319166001600160a01b03851617905560988290558015610af9576000805461ff00191690555b505050565b3390565b6000828152603360205260409020610b1a9082610e8c565b1561040957610b27610afe565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000828152603360205260409020610b839082610ea1565b1561040957610b90610afe565b6001600160a01b0316816001600160a01b0316837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b60006105808383610eb6565b6000610580836001600160a01b038416610f1a565b600082821115610c4c576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610af9908490610f32565b600061058382610fe3565b600082610cbe57506000610583565b82820282848281610ccb57fe5b04146105805760405162461bcd60e51b815260040180806020018281038252602181526020018061148c6021913960400191505060405180910390fd5b6000808211610d5e576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610d6757fe5b049392505050565b600082820183811015610580576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000610dd430610fe7565b15905090565b600054610100900460ff1680610df35750610df3610dc9565b80610e01575060005460ff16155b610e3c5760405162461bcd60e51b815260040180806020018281038252602e81526020018061145e602e913960400191505060405180910390fd5b600054610100900460ff16158015610e67576000805460ff1961ff0019909116610100171660011790555b610e6f610fed565b610e77610fed565b8015610e89576000805461ff00191690555b50565b6000610580836001600160a01b03841661108d565b6000610580836001600160a01b0384166110d7565b81546000908210610ef85760405162461bcd60e51b81526004018080602001828103825260228152602001806113b76022913960400191505060405180910390fd5b826000018281548110610f0757fe5b9060005260206000200154905092915050565b60009081526001919091016020526040902054151590565b6060610f87826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661119d9092919063ffffffff16565b805190915015610af957808060200190516020811015610fa657600080fd5b5051610af95760405162461bcd60e51b815260040180806020018281038252602a8152602001806114cd602a913960400191505060405180910390fd5b5490565b3b151590565b600054610100900460ff16806110065750611006610dc9565b80611014575060005460ff16155b61104f5760405162461bcd60e51b815260040180806020018281038252602e81526020018061145e602e913960400191505060405180910390fd5b600054610100900460ff16158015610e77576000805460ff1961ff0019909116610100171660011790558015610e89576000805461ff001916905550565b60006110998383610f1a565b6110cf57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610583565b506000610583565b60008181526001830160205260408120548015611193578354600019808301919081019060009087908390811061110a57fe5b906000526020600020015490508087600001848154811061112757fe5b60009182526020808320909101929092558281526001898101909252604090209084019055865487908061115757fe5b60019003818190600052602060002001600090559055866001016000878152602001908152602001600020600090556001945050505050610583565b6000915050610583565b60606111ac84846000856111b6565b90505b9392505050565b6060824710156111f75760405162461bcd60e51b81526004018080602001828103825260268152602001806114086026913960400191505060405180910390fd5b61120085610fe7565b611251576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b602083106112905780518252601f199092019160209182019101611271565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d80600081146112f2576040519150601f19603f3d011682016040523d82523d6000602084013e6112f7565b606091505b5091509150611307828286611312565b979650505050505050565b606083156113215750816111af565b8251156113315782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561137b578181015183820152602001611363565b50505050905090810190601f1680156113a85780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e6473416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e74416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b65496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217755361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a2646970667358221220b277dd5a24b6204eb2df0305e295937e2af45dd9cfa282e7e4db064b9e97713e64736f6c634300060c0033