{
"compilationTarget": {
"/contracts/LP_Staking.sol": "LP_Staking"
},
"evmVersion": "berlin",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": true,
"runs": 20000
},
"remappings": []
}
[{"inputs":[{"internalType":"address","name":"lp_token_address","type":"address"},{"internalType":"address","name":"reward_token_address","type":"address"},{"internalType":"uint8","name":"_epoch_count","type":"uint8"},{"internalType":"uint256","name":"_epoch_seconds","type":"uint256"},{"internalType":"uint256","name":"_epoch_reward","type":"uint256"},{"internalType":"address","name":"_rewards_refund","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address[]","name":"_users","type":"address[]"}],"name":"emergency_refund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"epoch_count","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"epoch_reward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"epoch_seconds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"epochs","outputs":[{"internalType":"uint8","name":"epoch_number","type":"uint8"},{"internalType":"uint248","name":"balance","type":"uint248"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"get_available_reward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"get_current_epoch_number","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint104","name":"share","type":"uint104"}],"internalType":"struct LP_Staking.Prereward[]","name":"_users","type":"tuple[]"},{"internalType":"uint256","name":"_prerewards_total","type":"uint256"}],"name":"init_prerewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"prerewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"new_controller","type":"address"}],"name":"set_controller","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint168","name":"value","type":"uint168"}],"name":"stake","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"staking_end","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"staking_start","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"total_staked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"total_staked_for_user","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"trusted_lp_token","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"trusted_reward_token","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unstake","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"users","outputs":[{"internalType":"bool","name":"has_prerewards","type":"bool"},{"internalType":"uint8","name":"epoch_start","type":"uint8"},{"internalType":"uint168","name":"balance","type":"uint168"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw_rewards","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]