static ItIt allSubstrings(S s) { ret nestedIterator(countIterator_exclusive(0, l(s)), length -> mapI(countIterator_inclusive(0, l(s)-length), start -> substring(s, start, length))); }