



'''simple docstring'''







def 			_lowerCAmelCase(      UpperCAmelCase_      :	Any					, UpperCAmelCase_      :	List[str] = 1000						) ->							Optional[Any]:






							if (not isinstance(a__					, a__						)) or (digit_position <= 0):
														raise ValueError("""Digit position must be a positive integer"""						)
							elif (not isinstance(a__					, a__						)) or (precision < 0):
														raise ValueError("""Precision must be a nonnegative integer"""						)

							# compute an approximation of (16 ** (n - 1)) * pi whose fractional part is mostly
							# accurate
							lowerCAmelCase__  =   (
							    4 * _subsum(a__					, 1					, a__						)
							    - 2 * _subsum(a__					, 4					, a__						)
							    - _subsum(a__					, 5					, a__						)
							    - _subsum(a__					, 6					, a__						)
							)

							# return the first hex digit of the fractional part of the result
							return hex(int((sum_result % 1) * 16						)						)[2:]
def 			_lowerCAmelCase(      UpperCAmelCase_      :	Dict					, UpperCAmelCase_      :	Dict					, UpperCAmelCase_      :	Optional[int]						) ->							Optional[Any]:
							lowerCAmelCase__  =   0.0
							for sum_index in range(digit_pos_to_extract + precision						):
														lowerCAmelCase__  =   8 * sum_index + denominator_addend
														if sum_index < digit_pos_to_extract:
																					# if the exponential term is an integer and we mod it by the denominator
																					# before dividing, only the integer part of the sum will change;
																					# the fractional part will not
																					lowerCAmelCase__  =   pow(
																					    16					, digit_pos_to_extract - 1 - sum_index					, a__						)
														else:
																					lowerCAmelCase__  =   pow(16					, digit_pos_to_extract - 1 - sum_index						)
														total += exponential_term / denominator
							return total


if __name__ == "__main__":
		import doctest

		doctest.testmod()






'''simple docstring'''

from .prime_check import Test

Test()





