# part 2 completed