public NavigableMap<Byte, List<SenderPendingTransactions>> getByScore() {
    final var sendersToAdd = new HashSet<>(txsBySender.keySet());
    return orderByFee.descendingSet().stream()
        .map(PendingTransaction::getSender)
        .filter(sendersToAdd::remove)
        .flatMap(sender -> splitByScore(sender, txsBySender.get(sender)).entrySet().stream())
        .collect(
            Collectors.toMap(
                Map.Entry::getKey,
                Map.Entry::getValue,
                (a, b) -> {
                  a.addAll(b);
                  return a;
                },
                TreeMap::new))
        .descendingMap();
  }
Returns pending txs by sender and ordered by score desc. In case a sender has pending txs with
different scores, then in nonce sequence, every time there is a score decrease, his pending txs
will be put in a new entry with that score. For example if a sender has 3 pending txs (where
the first number is the nonce and the score is between parenthesis): 0(127), 1(126), 2(127),
then for he there will be 2 entries:

<ul>
  <li>0(127)
  <li>1(126), 2(127)
</ul>

@return pending txs by sender and ordered by score desc
ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/layered/AbstractPrioritizedTransactions.java