






"""simple docstring"""

from __future__ import annotations

from collections import namedtuple

def 		__lowerCamelCase	(  __UpperCamelCase      ,       __UpperCamelCase      ,       __UpperCamelCase       )						->    tuple:

		"""simple docstring"""







		lowerCAmelCase_   :							List[Any]									=			namedtuple("result"      ,       "name value"       )
		if (voltage, current, power).count(0       ) != 1:
				raise ValueError("Only one argument must be 0"       )
		elif power < 0:
				raise ValueError(
				    "Power cannot be negative in any electrical/electronics system"       )
		elif voltage == 0:
				return result("voltage"      ,       power / current       )
		elif current == 0:
				return result("current"      ,       power / voltage       )
		elif power == 0:
				return result("power"      ,       float(round(abs(voltage * current       )      ,       2       )       )       )
		else:
				raise ValueError("Exactly one argument must be 0"       )


if __name__ == "__main__":
					import doctest

					doctest.testmod()








"""simple docstring"""

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

lowercase__          = TypeVar("""_T""")


class 		__lowerCamelCase				( Generic[_T]			):





		'''simple docstring'''






		def __init__(   self							:	Optional[int]						,			a_							:	Iterable[_T] | None = None	):
				lowerCAmelCase_   :							list[_T]									=			list(iterable or []	)
				lowerCAmelCase_   :							list[_T]									=			[]





		def __len__(   self							:	str	):
				return len(self._stacka	) + len(self._stacka	)





		def __repr__(   self							:	List[Any]	):
				return f'''Queue({tuple(self._stacka[::-1] + self._stacka	)})'''





		def    lowerCamelCase       (   self							:	List[str]						,			a_							:	_T	):
				self._stacka.append(a_	)





		def    lowerCamelCase       (   self							:	List[str]	):
				lowerCAmelCase_   :							int									=			self._stacka.pop
				lowerCAmelCase_   :							Any									=			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()
