allow tolerance for comparing floating-point numbers