merge and split for treap