adding parts revising some