finished part 2c