code: def test_tensors_in_tables_parquet_roundtrip_variable_shaped(
      ray_start_regular_shared, tmp_path
  ):
      shapes = [(2, 2), (3, 3), (4, 4)]
      cumsum_sizes = np.cumsum(
          [0] + [np.prod(shape) for shape in shapes[:-1]]
      )
      arrs = [
          np.arange(offset, offset + np.prod(shape)).reshape(shape)
          for offset, shape in zip(cumsum_sizes, shapes)
      ]
      outer_dim = len(arrs)
      df = pd.DataFrame(
          {"one": list(range(outer_dim)), "two": TensorArray(arrs)}
      )
      ds = ray.data.from_pandas(df)
      ds = ds.map_batches(
          lambda df: df + 1, batch_size=2, batch_format="pandas"
      )
      ds.write_parquet(str(tmp_path))
      ds = ray.data.read_parquet(str(tmp_path))
      values = [[s["one"], s["two"]] for s in ds.take()]
      expected = list(
          zip(list(range(1, outer_dim + 1)), [arr + 1 for arr in arrs])
      )
      for v, e in zip(sorted(values), expected):
          np.testing.assert_equal(v, e)
  
imports: import time
  import numpy
  import pandas
  import pyarrow
  import pytest
  import ray
  from ray.air.util.tensor_extensions.utils import _create_possibly_ragged_ndarray
  from ray.data.block import BlockAccessor
  from ray.data.extensions.tensor_extension import ArrowTensorArray, ArrowTensorType, ArrowVariableShapedTensorArray, ArrowVariableShapedTensorType, TensorArray, TensorDtype
  from ray.data.tests.conftest import *
  from ray.data.tests.util import extract_values
  from ray.tests.conftest import *
label_desc: Use image node_id 14 for calling a global function with example usage: test_tensors_in_tables_parquet_roundtrip_variable_shaped(ray_start_regular_shared, tmp_path) without return types