





from typing import TYPE_CHECKING

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


__lowerCAmelCase							:     Tuple		     ={"configuration_glpn": ["GLPN_PRETRAINED_CONFIG_ARCHIVE_MAP", "GLPNConfig"]}

try:
  if not is_vision_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase							:     Any		     =["GLPNFeatureExtractor"]
  __lowerCAmelCase							:     Union[str, Any]		     =["GLPNImageProcessor"]

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase							:     List[Any]		     =[
      "GLPN_PRETRAINED_MODEL_ARCHIVE_LIST",
      "GLPNForDepthEstimation",
      "GLPNLayer",
      "GLPNModel",
      "GLPNPreTrainedModel",
  ]


if TYPE_CHECKING:
  from .configuration_glpn import GLPN_PRETRAINED_CONFIG_ARCHIVE_MAP, GLPNConfig

  try:
    if not is_vision_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .feature_extraction_glpn import GLPNFeatureExtractor
    from .image_processing_glpn import GLPNImageProcessor

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_glpn import (
        GLPN_PRETRAINED_MODEL_ARCHIVE_LIST,
        GLPNForDepthEstimation,
        GLPNLayer,
        GLPNModel,
        GLPNPreTrainedModel,
    )


else:
  import sys

  __lowerCAmelCase							:     str		     =_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)










'''simple docstring'''

def 						UpperCamelCase    (							_lowerCamelCase : int	):

    if not isinstance(_lowerCamelCase						,	_lowerCamelCase	):
        A__    =      F"Input value of [number={number}] must be an integer"
        raise TypeError(_lowerCamelCase	)

    if number < 1:
        A__    =      F"Input value of [number={number}] must be > 0"
        raise ValueError(_lowerCamelCase	)

    A__    =      1

    for i in range(1						,	_lowerCamelCase	):
        current_number *= 4 * i - 2
        current_number //= i + 1

    return current_number


if __name__ == "__main__":
  import doctest

  doctest.testmod()



