





__A    :   str          =       1_000





def 						__SCREAMING_SNAKE_CASE  (    UpperCamelCase__			)  ->    float:







   '''simple docstring'''

   return x * x





def 						__SCREAMING_SNAKE_CASE  (    UpperCamelCase__      ,      UpperCamelCase__      ,      UpperCamelCase__      ,      UpperCamelCase__ = 4			)  ->    float:







   '''simple docstring'''

   assert callable(
       snake_case__			), F"""the function(object) passed should be callable your input : {function}"""
   assert isinstance(snake_case__      ,      (float, int)			), F"""a should be float or integer your input : {a}"""
   assert isinstance(function(snake_case__			)      ,      (float, int)			), (
       "the function should return integer or float return type of your function, "
       F"""{type(snake_case__			)}"""
   )
   assert isinstance(snake_case__      ,      (float, int)			), F"""b should be float or integer your input : {b}"""
   assert (
       isinstance(snake_case__      ,      snake_case__			) and precision > 0
   ), F"""precision should be positive integer your input : {precision}"""

   # just applying the formula of simpson for approximate integration written in
   # mentioned article in first comment of this file and above this function

   UpperCAmelCase       		=    (b - a) / N_STEPS
   UpperCAmelCase       		=    function(snake_case__			) + function(snake_case__			)

   for i in range(1      ,      snake_case__			):
      UpperCAmelCase       		=    a + h * i
      result += function(snake_case__			) * (4 if i % 2 else 2)

   result *= h / 3
   return round(snake_case__      ,      snake_case__			)


if __name__ == "__main__":
    import doctest

    doctest.testmod()










import math





def 						__SCREAMING_SNAKE_CASE  (    UpperCamelCase__			)  ->    bool:







			'''simple docstring'''

			if 1 < number < 4:
						# 2 and 3 are primes
						return True
			elif number < 2 or number % 2 == 0 or number % 3 == 0:
						# Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
						return False

			# All primes number are in format of 6k +/- 1
			for i in range(5      ,      int(math.sqrt(UpperCamelCase__			) + 1			)      ,      6			):
						if number % i == 0 or number % (i + 2) == 0:
									return False
			return True





def 						__SCREAMING_SNAKE_CASE  (    UpperCamelCase__ = 6008_5147_5143			)  ->    int:







			'''simple docstring'''

			try:
						UpperCAmelCase       		=    int(UpperCamelCase__			)
			except (TypeError, ValueError):
						raise TypeError('''Parameter n must be int or castable to int.'''			)
			if n <= 0:
						raise ValueError('''Parameter n must be greater than or equal to one.'''			)
			UpperCAmelCase       		=    0
			if is_prime(UpperCamelCase__			):
						return n
			while n % 2 == 0:
						n //= 2
			if is_prime(UpperCamelCase__			):
						return n
			for i in range(3      ,      int(math.sqrt(UpperCamelCase__			)			) + 1      ,      2			):
						if n % i == 0:
									if is_prime(n // i			):
												UpperCAmelCase       		=    n // i
												break
									elif is_prime(UpperCamelCase__			):
												UpperCAmelCase       		=    i
			return max_number


if __name__ == "__main__":
				print(F'{solution() = }')



