code: 
  
  
  '''simple docstring'''
  
  
  
  import math
  from timeit import timeit
  
  
  
  def     UpperCAmelCase__      (			UpperCAmelCase_					:       int							)  ->	int:
       __lowerCamelCase     :			int              =	0
       __lowerCamelCase     :			List[str]              =	abs(UpperCAmelCase_							)
       while True:
            __lowerCamelCase     :			List[Any]              =	n // 10
            digits += 1
            if n == 0:
                 break
       return digits
  
  
  
  def     UpperCAmelCase__      (			UpperCAmelCase_					:       int							)  ->	int:
       return 1 if n == 0 else math.floor(math.log(abs(UpperCAmelCase_							)   ,					10							) + 1							)
  
  
  
  def     UpperCAmelCase__      (			UpperCAmelCase_					:       int							)  ->	int:
       return len(str(abs(UpperCAmelCase_							)							)							)
  
  
  
  def     UpperCAmelCase__      (			)  ->	None:
       from collections.abc import Callable
  
       def benchmark_a_function(UpperCAmelCase_					:       Callable   ,					UpperCAmelCase_					:       int							) -> None:
            __lowerCamelCase     :			List[str]              =	F'{func.__name__}({value})'
            __lowerCamelCase     :			Tuple              =	timeit(F'__main__.{call}'   ,					setup='import __main__'							)
            print(F'{call}: {func(UpperCAmelCase_							)} -- {timing} seconds'							)
  
       for value in (26_21_44, 11_25_89_99_06_84_26_24, 1_26_76_50_60_02_28_22_94_01_49_67_03_20_53_76):
            for func in (num_digits, num_digits_fast, num_digits_faster):
                 benchmark_a_function(UpperCAmelCase_   ,					UpperCAmelCase_							)
            print()
  
  
  if __name__ == "__main__":
        import doctest
  
        doctest.testmod()
        benchmark()
  
  
  
  
  
  
  
style_context: 
  
  
  '''simple docstring'''
  
  
  
  from typing import TYPE_CHECKING
  
  from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available
  
  
  A__	:      List[str]				=						{
      """configuration_flaubert""": ["""FLAUBERT_PRETRAINED_CONFIG_ARCHIVE_MAP""", """FlaubertConfig""", """FlaubertOnnxConfig"""],
      """tokenization_flaubert""": ["""FlaubertTokenizer"""],
  }
  
  try:
        if not is_torch_available():
              raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
        pass
  else:
        A__	:      int				=						[
            """FLAUBERT_PRETRAINED_MODEL_ARCHIVE_LIST""",
            """FlaubertForMultipleChoice""",
            """FlaubertForQuestionAnswering""",
            """FlaubertForQuestionAnsweringSimple""",
            """FlaubertForSequenceClassification""",
            """FlaubertForTokenClassification""",
            """FlaubertModel""",
            """FlaubertWithLMHeadModel""",
            """FlaubertPreTrainedModel""",
        ]
  
  try:
        if not is_tf_available():
              raise OptionalDependencyNotAvailable()
  except OptionalDependencyNotAvailable:
        pass
  else:
        A__	:      int				=						[
            """TF_FLAUBERT_PRETRAINED_MODEL_ARCHIVE_LIST""",
            """TFFlaubertForMultipleChoice""",
            """TFFlaubertForQuestionAnsweringSimple""",
            """TFFlaubertForSequenceClassification""",
            """TFFlaubertForTokenClassification""",
            """TFFlaubertModel""",
            """TFFlaubertPreTrainedModel""",
            """TFFlaubertWithLMHeadModel""",
        ]
  
  
  if TYPE_CHECKING:
        from .configuration_flaubert import FLAUBERT_PRETRAINED_CONFIG_ARCHIVE_MAP, FlaubertConfig, FlaubertOnnxConfig
        from .tokenization_flaubert import FlaubertTokenizer
  
        try:
              if not is_torch_available():
                    raise OptionalDependencyNotAvailable()
        except OptionalDependencyNotAvailable:
              pass
        else:
              from .modeling_flaubert import (
                  FLAUBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
                  FlaubertForMultipleChoice,
                  FlaubertForQuestionAnswering,
                  FlaubertForQuestionAnsweringSimple,
                  FlaubertForSequenceClassification,
                  FlaubertForTokenClassification,
                  FlaubertModel,
                  FlaubertPreTrainedModel,
                  FlaubertWithLMHeadModel,
              )
  
        try:
              if not is_tf_available():
                    raise OptionalDependencyNotAvailable()
        except OptionalDependencyNotAvailable:
              pass
        else:
              from .modeling_tf_flaubert import (
                  TF_FLAUBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
                  TFFlaubertForMultipleChoice,
                  TFFlaubertForQuestionAnsweringSimple,
                  TFFlaubertForSequenceClassification,
                  TFFlaubertForTokenClassification,
                  TFFlaubertModel,
                  TFFlaubertPreTrainedModel,
                  TFFlaubertWithLMHeadModel,
              )
  
  else:
        import sys
  
        A__	:      Tuple				=						_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)
  
  
  
  
  
  
  