work but slow
what is wrong?
for merge