working code
merge