initial code for part 1