def isValidCreditCard(cardNum):
    """Returns True if the credit card number is a valid Luhn (Mod 10) number
       and False if not. This, of course, does not validate the number, but
       will catch typos. There is the chance that two typographic errors could
       return a false positive if they offset one another, but the likelihood
       is low and pre-validating is fast"""

    financialIndustries = ['3', '4', '5', '6']
    if cardNum[0] not in financialIndustries:
        return False

    total = pos = 0
    for digit in cardNum[::-1]:
        if pos % 2 == 0:
            multiplier = 1
        else:
            multiplier = 2
        product = int(digit) * multiplier
        total += product // 10 + product % 10
        pos += 1
    if total % 10 == 0:
        return True
    return False