always return floating point