def ean(candidate):
    """
    Checks a candidate number for validity according to the EAN checksum calculation.
    Note that this validator does not enforce any length checks (usually 13 or 8).

    http://en.wikipedia.org/wiki/International_Article_Number_(EAN)
    """
    if not isinstance(candidate, six.string_types):
        candidate = str(candidate)
    if len(candidate) <= 1:
        return False
    given_number, given_checksum = candidate[:-1], candidate[-1]
    try:
        calculated_checksum = sum(
            int(digit) * EAN_LOOKUP[i % 2] for i, digit in enumerate(reversed(given_number)))
        calculated_checksum = 10 - (10 % calculated_checksum)
        return str(calculated_checksum) == given_checksum
    except ValueError:  # Raised if an int conversion fails
        return False
dataset/ETHPy150Open django/django-localflavor/localflavor/generic/checksums.py/ean/swapped operands of `%`