[{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_fixedAPR","type":"uint256"},{"internalType":"uint256","name":"_lockInPeriod","type":"uint256"},{"internalType":"address","name":"router_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"AddressInsufficientBalance","type":"error"},{"inputs":[],"name":"FailedInnerCall","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"name":"TypeAI_NoTVLAvailable","type":"error"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"TypeAI__AmountMustBeGreaterThanZero","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TypeAI__ETHTransferFailed","type":"error"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"TypeAI__InsufficientDepositAmount","type":"error"},{"inputs":[],"name":"TypeAI__InsufficientResidualBalance","type":"error"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"},{"internalType":"uint256","name":"required","type":"uint256"}],"name":"TypeAI__InsufficientRewardPresent","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TypeAI__InvalidETHBalance","type":"error"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"TypeAI__NoInterestGained","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"name":"TypeAI__NotAStakeHolder","type":"error"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"TypeAI__UnderLockInPeriod","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"name":"TypeAI__ZeroAPR","type":"error"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"name":"TypeAI__ZeroAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"oldAPR","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newAPR","type":"uint256"}],"name":"APRUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"stakeHolder","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Deposited","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"depositor","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"DepositedETHRewards","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"stakeHolder","type":"address"},{"indexed":false,"internalType":"uint256","name":"reward","type":"uint256"}],"name":"ETHRewardDistributed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"stakeHolder","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"InterestClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"oldPeriod","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newPeriod","type":"uint256"}],"name":"LockInPeriodUpdated","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"stakeHolder","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdrawn","type":"event"},{"inputs":[],"name":"claimETHAndReLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimGainedInterest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"claimableInterestGainedBy","outputs":[{"internalType":"uint256","name":"claimableInterest","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minReceive","type":"uint256"}],"name":"compoundETHAndReLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"depositETHRewards","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"ethRewardsPerShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fixedAPR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"getRealizedETH","outputs":[{"internalType":"uint256","name":"realizedETH","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getStakeHolders","outputs":[{"internalType":"address[]","name":"holders","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lockInPeriod","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"noOfStakeHolders","outputs":[{"internalType":"uint256","name":"count","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"stakeHolderDetailsOf","outputs":[{"components":[{"internalType":"address","name":"wallet","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"claimableInterest","type":"uint256"},{"internalType":"uint256","name":"realizedETH","type":"uint256"},{"internalType":"uint256","name":"unrealizedETH","type":"uint256"},{"internalType":"uint256","name":"stakedOn","type":"uint256"},{"internalType":"uint256","name":"aprStartedOn","type":"uint256"}],"internalType":"struct ITypeAI.StakeHolder","name":"details","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"stakeHolder","type":"address"}],"name":"totalAmountStakedBy","outputs":[{"internalType":"uint256","name":"stakedAmount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalETHDeposited","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalRewardsDistributed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalValueLocked","outputs":[{"internalType":"uint256","name":"tvl","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"unstake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"newAPR","type":"uint8"}],"name":"updateAPR","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLockInPeriod","type":"uint256"}],"name":"updateLockInPeriod","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawResidualBalance","outputs":[],"stateMutability":"nonpayable","type":"function"}]