class BlockTransactionSelector {

  public TransactionSelectionResults buildTransactionListForBlock() {
    pendingTransactions.selectTransactions(this::evaluateTransaction);
    return transactionSelectionResult;
  }

  public  BlockTransactionSelector(
      final TransactionProcessor transactionProcessor,
      final Blockchain blockchain,
      final MutableWorldState worldState,
      final PendingTransactions pendingTransactions,
      final ProcessableBlockHeader processableBlockHeader,
      final AbstractBlockProcessor.TransactionReceiptFactory transactionReceiptFactory,
      final Wei minTransactionGasPrice,
      final Double minBlockOccupancyRatio,
      final Supplier<Boolean> isCancelled,
      final Address miningBeneficiary,
      final TransactionPriceCalculator transactionPriceCalculator,
      final Optional<EIP1559> eip1559);

}