finished part 1.