class_docstr: Choose elements depending on condition.
code: def backward(self, indexes, grad_outputs):
      condition = self.condition
      xp = backend.get_array_module(condition)
      (g,) = grad_outputs
      zero = xp.zeros((), dtype=g.dtype)
      ret = []
      if 0 in indexes:
          (gx,) = Where(condition).apply((g, zero))
          ret.append(chainer.functions.sum_to(gx, self.inputs[0].shape))
      if 1 in indexes:
          (gy,) = Where(condition).apply((zero, g))
          ret.append(chainer.functions.sum_to(gy, self.inputs[1].shape))
      return ret
  
file_path: chainer/chainer/functions/array/where.py
imports: import numpy
  import chainer
  from chainer import backend
  from chainer import function_node
  from chainer.utils import type_check
label_desc: Use image node_id 4 for calling the Where obj's underlying member method code with example usage: obj.backward(indexes, grad_outputs) and returns: ret