code: private void populateMap(final int[] priKeyIndices) {
      final SketchIterator<ArrayOfStringsSummary> it = sketch.iterator();
      Arrays.fill(hashArr, 0L);
      Arrays.fill(priKeyArr, null);
      Arrays.fill(counterArr, 0);
      groupCount = 0;
      final int lgMapArrSize = Integer.numberOfTrailingZeros(mapArrSize);
  
      while (it.next()) {
        final String[] arr = it.getSummary().getValue();
        final String priKey = getPrimaryKey(arr, priKeyIndices, sep);
        final long hash = stringHash(priKey);
        final int index = hashSearchOrInsert(hashArr, lgMapArrSize, hash);
        if (index < 0) { //was empty, hash inserted
          final int idx = -(index + 1); //actual index
          counterArr[idx] = 1;
          groupCount++;
          priKeyArr[idx] = priKey;
        } else { //found, duplicate
          counterArr[index]++; //increment
        }
      }
      mapValid = true;
    }
docs: Scan each entry in the sketch. Count the number of duplicate occurrences of each
  primary key in a hash map.
  @param priKeyIndices identifies the primary key indices