code: def __init__(
      self, hidden_node_channels: int, hidden_edge_channels: int
  ):
      super().__init__()
      self.lin_c1 = Linear(
          hidden_node_channels + hidden_edge_channels,
          2 * hidden_node_channels,
      )
  
      # BN was added based on previous studies.
      # ref: https://github.com/txie-93/cgcnn/blob/master/cgcnn/model.py
      self.bn_c1 = BatchNorm1d(2 * hidden_node_channels)
      self.bn = BatchNorm1d(hidden_node_channels)
  
imports: import torch
  from torch import Tensor
  from torch.nn import BatchNorm1d, Embedding, Linear, ModuleList, Sequential
  from torch_geometric.nn import radius_graph
  from torch_geometric.nn.inits import reset
  from torch_geometric.nn.models.dimenet import triplets
  from torch_geometric.nn.models.schnet import ShiftedSoftplus
  from torch_geometric.typing import OptTensor
  from torch_geometric.utils import scatter
label_desc: Use image node_id 1 to create a new NodeBlock object from inherited base classes: torch.nn with example: obj = NodeBlock(hidden_node_channels, hidden_edge_channels)