Variables ​
Inherits: Owned, Pausable, Constants, Structs
State Variables ​
name ​
Name of the Merkle Distributor
string public name;
_proposers ​
allow list for allowed root proposer addresses
mapping(address => bool) internal _proposers;
_approvers ​
allow list for allowed root proposer addresses
mapping(address => bool) internal _approvers;
_currentMerkleCycle ​
merkle root data related to current cycle (proposed and approved).
timestamp & publishBlock = data from last publish.
MerkleCycle internal _currentMerkleCycle;
_pendingMerkleCycle ​
merkle root data related to pending cycle (proposed but not yet approved).
timestamp & publishBlock = data from last propose.
MerkleCycle internal _pendingMerkleCycle;
previousMerkleRoot ​
merkle root of the previous cycle
bytes32 public previousMerkleRoot;
claimed ​
total claimed amount per user address and fToken. user => positionId => claimed amount
mapping(address => mapping(bytes32 => uint256)) public claimed;
rewards ​
Data of cycle rewards
Reward[] internal rewards;
distributions ​
data of distributions
Distribution[] internal distributions;
rewardsDistributor ​
allow list for rewards distributors
mapping(address => bool) public rewardsDistributor;
cyclesPerDistribution ​
Number of cycles to distribute rewards
uint40 public cyclesPerDistribution;
blocksPerDistribution ​
Duration of each distribution in blocks
uint40 public blocksPerDistribution;
startBlockOfNextCycle ​
Start block of the next cycle
uint40 public startBlockOfNextCycle;
pullFromDistributor ​
Whether to pull tokens from distributor or not
bool public pullFromDistributor;
vestingTime ​
Vesting time for rewards
uint40 public vestingTime;
vestingStartTime ​
Vesting start time
uint40 public vestingStartTime;
Functions ​
constructor ​
constructor(address owner_, address rewardToken_) Constants(rewardToken_) Owned(owner_);