Implicit conversion from float -3.222506393861906 to int loses precision