code: def __new__(
      cls, incoming_graph_data=None, multigraph_input=None, **attr
  ) -> MultiGraph:
      if (
          isinstance(incoming_graph_data, dict)
          and multigraph_input is not False
      ):
          new_graph = nxcg.from_networkx(
              nx.MultiGraph(
                  incoming_graph_data, multigraph_input=multigraph_input
              ),
              preserve_all_attrs=True,
          )
      else:
          new_graph = super().__new__(cls, incoming_graph_data)
      new_graph.graph.update(attr)
      return new_graph
  
imports: from __future__ import annotations
  from copy import deepcopy
  from typing import TYPE_CHECKING, ClassVar
  import cupy
  import networkx
  import numpy
  import nx_cugraph
  from ..utils import index_dtype
  from .graph import Graph
label_desc: Use image node_id 6 for calling the MultiGraph obj's underlying member method code with example usage: obj.__new__(cls, incoming_graph_data, multigraph_input) and returns: new_graph