code: def execute(cls, ctx, op):
      inputs, device_id, xp = as_same_device(
          [ctx[c.key] for c in op.inputs],
          device=op.device,
          ret_extra=True,
      )
  
      if len(inputs) == 1:
          val, real = inputs[0], op.rhs
      else:
          assert len(inputs) == 2
          val, real = inputs
  
      with device(device_id):
          val = val.copy()
          val.real = real
  
          ctx[op.outputs[0].key] = val
  
file_path: mars/mars/tensor/arithmetic/setreal.py
imports: from ...None import opcodes
  from ..array_utils import as_same_device, device
  from .core import TensorBinOp
  from .utils import arithmetic_operand
label_desc: Use image node_id 1 for calling the TensorSetReal obj's underlying member method code with example usage: obj.execute(cls, ctx, op) without return types