def backward(self, xs, gy):
    xp = cuda.get_array_module(*xs)
    sizes = numpy.array([x.shape[self.axis] for x in xs[:(- 1)]]).cumsum()
    return xp.split(gy[0], sizes, axis=self.axis)
def backward(self, xs, gy):
    xp = cuda.get_array_module(*xs)
    sizes = numpy.array([x.shape[self.axis] for x in xs[:(- 1)]]).cumsum()
    return xp.split(gy[0], sizes, axis=self.axis)