Implicit conversion from float -40.400000000000006 to int loses precision