handle further rounding errors with arccos and arcsin