protected static void addAdditionalTransactionInformationToFlatTrace(
      final FlatTrace.Builder builder, final TransactionTrace transactionTrace, final Block block) {
    // add block information (hash and number)
    builder.blockHash(block.getHash().toHexString()).blockNumber(block.getHeader().getNumber());
    // add transaction information (position and hash)
    builder
        .transactionPosition(
            block.getBody().getTransactions().indexOf(transactionTrace.getTransaction()))
        .transactionHash(transactionTrace.getTransaction().getHash().toHexString());

    addContractCreationMethodToTrace(transactionTrace, builder);
  }
Generates a stream of {@link Trace} from the passed {@link TransactionTrace} and {@link Block}
data with additional Transaction Information added to FlatTrace

@param protocolSchedule the current {@link ProtocolSchedule} to use
@param transactionTrace the {@link TransactionTrace} to use
@param block the {@link Block} to use
@return a stream of generated traces {@link Trace}
ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/tracing/flat/FlatTraceGenerator.java