incremental "merge"
"merge" function WIP
"merge" function