Numerically stable