






'''simple docstring'''



def  __UpperCAmelCase						(					SCREAMING_SNAKE_CASE__:						Optional[int]     )	->      int:

   """simple docstring"""






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

      return sequence[n]



def  __UpperCAmelCase						(					SCREAMING_SNAKE_CASE__:						Union[str, Any]     )	->      int:

   """simple docstring"""
   __a					  =     0
   __a					  =     2

   while digits < n:
      index += 1
      __a					  =     len(str(fibonacci(lowercase_     )     )     )

   return index



def  __UpperCAmelCase						(					SCREAMING_SNAKE_CASE__:						Union[str, Any] = 1000     )	->      int:

   """simple docstring"""
   return fibonacci_digits_index(lowercase_     )


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

def 		UpperCamelCase						(   lowercase_ )		->						int:


  '''simple docstring'''






  if n == 1 or not isinstance(lowercase_			,			lowercase_ ):
    return 0
  elif n == 2:
    return 1
  else:
    lowercase__	: List[Any]     		=   [0, 1]
    for i in range(2			,			n + 1 ):
      sequence.append(sequence[i - 1] + sequence[i - 2] )

    return sequence[n]

def 		UpperCamelCase						(   lowercase_ )		->						int:


  '''simple docstring'''






  lowercase__	: Optional[Any]     		=   0
  lowercase__	: Dict     		=   2

  while digits < n:
    index += 1
    lowercase__	: str     		=   len(str(fibonacci(lowercase_ ) ) )

  return index

def 		UpperCamelCase						(   lowercase_ = 10_00 )		->						int:


  '''simple docstring'''






  return fibonacci_digits_index(lowercase_ )


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






