code: def cross_edge_feat(
      graph_wrapper, feat, hidden_size, num_layers=3, max_neigh=64
  ):
      if num_layers == 0:
          return None
  
      def send_func(src, dst, efeat):
          return efeat["h"]
  
      def recv_func(msg):
          pad_value = L.assign(input=np.array([0.0], dtype=np.float32))
  
          output, length = L.sequence_pad(
              msg, pad_value, maxlen=max_neigh
          )
          mask = L.sequence_mask(
              length, dtype="float32", maxlen=max_neigh
          )
          mask = L.unsqueeze(mask, [2])
          input_mask = (
              L.matmul(mask, mask, transpose_y=True) - 1
          ) * -10000
          for layer in range(num_layers):
              output = self_attention_and_residual(
                  output,
                  hidden_size,
                  input_mask,
                  name="cross_feat_%s" % layer,
                  maxlen=max_neigh,
              )
          return L.reduce_sum(output * mask, 1) / L.reduce_sum(mask, 1)
  
      feat = L.fc(feat, size=hidden_size, name="init_edge_feat")
      msg = graph_wrapper.send(send_func, efeat_list=[("h", feat)])
      outputs = graph_wrapper.recv(msg, recv_func)
      return outputs
  
label_desc: Use image node_id 2 for calling a global function with example usage: cross_edge_feat(graph_wrapper, feat, hidden_size, num_layers, max_neigh) and returns: outputs, None, efeat, unknown