code: 
  '''simple docstring'''
  from typing import TYPE_CHECKING
  
  from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available
  
  
  lowercase__						=			{
      "configuration_esm": ["ESM_PRETRAINED_CONFIG_ARCHIVE_MAP", "EsmConfig"],
      "tokenization_esm": ["EsmTokenizer"],
  }
  
  try:
  						if not is_torch_available():
  												raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
  						pass
  else:
  						lowercase__						=			[
  						    "ESM_PRETRAINED_MODEL_ARCHIVE_LIST",
  						    "EsmForMaskedLM",
  						    "EsmForSequenceClassification",
  						    "EsmForTokenClassification",
  						    "EsmModel",
  						    "EsmPreTrainedModel",
  						]
  						lowercase__						=			["EsmForProteinFolding", "EsmFoldPreTrainedModel"]
  
  try:
  						if not is_tf_available():
  												raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
  						pass
  else:
  						lowercase__						=			[
  						    "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
  
  						lowercase__						=			_LazyModule(__name__, globals()["__file__"], _import_structure)
  
  
  
style_context: 
  '''simple docstring'''
  def       _UpperCamelCase	(					SCREAMING_SNAKE_CASE__   ,					SCREAMING_SNAKE_CASE__ )     ->       int:
  
  
  		'''simple docstring'''
  
  
  		snake_case     :					Optional[Any]     =	0
  		for ele in arr:
  				total_sum += product_sum(SCREAMING_SNAKE_CASE__   ,					depth + 1 ) if isinstance(SCREAMING_SNAKE_CASE__   ,					SCREAMING_SNAKE_CASE__ ) else ele
  		return total_sum * depth
  
  
  
  
  def       _UpperCamelCase	(					SCREAMING_SNAKE_CASE__ )     ->       int:
  
  
  		'''simple docstring'''
  
  
  		return product_sum(SCREAMING_SNAKE_CASE__   ,					1 )
  
  
  if __name__ == "__main__":
  						import doctest
  
  						doctest.testmod()
  
  
  