



def 	UpperCamelCase			(     snake_case__ :					str ,  snake_case__ :					str			)			->  Tuple:
   UpperCamelCase					:						Optional[Any]					=			1
   while b > 0:
      if b & 1:
         res *= a

      a *= a
      b >>= 1

   return res
def 	UpperCamelCase			(     snake_case__ :					int ,  snake_case__ :					List[Any] ,  snake_case__ :					Optional[int]			)			->  Any:
   UpperCamelCase					:						Union[str, Any]					=			1
   while b > 0:
      if b & 1:
         UpperCamelCase					:						Optional[Any]					=			((res % c) * (a % c)) % c

      a *= a
      b >>= 1

   return res








from typing import TYPE_CHECKING

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


__UpperCAmelCase      = {
    '''configuration_deta''': ['''DETA_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''DetaConfig'''],
}

try:
    if not is_vision_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    __UpperCAmelCase      = ['''DetaImageProcessor''']

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    __UpperCAmelCase      = [
        '''DETA_PRETRAINED_MODEL_ARCHIVE_LIST''',
        '''DetaForObjectDetection''',
        '''DetaModel''',
        '''DetaPreTrainedModel''',
    ]


if TYPE_CHECKING:
    from .configuration_deta import DETA_PRETRAINED_CONFIG_ARCHIVE_MAP, DetaConfig

    try:
        if not is_vision_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .image_processing_deta import DetaImageProcessor

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_deta import (
            DETA_PRETRAINED_MODEL_ARCHIVE_LIST,
            DetaForObjectDetection,
            DetaModel,
            DetaPreTrainedModel,
        )

else:
    import sys

    __UpperCAmelCase      = _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)



