code: @Override
      public SubsetSolution next() {
          // get next subset
          Set<Integer> subset = subsetIterator.next();
          // wrap in subset solution
          return new SubsetSolution(IDs, subset);
      }
docs: Generate the next subset solution. The returned subset will either have the same size as the previously generated solution,
  if any, or it will be a larger subset.
  
  @return next subset solution within the size bounds
  @throws NoSuchElementException if there is no next solution to be generated