code: def test_dup_sub():
      assert dup_sub([], [], ZZ) == []
      assert dup_sub([ZZ(1)], [], ZZ) == [ZZ(1)]
      assert dup_sub([], [ZZ(1)], ZZ) == [ZZ(-1)]
      assert dup_sub([ZZ(1)], [ZZ(1)], ZZ) == []
      assert dup_sub([ZZ(1)], [ZZ(2)], ZZ) == [ZZ(-1)]
  
      assert dup_sub([ZZ(1), ZZ(2)], [ZZ(1)], ZZ) == [ZZ(1), ZZ(1)]
      assert dup_sub([ZZ(1)], [ZZ(1), ZZ(2)], ZZ) == [ZZ(-1), ZZ(-1)]
  
      assert dup_sub(
          [ZZ(3), ZZ(2), ZZ(1)], [ZZ(8), ZZ(9), ZZ(10)], ZZ
      ) == [ZZ(-5), ZZ(-7), ZZ(-9)]
  
      assert dup_sub([], [], QQ) == []
      assert dup_sub([QQ(1, 2)], [], QQ) == [QQ(1, 2)]
      assert dup_sub([], [QQ(1, 2)], QQ) == [QQ(-1, 2)]
      assert dup_sub([QQ(1, 3)], [QQ(1, 3)], QQ) == []
      assert dup_sub([QQ(1, 3)], [QQ(2, 3)], QQ) == [QQ(-1, 3)]
  
      assert dup_sub([QQ(1, 7), QQ(2, 7)], [QQ(1)], QQ) == [
          QQ(1, 7),
          QQ(-5, 7),
      ]
      assert dup_sub([QQ(1)], [QQ(1, 7), QQ(2, 7)], QQ) == [
          QQ(-1, 7),
          QQ(5, 7),
      ]
  
      assert dup_sub(
          [QQ(3, 7), QQ(2, 7), QQ(1, 7)],
          [QQ(8, 7), QQ(9, 7), QQ(10, 7)],
          QQ,
      ) == [QQ(-5, 7), QQ(-7, 7), QQ(-9, 7)]
  
imports: from sympy.external.gmpy import GROUND_TYPES
  from sympy.polys.densebasic import dup_normal, dmp_normal
  from sympy.polys.densearith import dup_add_term, dmp_add_term, dup_sub_term, dmp_sub_term, dup_mul_term, dmp_mul_term, dup_add_ground, dmp_add_ground, dup_sub_ground, dmp_sub_ground, dup_mul_ground, dmp_mul_ground, dup_quo_ground, dmp_quo_ground, dup_exquo_ground, dmp_exquo_ground, dup_lshift, dup_rshift, dup_abs, dmp_abs, dup_neg, dmp_neg, dup_add, dmp_add, dup_sub, dmp_sub, dup_mul, dmp_mul, dup_sqr, dmp_sqr, dup_pow, dmp_pow, dup_add_mul, dmp_add_mul, dup_sub_mul, dmp_sub_mul, dup_pdiv, dup_prem, dup_pquo, dup_pexquo, dmp_pdiv, dmp_prem, dmp_pquo, dmp_pexquo, dup_rr_div, dmp_rr_div, dup_ff_div, dmp_ff_div, dup_div, dup_rem, dup_quo, dup_exquo, dmp_div, dmp_rem, dmp_quo, dmp_exquo, dup_max_norm, dmp_max_norm, dup_l1_norm, dmp_l1_norm, dup_l2_norm_squared, dmp_l2_norm_squared, dup_expand, dmp_expand
  from sympy.polys.polyerrors import ExactQuotientFailed
  from sympy.polys.specialpolys import f_polys
  from sympy.polys.domains import FF, ZZ, QQ
  from sympy.testing.pytest import raises
label_desc: Use image node_id 25 for calling a global function with example usage: test_dup_sub() without return types