cleaned up - works