
'''simple docstring'''




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
)


lowercase     :							List[Any]       						=     {
    'configuration_funnel': ['FUNNEL_PRETRAINED_CONFIG_ARCHIVE_MAP', 'FunnelConfig'],
    'convert_funnel_original_tf_checkpoint_to_pytorch': [],
    'tokenization_funnel': ['FunnelTokenizer'],
}

try:
      if not is_tokenizers_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowercase     :							Union[str, Any]       						=     ['FunnelTokenizerFast']

try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowercase     :							int       						=     [
          'FUNNEL_PRETRAINED_MODEL_ARCHIVE_LIST',
          'FunnelBaseModel',
          'FunnelForMaskedLM',
          'FunnelForMultipleChoice',
          'FunnelForPreTraining',
          'FunnelForQuestionAnswering',
          'FunnelForSequenceClassification',
          'FunnelForTokenClassification',
          'FunnelModel',
          'FunnelPreTrainedModel',
          'load_tf_weights_in_funnel',
      ]

try:
      if not is_tf_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      lowercase     :							Dict       						=     [
          'TF_FUNNEL_PRETRAINED_MODEL_ARCHIVE_LIST',
          'TFFunnelBaseModel',
          'TFFunnelForMaskedLM',
          'TFFunnelForMultipleChoice',
          'TFFunnelForPreTraining',
          'TFFunnelForQuestionAnswering',
          'TFFunnelForSequenceClassification',
          'TFFunnelForTokenClassification',
          'TFFunnelModel',
          'TFFunnelPreTrainedModel',
      ]


if TYPE_CHECKING:
      from .configuration_funnel import FUNNEL_PRETRAINED_CONFIG_ARCHIVE_MAP, FunnelConfig
      from .tokenization_funnel import FunnelTokenizer

      try:
            if not is_tokenizers_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .tokenization_funnel_fast import FunnelTokenizerFast

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_funnel import (
                FUNNEL_PRETRAINED_MODEL_ARCHIVE_LIST,
                FunnelBaseModel,
                FunnelForMaskedLM,
                FunnelForMultipleChoice,
                FunnelForPreTraining,
                FunnelForQuestionAnswering,
                FunnelForSequenceClassification,
                FunnelForTokenClassification,
                FunnelModel,
                FunnelPreTrainedModel,
                load_tf_weights_in_funnel,
            )

      try:
            if not is_tf_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_tf_funnel import (
                TF_FUNNEL_PRETRAINED_MODEL_ARCHIVE_LIST,
                TFFunnelBaseModel,
                TFFunnelForMaskedLM,
                TFFunnelForMultipleChoice,
                TFFunnelForPreTraining,
                TFFunnelForQuestionAnswering,
                TFFunnelForSequenceClassification,
                TFFunnelForTokenClassification,
                TFFunnelModel,
                TFFunnelPreTrainedModel,
            )

else:
      import sys

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






'''simple docstring'''




lowercase     :							dict[str, float]       						=     {
    "joule": 1.0,
    "kilojoule": 10_00,
    "megajoule": 1_00_00_00,
    "gigajoule": 10_00_00_00_00,
    "wattsecond": 1.0,
    "watthour": 36_00,
    "kilowatthour": 3_60_00_00,
    "newtonmeter": 1.0,
    "calorie_nutr": 41_86.8,
    "kilocalorie_nutr": 4_18_68_00.00,
    "electronvolt": 1.6_02_17_66_34e-19,
    "britishthermalunit_it": 10_55.0_55_85,
    "footpound": 1.35_58_18,
}







def 						lowerCAmelCase_							(  snake_case__						,							snake_case__						,							snake_case__		):




    '''simple docstring'''



    if to_type not in ENERGY_CONVERSION or from_type not in ENERGY_CONVERSION:
        A			:  int   =		(
            F'Incorrect \'from_type\' or \'to_type\' value: {from_type!r}, {to_type!r}\n'
            F'Valid values are: {", ".join(snake_case__		)}'
        )
        raise ValueError(snake_case__		)
    return value * ENERGY_CONVERSION[from_type] / ENERGY_CONVERSION[to_type]


if __name__ == "__main__":
      import doctest

      doctest.testmod()




