finish the part1