Implicit conversion from float -3.1977559607293244 to int loses precision