





'''simple docstring'''






def        UpperCamelCase__		(						__magic_name__  :   int      )				->			int:
 '''simple docstring'''






 if n == 1 or not isinstance(__magic_name__		,       __magic_name__      ):
  return 0
 elif n == 2:
  return 1
 else:
  snake_case__     :					int    =  [0, 1]
  for i in range(2		,       n + 1      ):
   sequence.append(sequence[i - 1] + sequence[i - 2]      )

  return sequence[n]



def        UpperCamelCase__		(						__magic_name__  :   int      )				->			int:
 '''simple docstring'''






 snake_case__     :					List[Any]    =  0
 snake_case__     :					str    =  2

 while digits < n:
  index += 1
  snake_case__     :					List[Any]    =  len(str(fibonacci(__magic_name__      )      )      )

 return index



def        UpperCamelCase__		(						__magic_name__  :   int = 10_00      )				->			int:
 '''simple docstring'''






 return fibonacci_digits_index(__magic_name__      )


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






from functools import lru_cache

@lru_cache
def  __lowerCamelCase					( _lowercase			)       ->      int:
     if num < 0:
          raise ValueError('Number should not be negative.'			)

     return 1 if num in (0, 1) else num * factorial(num - 1			)


if __name__ == "__main__":
 import doctest

 doctest.testmod()


