



def 					lowerCAmelCase__  (							_SCREAMING_SNAKE_CASE    :     List[Any]			,       _SCREAMING_SNAKE_CASE    :     int      ):
				"""simple docstring"""







				__a					       =						1
				while b > 0:
								if b & 1:
												res *= a

								a *= a
								b >>= 1

				return res

def 					lowerCAmelCase__  (							_SCREAMING_SNAKE_CASE    :     Tuple			,       _SCREAMING_SNAKE_CASE    :     List[str]			,       _SCREAMING_SNAKE_CASE    :     Optional[int]      ):
				"""simple docstring"""







				__a					       =						1
				while b > 0:
								if b & 1:
												__a					       =						((res % c) * (a % c)) % c

								a *= a
								b >>= 1

				return res





from typing import TYPE_CHECKING

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


lowerCamelCase__     =	{"""configuration_hubert""": ["""HUBERT_PRETRAINED_CONFIG_ARCHIVE_MAP""", """HubertConfig"""]}

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCamelCase__     =	[
						    """HUBERT_PRETRAINED_MODEL_ARCHIVE_LIST""",
						    """HubertForCTC""",
						    """HubertForSequenceClassification""",
						    """HubertModel""",
						    """HubertPreTrainedModel""",
						]


try:
						if not is_tf_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCamelCase__     =	[
						    """TF_HUBERT_PRETRAINED_MODEL_ARCHIVE_LIST""",
						    """TFHubertForCTC""",
						    """TFHubertModel""",
						    """TFHubertPreTrainedModel""",
						]

if TYPE_CHECKING:
						from .configuration_hubert import HUBERT_PRETRAINED_CONFIG_ARCHIVE_MAP, HubertConfig

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_hubert import (
												    HUBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
												    HubertForCTC,
												    HubertForSequenceClassification,
												    HubertModel,
												    HubertPreTrainedModel,
												)

						try:
												if not is_tf_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_tf_hubert import (
												    TF_HUBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
												    TFHubertForCTC,
												    TFHubertModel,
												    TFHubertPreTrainedModel,
												)


else:
						import sys

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