
"""simple docstring"""
def 					a__ ( a :					int							,  a :					int							,  a :					int		):

  """simple docstring"""







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

  while power > 0:
    if power & 1:
      _snake_case  :    Optional[int]            = (result * base) % mod
    _snake_case  :    Optional[int]            = power >> 1
    _snake_case  :    Optional[Any]            = (base * base) % mod

  return result
def 					a__ ( ):

  """simple docstring"""







  print(modular_exponential(3							,  200							,  13		)		)


if __name__ == "__main__":
    import doctest

    doctest.testmod()

    main()









from typing import TYPE_CHECKING

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


a 			=							{
    'configuration_mobilevitv2': [
        'MOBILEVITV2_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'MobileViTV2Config',
        'MobileViTV2OnnxConfig',
    ],
}


try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 a 			=							[
     'MOBILEVITV2_PRETRAINED_MODEL_ARCHIVE_LIST',
     'MobileViTV2ForImageClassification',
     'MobileViTV2ForSemanticSegmentation',
     'MobileViTV2Model',
     'MobileViTV2PreTrainedModel',
 ]

if TYPE_CHECKING:
 from .configuration_mobilevitva import (
     MOBILEVITV2_PRETRAINED_CONFIG_ARCHIVE_MAP,
     MobileViTVaConfig,
     MobileViTVaOnnxConfig,
 )

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_mobilevitva import (
      MOBILEVITV2_PRETRAINED_MODEL_ARCHIVE_LIST,
      MobileViTVaForImageClassification,
      MobileViTVaForSemanticSegmentation,
      MobileViTVaModel,
      MobileViTVaPreTrainedModel,
  )

else:
 import sys

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


