lots of clean-up