add splice for three-way merging