code: def forward(self, x, edge_index, batch=None, edge_label_index=None):
      x = self.conv1(x, edge_index).relu()
      x = self.conv2(x, edge_index)
      if self.model_config.task_level == ModelTaskLevel.graph:
          x = global_add_pool(x, batch)
      return x
  
file_path: pytorch_geometric/test/explain/algorithm/test_pg_explainer.py
imports: import pytest
  import torch
  from torch_geometric.explain import Explainer, PGExplainer
  from torch_geometric.explain.config import ModelConfig, ModelMode, ModelTaskLevel
  from torch_geometric.nn import GCNConv, global_add_pool
  from torch_geometric.testing import withCUDA
label_desc: Use image node_id 2 for calling the GCN obj's underlying member method code with example usage: obj.forward(x, edge_index, batch, edge_label_index) and returns: x