starting part 2
finished part2