working; now need to clean up stuff