cleanup, and remember to use floats