Implicit conversion from float -5.09345794392523 to int loses precision