code: def dataset1_MGPropertyGraph(dask_client):
      """
      Fixture which returns an instance of a PropertyGraph with vertex and edge
      data added from dataset1, parameterized for different DataFrame types.
      """
      dataframe_type = cudf.DataFrame
      (
          merchants,
          users,
          transactions,
          relationships,
          referrals,
      ) = dataset1.values()
      from cugraph.experimental import MGPropertyGraph
  
      mpG = MGPropertyGraph()
  
      # Vertex and edge data is added as one or more DataFrames; either a Pandas
      # DataFrame to keep data on the CPU, a cuDF DataFrame to keep data on GPU,
      # or a dask_cudf DataFrame to keep data on distributed GPUs.
  
      # For dataset1: vertices are merchants and users, edges are transactions,
      # relationships, and referrals.
  
      # property_columns=None (the default) means all columns except
      # vertex_col_name will be used as properties for the vertices/edges.
  
      sg_df = dataframe_type(columns=merchants[0], data=merchants[1])
      mg_df = dask_cudf.from_cudf(sg_df, npartitions=2)
      mpG.add_vertex_data(
          mg_df,
          type_name="merchants",
          vertex_col_name="merchant_id",
          property_columns=None,
      )
  
      sg_df = dataframe_type(columns=users[0], data=users[1])
      mg_df = dask_cudf.from_cudf(sg_df, npartitions=2)
      mpG.add_vertex_data(
          mg_df,
          type_name="users",
          vertex_col_name="user_id",
          property_columns=None,
      )
  
      sg_df = dataframe_type(
          columns=transactions[0], data=transactions[1]
      )
      mg_df = dask_cudf.from_cudf(sg_df, npartitions=2)
      mpG.add_edge_data(
          mg_df,
          type_name="transactions",
          vertex_col_names=("user_id", "merchant_id"),
          property_columns=None,
      )
  
      sg_df = dataframe_type(
          columns=relationships[0], data=relationships[1]
      )
      mg_df = dask_cudf.from_cudf(sg_df, npartitions=2)
      mpG.add_edge_data(
          mg_df,
          type_name="relationships",
          vertex_col_names=("user_id_1", "user_id_2"),
          property_columns=None,
      )
  
      sg_df = dataframe_type(columns=referrals[0], data=referrals[1])
      mg_df = dask_cudf.from_cudf(sg_df, npartitions=2)
      mpG.add_edge_data(
          mg_df,
          type_name="referrals",
          vertex_col_names=("user_id_1", "user_id_2"),
          property_columns=None,
      )
  
      assert type_is_categorical(mpG)
      return (mpG, dataset1)
  
imports: import gc
  import pytest
  import pandas
  import numpy
  import cudf
  import cugraph
  import dask_cudf
  import cupy
  import cugraph.dask
  from cupy.testing import assert_array_equal
  from cudf.testing import assert_frame_equal, assert_series_equal
  from pylibcugraph.testing.utils import gen_fixture_params_product
  from cugraph.dask.common.mg_utils import is_single_gpu
  from cugraph.datasets import cyber, netscience
label_desc: Use image node_id 6 for calling a global function with example usage: dataset1_MGPropertyGraph(dask_client) and returns: mpG,  dataset1