Implicit conversion from float -2.543171114599673 to int loses precision