LinearDistributionIntervalDecrease

This library manages the linear emission decay mechanism used to gradually reduce the amount of tokens distributed over time. It defines how the available reward amount decreases with each interval (e.g., daily, weekly), allowing the protocol to implement a predictable emission schedule. Used by the DistributionV5 contract to calculate how many MOR tokens can currently be distributed based on the time elapsed since the start of the distribution schedule.

Read functions

getPeriodReward

The function to calculate the MOR reward for the period.

function getPeriodReward(
  uint256 initialAmount_,
  uint256 decreaseAmount_,
  uint128 payoutStart_,
  uint128 interval_,
  uint128 startTime_,
  uint128 endTime_
) external pure returns (uint256)
Name
Description

initialAmount_

The initial MOR reward for the bucket.

decreaseAmount_

The MOR reward decreases on this amount for each interval_.

payoutStart_

The unix epoch timestamp in seconds when the pool starts to pay out rewards.

interval_

The interval in seconds between reward decreases.

startTime_

The unix timestamp. Start calculate rewards from this timestamp.

endTime_

The unix timestamp. End calculate rewards to this timestamp.

Last updated

Was this helpful?