code: def forward(self, graph, node_feat, edge_feat=None):
      hn = self.node_encoder(node_feat)
      for conv in self.conv_layers:
          hn = conv(graph, hn)
      hg = self.pool(graph, hn)
  
      return self.pred(hg)
  
imports: from typing import List
  import dgl.function
  import numpy
  import torch
  import torch.nn
  import torch.nn.functional
  from dgl.nn import AvgPooling, SumPooling
  from ogb.graphproppred.mol_encoder import AtomEncoder
label_desc: Use image node_id 2 for calling the PNA obj's underlying member method code with example usage: obj.forward(graph, node_feat, edge_feat) and returns: self