code: def forward(self, x, condition):
      length = x.shape[2]
      h = self.conv(x)
      h = h[:, :, :length]  # crop
      h += condition
      tanh_z, sig_z = F.split_axis(h, 2, axis=1)
      z = F.tanh(tanh_z) * F.sigmoid(sig_z)
      if x.shape[2] == z.shape[2]:
          residual = self.res(z) + x
      else:
          residual = self.res(z) + x[:, :, -1:]  # crop
      skip_conenection = self.skip(z)
      return residual, skip_conenection
  
file_path: chainer/examples/wavenet/modules.py
imports: import chainer
  import chainer.functions
  import chainer.links
label_desc: Use image node_id 2 for calling the ResidualBlock obj's underlying member method code with example usage: obj.forward(x, condition) and returns: residual,  skip_conenection