

from typing import TYPE_CHECKING

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


SCREAMING_SNAKE_CASE		:Any				  =    {
    """configuration_deformable_detr""": ["""DEFORMABLE_DETR_PRETRAINED_CONFIG_ARCHIVE_MAP""", """DeformableDetrConfig"""],
}

try:
 if not is_vision_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 SCREAMING_SNAKE_CASE		:Dict				  =    ["""DeformableDetrFeatureExtractor"""]
 SCREAMING_SNAKE_CASE		:List[Any]				  =    ["""DeformableDetrImageProcessor"""]

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 SCREAMING_SNAKE_CASE		:Any				  =    [
     """DEFORMABLE_DETR_PRETRAINED_MODEL_ARCHIVE_LIST""",
     """DeformableDetrForObjectDetection""",
     """DeformableDetrModel""",
     """DeformableDetrPreTrainedModel""",
 ]


if TYPE_CHECKING:
 from .configuration_deformable_detr import DEFORMABLE_DETR_PRETRAINED_CONFIG_ARCHIVE_MAP, DeformableDetrConfig

 try:
  if not is_vision_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .feature_extraction_deformable_detr import DeformableDetrFeatureExtractor
  from .image_processing_deformable_detr import DeformableDetrImageProcessor

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_deformable_detr import (
      DEFORMABLE_DETR_PRETRAINED_MODEL_ARCHIVE_LIST,
      DeformableDetrForObjectDetection,
      DeformableDetrModel,
      DeformableDetrPreTrainedModel,
  )

else:
 import sys

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



def  lowerCAmelCase(			SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ ,	SCREAMING_SNAKE_CASE_ )->	str:



    """simple docstring"""






    if power < 0:
        return -1
    base %= mod
    UpperCamelCase_      =	1

    while power > 0:
        if power & 1:
            UpperCamelCase_      =	(result * base) % mod
        UpperCamelCase_      =	power >> 1
        UpperCamelCase_      =	(base * base) % mod

    return result




def  lowerCAmelCase(			)->	Tuple:



    """simple docstring"""






    print(modular_exponential(3 ,	2_0_0 ,	1_3 ) )


if __name__ == "__main__":
 import doctest

 doctest.testmod()

 main()
