private BaseFeePrioritizedTransactions createLayers(
      final TransactionPoolConfiguration poolConfig,
      final TransactionPoolMetrics txPoolMetrics,
      final BaseFeeMarket baseFeeMarket) {
    final EvictCollectorLayer evictCollector = new EvictCollectorLayer(txPoolMetrics);
    final BiFunction<PendingTransaction, PendingTransaction, Boolean> txReplacementTester =
        (tx1, tx2) -> transactionReplacementTester(poolConfig, tx1, tx2);
    final SparseTransactions sparseTransactions =
        new SparseTransactions(
            poolConfig,
            ethScheduler,
            evictCollector,
            txPoolMetrics,
            txReplacementTester,
            new BlobCache());

    final ReadyTransactions readyTransactions =
        new ReadyTransactions(
            poolConfig,
            ethScheduler,
            sparseTransactions,
            txPoolMetrics,
            txReplacementTester,
            new BlobCache());
    return new BaseFeePrioritizedTransactions(
        poolConfig,
        () -> currBlockHeader,
        ethScheduler,
        readyTransactions,
        txPoolMetrics,
        txReplacementTester,
        baseFeeMarket,
        new BlobCache(),
        MiningConfiguration.newDefault());
  }
Ignored by default since this is useful to debug issues having a dump of txs that could be
quite big and so could take many minutes to execute. To generate the input file for the test
enable the LOG_FOR_REPLAY logger by adding these parts to the log4j2 configuration: in the
Appenders section add

<pre>{@code
<RollingFile name="txCSV" fileName="/data/besu/tx.csv" filePattern="/data/besu/tx-%d{MM-dd-yyyy}-%i.csv.gz">
   <PatternLayout>
       <Pattern>%m%n</Pattern>
   </PatternLayout>
   <Policies>
       <OnStartupTriggeringPolicy />
   </Policies>
</RollingFile>
}</pre>

in the Loggers section add

<pre>{@code
<Logger name="LOG_FOR_REPLAY" level="TRACE" additivity="false">
   <AppenderRef ref="txCSV" />
</Logger>
}</pre>

restart and let it run until you need it, then copy the CSV in the test resource folder.

@throws IOException when fails to read the resource
ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/layered/ReplayTest.java