






"""simple docstring"""




from itertools import combinations_with_replacement

def     lowerCAmelCase__  (  UpperCamelCase__ = 1_0_0       ):



  '''simple docstring'''
  _a						: list[int]    =			[*list(range(1  ,     2_1       )       ), 2_5]
  _a						: list[int]    =			[2 * x for x in range(1  ,     2_1       )] + [5_0]
  _a						: list[int]    =			[3 * x for x in range(1  ,     2_1       )]
  _a						: list[int]    =			singles + doubles + triples + [0]

  _a						: int    =			0
  _a						: int
  _a						: int
  _a						: int
  _a						: int

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

  return num_checkouts


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









"""simple docstring"""




from __future__ import annotations

import sys

def     lowerCAmelCase__  (  UpperCamelCase__       ):



  '''simple docstring'''
  if n < 0:
    raise ValueError("""Negative arguments are not supported"""       )
  return _fib(UpperCamelCase__       )[0]

def     lowerCAmelCase__  (  UpperCamelCase__       ):



  '''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   ,						_a						: Dict    =			_fib(n // 2       )
  _a						: Dict    =			a * (b * 2 - a)
  _a						: Optional[Any]    =			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)}''')

