@Override
  public boolean equals(final Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;
    BlockBody blockBody = (BlockBody) o;
    return Objects.equals(transactions, blockBody.transactions)
        && Objects.equals(ommers, blockBody.ommers)
        && Objects.equals(withdrawals, blockBody.withdrawals);
  }
Read all fields from the block body expecting no list wrapping them. An example of a valid body
would be: [txs],[ommers],[withdrawals],[requests] this method is called directly when importing
a single block

@param input The RLP-encoded input
@param blockHeaderFunctions The block header functions used for parsing block headers
@return the BlockBody decoded from the RLP
ethereum/core/src/main/java/org/hyperledger/besu/ethereum/core/BlockBody.java