


"""simple docstring"""






from __future__ import annotations

import sys
def    A_ ( _lowerCAmelCase  :       Any							):






     """simple docstring"""

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






     """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
     _a     						=					_fib(n // 2							)
     _a     						=					a * (b * 2 - a)
     _a     						=					a * a + b * b
     return (d, c + d) if n % 2 else (c, d)


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



from itertools import combinations_with_replacement






def 	lowerCamelCase_       (			_a = 100			):




		"""simple docstring"""






		lowerCAmelCase__  :     list[int]       	=   [*list(range(1      ,  21			)			), 25]
		lowerCAmelCase__  :     list[int]       	=   [2 * x for x in range(1      ,  21			)] + [50]
		lowerCAmelCase__  :     list[int]       	=   [3 * x for x in range(1      ,  21			)]
		lowerCAmelCase__  :     list[int]       	=   singles + doubles + triples + [0]

		lowerCAmelCase__  :     int       	=   0
		lowerCAmelCase__  :     int
		lowerCAmelCase__  :     int
		lowerCAmelCase__  :     int
		lowerCAmelCase__  :     int

		for double in doubles:
				for throwa, throwa in combinations_with_replacement(_a      ,  2			):
						lowerCAmelCase__  :     Dict       	=   double + throwa + throwa
						if checkout_total < limit:
								num_checkouts += 1

		return num_checkouts


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




