
def 			_SCREAMING_SNAKE_CASE      (	_lowerCamelCase				:    int)      ->					int:






							'''simple docstring'''





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

														return sequence[n]




def 			_SCREAMING_SNAKE_CASE      (	_lowerCamelCase				:    int)      ->					int:






							'''simple docstring'''





							__UpperCamelCase			:     int         =      0
							__UpperCamelCase			:     Optional[int]         =      2

							while digits < n:
														index += 1
														__UpperCamelCase			:     Optional[Any]         =      len(str(fibonacci(_lowerCamelCase)))

							return index




def 			_SCREAMING_SNAKE_CASE      (	_lowerCamelCase				:    int = 1_000)      ->					int:






							'''simple docstring'''





							return fibonacci_digits_index(_lowerCamelCase)


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

from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowercase						:      Optional[Any]									= {
    'configuration_blip_2': [
        'BLIP_2_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'Blip2Config',
        'Blip2QFormerConfig',
        'Blip2VisionConfig',
    ],
    'processing_blip_2': ['Blip2Processor'],
}

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowercase						:      Tuple									= [
		    'BLIP_2_PRETRAINED_MODEL_ARCHIVE_LIST',
		    'Blip2Model',
		    'Blip2QFormerModel',
		    'Blip2PreTrainedModel',
		    'Blip2ForConditionalGeneration',
		    'Blip2VisionModel',
		]

if TYPE_CHECKING:
		from .configuration_blip_a import (
		    BLIP_2_PRETRAINED_CONFIG_ARCHIVE_MAP,
		    BlipaConfig,
		    BlipaQFormerConfig,
		    BlipaVisionConfig,
		)
		from .processing_blip_a import BlipaProcessor

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_blip_a import (
				    BLIP_2_PRETRAINED_MODEL_ARCHIVE_LIST,
				    BlipaForConditionalGeneration,
				    BlipaModel,
				    BlipaPreTrainedModel,
				    BlipaQFormerModel,
				    BlipaVisionModel,
				)

else:
		import sys

		lowercase						:      Dict									= _LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)