merge sort, with bug