Lot of cleanup and messup