static A replaceObject(A x, A a, A b) { ret eq(x, a) ? b : x; }