final for part2
merge