updates, need to clean up a bit