part 3 solved