merge union and fix regular merge