code: func (s *PublicBlockChainAPI) GetBlockByNumber(ctx context.Context, blockNr rpc.BlockNumber, fullTx bool) (map[string]interface{}, error) {
  	block, err := s.b.BlockByNumber(ctx, blockNr)
  	if block != nil {
  		response, err := s.rpcOutputBlock(block, true, fullTx)
  		if err == nil && blockNr == rpc.PendingBlockNumber {
  			// Pending blocks need to nil out a few fields
  			for _, field := range []string{"hash", "nonce", "miner"} {
  				response[field] = nil
  			}
  		}
  		return response, err
  	}
  	return nil, err
  }
docs: // GetBlockByNumber returns the requested block. When blockNr is -1 the chain head is returned. When fullTx is true all
  // transactions in the block are returned in full detail, otherwise only the transaction hash is returned.