code: from __future__ import annotations
  
  # Define the Gravitational Constant G and the function
  a     :			Union[str, Any]					    =						6.6743e-11  # unit of G : m^3 * kg^-1 * s^-2
  def 		snake_case__  (		lowercase       ,							lowercase       ,							lowercase       ,							lowercase				):
     lowerCAmelCase_:       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:
        lowerCAmelCase_:       Union[str, Any]         =  GRAVITATIONAL_CONSTANT * product_of_mass / (distance**2)
        return {"force": force}
     elif mass_a == 0:
        lowerCAmelCase_:       Any         =  (force) * (distance**2) / (GRAVITATIONAL_CONSTANT * mass_a)
        return {"mass_1": mass_a}
     elif mass_a == 0:
        lowerCAmelCase_:       Dict         =  (force) * (distance**2) / (GRAVITATIONAL_CONSTANT * mass_a)
        return {"mass_2": mass_a}
     elif distance == 0:
        lowerCAmelCase_:       List[str]         =  (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()
style_context: def 		snake_case__  (		lowercase = 998001				):
  
     # fetches the next number
     for number in range(n - 1       ,							9999       ,							-1				):
        lowerCAmelCase_:       str         =  str(lowercase				)
  
        # checks whether 'str_number' is a palindrome.
        if str_number == str_number[::-1]:
           lowerCAmelCase_:       List[str]         =  999
  
           # if 'number' is a product of two 3-digit numbers
           # then number is the answer otherwise fetch next number.
           while divisor != 99:
              if (number % divisor == 0) and (len(str(number // divisor				)				) == 3.0):
                 return number
              divisor -= 1
     raise ValueError("That number is larger than our acceptable range."				)
  
  
  if __name__ == "__main__":
   print(f'''{solution() = }''')