I agree, but you check that items are equal twice, once here, second time in `merge()`, and in actual merge you do this check twice, so it's three...