I prefer not making exceptions to the merge algorithm.
Opening up abstraction layer to higher levels.