





'''simple docstring'''

import doctest
from collections import deque

import numpy as np
class 							__lowerCAmelCase	:






       """simple docstring"""





       def __init__(				self  :						Tuple	)       ->	None:

            '''simple docstring'''




            _UpperCamelCase							       =			[2, 1, 2, -1]
            _UpperCamelCase							       =			[1, 2, 3, 4]







       def snake_case__		(				self  :						Optional[int]	)       ->	list[float]:

            '''simple docstring'''




            _UpperCamelCase							       =			len(self.first_signal	)
            _UpperCamelCase							       =			len(self.second_signal	)

            _UpperCamelCase							       =			max(lowerCAmelCase__			,					lowerCAmelCase__	)

            # create a zero matrix of max_length x max_length
            _UpperCamelCase							       =			[[0] * max_length for i in range(lowerCAmelCase__	)]

            # fills the smaller signal with zeros to make both signals of same length
            if length_first_signal < length_second_signal:
                 self.first_signal += [0] * (max_length - length_first_signal)
            elif length_first_signal > length_second_signal:
                 self.second_signal += [0] * (max_length - length_second_signal)
            for i in range(lowerCAmelCase__	):
                 _UpperCamelCase							       =			deque(self.second_signal	)
                 rotated_signal.rotate(lowerCAmelCase__	)
                 for j, item in enumerate(lowerCAmelCase__	):
                      matrix[i][j] += item

        # multiply the matrix with the first signal
            _UpperCamelCase							       =			np.matmul(np.transpose(lowerCAmelCase__	)			,					np.transpose(self.first_signal	)	)

            # rounding-off to two decimal places
            return [round(lowerCAmelCase__			,					2	) for i in final_signal]


if __name__ == "__main__":
   doctest.testmod()








def      __lowercase(						UpperCAmelCase__			):


      """simple docstring"""



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

            return sequence[n]

def      __lowercase(						UpperCAmelCase__			):


      """simple docstring"""



      lowerCamelCase             =		0
      lowerCamelCase             =		2

      while digits < n:
            index += 1
            lowerCamelCase             =		len(str(fibonacci(UpperCAmelCase__			)			)			)

      return index

def      __lowercase(						UpperCAmelCase__ = 1000			):


      """simple docstring"""



      return fibonacci_digits_index(UpperCAmelCase__			)


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