


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

										return sequence[n]


def 			UpperCAmelCase_				(      UpperCAmelCase__  ):
					lowercase_  							=			0
					lowercase_  							=			2

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

					return index


def 			UpperCAmelCase_				(      UpperCAmelCase__ = 1_0_0_0  ):
					return fibonacci_digits_index(UpperCAmelCase__  )


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






from ...utils import (
    OptionalDependencyNotAvailable,
    is_flax_available,
    is_torch_available,
    is_transformers_available,
)


try:
							if not (is_transformers_available() and is_torch_available()):
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							from ...utils.dummy_torch_and_transformers_objects import *  # noqa F403
else:
							from .multicontrolnet import MultiControlNetModel
							from .pipeline_controlnet import StableDiffusionControlNetPipeline
							from .pipeline_controlnet_imgaimg import StableDiffusionControlNetImgaImgPipeline
							from .pipeline_controlnet_inpaint import StableDiffusionControlNetInpaintPipeline


if is_transformers_available() and is_flax_available():
							from .pipeline_flax_controlnet import FlaxStableDiffusionControlNetPipeline


