create(address reward)of the Angel Factory to create the Angel. The parameter
rewardis the token address of the reward you provide.
add(uint256 allocPoint, address _lpToken, address _Rewarder)to assign the Fountain(s) to receive the reward in the Angel(s).
_lpTokenis the token address that you want to incentivize.
_Rewarderis the contract customized developed by the Rewarder. If the Rewarder wants to do some specific behavior based on the staking system, the Rewarder can assign the contract address to
create(ERC20 token)of the Fountain Factory to create the Fountain(s).
addGraceReward(uint256 _amount, uint256 _endTime)
setGracePerSecond(uint256 _gracePerSecond, uint256 _endTime)
3-A. addGraceReward(uint256 _amount, uint256 _endTime)
3-B. setGracePerSecond(uint256 _gracePerSecond, uint256 _endTime)
deposit(uint256 amount)of that Fountain contract to stake the specific token.
joinAngel(address angel)of the Fountain to sign up for a single type of reward, or the function
joinAngels(address angels)of the Fountain to join multiple types of rewards from multiple Angels.
harvestAll()of the Fountain to claim all available rewards. Alternatively, they can call the function
harvest(address angel)of the Fountain to claim the reward from the specific Angel contract.