






__a:     List[Any]   					=					[0, 2, 4, 6, 8]
__a:     Union[str, Any]   					=					[1, 3, 5, 7, 9]




def       _SCREAMING_SNAKE_CASE (							__snake_case   ,      __snake_case   ,      __snake_case   ,      __snake_case )				->						int:
       if remaining_length == 0:
              if digits[0] == 0 or digits[-1] == 0:
                     return 0

              for i in range(length // 2 - 1   ,      -1   ,      -1 ):
                     remainder += digits[i] + digits[length - i - 1]

                     if remainder % 2 == 0:
                            return 0

                     remainder //= 1_0

              return 1

       if remaining_length == 1:
              if remainder % 2 == 0:
                     return 0

              _UpperCAmelCase							=    0
              for digit in range(1_0 ):
                     _UpperCAmelCase							=    digit
                     result += reversible_numbers(
                         0   ,      (remainder + 2 * digit) // 1_0   ,      __snake_case   ,      __snake_case )
              return result

       _UpperCAmelCase							=    0
       for digita in range(1_0 ):
              _UpperCAmelCase							=    digita

              if (remainder + digita) % 2 == 0:
                     _UpperCAmelCase							=    ODD_DIGITS
              else:
                     _UpperCAmelCase							=    EVEN_DIGITS

              for digita in other_parity_digits:
                     _UpperCAmelCase							=    digita
                     result += reversible_numbers(
                         remaining_length - 2   ,      (remainder + digita + digita) // 1_0   ,      __snake_case   ,      __snake_case   ,      )
       return result




def       _SCREAMING_SNAKE_CASE (							__snake_case = 9 )				->						int:
       _UpperCAmelCase							=    0
       for length in range(1   ,      max_power + 1 ):
              result += reversible_numbers(__snake_case   ,      0   ,      [0] * length   ,      __snake_case )
       return result


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

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())))






