






'''simple docstring'''







from typing import TYPE_CHECKING

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


__lowerCAmelCase					   =       {"configuration_levit": ["LEVIT_PRETRAINED_CONFIG_ARCHIVE_MAP", "LevitConfig", "LevitOnnxConfig"]}

try:
  if not is_vision_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase					   =       ["LevitFeatureExtractor"]
  __lowerCAmelCase					   =       ["LevitImageProcessor"]

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  __lowerCAmelCase					   =       [
      "LEVIT_PRETRAINED_MODEL_ARCHIVE_LIST",
      "LevitForImageClassification",
      "LevitForImageClassificationWithTeacher",
      "LevitModel",
      "LevitPreTrainedModel",
  ]


if TYPE_CHECKING:
  from .configuration_levit import LEVIT_PRETRAINED_CONFIG_ARCHIVE_MAP, LevitConfig, LevitOnnxConfig

  try:
    if not is_vision_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .feature_extraction_levit import LevitFeatureExtractor
    from .image_processing_levit import LevitImageProcessor

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_levit import (
        LEVIT_PRETRAINED_MODEL_ARCHIVE_LIST,
        LevitForImageClassification,
        LevitForImageClassificationWithTeacher,
        LevitModel,
        LevitPreTrainedModel,
    )
else:
  import sys

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












'''simple docstring'''







def 			__UpperCamelCase				(			lowercase_					:     int      ):
       """simple docstring"""




       if not isinstance(lowercase_      ,					lowercase_      ):
              raise ValueError('double_factorial() only accepts integral values'      )
       if num < 0:
              raise ValueError('double_factorial() not defined for negative values'      )
       a_	    = 1
       for i in range(lowercase_      ,					0      ,					-2      ):
              value *= i
       return value


if __name__ == "__main__":
  import doctest

  doctest.testmod()




