code: def forward(self, x):
      residual = self.downsample(x)
  
      out = self.conv1(x)
      out = self.bn1(out)
      out = self.relu(out)
  
      out = self.conv2(out)
      out = self.bn2(out)
      out = self.relu(out)
  
      out = self.conv3(out)
      out = self.bn3(out)
  
      out += residual
      out = self.relu(out)
  
      return out
  
file_path: mmocr/mmocr/models/textrecog/layers/conv_layer.py
imports: import torch.nn
  from mmcv.cnn import build_plugin_layer
label_desc: Use image node_id 2 for calling the Bottleneck obj's underlying member method code with example usage: obj.forward(x) and returns: out