return xn1, not xn