


import sys






def 	lowerCamelCase_       (			_a      ,  _a			):




		"""simple docstring"""






		if not numbers:
				return 0
		if target == 0 and target in numbers:
				return 0
		if not isinstance(_a      ,  (list, tuple)			) or not all(
		    isinstance(_a      ,  _a			) for number in numbers			):
				raise ValueError('''numbers must be an iterable of integers'''			)

		lowerCAmelCase__  :     List[Any]       	=   0
		lowerCAmelCase__  :     Optional[int]       	=   sys.maxsize

		while right < len(_a			):
				curr_sum += numbers[right]
				while curr_sum >= target and left <= right:
						lowerCAmelCase__  :     Optional[int]       	=   min(_a      ,  right - left + 1			)
						curr_sum -= numbers[left]
						left += 1
				right += 1

		return 0 if min_len == sys.maxsize else min_len








from __future__ import annotations

import sys






def 	lowerCamelCase_       (			_a			):




		"""simple docstring"""






		if n < 0:
				raise ValueError('''Negative arguments are not supported'''			)
		return _fib(_a			)[0]






def 	lowerCamelCase_       (			_a			):




		"""simple docstring"""






		if n == 0:  # (F(0), F(1))
				return (0, 1)

		# F(2n) = F(n)[2F(n+1) − F(n)]
		# F(2n+1) = F(n+1)^2+F(n)^2
		lowerCAmelCase__	,      lowerCAmelCase__  :     Dict       	=   _fib(n // 2			)
		lowerCAmelCase__  :     Dict       	=   a * (b * 2 - a)
		lowerCAmelCase__  :     Union[str, Any]       	=   a * a + b * b
		return (d, c + d) if n % 2 else (c, d)


if __name__ == "__main__":
		lowerCamelCase		=						int(sys.argv[1])
		print(f'''fibonacci({n}) is {fibonacci(n)}''')




