beginning of cleanup