docs: protected <O> Map<O, IntList> partition(List<? extends O> classcolumn) {
      Map<O, IntList> classes = new HashMap<>();
      Iterator<? extends O> iter = classcolumn.iterator();
      for(int i = 0; iter.hasNext(); i++) {
        O lbl = iter.next();
        IntList ids = classes.get(lbl);
        if(ids == null) {
          ids = new IntArrayList();
          classes.put(lbl, ids);
        }
        ids.add(i);
      }
      return classes;
    }