






'''simple docstring'''






from collections.abc import Callable




def        _SCREAMING_SNAKE_CASE  (				A  :       Callable[[float], float]  ,		A  :       float  ,		A  :       float  )    -> float:







   """simple docstring"""
   __snake_case				:      float     							= a
   __snake_case				:      float     							= b
   if function(A  ) == 0:  # one of the a or b is a root for the function
      return a
   elif function(A  ) == 0:
      return b
   elif (
       function(A  ) * function(A  ) > 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:
      __snake_case				:      float     							= start + (end - start) / 2.0
      while abs(start - mid  ) > 10**-7:  # until precisely equals to 10^-7
         if function(A  ) == 0:
            return mid
         elif function(A  ) * function(A  ) < 0:
            __snake_case				:      Optional[int]     							= mid
         else:
            __snake_case				:      Any     							= mid
         __snake_case				:      Optional[Any]     							= start + (end - start) / 2.0
      return mid




def        _SCREAMING_SNAKE_CASE  (				A  :       float  )    -> float:







   """simple docstring"""
   return x**3 - 2 * x - 5


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

      import doctest

      doctest.testmod()







'''simple docstring'''






__A    	=   {str(digit): digit**5 for digit in range(1_0)}




def        _SCREAMING_SNAKE_CASE  (				A  :       int  )    -> int:







   """simple docstring"""
   return sum(DIGITS_FIFTH_POWER[digit] for digit in str(A  )  )




def        _SCREAMING_SNAKE_CASE  (				)    -> int:







   """simple docstring"""
   return sum(
       number
       for number in range(10_00  ,		1_00_00_00  )
       if number == digits_fifth_powers_sum(A  )  )


if __name__ == "__main__":
      print(solution())