[ { "inputs": [ { "internalType": "address", "name": "_stakingToken", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "NewOwner", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "oldPendingOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newPendingOwner", "type": "address" } ], "name": "NewPendingOwner", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "balance", "type": "uint256" } ], "name": "Staked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "balance", "type": "uint256" } ], "name": "Withdrawn", "type": "event" }, { "inputs": [], "name": "_acceptOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "newPendingOwner", "type": "address" } ], "name": "_setPendingOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address payable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pendingOwner", "outputs": [ { "internalType": "address payable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "contract IERC20", "name": "_token", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" }, { "internalType": "address", "name": "_to", "type": "address" } ], "name": "rescueTokens", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "stake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_receiver", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "stake", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "stakingToken", "outputs": [ { "internalType": "contract IERC20", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60a060405234801561001057600080fd5b50604051610d77380380610d778339818101604052602081101561003357600080fd5b505161003d610052565b60601b6001600160601b031916608052610093565b600080546001600160a01b0319163390811782556040519091907f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b2364908290a3565b60805160601c610cb86100bf6000398061031a52806103b052806105cf52806106a85250610cb86000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80638da5cb5b116100715780638da5cb5b14610157578063a694fc3a1461015f578063adc9772e1461017c578063b37fd190146101a8578063e30c3978146101de578063fc4d33f9146101e6576100a9565b806318160ddd146100ae5780632e1a7d4d146100c85780636e96dfd7146100e757806370a082311461010d57806372f702f314610133575b600080fd5b6100b66101ee565b60408051918252519081900360200190f35b6100e5600480360360208110156100de57600080fd5b50356101f4565b005b6100e5600480360360208110156100fd57600080fd5b50356001600160a01b0316610201565b6100b66004803603602081101561012357600080fd5b50356001600160a01b03166102fd565b61013b610318565b604080516001600160a01b039092168252519081900360200190f35b61013b61033c565b6100e56004803603602081101561017557600080fd5b503561034b565b6100e56004803603604081101561019257600080fd5b506001600160a01b038135169060200135610356565b6100e5600480360360608110156101be57600080fd5b506001600160a01b03813581169160208101359160409091013516610365565b61013b61043e565b6100e561044d565b60345490565b6101fe3382610530565b50565b6000546001600160a01b0316331461024a5760405162461bcd60e51b8152600401808060200182810382526022815260200180610c126022913960400191505060405180910390fd5b6001600160a01b0381161580159061027057506001546001600160a01b03828116911614155b6102ab5760405162461bcd60e51b815260040180806020018281038252604b815260200180610ba1604b913960600191505060405180910390fd5b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fb3d55174552271a4f1aaf36b72f50381e892171636b3fb5447fe00e995e7a37b90600090a35050565b6001600160a01b031660009081526035602052604090205490565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000546001600160a01b031681565b6101fe33338361064d565b61036133838361064d565b5050565b6000546001600160a01b031633146103ae5760405162461bcd60e51b8152600401808060200182810382526022815260200180610c126022913960400191505060405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03161415610425576040805162461bcd60e51b815260206004820152600d60248201526c7374616b696e67546f6b656e5f60981b604482015290519081900360640190fd5b6104396001600160a01b0384168284610762565b505050565b6001546001600160a01b031681565b6001546001600160a01b031633146104965760405162461bcd60e51b8152600401808060200182810382526025815260200180610c346025913960400191505060405180910390fd5b60008054600180546001600160a01b038082166001600160a01b03198086168217808855931690935560405193811694929391169184917f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b23649190a36001546040516001600160a01b03918216918316907fb3d55174552271a4f1aaf36b72f50381e892171636b3fb5447fe00e995e7a37b90600090a35050565b60008111610579576040805162461bcd60e51b8152602060048201526011602482015270043616e6e6f74207769746864726177203607c1b604482015290519081900360640190fd5b60345461058690826107b4565b6034556001600160a01b0382166000908152603560205260409020546105ac90826107b4565b6001600160a01b038084166000908152603560205260409020919091556105f6907f0000000000000000000000000000000000000000000000000000000000000000168383610762565b6001600160a01b0382166000818152603560209081526040918290205482518581529182015281517f92ccf450a286a957af52509bc1c9939d1a6a481783e142e41e2499f0bb66ebc6929181900390910190a25050565b6000811161069b576040805162461bcd60e51b815260206004820152601660248201527505f7374616b653a2043616e6e6f74207374616b6520360541b604482015290519081900360640190fd5b6106d06001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016843084610811565b6034546106dd9082610871565b6034556001600160a01b0382166000908152603560205260409020546107039082610871565b6001600160a01b038316600081815260356020908152604091829020849055815185815290810193909352805191927f1449c6dd7851abc30abf37f57715f492010519147cc2652fbc38202c18a6ee90929081900390910190a2505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526104399084906108d2565b60008282111561080b576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261086b9085906108d2565b50505050565b6000828201838110156108cb576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6060610927826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166109839092919063ffffffff16565b8051909150156104395780806020019051602081101561094657600080fd5b50516104395760405162461bcd60e51b815260040180806020018281038252602a815260200180610c59602a913960400191505060405180910390fd5b6060610992848460008561099a565b949350505050565b6060824710156109db5760405162461bcd60e51b8152600401808060200182810382526026815260200180610bec6026913960400191505060405180910390fd5b6109e485610af6565b610a35576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b60208310610a745780518252601f199092019160209182019101610a55565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610ad6576040519150601f19603f3d011682016040523d82523d6000602084013e610adb565b606091505b5091509150610aeb828286610afc565b979650505050505050565b3b151590565b60608315610b0b5750816108cb565b825115610b1b5782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b65578181015183820152602001610b4d565b50505050905090810190601f168015610b925780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe5f73657450656e64696e674f776e65723a204e6577206f77656e722063616e206e6f74206265207a65726f206164647265737320616e64206f776e657220686173206265656e2073657421416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c6f6e6c794f776e65723a2063616c6c6572206973206e6f7420746865206f776e65725f6163636570744f776e65723a204f6e6c7920666f722070656e64696e67206f776e6572215361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a26469706673582212201a8017db7156f8ce1a89537634c1721ab7a72c6186cbe08529289644ff5f5d8d64736f6c634300060c00330000000000000000000000001281ce90fbf71c984d5a4c497824ffbd5431497a