quadratic operator overloads