


'''simple docstring'''






from __future__ import annotations




class 			a  :
 def __init__(			self   ,					__magic_name__    )       ->				None:
      _a         =				value
      _a         =				None
      _a         =				None





class 			a  :
 _lowerCAmelCase			       =						42
 def __init__(			self    )       ->				None:
      _a         =				0
 def 				__UpperCAmelCase		(			self   ,					__magic_name__   ,					__magic_name__    )       ->				None:
      if node is None:
           return

      if path_sum == self.target:
           self.paths += 1

      if node.left:
           self.depth_first_search(node.left   ,					path_sum + node.left.value    )
      if node.right:
           self.depth_first_search(node.right   ,					path_sum + node.right.value    )




 def 				__UpperCAmelCase		(			self   ,					__magic_name__   ,					__magic_name__ = None    )       ->				int:
      if node is None:
           return 0
      if target is not None:
           _a         =				target

      self.depth_first_search(__magic_name__   ,					node.value    )
      self.path_sum(node.left    )
      self.path_sum(node.right    )

      return self.paths


if __name__ == "__main__":
 import doctest

 doctest.testmod()





'''simple docstring'''






def 						_A					(lowerCAmelCase__	:int					,    lowerCAmelCase__	:int		) ->	int:




     '''simple docstring'''



     if a < b:
          return gcd(lowerCAmelCase__					,    lowerCAmelCase__		)
     if a % b == 0:
          return b
     return gcd(lowerCAmelCase__					,    a % b		)






def 						_A					(lowerCAmelCase__	:int					,    lowerCAmelCase__	:int					,    lowerCAmelCase__	:int		) ->	int:




     '''simple docstring'''



     if y == 0:
          return 1
     _a         =				power(lowerCAmelCase__					,    y // 2					,    lowerCAmelCase__		) % mod
     _a         =				(temp * temp) % mod
     if y % 2 == 1:
          _a         =				(temp * x) % mod
     return temp






def 						_A					(lowerCAmelCase__	:int		) ->	bool:




     '''simple docstring'''



     _a         =				2
     while b < n:
          if gcd(lowerCAmelCase__					,    lowerCAmelCase__		) == 1 and power(lowerCAmelCase__					,    n - 1					,    lowerCAmelCase__		) != 1:
               return False
          b += 1
     return True


if __name__ == "__main__":
 a_       :     Any 							=     int(input("Enter number: ").strip())
 if is_carmichael_number(number):
  print(f'''{number} is a Carmichael Number.''')
 else:
  print(f'''{number} is not a Carmichael Number.''')

