code: public List<E> getBests() {
  
      List<E> bests = new ArrayList<>();
      int bestRank = RANK_UNACCEPTABLE + 1;
      for (E element : this.map.keySet()) {
        Ranking ranking = this.map.get(element);
        if (ranking != null) {
          if (ranking.rank > bestRank) {
            bests.clear();
            bests.add(element);
            bestRank = ranking.rank;
          } else if (ranking.rank == bestRank) {
            bests.add(element);
          }
        }
      }
      return bests;
    }
docs: This method gets a {@link List} containing the element(s) that has currently the best (highest)
  {@link #getRank(Object) rank}. If there is no element with a positive rank, an empty {@link List} will be returned.
  If there are multiple elements with the (same) {@link #getBest() best} rank, they will all be contained in the
  returned {@link List}.
  
  @return the {@link List} with the best element(s).