"""simple docstring"""







from math import pow, sqrt
def   __UpperCAmelCase    (   *UpperCAmelCase_   :    Dict  )							->      Optional[int]:

	'''simple docstring'''





	__snake_case      :							Dict						=			len(A__  ) > 0 and all(value > 0.0 for value in values  )
	return result
def   __UpperCAmelCase    (   UpperCAmelCase_   :    Optional[Any]      ,							UpperCAmelCase_   :    Tuple  )							->      Any:

	'''simple docstring'''





	return (
	    round(sqrt(molar_mass_a / molar_mass_a  )      ,							6  )
	    if validate(A__      ,							A__  )
	    else ValueError('Input Error: Molar mass values must greater than 0.'  )
	)
def   __UpperCAmelCase    (   UpperCAmelCase_   :    List[Any]      ,							UpperCAmelCase_   :    List[str]      ,							UpperCAmelCase_   :    Any  )							->      int:

	'''simple docstring'''





	return (
	    round(effusion_rate * sqrt(molar_mass_a / molar_mass_a  )      ,							6  )
	    if validate(A__      ,							A__      ,							A__  )
	    else ValueError(
	        'Input Error: Molar mass and effusion rate values must greater than 0.'  )
	)
def   __UpperCAmelCase    (   UpperCAmelCase_   :    Optional[int]      ,							UpperCAmelCase_   :    Optional[int]      ,							UpperCAmelCase_   :    str  )							->      Tuple:

	'''simple docstring'''





	return (
	    round(effusion_rate / sqrt(molar_mass_a / molar_mass_a  )      ,							6  )
	    if validate(A__      ,							A__      ,							A__  )
	    else ValueError(
	        'Input Error: Molar mass and effusion rate values must greater than 0.'  )
	)
def   __UpperCAmelCase    (   UpperCAmelCase_   :    List[Any]      ,							UpperCAmelCase_   :    Dict      ,							UpperCAmelCase_   :    Any  )							->      Tuple:

	'''simple docstring'''





	return (
	    round(molar_mass / pow(effusion_rate_a / effusion_rate_a      ,							2  )      ,							6  )
	    if validate(A__      ,							A__      ,							A__  )
	    else ValueError(
	        'Input Error: Molar mass and effusion rate values must greater than 0.'  )
	)

def   __UpperCAmelCase    (   UpperCAmelCase_   :    List[Any]      ,							UpperCAmelCase_   :    Optional[int]      ,							UpperCAmelCase_   :    Any  )							->      Union[str, Any]:

	'''simple docstring'''





	return (
	    round(pow(effusion_rate_a / effusion_rate_a      ,							2  ) / molar_mass      ,							6  )
	    if validate(A__      ,							A__      ,							A__  )
	    else ValueError(
	        'Input Error: Molar mass and effusion rate values must greater than 0.'  )
	)

"""simple docstring"""







from decimal import Decimal, getcontext
from math import ceil, factorial
def   __UpperCAmelCase    (   UpperCAmelCase_   :    int  )							->      str:

	'''simple docstring'''





	if not isinstance(UpperCAmelCase_      ,							UpperCAmelCase_  ):
		raise TypeError('Undefined for non-integers'  )
	elif precision < 1:
		raise ValueError('Undefined for non-natural numbers'  )

	__snake_case      :							Any						=			precision
	__snake_case      :							Optional[int]						=			ceil(precision / 14  )
	__snake_case      :							List[Any]						=			42_68_80 * Decimal(1_00_05  ).sqrt()
	__snake_case      :							Optional[Any]						=			1
	__snake_case      :							Union[str, Any]						=			13_59_14_09
	__snake_case      :							int						=			Decimal(UpperCAmelCase_  )
	for k in range(1      ,							UpperCAmelCase_  ):
		__snake_case      :							Union[str, Any]						=			factorial(6 * k  ) // (factorial(3 * k  ) * factorial(UpperCAmelCase_  ) ** 3)
		linear_term += 5_45_14_01_34
		exponential_term *= -26_25_37_41_26_40_76_80_00
		partial_sum += Decimal(multinomial_term * linear_term  ) / exponential_term
	return str(constant_term / partial_sum  )[:-1]


if __name__ == "__main__":
	_a					:					List[Any]=			50
	print(f'''The first {n} digits of pi is: {pi(n)}''')





