code: def testCollectiveOpsOnComplex128(self):
      # This function tests for AllScattering, AllReduce, and AllToAll.
      self.skipForDeviceType(["TPU"], "TPU does not support comolex128")
      expected_layout = Layout.inner_sharded(self.mesh, "x", rank=2)
      initial_layout = Layout.batch_sharded(self.mesh, "x", rank=2)
  
      a = constant_op.constant(
          np.array([[1, 2 + 2j], [3 + 1j, 4 + 5j]]),
          dtype=dtypes.complex128,
      )
      # Tests AllScatter
      sharded_a_initial = api.relayout(a, initial_layout)
      # Tests AllToAll / AllReduce
      sharded_a = api.relayout(sharded_a_initial, expected_layout)
      api.check_layout(sharded_a, expected_layout)
  
imports: import os
  from absl.testing import parameterized
  import numpy
  from tensorflow.dtensor.python import api
  from tensorflow.dtensor.python import config
  from tensorflow.dtensor.python import d_variable
  from tensorflow.dtensor.python import dtensor_device
  from tensorflow.dtensor.python import layout
  from tensorflow.dtensor.python.tests import test_backend_util
  from tensorflow.dtensor.python.tests import test_util
  from tensorflow.python.eager.polymorphic_function import polymorphic_function
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gen_array_ops
  from tensorflow.python.ops import gen_math_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.platform import test
label_desc: Use image node_id 10 for calling the CollectiveTest obj's underlying member method code with example usage: obj.testCollectiveOpsOnComplex128() without return types