code: public StateSnapshot.StateKeyGroupWriter partitionByKeyGroup() {
  		if (computedResult == null) {
  			reportAllElementKeyGroups();
  			int outputNumberOfElements = buildHistogramByAccumulatingCounts();
  			executePartitioning(outputNumberOfElements);
  		}
  		return computedResult;
  	}
docs: Partitions the data into key-groups and returns the result via {@link PartitioningResult}.