



"""simple docstring"""
from collections.abc import Callable





def      __magic_name__				(							lowercase							,			lowercase							,			lowercase ):
   SCREAMING_SNAKE_CASE_: float     			=a
   SCREAMING_SNAKE_CASE_: float     			=b
   if function(lowercase ) == 0:  # one of the a or b is a root for the function
      return a
   elif function(lowercase ) == 0:
      return b
   elif (
       function(lowercase ) * function(lowercase ) > 0
   ):  # if none of these are root and they are both positive or negative,
      # then this algorithm can't find the root
      raise ValueError("""could not find root in given interval.""" )
   else:
      SCREAMING_SNAKE_CASE_: float     			=start + (end - start) / 2.0
      while abs(start - mid ) > 10**-7:  # until precisely equals to 10^-7
         if function(lowercase ) == 0:
            return mid
         elif function(lowercase ) * function(lowercase ) < 0:
            SCREAMING_SNAKE_CASE_: Dict     			=mid
         else:
            SCREAMING_SNAKE_CASE_: Tuple     			=mid
         SCREAMING_SNAKE_CASE_: int     			=start + (end - start) / 2.0
      return mid





def      __magic_name__				(							lowercase ):
   return x**3 - 2 * x - 5


if __name__ == "__main__":
   print(bisection(f, 1, 1_0_0_0))

   import doctest

   doctest.testmod()








"""simple docstring"""
def      __magic_name__				(							lowercase = 200_0000 ):
   SCREAMING_SNAKE_CASE_: List[Any]     			=[0 for i in range(n + 1 )]
   SCREAMING_SNAKE_CASE_: Union[str, Any]     			=1
   SCREAMING_SNAKE_CASE_: Optional[Any]     			=1

   for i in range(2							,			int(n**0.5 ) + 1 ):
      if primality_list[i] == 0:
         for j in range(i * i							,			n + 1							,			lowercase ):
            SCREAMING_SNAKE_CASE_: Optional[int]     			=1
   SCREAMING_SNAKE_CASE_: Dict     			=0
   for i in range(lowercase ):
      if primality_list[i] == 0:
         sum_of_primes += i
   return sum_of_primes


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



