

"""simple docstring"""




import math
from decimal import Decimal, getcontext




def       UpperCAmelCase__    (      _A				:			List[Any] = 4_00_00_00							):





  '''simple docstring'''







  try:
    a__  =int(_A							)
  except (TypeError, ValueError):
    raise TypeError('''Parameter n must be int or castable to int.'''							)
  if n <= 0:
    raise ValueError('''Parameter n must be greater than or equal to one.'''							)
  a__  =1_00
  a__  =(Decimal(5							) ** Decimal(0.5							) + 1) / Decimal(2							)

  a__  =(math.floor(math.log(n * (phi + 2)     ,				_A							) - 1							) // 3) * 3 + 2
  a__  =Decimal(round(phi ** Decimal(index + 1							)							)							) / (phi + 2)
  a__  =num // 2
  return int(_A							)


if __name__ == "__main__":
       print(f"""{solution() = }""")



from typing import TYPE_CHECKING

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


lowerCamelCase									= {
    '''configuration_flaubert''': ['''FLAUBERT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''FlaubertConfig''', '''FlaubertOnnxConfig'''],
    '''tokenization_flaubert''': ['''FlaubertTokenizer'''],
}

try:
       if not is_torch_available():
              raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
       pass
else:
       lowerCamelCase									= [
           '''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:
       lowerCamelCase									= [
           '''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

       lowerCamelCase									= _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)
