docs: public List<StateId> pages(final int pageSize, final int totalResults) {
          Validate.isTrue(pageSize > 0, "Page size must be positive: was " + pageSize);
          Validate.isTrue(totalResults > 0, "Total results must be positive: was " + totalResults);
  
          final List<StateId> pages = new ArrayList<StateId>(totalResults / pageSize + 1);
  
          Range range = Range.first(pageSize);
  
          for ( ; range.getEnd() < totalResults - 1 ; range = range.next()) {
              pages.add(forRange(range));
          }
  
          // Though not strictly required, tidy up the last range to stop at the right upper bound
          pages.add(forRange(range.getStart(), totalResults - 1));
  
          return Collections.unmodifiableList(pages);
      }