code: def _init_impl(self, data, ctx_list):
          
          self._ctx_list = list(ctx_list)
          self._ctx_map = [[], []]
          for i, ctx in enumerate(self._ctx_list):
              dev_list = self._ctx_map[ctx.device_typeid&1]
              while len(dev_list) <= ctx.device_id:
                  dev_list.append(None)
              dev_list[ctx.device_id] = i
  
          self._data = [data.copyto(ctx) for ctx in self._ctx_list]
          self._init_grad()
docs: Sets data and grad.