





from __future__ import annotations

from decimal import Decimal
from math import *  # noqa: F403

from sympy import diff



def    __lowercase   (      _SCREAMING_SNAKE_CASE ,						_SCREAMING_SNAKE_CASE ,						_SCREAMING_SNAKE_CASE = 10**-10	) ->   float:


      '''simple docstring'''


      SCREAMING_SNAKE_CASE		=						a
      while True:
            SCREAMING_SNAKE_CASE		=						Decimal(_SCREAMING_SNAKE_CASE	) - (
                Decimal(eval(_SCREAMING_SNAKE_CASE	)	) / Decimal(eval(str(diff(_SCREAMING_SNAKE_CASE	)	)	)	)  # noqa: S307
            )
            # This number dictates the accuracy of the answer
            if abs(eval(_SCREAMING_SNAKE_CASE	)	) < precision:  # noqa: S307
                  return float(_SCREAMING_SNAKE_CASE	)


# Let's Execute
if __name__ == "__main__":
      # Find root of trigonometric function
      # Find value of pi
      print(F'''The root of sin(x) = 0 is {newton_raphson('sin(x)', 2)}''')
      # Find root of polynomial
      print(F'''The root of x**2 - 5*x + 2 = 0 is {newton_raphson('x**2 - 5*x + 2', 0.4)}''')
      # Find Square Root of 5
      print(F'''The root of log(x) - 1 = 0 is {newton_raphson('log(x) - 1', 2)}''')
      # Exponential Roots
      print(F'''The root of exp(x) - 1 = 0 is {newton_raphson('exp(x) - 1', 0)}''')









def    __lowercase   (      _SCREAMING_SNAKE_CASE = 10	) ->   str:


      '''simple docstring'''


      if not isinstance(_SCREAMING_SNAKE_CASE ,						_SCREAMING_SNAKE_CASE	) or n < 0:
            raise ValueError("""Invalid input"""	)
      SCREAMING_SNAKE_CASE		=						10**n
      SCREAMING_SNAKE_CASE		=						2_84_33 * (pow(2 ,						7_83_04_57 ,						_SCREAMING_SNAKE_CASE	)) + 1
      return str(number % modulus	)


if __name__ == "__main__":
      from doctest import testmod

      testmod()
      print(F'''{solution(1_0) = }''')


