code: func (ec *Client) HeaderByNumber(ctx context.Context, number *big.Int) (*types.Header, error) {
  	var head *types.Header
  	err := ec.c.CallContext(ctx, &head, "eth_getBlockByNumber", toBlockNumArg(number), false)
  	if err == nil && head == nil {
  		err = ethereum.NotFound
  	}
  	return head, err
  }
docs: // HeaderByNumber returns a block header from the current canonical chain. If number is
  // nil, the latest known header is returned.