part 2 solve complete