everything from here (including the assertion) can be written (I think) as `return expr.as_independent(x0, y0, as_Add=True)[0]`