Reordering parser