Implicit conversion from float -3.5625 to int loses precision