code: def test_rechunk_execution(setup):
      ns = np.random.RandomState(0)
      df = pd.DataFrame(
          ns.rand(100, 10), columns=["a" + str(i) for i in range(10)]
      )
  
      # test rechunk after sort
      mdf = DataFrame(df, chunk_size=10)
      result = (
          mdf.sort_values("a0").rechunk(chunk_size=10).execute().fetch()
      )
      expected = df.sort_values("a0")
      pd.testing.assert_frame_equal(result, expected)
  
      data = pd.DataFrame(np.random.rand(8, 10))
      df = from_pandas_df(pd.DataFrame(data), chunk_size=3)
      df2 = df.rechunk((3, 4))
      res = df2.execute().fetch()
      pd.testing.assert_frame_equal(data, res)
  
      data = pd.DataFrame(
          np.random.rand(10, 10),
          index=np.random.randint(-100, 100, size=(10,)),
          columns=[np.random.bytes(10) for _ in range(10)],
      )
      df = from_pandas_df(data)
      df2 = df.rechunk(5)
      res = df2.execute().fetch()
      pd.testing.assert_frame_equal(data, res)
  
      # test Series rechunk execution.
      data = pd.Series(np.random.rand(10))
      series = from_pandas_series(data)
      series2 = series.rechunk(3)
      res = series2.execute().fetch()
      pd.testing.assert_series_equal(data, res)
  
      series2 = series.rechunk(1)
      res = series2.execute().fetch()
      pd.testing.assert_series_equal(data, res)
  
      # test index rechunk execution
      data = pd.Index(np.random.rand(10))
      index = from_pandas_index(data)
      index2 = index.rechunk(3)
      res = index2.execute().fetch()
      pd.testing.assert_index_equal(data, res)
  
      index2 = index.rechunk(1)
      res = index2.execute().fetch()
      pd.testing.assert_index_equal(data, res)
  
      # test rechunk on mixed typed columns
      data = pd.DataFrame({0: [1, 2], 1: [3, 4], "a": [5, 6]})
      df = from_pandas_df(data)
      df = df.rechunk((2, 2)).rechunk({1: 3})
      res = df.execute().fetch()
      pd.testing.assert_frame_equal(data, res)
  
imports: import random
  from collections import OrderedDict
  import numpy
  import pandas
  import pytest
  import mars
  from ....config import options, option_context
  from ....dataframe import DataFrame, Series
  from ....tensor import arange, tensor
  from ....tensor.random import rand
  from ....tests.core import require_cudf
  from ....utils import lazy_import, pd_release_version, no_default
  from ...None import eval, cut, qcut, get_dummies
  from ...core import DATAFRAME_OR_SERIES_TYPE
  from ...datasource.dataframe import from_pandas
  from ...datasource.series import from_pandas
  from ...datasource.index import from_pandas
  from ..None import to_gpu, to_cpu
  from ..bloom_filter import filter_by_bloom_filter
  from ..shift import _enable_no_default, _with_column_freq_bug
  from ..to_numeric import to_numeric
  from ..rebalance import DataFrameRebalance
label_desc: Use image node_id 3 for calling a global function with example usage: test_rechunk_execution(setup) without return types