Lots of clean up