complete Part2