






"""simple docstring"""





from typing import TYPE_CHECKING

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


_SCREAMING_SNAKE_CASE   :							str          =		{
    '''configuration_ctrl''': ['''CTRL_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''CTRLConfig'''],
    '''tokenization_ctrl''': ['''CTRLTokenizer'''],
}

try:
  if not is_torch_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  _SCREAMING_SNAKE_CASE   :							Tuple          =		[
      '''CTRL_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''CTRLForSequenceClassification''',
      '''CTRLLMHeadModel''',
      '''CTRLModel''',
      '''CTRLPreTrainedModel''',
  ]

try:
  if not is_tf_available():
    raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
  pass
else:
  _SCREAMING_SNAKE_CASE   :							Any          =		[
      '''TF_CTRL_PRETRAINED_MODEL_ARCHIVE_LIST''',
      '''TFCTRLForSequenceClassification''',
      '''TFCTRLLMHeadModel''',
      '''TFCTRLModel''',
      '''TFCTRLPreTrainedModel''',
  ]


if TYPE_CHECKING:
  from .configuration_ctrl import CTRL_PRETRAINED_CONFIG_ARCHIVE_MAP, CTRLConfig
  from .tokenization_ctrl import CTRLTokenizer

  try:
    if not is_torch_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_ctrl import (
        CTRL_PRETRAINED_MODEL_ARCHIVE_LIST,
        CTRLForSequenceClassification,
        CTRLLMHeadModel,
        CTRLModel,
        CTRLPreTrainedModel,
    )

  try:
    if not is_tf_available():
      raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
    pass
  else:
    from .modeling_tf_ctrl import (
        TF_CTRL_PRETRAINED_MODEL_ARCHIVE_LIST,
        TFCTRLForSequenceClassification,
        TFCTRLLMHeadModel,
        TFCTRLModel,
        TFCTRLPreTrainedModel,
    )

else:
  import sys

  _SCREAMING_SNAKE_CASE   :							Optional[int]          =		_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)












"""simple docstring"""





_SCREAMING_SNAKE_CASE   :							Optional[int]          =		8.314_4598







def 	lowerCamelCase__			(				_lowerCamelCase			:						float						,							_lowerCamelCase			:						float					) ->							float:
  if temperature < 0:
    raise Exception('Temperature cannot be less than 0 K'					)
  if molar_mass <= 0:
    raise Exception('Molar mass cannot be less than or equal to 0 kg/mol'					)
  else:
    return (3 * UNIVERSAL_GAS_CONSTANT * temperature / molar_mass) ** 0.5


if __name__ == "__main__":
  import doctest

  # run doctest
  doctest.testmod()

  # example
  _SCREAMING_SNAKE_CASE   :							List[Any]          =		300
  _SCREAMING_SNAKE_CASE   :							Dict          =		28
  _SCREAMING_SNAKE_CASE   :							List[str]          =		rms_speed_of_molecule(temperature, molar_mass)
  print(F'''Vrms of Nitrogen gas at 300 K is {vrms} m/s''')




