

from collections.abc import Callable

def    A_  (							a					,   a					,   a  ):

      """simple docstring"""



      SCREAMING_SNAKE_CASE_				:  float           =     a
      SCREAMING_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:
            SCREAMING_SNAKE_CASE_				:  float           =     start + (end - start) / 2.0
            while abs(start - mid  ) > 1_0**-7:  # until precisely equals to 10^-7
                  if function(a  ) == 0:
                        return mid
                  elif function(a  ) * function(a  ) < 0:
                        SCREAMING_SNAKE_CASE_				:  Optional[int]           =     mid
                  else:
                        SCREAMING_SNAKE_CASE_				:  Tuple           =     mid
                  SCREAMING_SNAKE_CASE_				:  Any           =     start + (end - start) / 2.0
            return mid

def    A_  (							a  ):

      """simple docstring"""



      return x**3 - 2 * x - 5


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

    import doctest

    doctest.testmod()









from ..utils import DummyObject, requires_backends
class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Optional[int]       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      List[str]       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Any       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Optional[Any]       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      int       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      List[str]       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      int       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Any       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Optional[Any]       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Dict       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Any       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Union[str, Any]       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)

class  _A		(  metaclass=__magic_name__):
  SCREAMING_SNAKE_CASE    :      Union[str, Any]       =  ['''flax''']

  def __init__(				self ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(self ,					['flax']					)

  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)



  @classmethod
  def  UpperCAmelCase    (				cls ,					*_SCREAMING_SNAKE_CASE ,					**_SCREAMING_SNAKE_CASE					):





        """simple docstring"""







        requires_backends(cls ,					['flax']					)






