comparing floats with == and != is bad indeed.