code: def __init__(
      self,
      in_channels,
      out_channels,
      norm_layer=nn.BatchNorm2d,
      **kwargs,
  ):
      super(_PointwiseSpatialAttention, self).__init__()
      reduced_channels = 512
      self.collect_attention = _AttentionGeneration(
          in_channels, reduced_channels, out_channels, norm_layer
      )
      self.distribute_attention = _AttentionGeneration(
          in_channels, reduced_channels, out_channels, norm_layer
      )
  
imports: import torch
  import torch.nn
  import torch.nn.functional
  from pywick.models.segmentation.da_basenets.basic import _ConvBNReLU
  from pywick.models.segmentation.da_basenets.segbase import SegBaseModel
  from pywick.models.segmentation.da_basenets.fcn import _FCNHead
label_desc: Use image node_id 1 to create a new _PointwiseSpatialAttention object from inherited base classes: nn with example: obj = _PointwiseSpatialAttention(in_channels, out_channels, norm_layer)