merge sorted list