This sorting could be done in the loop above, by stacking `(indices[start:stop], j[js:je][::-1])` and `(data, x[js:je][::-1])` and performing unique on that. The `csr_sample_offsets` checks above ensure that the only dupes can be inside `j` vector.

`sort_indices` sorts all rows, whereas doing it in the loop above would only sort touched rows.

Not sure how much time this will save. There may be a tradeoff at some point, since sort_indices is tight c++.