function _preValidatePurchase(
    address beneficiary,
    uint256 weiAmount
  )
    internal
    onlyIfWhitelisted(beneficiary)
  {
    require(tokensLeft() >= _getTokenAmount(weiAmount), "Insufficient number of tokens to complete purchase!");
    super._preValidatePurchase(beneficiary, weiAmount);
  }