Implicit conversion from float -2.977667493796531 to int loses precision