code: def _compile_out_x(self, ndim, outs):
      # 2D: int out_x0 = i / (out_1) % out_0;
      #     int out_x1 = i % out_1;
      def aux(out_x, xs):
          head = xs[0]
          tail = xs[1:]
          if tail:
              return "int {} = i / ({}) % {};".format(
                  out_x, mulexp(tail), head
              )
          else:
              return "int {} = i % {};".format(out_x, head)
  
      out_xs = vars("out_x", ndim)
      out_x_decls = map_(aux, out_xs, succ_sublists(outs))
      return out_x_decls, out_xs
  
imports: import functools
  import six
  from chainer.backends import cuda
label_desc: Use image node_id 5 for calling the Im2colNDKernel obj's underlying member method code with example usage: obj._compile_out_x(ndim, outs) and returns: out_x_decls,  out_xs, str, str