

from typing import TYPE_CHECKING

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


lowerCamelCase__				:  Dict													=  {
    '''configuration_esm''': ['''ESM_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''EsmConfig'''],
    '''tokenization_esm''': ['''EsmTokenizer'''],
}

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCamelCase__				:  Tuple													=  [
						    '''ESM_PRETRAINED_MODEL_ARCHIVE_LIST''',
						    '''EsmForMaskedLM''',
						    '''EsmForSequenceClassification''',
						    '''EsmForTokenClassification''',
						    '''EsmModel''',
						    '''EsmPreTrainedModel''',
						]
						lowerCamelCase__				:  List[str]													=  ['''EsmForProteinFolding''', '''EsmFoldPreTrainedModel''']

try:
						if not is_tf_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCamelCase__				:  Any													=  [
						    '''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

						lowerCamelCase__				:  Any													=  _LazyModule(__name__, globals()['''__file__'''], _import_structure)








"""simple docstring"""






def       UpperCamelCase					(			_lowerCAmelCase     :						float,  _lowerCAmelCase     :						float )				->			float:
	_UpperCAmelCase    :							List[Any]									=					float()
	try:
		_UpperCAmelCase    :							Optional[Any]									=					mass * acceleration
	except Exception:
		return -0.0
	return force


if __name__ == "__main__":
						import doctest

						# run doctest
						doctest.testmod()

						# demo
						lowerCamelCase__				:  Any													=  12.5
						lowerCamelCase__				:  Union[str, Any]													=  10
						lowerCamelCase__				:  Optional[Any]													=  newtons_second_law_of_motion(mass, acceleration)
						print('''The force is ''', force, '''N''')





