Skip to content

Commit

Permalink
Precompute tier odds
Browse files Browse the repository at this point in the history
  • Loading branch information
Dylan DesRosier committed Jun 28, 2023
1 parent 2b4cd6b commit 38df0bc
Show file tree
Hide file tree
Showing 6 changed files with 492 additions and 32 deletions.
14 changes: 4 additions & 10 deletions src/PrizePool.sol
Original file line number Diff line number Diff line change
Expand Up @@ -325,9 +325,7 @@ contract PrizePool is TieredLiquidityDistributor {
return
uint16(
TierCalculationLib.estimatePrizeFrequencyInDraws(
_tier,
numberOfTiers,
grandPrizePeriodDraws
TieredLiquidityDistributor._tierOdds(_tier, numberOfTiers)
)
);
}
Expand Down Expand Up @@ -818,10 +816,8 @@ contract PrizePool is TieredLiquidityDistributor {
revert InvalidTier(_tier, _numberOfTiers);
}

tierOdds = TierCalculationLib.getTierOdds(_tier, _numberOfTiers, grandPrizePeriodDraws);
drawDuration = uint16(
TierCalculationLib.estimatePrizeFrequencyInDraws(_tier, _numberOfTiers, grandPrizePeriodDraws)
);
tierOdds = TieredLiquidityDistributor._tierOdds(_tier, numberOfTiers);
drawDuration = uint16(TierCalculationLib.estimatePrizeFrequencyInDraws(tierOdds));
vaultPortion = _getVaultPortion(
_vault,
uint16(drawDuration > _lastCompletedDrawId ? 0 : _lastCompletedDrawId - drawDuration + 1),
Expand All @@ -844,9 +840,7 @@ contract PrizePool is TieredLiquidityDistributor {
startTimestamp = uint64(
endTimestamp -
TierCalculationLib.estimatePrizeFrequencyInDraws(
_tier,
numberOfTiers,
grandPrizePeriodDraws
TieredLiquidityDistributor._tierOdds(_tier, numberOfTiers)
) *
drawPeriodSeconds
);
Expand Down
Loading

0 comments on commit 38df0bc

Please sign in to comment.