cleaned up some, still so messy