normal merge sort including bottomup sort