






"""simple docstring"""





def     __lowercase					(    a :				int )					->					int:
      if n == 1 or not isinstance(a       ,		a ):
            return 0
      elif n == 2:
            return 1
      else:
            __snake_case      :    Optional[Any]  			=[0, 1]
            for i in range(2       ,		n + 1 ):
                  sequence.append(sequence[i - 1] + sequence[i - 2] )

            return sequence[n]



def     __lowercase					(    a :				int )					->					int:
      __snake_case      :    Any  			=0
      __snake_case      :    List[str]  			=2

      while digits < n:
            index += 1
            __snake_case      :    int  			=len(str(fibonacci(a ) ) )

      return index



def     __lowercase					(    a :				int = 1_000 )					->					int:
      return fibonacci_digits_index(a )


if __name__ == "__main__":
    print(solution(int(str(input()).strip())))










"""simple docstring"""





# this script reports modified .py files under the desired list of top-level sub-dirs passed as a list of arguments, e.g.:
#   python ./utils/get_modified_files.py utils src tests examples
#
# it uses git to find the forking point and which files were modified - i.e. files not under git won't be considered
# since the output of this script is fed into Makefile commands it doesn't print a newline after the results

import re
import subprocess
import sys


UpperCamelCase_	:				int										= subprocess.check_output("""git merge-base main HEAD""".split()).decode("""utf-8""")
UpperCamelCase_	:				Optional[int]										= (
    subprocess.check_output(F'''git diff --diff-filter=d --name-only {fork_point_sha}'''.split()).decode("""utf-8""").split()
)

UpperCamelCase_	:				List[Any]										= """|""".join(sys.argv[1:])
UpperCamelCase_	:				List[str]										= re.compile(rF'''^({joined_dirs}).*?\.py$''')

UpperCamelCase_	:				str										= [x for x in modified_files if regex.match(x)]
print(""" """.join(relevant_modified_files), end="""""")


