Implicit conversion from float -5.583596214511047 to int loses precision