code: func (ethash *Ethash) SealHash(header *types.Header) (hash common.Hash) {
  	hasher := sha3.NewLegacyKeccak256()
  
  	rlp.Encode(hasher, []interface{}{
  		header.ParentHash,
  		header.UncleHash,
  		header.Coinbase,
  		header.Root,
  		header.TxHash,
  		header.ReceiptHash,
  		header.Bloom,
  		header.Difficulty,
  		header.Number,
  		header.GasLimit,
  		header.GasUsed,
  		header.Time,
  		header.Extra,
  	})
  	hasher.Sum(hash[:0])
  	return hash
  }
docs: // SealHash returns the hash of a block prior to it being sealed.