def METHOD_NAME(self, prefix, in_channels, out_channels, stride=2):
    right = left = self.prev_blob
    out_channels = out_channels // 2
    # Enlarge the receptive field for detection task
    if self.detection:
        left = self.add_detection_unit(left, prefix + '_left_detection',
                                       in_channels, in_channels)
    left = self.add_dwconv3x3_bn(left, prefix + 'left_dwconv',
                                 in_channels, stride)
    left = self.add_conv1x1_bn(left, prefix + '_left_conv1', in_channels,
                               out_channels)
    if self.detection:
        right = self.add_detection_unit(right, prefix + '_right_detection',
                                        in_channels, in_channels)
    right = self.add_conv1x1_bn(right, prefix + '_right_conv1',
                                in_channels, out_channels)
    right = self.add_dwconv3x3_bn(right, prefix + '_right_dwconv',
                                  out_channels, stride)
    right = self.add_conv1x1_bn(right, prefix + '_right_conv2',
                                out_channels, out_channels)
    self.prev_blob = brew.concat(self.model, [right, left],
                                 prefix + '_concat')
    self.prev_blob = self.model.net.ChannelShuffle(
        self.prev_blob, prefix + '_ch_shuffle',
        group=self.num_groups, kernel=1
    )