cleaned up, pretty much done