
from decimal import Decimal, getcontext
from math import ceil, factorial


def 							SCREAMING_SNAKE_CASE_      (			UpperCamelCase__		):

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

      UpperCamelCase__    :   Dict					=				precision
      UpperCamelCase__    :   Tuple					=				ceil(precision / 1_4		)
      UpperCamelCase__    :   Union[str, Any]					=				4_2_6_8_8_0 * Decimal(1_0_0_0_5		).sqrt()
      UpperCamelCase__    :   Union[str, Any]					=				1
      UpperCamelCase__    :   List[str]					=				1_3_5_9_1_4_0_9
      UpperCamelCase__    :   Any					=				Decimal(UpperCamelCase__		)
      for k in range(1 ,		UpperCamelCase__		):
            UpperCamelCase__    :   str					=				factorial(6 * k		) // (factorial(3 * k		) * factorial(UpperCamelCase__		) ** 3)
            linear_term += 5_4_5_1_4_0_1_3_4
            exponential_term *= -2_6_2_5_3_7_4_1_2_6_4_0_7_6_8_0_0_0
            partial_sum += Decimal(multinomial_term * linear_term		) / exponential_term
      return str(constant_term / partial_sum		)[:-1]


if __name__ == "__main__":
    lowerCamelCase      =5_0
    print(F'''The first {n} digits of pi is: {pi(n)}''')




from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


lowerCamelCase      ={"configuration_swin": ["SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP", "SwinConfig", "SwinOnnxConfig"]}


try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    lowerCamelCase      =[
        "SWIN_PRETRAINED_MODEL_ARCHIVE_LIST",
        "SwinForImageClassification",
        "SwinForMaskedImageModeling",
        "SwinModel",
        "SwinPreTrainedModel",
        "SwinBackbone",
    ]

try:
    if not is_tf_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    lowerCamelCase      =[
        "TF_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST",
        "TFSwinForImageClassification",
        "TFSwinForMaskedImageModeling",
        "TFSwinModel",
        "TFSwinPreTrainedModel",
    ]

if TYPE_CHECKING:
    from .configuration_swin import SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP, SwinConfig, SwinOnnxConfig

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_swin import (
            SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
            SwinBackbone,
            SwinForImageClassification,
            SwinForMaskedImageModeling,
            SwinModel,
            SwinPreTrainedModel,
        )

    try:
        if not is_tf_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_tf_swin import (
            TF_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
            TFSwinForImageClassification,
            TFSwinForMaskedImageModeling,
            TFSwinModel,
            TFSwinPreTrainedModel,
        )

else:
    import sys

    lowerCamelCase      =_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)


