Implicit conversion from float -5.857988165680467 to int loses precision