code: public T min() {
          if (sum == 0)
              return null;
          int minCount = Integer.MAX_VALUE;
          int minIndex = -1;
          for (TIntIntIterator it = indexToCount.iterator(); it.hasNext(); ) {
              it.advance();
              if (it.value() < minCount) {
                  minIndex = it.key();
                  minCount = it.value();
              }
          }
          return objectIndices.lookup(minIndex);
      }
docs: Returns the element that currently has the smallest count.  If no objects
  have been counted, {@code null} is returned.  Ties in counts are
  arbitrarily broken.