code: def test_set_symmetric_difference_by_key(self, order):
      if runtime.is_hip:
          pytest.xfail("HIP does not support thrust set operations.")
  
      @jit.rawkernel()
      def set_symmetric_difference_by_key(
          keys1, keys2, values1, values2, keys_out, values_out, size
      ):
          it0, it1 = jit.thrust.set_symmetric_difference_by_key(
              jit.thrust.device,
              keys1.begin(),
              keys1.end(),
              keys2.begin(),
              keys2.end(),
              values1.begin(),
              values2.begin(),
              keys_out.begin(),
              values_out.begin(),
          )
          size[0] = it0 - keys_out.begin()
          size[1] = it1 - values_out.begin()
  
      a_keys = cupy.array([0, 1, 2, 4, 6, 7])
      a_vals = cupy.array([1, 1, 1, 1, 1, 1])
      b_keys = cupy.array([1, 2, 5, 8])
      b_vals = cupy.array([2, 2, 2, 2])
      keys_out = cupy.zeros((10,), dtype=numpy.int64)
      vals_out = cupy.zeros((10,), dtype=numpy.int64)
      size = cupy.zeros((2,), dtype=numpy.int64)
      set_symmetric_difference_by_key[1, 1](
          a_keys, b_keys, a_vals, b_vals, keys_out, vals_out, size
      )
  
      testing.assert_array_equal(size, cupy.array([6, 6]))
      testing.assert_array_equal(
          keys_out[:6], cupy.array([0, 4, 5, 6, 7, 8])
      )
      testing.assert_array_equal(
          vals_out[:6], cupy.array([1, 1, 2, 1, 1, 2])
      )
  
imports: import numpy
  import pytest
  import cupy
  from cupy import testing
  from cupy_backends.cuda.api import runtime
  from cupyx import jit
label_desc: Use image node_id 43 for calling the TestThrust obj's underlying member method code with example usage: obj.test_set_symmetric_difference_by_key(order) without return types