




from typing import Any

class 		lowercase_       :




					def __init__(   self:		List[str]):


									'''simple docstring'''


									__lowerCAmelCase					=  []
									__lowerCAmelCase					=  0




					def __str__(   self:		Union[str, Any]):


									'''simple docstring'''


									__lowerCAmelCase					=  """<""" + str(self.stack)[1:-1] + """>"""
									return printed




					def     _lowercase						(   self:		Optional[int],     _lowercase:		Any):


									'''simple docstring'''


									self.stack.append(_lowercase)
									__lowerCAmelCase					=  self.length + 1




					def     _lowercase						(   self:		int):


									'''simple docstring'''


									self.rotate(1)
									__lowerCAmelCase					=  self.stack[self.length - 1]
									__lowerCAmelCase					=  self.stack[:-1]
									self.rotate(self.length - 1)
									__lowerCAmelCase					=  self.length - 1
									return dequeued




					def     _lowercase						(   self:		Any,     _lowercase:		int):


									'''simple docstring'''


									for _ in range(_lowercase):
													__lowerCAmelCase					=  self.stack[0]
													__lowerCAmelCase					=  self.stack[1:]
													self.put(_lowercase)
													__lowerCAmelCase					=  self.length - 1




					def     _lowercase						(   self:		Tuple):


									'''simple docstring'''


									__lowerCAmelCase					=  self.get()
									self.put(_lowercase)
									self.rotate(self.length - 1)
									return front




					def     _lowercase						(   self:		List[str]):


									'''simple docstring'''


									return self.length










"""simple docstring"""




from __future__ import annotations

# Define the Gravitational Constant G and the function
_UpperCamelCase:					Tuple     				=	6.6_7_4_3e-1_1  # unit of G : m^3 * kg^-1 * s^-2


def 	lowercase__  (      _UpperCAmelCase						,   _UpperCAmelCase						,   _UpperCAmelCase						,   _UpperCAmelCase					)  ->      dict[str, float]:






      '''simple docstring'''


      lowercase	:   str											= mass_a * mass_a

      if (force, mass_a, mass_a, distance).count(0					) != 1:
            raise ValueError('One and only one argument must be 0'					)
      if force < 0:
            raise ValueError('Gravitational force can not be negative'					)
      if distance < 0:
            raise ValueError('Distance can not be negative'					)
      if mass_a < 0 or mass_a < 0:
            raise ValueError('Mass can not be negative'					)
      if force == 0:
            lowercase	:   str											= GRAVITATIONAL_CONSTANT * product_of_mass / (distance**2)
            return {"force": force}
      elif mass_a == 0:
            lowercase	:   Optional[int]											= (force) * (distance**2) / (GRAVITATIONAL_CONSTANT * mass_a)
            return {"mass_1": mass_a}
      elif mass_a == 0:
            lowercase	:   Optional[int]											= (force) * (distance**2) / (GRAVITATIONAL_CONSTANT * mass_a)
            return {"mass_2": mass_a}
      elif distance == 0:
            lowercase	:   List[Any]											= (GRAVITATIONAL_CONSTANT * product_of_mass / (force)) ** 0.5
            return {"distance": distance}
      raise ValueError('One and only one argument must be 0'					)


# Run doctest
if __name__ == "__main__":
     import doctest

     doctest.testmod()
