Implicit conversion from float -31.477428180574563 to int loses precision