eliminated some redundancies