code: func (b *Block) WithSeal(header *Header) *Block {
  	cpy := *header
  
  	return &Block{
  		header:       &cpy,
  		transactions: b.transactions,
  		uncles:       b.uncles,
  	}
  }
docs: // WithSeal returns a new block with the data from b but the header replaced with
  // the sealed one.