






from __future__ import annotations

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

from sympy import diff





def 					snake_case	(  lowerCamelCase					,	lowerCamelCase					,	lowerCamelCase = 10**-10       ):




	'''simple docstring'''







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


# 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 		snake_case__	(		lowercase					):
   lowerCAmelCase_:							Union[str, Any]       =	[1]

   lowerCAmelCase_  ,	lowerCAmelCase_  ,	lowerCAmelCase_:							int       =	0, 0, 0
   lowerCAmelCase_:							Union[str, Any]       =	ugly_nums[ia] * 2
   lowerCAmelCase_:							str       =	ugly_nums[ia] * 3
   lowerCAmelCase_:							Dict       =	ugly_nums[ia] * 5

   for _ in range(1							,				lowercase					):
      lowerCAmelCase_:							Any       =	min(lowercase							,				lowercase							,				lowercase					)
      ugly_nums.append(lowercase					)
      if next_num == next_a:
         ia += 1
         lowerCAmelCase_:							str       =	ugly_nums[ia] * 2
      if next_num == next_a:
         ia += 1
         lowerCAmelCase_:							Optional[int]       =	ugly_nums[ia] * 3
      if next_num == next_a:
         ia += 1
         lowerCAmelCase_:							int       =	ugly_nums[ia] * 5
   return ugly_nums[-1]


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

 testmod(verbose=True)
 print(f'''{ugly_numbers(2_0_0) = }''')