code: public E argmax(Comparator<E> tieBreaker) {
      int max = Integer.MIN_VALUE;
      E argmax = null;
      for (E key : keySet()) {
        int count = getIntCount(key);
        if (argmax == null || count > max || (count == max && tieBreaker.compare(key, argmax) < 0)) {
          max = count;
          argmax = key;
        }
      }
      return argmax;
    }
docs: Finds and returns the key in this Counter with the largest count.
  Ties are broken by comparing the objects using the given tie breaking
  Comparator, favoring Objects that are sorted to the front. This is useful
  if the keys are numeric and there is a bias to prefer smaller or larger
  values, and can be useful in other circumstances where random tie-breaking
  is not desirable. Returns null if this Counter is empty.