



from typing import TYPE_CHECKING

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


__snake_case	:				Optional[int]  					=			{
    'configuration_flaubert': ['FLAUBERT_PRETRAINED_CONFIG_ARCHIVE_MAP', 'FlaubertConfig', 'FlaubertOnnxConfig'],
    'tokenization_flaubert': ['FlaubertTokenizer'],
}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 __snake_case	:				List[str]  					=			[
     '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:
 __snake_case	:				Any  					=			[
     '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

 __snake_case	:				List[str]  					=			_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)








"""simple docstring"""







def   a_	(			__a      ):
     if not isinstance(__a		,							__a      ):
          raise TypeError('''recursive_lucas_number accepts only integer arguments.'''      )
     if n_th_number == 0:
          return 2
     if n_th_number == 1:
          return 1

     return recursive_lucas_number(n_th_number - 1      ) + recursive_lucas_number(
         n_th_number - 2      )



def   a_	(			__a      ):
     if not isinstance(__a		,							__a      ):
          raise TypeError('''dynamic_lucas_number accepts only integer arguments.'''      )
     A__	,     A__				=   2, 1
     for _ in range(__a      ):
          A__	,     A__				=   b, a + b
     return a


if __name__ == "__main__":
 from doctest import testmod

 testmod()
 __snake_case	:				Dict  					=			int(input('Enter the number of terms in lucas series:\n').strip())
 print('Using recursive function to calculate lucas series:')
 print(' '.join(str(recursive_lucas_number(i)) for i in range(n)))
 print('\nUsing dynamic function to calculate lucas series:')
 print(' '.join(str(dynamic_lucas_number(i)) for i in range(n)))



