code: def make_fc(dim_in, hidden_dim, use_gn=False):
      '''
          Caffe2 implementation uses XavierFill, which in fact
          corresponds to kaiming_uniform_ in PyTorch
      '''
      if use_gn:
          fc = nn.Linear(dim_in, hidden_dim, bias=False)
          nn.init.kaiming_uniform_(fc.weight, a=1)
          return nn.Sequential(fc, group_norm(hidden_dim))
      fc = nn.Linear(dim_in, hidden_dim)
      nn.init.kaiming_uniform_(fc.weight, a=1)
      nn.init.constant_(fc.bias, 0)
      return ff make_fc(dim_in, hidden_dim, use_gn=False):
      '''
          Caffe2 implementation uses XavierFill, which in fact
          corresponds to kaiming_uniform_ in PyTorch
      '''
      if use_gn:
          fc = nn.Linear(dim_in, hidden_dim, bias=False)
          nn.init.kaiming_uniform_(fc.weight, a=1)
          return nn.Sequential(fc, group_norm(hidden_dim))
      fc = nn.Linear(dim_in, hidden_dim)
      nn.init.kaiming_uniform_(fc.weight, a=1)
      nn.init.constant_(fc.bias, 0)
      return fc
docs: Caffe2 implementation uses XavierFill, which in fact
          corresponds to kaiming_uniform_ in PyTorch