function allocateToken() onlyOwner public{
        require(block.timestamp > lockStartTime);
        
        require(allocations[teamWallet] == 0);
        require(token.balanceOf(address(this)) == totalAllocation);
        
        allocations[teamWallet] = teamAllocation;
        allocations[earlyWallet] = earlyAllocation;
        allocations[institutionWallet] = institutionAllocation;
        
        stageSettings[teamWallet] = teamStageSetting;
        stageSettings[earlyWallet] = earlyStageSetting;
        stageSettings[institutionWallet] = institutionStageSetting;
        
        timeLockDurations[teamWallet] = teamTimeLock;
        timeLockDurations[earlyWallet] = earlyTimeLock;
        timeLockDurations[institutionWallet] = institutionTimeLock;
    }