code: def forward(self, g):
      if g.num_edges() > 0:
          for t in range(self.num_prop_rounds):
              g.update_all(
                  message_func=self.dgmg_msg,
                  reduce_func=self.reduce_funcs[t],
              )
              g.ndata["hv"] = self.node_update_funcs[t](
                  g.ndata["a"], g.ndata["hv"]
              )
  
imports: import os
  import dgl
  import torch.nn
  import torch
  from functools import partial
  import torch.nn.functional
  from torch.distributions import Bernoulli
  from torch.distributions import Categorical
  import torch.utils.model_zoo
label_desc: Use image node_id 4 for calling the GraphProp obj's underlying member method code with example usage: obj.forward(g) without return types