def METHOD_NAME(self, node: TorchNode):
    assert node.op_type.split('::')[0] == 'prim'
    if node.op_type == "prim::ListConstruct" or node.op_type == "prim::TupleConstruct":
        self.ref_tensor[node.outputs[0]] = [self.get_input(name) for name in node.inputs]
    elif node.op_type == "prim::DictConstruct":
        pass
    elif node.op_type in ["prim::TupleUnpack", "prim::ListUnpack"]:
        for i in range(len(node.outputs)):
            self.ref_tensor[node.outputs[i]] = self.get_input(node.inputs[0])[i]
    elif node.op_type == "prim::NumToTensor":
        self.ref_tensor[node.outputs[0]] = torch.tensor(self.get_input(node.inputs[0]))
    elif node.op_type == "prim::Constant":
        self.convert_constant(node)
    elif node.op_type == "prim::GetAttr":
        self.convert_attr(node)
    else:
        raise RuntimeError("{} not suppose".format(node.op_type))