import math



def       __SCREAMING_SNAKE_CASE    (   __UpperCamelCase       :			Tuple      )				->   Any:







  """simple docstring"""





  SCREAMING_SNAKE_CASE__     				= 0
  if n % 2 == 0:
    count += 1
    while n % 2 == 0:
      SCREAMING_SNAKE_CASE__     				= int(n / 2      )
    # the n input value must be odd so that
    # we can skip one element (ie i += 2)

  SCREAMING_SNAKE_CASE__     				= 3

  while i <= int(math.sqrt(__UpperCamelCase      )      ):
    if n % i == 0:
      count += 1
      while n % i == 0:
        SCREAMING_SNAKE_CASE__     				= int(n / i      )
    SCREAMING_SNAKE_CASE__     				= i + 2

  # this condition checks the prime
  # number n is greater than 2

  if n > 2:
    count += 1
  return count


if __name__ == "__main__":
   __lowerCamelCase     :					Optional[int]				  =						5124_2183
   print(F"""The number of distinct prime factors is/are {exact_prime_factor_count(n)}""")
   print(F"""The value of log(log(n)) is {math.log(math.log(n)):.4f}""")

from __future__ import annotations



def       __SCREAMING_SNAKE_CASE    (   __UpperCamelCase       :			str      )				->   bool:







  """simple docstring"""





  SCREAMING_SNAKE_CASE__     				= 42
  SCREAMING_SNAKE_CASE__     				= list(__UpperCamelCase      )
  SCREAMING_SNAKE_CASE__				,	SCREAMING_SNAKE_CASE__     				= _vector[:-1], int(_vector[-1]      )
  SCREAMING_SNAKE_CASE__     				= [int(__UpperCamelCase      ) for digit in __vector]

  vector.reverse()
  for i, digit in enumerate(__UpperCamelCase      ):
    if i & 1 == 0:
      SCREAMING_SNAKE_CASE__     				= digit * 2
      if doubled > 9:
        doubled -= 9
      check_digit += doubled
    else:
      check_digit += digit

  return check_digit % 10 == 0


if __name__ == "__main__":
   import doctest

   doctest.testmod()
   assert is_luhn('''79927398713''')
   assert not is_luhn('''79927398714''')
