


from typing import TYPE_CHECKING

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


UpperCAmelCase      :						Optional[int]    =		{
    "configuration_esm": ["ESM_PRETRAINED_CONFIG_ARCHIVE_MAP", "EsmConfig"],
    "tokenization_esm": ["EsmTokenizer"],
}

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		UpperCAmelCase      :						Tuple    =		[
		    "ESM_PRETRAINED_MODEL_ARCHIVE_LIST",
		    "EsmForMaskedLM",
		    "EsmForSequenceClassification",
		    "EsmForTokenClassification",
		    "EsmModel",
		    "EsmPreTrainedModel",
		]
		UpperCAmelCase      :						Any    =		["EsmForProteinFolding", "EsmFoldPreTrainedModel"]

try:
		if not is_tf_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		UpperCAmelCase      :						List[str]    =		[
		    "TF_ESM_PRETRAINED_MODEL_ARCHIVE_LIST",
		    "TFEsmForMaskedLM",
		    "TFEsmForSequenceClassification",
		    "TFEsmForTokenClassification",
		    "TFEsmModel",
		    "TFEsmPreTrainedModel",
		]

if TYPE_CHECKING:
		from .configuration_esm import ESM_PRETRAINED_CONFIG_ARCHIVE_MAP, EsmConfig
		from .tokenization_esm import EsmTokenizer

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_esm import (
				    ESM_PRETRAINED_MODEL_ARCHIVE_LIST,
				    EsmForMaskedLM,
				    EsmForSequenceClassification,
				    EsmForTokenClassification,
				    EsmModel,
				    EsmPreTrainedModel,
				)
				from .modeling_esmfold import EsmFoldPreTrainedModel, EsmForProteinFolding

		try:
				if not is_tf_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_tf_esm import (
				    TF_ESM_PRETRAINED_MODEL_ARCHIVE_LIST,
				    TFEsmForMaskedLM,
				    TFEsmForSequenceClassification,
				    TFEsmForTokenClassification,
				    TFEsmModel,
				    TFEsmPreTrainedModel,
				)


else:
		import sys

		UpperCAmelCase      :						Dict    =		_LazyModule(__name__, globals()["__file__"], _import_structure)





def   __lowerCamelCase	(       lowerCamelCase__		:	int = 100     ,       lowerCamelCase__		:	int = 100			):





			'''simple docstring'''




			return max(
			    sum(int(lowerCamelCase__			) for x in str(base**power			)			)
			    for base in range(lowerCamelCase__			)
			    for power in range(lowerCamelCase__			)			)


# Tests
if __name__ == "__main__":
		import doctest

		doctest.testmod()

