use fmt.Errorf() instead of errors.New(fmt.Sprintf())
fix bad printf verbs for float types
drop unneeded _ in range