quicksort, stick to this version