
'''simple docstring'''





from typing import TYPE_CHECKING

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


A           =   {
    "configuration_tvlt": ["TVLT_PRETRAINED_CONFIG_ARCHIVE_MAP", "TvltConfig"],
    "feature_extraction_tvlt": ["TvltFeatureExtractor"],
    "processing_tvlt": ["TvltProcessor"],
}

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     A           =   [
         "TVLT_PRETRAINED_MODEL_ARCHIVE_LIST",
         "TvltModel",
         "TvltForPreTraining",
         "TvltForAudioVisualClassification",
         "TvltPreTrainedModel",
     ]

try:
     if not is_vision_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     A           =   ["TvltImageProcessor"]


if TYPE_CHECKING:
     from .configuration_tvlt import TVLT_PRETRAINED_CONFIG_ARCHIVE_MAP, TvltConfig
     from .processing_tvlt import TvltProcessor
     from .feature_extraction_tvlt import TvltFeatureExtractor

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_tvlt import (
              TVLT_PRETRAINED_MODEL_ARCHIVE_LIST,
              TvltForAudioVisualClassification,
              TvltForPreTraining,
              TvltModel,
              TvltPreTrainedModel,
          )

     try:
          if not is_vision_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .image_processing_tvlt import TvltImageProcessor


else:
     import sys

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



'''simple docstring'''





def   snake_case_       (							_a     :							List[str] ,					_a     :							List[str]			):
      snake_case_						       =							1
      while b > 0:
            if b & 1:
                  res *= a

            a *= a
            b >>= 1

      return res
def   snake_case_       (							_a     :							Union[str, Any] ,					_a     :							Tuple ,					_a     :							Optional[Any]			):
      snake_case_						       =							1
      while b > 0:
            if b & 1:
                  snake_case_						       =							((res % c) * (a % c)) % c

            a *= a
            b >>= 1

      return res

