use to_f.round instead of to_i