@Override
  public long addBlockReorgListener(final BlockReorgListener listener) {
    return blockchain.observeChainReorg(
        (blockWithReceipts, chain) ->
            listener.onBlockReorg(
                blockAddedContext(
                    blockWithReceipts::getHeader,
                    blockWithReceipts.getBlock()::getBody,
                    blockWithReceipts::getReceipts)));
  }
Constructor for BesuEventsImpl

@param blockchain An instance of Blockchain
@param blockBroadcaster An instance of BlockBroadcaster
@param transactionPool An instance of TransactionPool
@param syncState An instance of SyncState
@param badBlockManager A cache of bad blocks encountered on the network
app/src/main/java/org/hyperledger/besu/services/BesuEventsImpl.java