shit load of cleanup