Implicit conversion from float -34.3125 to int loses precision