






from collections.abc import Generator


def 				snake_case__							(							)     ->   Optional[int]:
    lowerCAmelCase__							,lowerCAmelCase__   :str      							=				0, 1
    while True:
        lowerCAmelCase__							,lowerCAmelCase__   :int      							=				b, a + b
        yield b


def 				snake_case__							(							UpperCAmelCase							:  int = 1_0_0_0       )     ->   List[Any]:
    lowerCAmelCase__   :str      							=				1
    lowerCAmelCase__   :Optional[int]      							=				fibonacci_generator()
    while len(str(next(UpperCAmelCase       )       )       ) < n:
        answer += 1
    return answer + 1


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











from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


_a    :   str        =			{"""configuration_wavlm""": ["""WAVLM_PRETRAINED_CONFIG_ARCHIVE_MAP""", """WavLMConfig"""]}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 _a    :   Optional[Any]        =			[
     """WAVLM_PRETRAINED_MODEL_ARCHIVE_LIST""",
     """WavLMForAudioFrameClassification""",
     """WavLMForCTC""",
     """WavLMForSequenceClassification""",
     """WavLMForXVector""",
     """WavLMModel""",
     """WavLMPreTrainedModel""",
 ]

if TYPE_CHECKING:
 from .configuration_wavlm import WAVLM_PRETRAINED_CONFIG_ARCHIVE_MAP, WavLMConfig

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_wavlm import (
      WAVLM_PRETRAINED_MODEL_ARCHIVE_LIST,
      WavLMForAudioFrameClassification,
      WavLMForCTC,
      WavLMForSequenceClassification,
      WavLMForXVector,
      WavLMModel,
      WavLMPreTrainedModel,
  )

else:
 import sys

 _a    :   str        =			_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)



