function _processPurchase(
    address beneficiary,
    uint256 tokenAmount
  )
    internal
  {
    uint256 zone = super.getWhitelistedZone(beneficiary);
   uint256 bonusTokens = getBonusAmount(tokenAmount);
    if (zone == 840){
      uint256 totalTokens = bonusTokens.add(tokenAmount);
      _balances[beneficiary] = _balances[beneficiary].add(totalTokens);
    }
    else {
      super._deliverTokens(beneficiary, tokenAmount);
      _balances[beneficiary] = _balances[beneficiary].add(bonusTokens);
    }

  }