/guava/guava/src/com/google/common/collect/Collections2.java
requireNonNull( nextPermutation) ;Collections.swap( nextPermutation, j, l) ;
Collections.swap ( nextPermutation, j, l ) ;
if (j == -1) { nextPermutation = null; return; } requireNonNull(nextPermutation); int l = findNextL(j); <extra_id_0> int n = nextPermutation.size(); Collections.reverse(nextPermutation.subList(j + 1, n)); } int findNextJ() { requireNonNull(nextPermutation); for (int k = nextPermutation.size() - 2; k >= 0; k--) {