import sympy


def solve(a, b, c):
    """ Determine x valid value(s) for any Quadratic Equation
    `ax² + bx + c = 0` where a, b, c are known values.
    Returns a tuple of solutions (x1, x2)."""

    if a == 0:
        if b == 0:
            return (None, None)
        return (sympy.Rational(-c, b),None)

    d = b**2 - (4*a*c)  # discriminant
    if d < 0:
        return (None, None)
    if d == 0:
        return (sympy.Rational(-b, 2*a), None)
    if d > 0:
        sqrt_d = sympy.sqrt(d)
        x1 = (-b + sqrt_d) / (2*a)
        x2 = (-b - sqrt_d) / (2*a)
        return (x1, x2)