






'''simple docstring'''
def 						__SCREAMING_SNAKE_CASE    (     _UpperCamelCase  ,						_UpperCamelCase = 1000							):


   """simple docstring"""




   if (not isinstance(__lowerCAmelCase  ,						__lowerCAmelCase							)) or (digit_position <= 0):
      raise ValueError("Digit position must be a positive integer"							)
   elif (not isinstance(__lowerCAmelCase  ,						__lowerCAmelCase							)) 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
   lowercase_		:			Dict							=   (
       4 * _subsum(__lowerCAmelCase  ,						1  ,						__lowerCAmelCase							)
       - 2 * _subsum(__lowerCAmelCase  ,						4  ,						__lowerCAmelCase							)
       - _subsum(__lowerCAmelCase  ,						5  ,						__lowerCAmelCase							)
       - _subsum(__lowerCAmelCase  ,						6  ,						__lowerCAmelCase							)
   )

   # return the first hex digit of the fractional part of the result
   return hex(int((sum_result % 1) * 16							)							)[2:]




def 						__SCREAMING_SNAKE_CASE    (     _UpperCamelCase  ,						_UpperCamelCase  ,						_UpperCamelCase							):


   """simple docstring"""




   lowercase_		:			Optional[Any]							=   0.0
   for sum_index in range(digit_pos_to_extract + precision							):
      lowercase_		:			Optional[Any]							=   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
         lowercase_		:			List[str]							=   pow(
             16  ,						digit_pos_to_extract - 1 - sum_index  ,						__lowerCAmelCase							)
      else:
         lowercase_		:			Dict							=   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 ..utils import DummyObject, requires_backends






class    __UpperCAmelCase						(	metaclass=__lowerCAmelCase	):
				A__      :   List[Any]  							=       ['''torch''', '''librosa''']

				def __init__(      self	, *_lowerCamelCase	, **_lowerCamelCase      ):
										requires_backends(self	, ["torch", "librosa"]      )

				@classmethod
				def 		_a	(      cls	, *_lowerCamelCase	, **_lowerCamelCase      ):
										requires_backends(cls	, ["torch", "librosa"]      )






				@classmethod
				def 		_a	(      cls	, *_lowerCamelCase	, **_lowerCamelCase      ):
										requires_backends(cls	, ["torch", "librosa"]      )






class    __UpperCAmelCase						(	metaclass=__lowerCAmelCase	):
				A__      :   List[str]  							=       ['''torch''', '''librosa''']

				def __init__(      self	, *_lowerCamelCase	, **_lowerCamelCase      ):
										requires_backends(self	, ["torch", "librosa"]      )

				@classmethod
				def 		_a	(      cls	, *_lowerCamelCase	, **_lowerCamelCase      ):
										requires_backends(cls	, ["torch", "librosa"]      )






				@classmethod
				def 		_a	(      cls	, *_lowerCamelCase	, **_lowerCamelCase      ):
										requires_backends(cls	, ["torch", "librosa"]      )


