import math






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

							lowerCAmelCase__  			=      3

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

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

							if n > 2:
														count += 1
							return count


if __name__ == "__main__":
				lowerCAmelCase__					=				51242183
				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 ..utils import DummyObject, requires_backends
class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						Any    ,					**lowercase__      :						List[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						List[str]    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						Dict    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Dict    ,					*lowercase__      :						int    ,					**lowercase__      :						Dict):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[Any]    ,					*lowercase__      :						Dict    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Any    ,					*lowercase__      :						int    ,					**lowercase__      :						str):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						Dict    ,					**lowercase__      :						int):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						Dict    ,					**lowercase__      :						Dict):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Any    ,					*lowercase__      :						Tuple    ,					**lowercase__      :						Dict):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[Any]    ,					*lowercase__      :						int    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						int    ,					*lowercase__      :						Optional[Any]    ,					**lowercase__      :						Union[str, Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Tuple    ,					*lowercase__      :						Dict    ,					**lowercase__      :						Any):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Tuple    ,					*lowercase__      :						Optional[Any]    ,					**lowercase__      :						Any):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						Union[str, Any]    ,					**lowercase__      :						Dict):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						int    ,					*lowercase__      :						Tuple    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[Any]    ,					*lowercase__      :						List[Any]    ,					**lowercase__      :						Union[str, Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						List[Any]    ,					**lowercase__      :						Any):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						Any    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						int    ,					*lowercase__      :						Union[str, Any]    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						List[str]    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Any    ,					*lowercase__      :						Dict    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						Tuple    ,					**lowercase__      :						List[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						int    ,					*lowercase__      :						Dict    ,					**lowercase__      :						Dict):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						List[Any]    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						Any    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						int    ,					*lowercase__      :						Union[str, Any]    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Tuple    ,					*lowercase__      :						Any    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Dict    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						Dict):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[Any]    ,					*lowercase__      :						str    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[int]    ,					*lowercase__      :						Any    ,					**lowercase__      :						Union[str, Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[int]    ,					*lowercase__      :						List[str]    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Dict    ,					*lowercase__      :						List[Any]    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Any    ,					*lowercase__      :						Union[str, Any]    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[Any]    ,					*lowercase__      :						Tuple    ,					**lowercase__      :						Optional[int]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						int    ,					*lowercase__      :						Any    ,					**lowercase__      :						str):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Dict    ,					*lowercase__      :						Dict    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[Any]    ,					*lowercase__      :						str    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[int]    ,					*lowercase__      :						str    ,					**lowercase__      :						List[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						Any    ,					**lowercase__      :						Union[str, Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[Any]    ,					*lowercase__      :						int    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[Any]    ,					*lowercase__      :						Union[str, Any]    ,					**lowercase__      :						Optional[int]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						Optional[int]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Union[str, Any]    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[int]    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						int):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Any    ,					*lowercase__      :						Dict    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Any    ,					*lowercase__      :						Tuple    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Union[str, Any]    ,					*lowercase__      :						Union[str, Any]    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[Any]    ,					*lowercase__      :						Tuple    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Union[str, Any]    ,					*lowercase__      :						Union[str, Any]    ,					**lowercase__      :						List[str]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[int]    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						str):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Optional[int]    ,					*lowercase__      :						Any    ,					**lowercase__      :						Any):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						str    ,					*lowercase__      :						Dict    ,					**lowercase__      :						Optional[Any]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						List[str]    ,					*lowercase__      :						str    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Any    ,					*lowercase__      :						Dict    ,					**lowercase__      :						Tuple):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Tuple    ,					*lowercase__      :						Any    ,					**lowercase__      :						Dict):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Union[str, Any]    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						Optional[int]):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])






class        a_				(		metaclass=SCREAMING_SNAKE_CASE		):






 '''simple docstring'''






 UpperCAmelCase_							=      ['tokenizers']




 def __init__(    self      :						Dict    ,					*lowercase__      :						Optional[int]    ,					**lowercase__      :						str):







        '''simple docstring'''



        requires_backends(self    ,					['tokenizers'])
