



'''simple docstring'''




from collections.abc import Iterable
from typing import Generic, TypeVar

UpperCamelCase__       :	int    = TypeVar('''_T''')






class 						_UpperCamelCase  (							Generic[_T]    ):


			'''simple docstring'''

			def __init__(							self     : Dict							,     lowerCAmelCase__     : Iterable[_T] | None = None						):





					"""simple docstring"""






					__SCREAMING_SNAKE_CASE       :		list[_T]           =		list(iterable or []						)
					__SCREAMING_SNAKE_CASE       :		list[_T]           =		[]

			def __len__(							self     : Dict						):





					"""simple docstring"""






					return len(self._stacka						) + len(self._stacka						)

			def __repr__(							self     : Any						):





					"""simple docstring"""






					return F"Queue({tuple(self._stacka[::-1] + self._stacka						)})"

			def UpperCamelCase__					(							self     : List[Any]							,     lowerCAmelCase__     : _T						):





					"""simple docstring"""






					self._stacka.append(lowerCAmelCase__						)



			def UpperCamelCase__					(							self     : Optional[int]						):





					"""simple docstring"""






					__SCREAMING_SNAKE_CASE       :		str           =		self._stacka.pop
					__SCREAMING_SNAKE_CASE       :		str           =		self._stacka.append

					if not self._stacka:
							while self._stacka:
									stacka_append(stacka_pop()						)

					if not self._stacka:
							raise IndexError("""Queue is empty"""						)
					return self._stacka.pop()


if __name__ == "__main__":
						from doctest import testmod

						testmod()




'''simple docstring'''




def 				lowerCAmelCase_   (	_lowerCamelCase:   int					):
		assert (
		    isinstance(_lowerCamelCase       ,      _lowerCamelCase					) and number_of_steps > 0
		), F"number_of_steps needs to be positive integer, your input {number_of_steps}"
		if number_of_steps == 1:
				return 1
		__SCREAMING_SNAKE_CASE       ,						__SCREAMING_SNAKE_CASE       :		Dict           =		1, 1
		for _ in range(number_of_steps - 1					):
				__SCREAMING_SNAKE_CASE       ,						__SCREAMING_SNAKE_CASE       :		Tuple           =		current + previous, current
		return current


if __name__ == "__main__":
						import doctest

						doctest.testmod()