code: def run_collective(self, name, **kwargs):
      if name in self.available_coll:
          kwargs["group"] = self.get_all_ranks_from_group(
              kwargs["group"]
          )
          if "dst" in kwargs:
              kwargs["dst"] = kwargs["group"].index(kwargs["dst"])
          if "src" in kwargs:
              kwargs["src"] = kwargs["group"].index(kwargs["src"])
          func = "self.ccl_comm_op." + name
          eval(func)(*(kwargs.values()))
          return CCLHandler(self.ccl_comm_op)
      else:
          func = "super(CCLBackend, self)." + name
          return eval(func)(*(kwargs.values()))
  
imports: import torch
  from deepspeed.accelerator import get_accelerator
  from .reduce_op import ReduceOp
  from .torch import TorchBackend
label_desc: Use image node_id 3 for calling the CCLBackend obj's underlying member method code with example usage: obj.run_collective(name) and returns: CCLHandler, eval