code: def test_shuffle_dont_convert_to_array(csc_container):
      # Check that shuffle does not try to convert to numpy arrays with float
      # dtypes can let any indexable datastructure pass-through.
      a = ["a", "b", "c"]
      b = np.array(["a", "b", "c"], dtype=object)
      c = [1, 2, 3]
      d = MockDataFrame(
          np.array([["a", 0], ["b", 1], ["c", 2]], dtype=object)
      )
      e = csc_container(np.arange(6).reshape(3, 2))
      a_s, b_s, c_s, d_s, e_s = shuffle(a, b, c, d, e, random_state=0)
  
      assert a_s == ["c", "b", "a"]
      assert type(a_s) == list  # noqa: E721
  
      assert_array_equal(b_s, ["c", "b", "a"])
      assert b_s.dtype == object
  
      assert c_s == [3, 2, 1]
      assert type(c_s) == list  # noqa: E721
  
      assert_array_equal(
          d_s, np.array([["c", 2], ["b", 1], ["a", 0]], dtype=object)
      )
      assert type(d_s) == MockDataFrame  # noqa: E721
  
      assert_array_equal(
          e_s.toarray(), np.array([[4, 5], [2, 3], [0, 1]])
      )
  
imports: import string
  import timeit
  import warnings
  from copy import copy
  from itertools import chain
  import numpy
  import pytest
  from sklearn import config_context
  from sklearn.utils import _approximate_mode, _determine_key_type, _get_column_indices, _is_polars_df, _message_with_time, _print_elapsed_time, _safe_assign, _safe_indexing, _to_object_array, check_random_state, column_or_1d, deprecated, gen_even_slices, get_chunk_n_rows, is_scalar_nan, resample, safe_mask, shuffle
  from sklearn.utils._mocking import MockDataFrame
  from sklearn.utils._testing import _convert_container, assert_allclose_dense_sparse, assert_array_equal, assert_no_warnings
  from sklearn.utils.fixes import CSC_CONTAINERS, CSR_CONTAINERS
label_desc: Use image node_id 31 for calling a global function with example usage: test_shuffle_dont_convert_to_array(csc_container) without return types