code: def forward(self, feat_list):
      feature_1_4, feature_1_8, feature_1_16, feature_1_32 = feat_list
      up_1_16 = self.deconv1(self.transit1(feature_1_32))
      up_1_8 = self.deconv2(self.transit2(feature_1_16 + up_1_16))
      up_1_4 = self.deconv3(self.transit3(feature_1_8 + up_1_8))
      up_1_2 = self.deconv4(self.transit4(feature_1_4 + up_1_4))
      up_1_1 = self.deconv5(self.transit5(up_1_2))
  
      pred = self.pred(up_1_1)
      if self.add_edge:
          edge = self.edge(up_1_1)
          return pred, edge
      else:
          return pred
  
imports: import paddle.nn
  from paddleseg import utils
  from paddleseg.cvlibs import manager
label_desc: Use image node_id 3 for calling the PortraitNetHead obj's underlying member method code with example usage: obj.forward(feat_list) and returns: pred,  edge, pred