a lot of cleaning up, still in progress