class_docstr: An implementation of the fully-connected layer.
  For details see this paper: `"GMAN: A Graph Multi-Attention Network for Traffic Prediction."
  <https://arxiv.org/pdf/1911.08415.pdf>`_
  
  Args:
      input_dims (int or list): Dimension(s) of input.
      units (int or list): Dimension(s) of outputs in each 2D convolution block.
      activations (Callable or list): Activation function(s).
      bn_decay (float, optional): Batch normalization momentum, default is None.
      use_bias (bool, optional): Whether to use bias, default is True.
docstr: Making a forward pass of the fully-connected layer.
  
  Arg types:
      * **X** (PyTorch Float Tensor) - Input tensor, with shape (batch_size, num_his, num_nodes, 1).
  
  Return types:
      * **X** (PyTorch Float Tensor) - Output tensor, with shape (batch_size, num_his, num_nodes, units[-1]).
docstr_tok: ["Making","a","forward","pass","of","the","fully-connected","layer",".","Arg","types",":","*","*","*","X","*","*","(","PyTorch","Float","Tensor",")","-","Input","tensor",",","with","shape","(","batch_size",",","num_his",",","num_nodes",",","1",")",".","Return","types",":","*","*","*","X","*","*","(","PyTorch","Float","Tensor",")","-","Output","tensor",",","with","shape","(","batch_size",",","num_his",",","num_nodes",",","units","[","-1","]",")","."]
code: def forward(self, X: torch.FloatTensor) -> torch.FloatTensor:
      """
      Making a forward pass of the fully-connected layer.
  
      Arg types:
          * **X** (PyTorch Float Tensor) - Input tensor, with shape (batch_size, num_his, num_nodes, 1).
  
      Return types:
          * **X** (PyTorch Float Tensor) - Output tensor, with shape (batch_size, num_his, num_nodes, units[-1]).
      """
      for conv in self._conv2ds:
          X = conv(X)
      return X
  
imports: import math
  from typing import Union, Callable, Optional
  import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 2 for calling the FullyConnected obj's underlying member method code with example usage: obj.forward(X) and returns: X