+
    iGa                        R t ^ RIHtHt ^ RIHtHtHtHtH	t	H
t
Ht ^ RIHt ^ RIHt ^ RIHt ^ RIHtHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IHt ^ RIHtH t  ]! 4       w  t!t"t#t$t%t&t']! 4       w  t(t)R t*R t+R t,R t-R t.R t/R t0R t1R t2R t3R t4R t5] R 4       t6R t7R t8R t9R t:R t;R t<R t=R  t>R! t?R" t@R# tAR$ tBR%# )&zDTools for polynomial factorization routines in characteristic zero. )ringxring)FFZZQQZZ_IQQ_IRREX)
polyconfig)DomainError)ANP)f_polysw_polys)I)sqrt)sin)	nextprime)raisesXFAILc                  Z   \        R \        4      w  rV P                  V^,          ^V^,          ,          ,           ^V^,          ,          ,           ^&V^,          ,          ,           ^V,          ,           ^,           V^,           V^,           34      V^,           ^3V^,           ^3.8X  g   Q hR# xN)r   r   dup_trial_divisionRr   s     `/var/www/html/photoedit/myenv/lib/python3.14/site-packages/sympy/polys/tests/test_factortools.pytest_dup_trial_divisionr      s    R=DA1qAv1a4 7"QT' ABqD H1 LqSTuVWZ[V[n]cdghchjkblopstotvwnxayyyy    c                  \   \        R \        4      w  rpV P                  V^,          ^V^,          ,          ,           ^V^,          ,          ,           ^&V^,          ,          ,           ^V,          ,           ^,           V^,           V^,           34      V^,           ^3V^,           ^3.8X  g   Q hR# x,yN)r   r   dmp_trial_divisionr   r   ys      r   test_dmp_trial_divisionr%      s    5"oGA!1qAv1a4 7"QT' ABqD H1 LqSTuVWZ[V[n]cdghchjkblopstotvwnxayyyyr   c                  2   \        R \        4      w  rV P                  ^V^,          ,          ^V,          ,           ^,           4      ^8X  g   Q hV P                  V^,          ^V^,          ,          ,           ^8V,          ,           ^@,           4      ^8X  g   Q hR# r   )r   r   dup_zz_mignotte_boundr   s     r   test_dup_zz_mignotte_boundr(      st    R=DA""1QT6AaC<!#34999""1a4"QT'>BqD#82#=>#EEEr   c                      \        R \        4      w  rpV P                  ^V^,          ,          ^V,          ,           ^,           4      ^ 8X  g   Q hR# r    )r   r   dmp_zz_mignotte_boundr#   s      r   test_dmp_zz_mignotte_boundr+   %   s?    5"oGA!""1QT6AaC<!#34:::r   c                     \        R \        4      w  rV^,          ^,
          pV^,          ^V^,          ,          ,           V,
          ^,
          pV^,
          pRp^V^,          ,          ^V,          ,
          ^,
          pV P                  ^W#WEV4      w  rxrWq^,          ^V^,          ,          ,           V,
          ^,
          8X  g   Q hW^,
          8X  g   Q hV	^8X  g   Q hV
RV^,          ,          ^V,          ,
          ^,
          8X  g   Q hR# )r   Ni)r   r   dup_zz_hensel_step)r   r   fghstGHSTs              r   test_dup_zz_hensel_stepr8   *   s    R=DA	1qA	1qAvAA	AA
A	!Q$1qA%%aqQ7JA!1qAv!A%%%%A::6M61a4"Q$""""r   c                     \        R \        4      w  rV^,          ^,
          pV^,
          V^,
          V^,           V^,           .pV P                  \        ^4      W#^4      V^,
          V^,
          V^,           V^,           .8X  g   Q hR# r   )r   r   dup_zz_hensel_lift)r   r   r/   Fs       r   test_dup_zz_hensel_liftr<   ;   s{    R=DA	1qA	
QAq1ua!e$A1qQ/	
QCS!a%() ) )r   c                  B   \        R \        4      w  rV P                  ^V^,          ,          ^V^,          ,          ,           ^V^,          ,          ,           ^V,          ,           ^,           4      e   Q hV P                  ^V^,          ,          ^V^,          ,          ,           ^V^,          ,          ,           ^V,          ,           ^,           4      e   Q hV P                  ^V^,          ,          ^V^,          ,          ,           ^V^,          ,          ,           ^V,          ,           ^
,           4      RJ g   Q hV P                  ^V^,          ,          ^V^,          ,          ,           ^V^,          ,          ,           ^V,          ,           ^,           4      RJ g   Q hR# )r   NT)r   r   dup_zz_irreducible_pr   s     r   test_dup_zz_irreducible_pr?   E   s+   R=DA!!!AqD&1QT6/AadF":QqS"@1"DEMMM!!!AqD&1QT6/AadF":QqS"@1"DEMMM!!!AqD&1QT6/AadF":QqS"@2"EF$NNN!!!AqD&1QT6/AadF":QqS"@2"EF$NNNr   c                  2   \        R \        4      w  rV P                  V^,
          4      RJ g   Q hV P                  V^,           4      RJ g   Q hV P                  V^,          V,           ^,           4      RJ g   Q hV P                  V^,          ^,           4      RJ g   Q hV P                  V^,          V^,          ,           V^,          ,           V,           ^,           4      RJ g   Q hV P                  V^,          V,
          ^,           4      RJ g   Q hV P                  V^,          V^,          ,           V^,          ,           V^,          ,           V^,          ,           V,           ^,           4      RJ g   Q hV P                  V^,          ^,           4      RJ g   Q hV P                  V^,          V^,          ,           ^,           4      RJ g   Q hV P                  ^ 4      RJ g   Q hV P                  ^4      RJ g   Q hV P                  V4      RJ g   Q hV P                  V^,           4      RJ g   Q hV P                  ^V,          ^,           4      RJ g   Q hV P                  V^,          ^,
          4      RJ g   Q hV^,          V^,          ,           V^
,          ,
          V^,          ,           V^,          ,
          V^,          ,           ^,           pV P                  V4      RJ g   Q hV^,          V^,          ,           V^
,          ,
          V^,          ,
          V^,          ,
          V^,          ,           ^,           pV P                  V4      RJ g   Q h\        R \        4      w  rV P                  V^,          V,           ^,           4      RJ g   Q hV P                  \        ^^4      V^,          ,          V,           ^,           4      RJ g   Q h\        R \        R,          4      w  rV P                  V^,          V,           ^,           4      RJ g   Q hR# )r   TFr$   N)r   r   dup_cyclotomic_pr   )r   r   r/   r0   s       r   test_dup_cyclotomic_prB   O   sj   R=DAa!e$,,,a!e$,,,adQhl+t333adQh'4///adQTkAqD014q89TAAAadQhl+t333adQTkAqD01a47!Q$>BQFG4OOOadQh'4///adQTkAo.$666a E)))a E)))a E)))a!e$---acAg&%///adQh'5000	2221$q!t+ad2Q6Aa E)))	2221$q!t+ad2Q6Aa D(((R=DAadQhl+t333b1gadlQ.23u<<<RWDAadQhl+u444r   c                     \        R \        4      w  rV P                  ^4      V^,
          8X  g   Q hV P                  ^4      V^,           8X  g   Q hV P                  ^4      V^,          V,           ^,           8X  g   Q hV P                  ^4      V^,          ^,           8X  g   Q hV P                  ^4      V^,          V^,          ,           V^,          ,           V,           ^,           8X  g   Q hV P                  ^4      V^,          V,
          ^,           8X  g   Q hV P                  ^4      V^,          V^,          ,           V^,          ,           V^,          ,           V^,          ,           V,           ^,           8X  g   Q hV P                  ^4      V^,          ^,           8X  g   Q hV P                  ^	4      V^,          V^,          ,           ^,           8X  g   Q hR# r   )r   r   dup_zz_cyclotomic_polyr   s     r   test_dup_zz_cyclotomic_polyrE   q   s   R=DA##A&!a%///##A&!a%///##A&!Q$(Q,666##A&!Q$(222##A&!Q$A+1*<q*@1*DDDD##A&!Q$(Q,666##A&!Q$A+1*<q!t*Cad*JQ*NQR*RRRR##A&!Q$(222##A&!Q$A+/999r   c                     \        R \        4      w  rV P                  ^ 4      e   Q hV P                  ^4      e   Q hV P                  ^V^
,          ,          ^,
          4      e   Q hV P                  V^
,          ^,
          4      e   Q hV P                  V^
,          V^,          ,           ^,
          4      e   Q hV P                  V^,           4      V^,           .8X  g   Q hV P                  V^,
          4      V^,
          .8X  g   Q hV P                  V^,          ^,           4      V^,          ^,           .8X  g   Q hV P                  V^,          ^,
          4      V^,
          V^,           .8X  g   Q hV P                  V^,          ^,           4      V^,           V^,          V,
          ^,           V^,          V^,          ,
          ^,           V^,          V^	,          ,
          ^,           .8X  g   Q hV P                  V^,          ^,
          4      V^,
          V^,          V,           ^,           V^,          V^,          ,           ^,           V^,          V^	,          ,           ^,           .8X  g   Q hR# r   )r   r   dup_zz_cyclotomic_factorr   s     r   test_dup_zz_cyclotomic_factorrH      s   R=DA%%a(000%%a(000%%a2gk2:::%%aeai0888%%aeadlQ&67???%%a!e,Q777%%a!e,Q777%%adQh/AqD1H:===%%adQh/AE1q5>AAA%%aeai0	
Q1q1adQTkAoq"uq!t|a/?@A A A%%aeai0	
Q1q1adQTkAoq"uq!t|a/?@A A Ar   c            	         \        R \        4      w  rV P                  ^ 4      ^ . 38X  g   Q hV P                  ^4      ^. 38X  g   Q hV P                  R4      R. 38X  g   Q hV P                  ^ 4      ^ . 38X  g   Q hV P                  ^4      ^. 38X  g   Q hV P                  R4      R. 38X  g   Q hV P                  ^V,          ^,           4      ^V^,           ^3.38X  g   Q hV P                  ^V,          ^,           4      ^V^,           .38X  g   Q hV^,          V,           ^,           p\	        ^ ^4       F   pV P                  V4      ^V^3.38X  d   K   Q h	  V P                  V^,          ^V,          ,           ^,           4      ^V^,          ^V,          ,           ^,           ^3.38X  g   Q hV P                  ^V^,          ,          ^V,          ,           ^,           4      ^^V,          ^,           ^3.38X  g   Q hV P                  RV^,          ,          ^,           4      R^V,          ^,
          ^3^V,          ^,           ^3.38X  g   Q hV P                  RV^,          ,          ^,           4      R^V,          ^,
          ^V,          ^,           .38X  g   Q hV P                  V^,          ^V^,          ,          ,
          ^V,          ,           ^,
          4      w  rEV^8X  g   Q h\        V4      V^,
          ^3V^,
          ^3V^,
          ^308X  g   Q hV P                  V^,          ^V^,          ,          ,
          ^V,          ,           ^,
          4      ^V^,
          V^,
          V^,
          .38X  g   Q hV P                  ^V^,          ,          ^
V^,          ,          ,           ^V,          ,           ^
,           4      ^V^,           ^3^V^,          ,          ^V,          ,           ^,           ^3.38X  g   Q hV P                  ^V^,          ,          ^
V^,          ,          ,           ^V,          ,           ^
,           4      ^V^,           ^V^,          ,          ^V,          ,           ^,           .38X  g   Q hV P                  V^,          ) V^,          ,           4      w  rEVR8X  g   Q h\        V4      V^3V^,
          ^3V^,           ^3V^,          ^,           ^308X  g   Q hRV^,          ,          RV^,          ,          ,           RV^,          ,          ,           RV^,          ,          ,           RV^,          ,          ,           RV^,          ,          ,
          ^V^,          ,          ,           R,
          pV P                  V4      ^^V^,          ,          ^V^,          ,          ,           ^	V^,          ,          ,           ^,           ^3^V^,          ,          ^V^,          ,          ,           ^,
          ^3.38X  g   Q hRV^,          ,          RV^,          ,          ,           R	V^,          ,          ,           R
V^
,          ,          ,           RV^,          ,          ,
          R,           pV P                  V4      w  rEVR8X  g   Q h\        V4      ^V,          ^,
          ^3^dV^,          ,          ^
V,          ,           ^,
          ^3RV^,          ,          ^}V^,          ,          ,           ^V^,          ,          ,           ^V,          ,           ^,           ^3RV^,          ,          RV^,          ,          ,
          RV^,          ,          ,           ^V,          ,
          ^,           ^3RV^,          ,          RV^,          ,          ,           RV^,          ,          ,           ^V,          ,           ^,           ^308X  g   Q hV^
,          ^,
          p\        P                  ! RR4       V P                  V4      w  rg\        P                  ! RR4       V P                  V4      w  rYhu;8X  d	   ^8X  g   Q h Q h\        V4      \        V	4      u;8X  d   V^,
          ^3V^,           ^3V^,          V^,          ,
          V^,          ,           V,
          ^,           ^3V^,          V^,          ,           V^,          ,           V,           ^,           ^308X  g   Q h Q h\        P                  ! R4       V^
,          ^,           p\        P                  ! RR4       V P                  V4      p\        P                  ! RR4       V P                  V4      p	Yyu;8X  dW   ^V^,          ^,           ^3V^,          V^,          ,
          V^,          ,           V^,          ,
          ^,           ^3.38X  g   Q h Q h\        P                  ! R4       R# )r   8  i@  i3  i  i
  i  D  l     j=7;I l    Gjy@Kz
+l   Ln_2|OH++l   	#~ l   1VkZ iq  i'  i  i  i  USE_CYCLOTOMIC_FACTORTFNl  "@]gk|5 l1VkZ )r   r   dup_zz_factordup_zz_factor_sqfrangesetconfigsetup)
r   r   r/   icfactorsc0F_0c1F_1s
             r   test_dup_zz_factorr]      s   R=DA??1!R(((??1!R(((??22r(***q!aW,,,q!aW,,,r"r2h...??1Q37#QUAJ<'8888qsQw'AAw<777	1q1A1b\q!a1a&]222  ??1a4!A#:>*	
adQqSj1na !"# # # ??2ad7RT>A-.	
acAgq\N   ??2ad7Q;'	qsQwlsQwl 	   r!Q$w{+	acAgcAg 	   A!Q$A!5!9:JA6M6w<QUAJQ
QUAJ????q!ta1f}r!t3a78	
QUUU 	  
 ??1QT6Bq!tG+bd2R78	
a!eQZ1fqslQ"$ 	%% % % qAv1a4/"Q$6;<	
QUq!tVac\A 	       !Q$A.JA7N7w<QFQUAJQ
QTAXqMJJJJQT	DAIQT	)C1H4tAqDy@3q!t8KcRSUVRVhVY\\A??1	
a1fr!Q$w1a4'",a0!Q$hAqD 2%q)+ 	,, , , 	025*1b50	1'2-	. 	$ArE)	* 	ad"		#
 		A #JAw<	
1q!	QTBqD1	a 	QTC1H	r!Q$w	&1	,q	0!4	q!td1a4i	#ad(	*RT	1A	5q9	q!td1a4i	#ad(	*RT	1A	5q9    	
2	A
LL($/ooa GB
LL(%0ooa GB=q===s8s3x 	
Q
	
Q
	
A1q!t	a	!	#Q'	
A1q!t	a	!	#Q'	$      LL()	2	A
LL($/
//!
C
LL(%0
//!
C 2	
adQh]dQTkAqD 1a4'!+Q/1 	22 2 2 2 2 LL()r   c                     \        R \        4      w  rr#\        R\        4      w  rE\        \        V P                  \        4      4      4      pVR8X  g   Q hT^\        R4      rpT^\        ^4      rp
W#,           ^\        R4      rpW#,
          ^\        R4      pppWzVV.pWVV.pWVV.p\        V Uu. uF  pVP                  V4      NK  	  upV4      p\        R4      \        ^4      .pV P                  \        V4      pVP                  V4      w  ppV^8X  d   VTu;8X  d   RV^,          ,          RV^,          ,          ,           RV^,          ,          ,           RV^,          ,          ,           RV^,          ,          ,
          RV,          ,
          R	,
          8X  g   Q h Q hV P                  VV\        ^4      4      . RO8X  g   Q hVP                  V4      '       d*   VP                  V4      V P                  \        4      8X  g   Q hVP                  V4      w  pp^,V^,          ,          ^*V,          ,           ^,           p^~V^,          ,          ^	V,          ,
          ^,           p^V^,          ,          ^,
          pVVVV.8X  g   Q hRV,          ^V,          ,
          V) V^,          ,          V^,          V^,          ,
          3 U u. uF  p V P                  V4      NK  	  p!p V P                  \        VVVVV4      \        VV!38X  g   Q hV P                  \        VV!VV4      p"V P!                  V"4      \        8X  g   Q hR
# u upi u up i )x,y,zr    ` i i` i  i iC  ih  i  Nii)            )r   r   r   r*   w_1zipdropdmp_eval_taildup_primitivedmp_zz_wang_non_divisors	dup_sqf_p
dup_degree
dmp_degreerQ   dmp_zz_wang_lead_coeffsdmp_zz_wang_hensel_lifting
dmp_expand)#r   r   r$   zUV_xpt_1k_1e_1t_2k_2e_2t_3k_3e_3t_4k_4e_4r7   KEr3   Ar6   csr2   _r5   h_1h_2h_3lcLCrX   s#                                      r   test_dmp_zz_wangr     s   GR HA#r]FB
9Q,,S123A<<q"S'cCq"Q%cCE1bgcCE1bgcC	3A	3A	3A$AaffQi$a(A	C"Q%A	QAQEB7qA aAr1u$uRU{2VBE\AE"a%KORWXZRZZ]``a a a a a a %%aRU3~EEE<<??r}}Q/1<<3DDDD"DAq
RU(RU
Q
C
b!e)ad
R
C
b!e)b.Cc3!#A!aR1WadQTk B	D B"2771: BB	D$$S!RAq9c1b\III**32q!<G<< C'''5 %* 
Es   3M
Mc                     \        R \        4      w  rr#\        R\        4      w  rE\        \        V P                  \        4      4      4      pVR8X  g   Q h^,V^,          ,          ^*V,          ,           ^,           ^~V^,          ,          ^	V,          ,
          ^,           ^V^,          ,          ^,
          .pRV^,          ,          V,          ^V^,          ,          ,
          ^V,          V,          ,
          ^,           RV^,          ,          V,          ^	V,          ,
          ^V,          ,
          V^,          V^,          ,          ^	V^,          ,          ,
          V,           ^	,
          .pRV^,          ,          V,          ^V^,          ,          ,
          ^V,          V,          ,
          ^,           RV^,          ,          V,          ^	V,          ,
          ^V,          ,
          V^,          V^,          ,          ^	V^,          ,          ,
          V,           ^	,
          .p	RV^,          ,          RV^,          ,          ,
          RV^,          ,          ,
          RV^,          ,          ,           RV,          ,           ^J,           p
^	V^,          ,          V^,          ,          ^V^,          ,          V^,          ,          ,           ^-V^,          ,          V^,          ,          ,
          ^lV^,          ,          V,          ,
          RV^,          ,          ,
          ^V^,          ,          V^,          ,          ,           ^V^,          ,          V^,          ,          ,
          RV^,          ,          V,          ,
          ^V^,          ,          V^,          ,          ,           ^	V^,          ,          V^,          ,          ,           ^V^,          ,          V^,          ,          ,
          R	V^,          ,          V,          ,
          R
V^,          ,          ,
          ^V^,          ,          V^,          ,          ,
          RV^,          ,          V,          ,
          ^V,          V^,          ,          ,           ^6V,          V^,          ,          ,
          ^V,          V,          ,
          ^QV,          ,           ^V,          ,           pRV^,          ,          V^,          ,          ^lV^,          ,          V,          ,
          ^V^,          ,          V^,          ,          ,
          ^$V^,          ,          V,          ,
          ^lV^,          ,          ,
          ^V^,          ,          V^,          ,          ,
          ^*V^,          ,          V,          ,
          ^V,          V^,          ,          ,
          ^	V,          ,           ^V,          ,           pV P                  Wz. ^V4      RV,          R^.8X  g   Q hV P                  W\        R4      .^V4      V) V,          RV,          R.8X  g   Q hV P                  W\        R4      .^V4      . RO8X  g   Q hR# )r_   r   r`   i  iE  i  i  rK   i*  i   i  i  Nrf   rN   iir-   ra   i)    r   rO   )r   r   r   r*   rg   dmp_zz_diophantine)r   r   r$   rs   rt   ru   rv   H_1H_2H_3c_1c_2c_3s                r   test_dmp_zz_wang_failr   1  s   GR HA#r]FB
9Q,,S123A<<ad7RT>As1a4x!A#~2C1HrM
BCad719r!Q$w1Q&*Bq!tGAI!Oac,A1a419qQRTUQUvCUXYCY\]C]
^Cad719r!Q$w1Q&*Bq!tGAI!Oac,A1a419qQRTUQUvCUXYCY\]C]
^C
A+QT	
!E!Q$J
.ad
:T!V
Cb
HC
AqD&A+1a41
$r!Q$wq!t|
3c!Q$hqj
@3q!t8
KbQRTUQUgVWYZVZl
Z]`abdeae]efgijfj]j
jmpqrtuqumuvwmw
wz{|}  @A  }A  {A  BC  EF  BF  {F  F  IJ  KL  NO  KO  IO  PQ  ST  PT  IT  T  WZ  [\  ^_  [_  W_  `a  cd  `d  Wd  d  gj  kl  no  ko  go  pq  gq  q  tw  xy  {|  x|  t|  |  A  BC  EF  BF  F  GH  JK  GK  K  K  NQ  RS  UV  RV  NV  WX  NX  X  [\  ]^  [^  _`  bc  _c  [c  c  fh  ij  fj  kl  no  ko  fo  o  rs  tu  ru  vw  rw  w  z|  }~  z~  ~  AC  DE  AE  EC
ad(1a4-#ad(1*
$r!Q$wq!t|
3bAgai
?#ad(
JQqRStVTUWXTX[
X[]^_ab^b[bcd[d
dghijgjklnokogo
orsturu
uxyz{x{
{C"a31b!}DDD2c7)Q:r!tRT2>NNNN2c7)Q:jHHHr   c                      . ROp \        R\        4      w  rr4^V^,          ,          W4,          ,           V,
          V^,          ,
          V,           pVP                  WPR7      V.8X  g   Q hR# )   r_   )seedN)rO   rO   r   r   r   r   rO   rO   r   rO   rc   rO   rc   rc   rc   rc   rO   rc   )r   r   dmp_zz_wang)random_sequencer   r   r$   rs   r/   s         r   test_issue_6355r   F  s[     TOgr"JA!	!Q$q1a4!#A===1aS888r   c                     \        R \        4      w  rV P                  ^ 4      ^ . 38X  g   Q hV P                  ^4      ^. 38X  g   Q hV P                  R4      R. 38X  g   Q hV P                  V^,          ^	,
          4      ^V^,
          ^3V^,           ^3.38X  g   Q h\        R\        4      w  rpV P                  ^ 4      ^ . 38X  g   Q hV P                  ^4      ^. 38X  g   Q hV P                  R4      R. 38X  g   Q hV P                  V4      ^V^3.38X  g   Q hV P                  ^V,          4      ^V^3.38X  g   Q hV P                  ^V,          ^,           4      ^^V,          ^,           ^3.38X  g   Q hV P                  W,          ^,           4      ^W,          ^,           ^3.38X  g   Q hV P                  V^,          ^,           4      ^V^,          ^,           ^3.38X  g   Q hV P                  V^,          ^,
          4      ^V^,
          ^3V^,           ^3.38X  g   Q hV P                  V^,          V^,          ,          ^V^,          ,          V,          ,           ^	V^,          ,          ,           ^,
          4      ^W,          ^V,          ,           ^,
          ^3W,          ^V,          ,           ^,           ^3.38X  g   Q hV P                  V^,          V^,          ,          ^	,
          4      ^W,          ^,
          ^3W,          ^,           ^3.38X  g   Q h\        R\        4      w  rr#V P                  V^,          V^,          ,          V^,          ,          ^	,
          4      ^W,          V,          ^,
          ^3W,          V,          ^,           ^3.38X  g   Q h\        R\        4      w  rr#pV P                  V^,          V^,          ,          V^,          ,          V^,          ,          ^	,
          4      ^W,          V,          V,          ^,
          ^3W,          V,          V,          ^,           ^3.38X  g   Q h\        R\        4      w  rr#V P                  \        4      ^WV,          ,           ^,           ^3W,          V,           ^
,           ^3W,          V,           ^,           ^3.38X  g   Q hV P                  \        4      ^V^,          V^,          ,          V^,          V^,          ,          ,           V,           ^Z,           ^3V^,          V,          V^,          V,          ,           V,           ^,
          ^3.38X  g   Q hV P                  \
        4      ^V^,          V^,          ,          W^,          ,          ,           V,           V,           ^3V^,          W,          V,          ,           V^,          ,           W#^,          ,          ,           ^3.38X  g   Q hV P                  \        4      R	W^,          ,          V^,          ,           ^3V^,          V,          V^,          V^,          ,          ,           ^,           ^3V^,          V,          V^,          ,
          ^,
          ^3V^,          V^,          ,          V^,          ,           ^3.38X  g   Q hV P                  \        4      R	W,           V,
          ^3.38X  g   Q h\        R\        4      w  rr#pV P                  \        4      ^^/V,          V,          V^,          V^,          ,          ,           V^,          ,
          ^3^-V^,          ,          ^	V^,          ,          ,
          V^,          ,
          ^V^,          ,          ,           ^V,          V,          ,           ^3.38X  g   Q h\        R\        4      w  rr#V P                  \        4      ^V^,          V^,          ,          V^,          V^,          ,          ,
          V,           V^,          ,
          ^3V^,          V,          V^,          ,          ^V,          V,          ,           ^V,          ,           ^3^V^,          ,          V,          ^V^,          ,          V,          ,           W,          V,          ,           ^,
          ^3.38X  g   Q h\        R\        4      w  rpR
V^,          ,          V,          ^V^,          ,          V^,          ,          ,           RV^
,          ,          V^,          ,          ,
          RV^,          ,          V^,          ,          ,           RV^,          ,          V^,          ,          ,
          ^V^,          ,          V^,          ,          ,           ^V^	,          ,          ,
          pV P                  V4      R
V^3V^,          V,
          ^3V^,          ^V^,          ,          V,          ,           V^,          ,           ^3.38X  g   Q hR# )r   r!   r_   zx,y,z,uzx,y,z,ti   rJ   NrM   rO   i)
r   r   dmp_zz_factorf_1f_2f_3f_4f_5f_6rg   )r   r   r$   rs   ur3   r/   s          r   test_dmp_zz_factorr   Q  s   R=DA??1!R(((??1!R(((??22r(***??1a4!8$a!eQZ!a%,D(EEEE5"oGA!??1!R(((??1!R(((??22r(***??1!q!fX...??1Q3AAx=000??1Q37#QqS1WaL>'::::??137#QS1WaL>'::::??1a4!8$adQh]O(<<<<??1a4!8$a!eQZ!a%,D(EEEE??1a419qAvax/!AqD&81<=!qsQqSyST}VWFX[\[^abcdad[dgh[hjkZlEmAnnnn??1a419q=)a137A,q!1M-NNNNgr"JA!??1a419QT>A-.	
ac!eai^c!eai^ 	   B'MA!??1a419QT>!Q$.23	
ac!eAgk1c!eAgk1 	       gr"JA!??3	
aA#glAcAglAcAglA  	!! ! !
 ??3	
ad1a4i!Q$q!t)#a'",a0d1fq!tAvo!B&*, 	-- - - ??3	
ad1a4i!qD& 1$q(!,dQSUlQT!AdF*A.0 	11 1 1 ??3	qAv1}a !tAv1QT	!A%q)!tAv1}q !$!tAqDy1a4#% 	&& & & ??3	quqy!n   B'MA!??3	
bd1fq!tAqDy 1a4'+Ag!Q$A%!Q$.1Q6:< 	== = = gr"JA!??3	
ad1a4i!Q$q!t)#a'!Q$.2d1fQTkAaCE!AaC'+1fQh1a4!ACE)A-q13 	44 4 4
 5"oGA!ArE	!c!R%i1n$s1b5yA~5QT	!Q$FQPQTRSUVRVVY\]^`a]aYabcefbfYffiklmoplpippA??1	1v1q!}1qAvax!Q$&*, 	-- - -r   c            
         \        R \        4      w  r\        ^ ^4      pV P                  V^,          ^,
          4      \        ^^ 4      V^,          ^,
          ^3.38X  g   Q hV P                  V^,          ^,
          4      \        ^^ 4      V^,
          ^3V^,           ^3.38X  g   Q hV P                  V^,          ^,           4      \        ^^ 4      W,
          ^3W,           ^3.38X  g   Q hV P                  V^,          ^,          ^,           4      \        \        ^^4      ^ 4      V^V,          ,
          ^3V^V,          ,           ^3.38X  g   Q hV P                  V^,          ^,           4      \        ^^ 4      V^V,          ,
          ^3V^V,          ,           ^3.38X  g   Q hV P                  V^,          ^V,          ,           ^,           4      \        ^^ 4      V^,           ^3.38X  g   Q hV P                  V^,          ^V,          V,          ,           ^,
          4      \        ^^ 4      W,           ^3.38X  g   Q hRV^,          ,          VRRV,          ,           ,          ,           R,
          RV,          ,           pV P                  V4      \        R^ 4      V\        \        ^^4      \        R^4      4      ,           ^3.38X  g   Q hR# )r       X  逬 H 鉲 iY  N)r   r   dup_qq_i_factorr   r   r   rV   r/   s       r   test_dup_qq_i_factorr     s   T?DAQ
AQTAX&41:A1*GGGGQTAX&41:Q
QUAJ7O*PPPPQTAX&41:
QUAJ7O*PPPPQT!VaZ("Q(A!ac'1AaC| <=> > > QTAX&!QZ1qs7A,QqS!567 7 7 QTAaCZ!^,!QZ1q5!*&' ' ' QTAaCE\A-.!QZ15!*&' ' ' 	QT	Auvax'((61F1H<AQ$]a$r#s|Rc]"CCQGHIJ J Jr   c                  l   \        R \        4      w  rp\        ^ ^4      pV P                  V^,          ^V^,          ,          ,           4      \        ^^ 4      V^,          ^V^,          ,          ,           ^3.38X  g   Q hV P                  V^,          V^,          ,           4      \        ^^ 4      WV,          ,
          ^3WV,          ,           ^3.38X  g   Q hV P                  V^,          V^,          ^,          ,           4      \        ^^ 4      WV,          ^,          ,
          ^3WV,          ^,          ,           ^3.38X  g   Q hV P                  ^V^,          ,          V^,          ,           4      \        ^^ 4      WV,          ^,          ,
          ^3WV,          ^,          ,           ^3.38X  g   Q hR# zx, yN)r   r   dmp_qq_i_factorr   r   r$   rV   s       r   test_dmp_qq_i_factorr     s~   64 GA!Q
AQTAadF]+!QZ1a4!AqD&=!,-./ / / QTAqD[)!QZ1s7A,qS!567 7 7 QTAqDF]+!QZ1s1u9a.1s1u9a.9:; ; ; Qq!tVad]+!QZ1s1u9a.1s1u9a.9:; ; ;r   c                     \        R \        4      w  r\        ^ ^4      pV P                  V^,          ^,
          4      \        ^^ 4      V^,          ^,
          ^3.38X  g   Q hV P                  V^,          ^,
          4      \        ^^ 4      V^,
          ^3V^,           ^3.38X  g   Q hV P                  V^,          ^,           4      \        ^^ 4      W,
          ^3W,           ^3.38X  g   Q hV P                  V^,          ^,           4      \        ^^ 4      V^V,          ,
          ^3V^V,          ,           ^3.38X  g   Q hV P                  V^,          ^V,          ,           ^,           4      \        ^^ 4      V^,           ^3.38X  g   Q hV P                  V^,          ^V,          V,          ,           ^,
          4      \        ^^ 4      W,           ^3.38X  g   Q hRV^,          ,          VRRV,          ,           ,          ,           R,
          RV,          ,           pV P                  V4      \        ^ ^4      ^@^@V,          ,
          V,          RRV,          ,           ,           ^3.38X  g   Q hR# )	r   r   r   r   r   r   i  iT  N)r   r   dup_zz_i_factorr   s       r   test_dup_zz_i_factorr     s/   T?DAQ
AQTAX&41:A1*GGGGQTAX&41:Q
QUAJ7O*PPPPQTAX&41:
QUAJ7O*PPPPQTAX&!QZ1qs7A,QqS!567 7 7 QTAaCZ!^,!QZ1q5!*&' ' ' QTAaCE\A-.!QZ15!*&' ' ' 	QT	Auvax'((61F1H<AQ!QZBAIq=C#a%K8!<=>? ? ?r   c                     \        R \        4      w  rp\        ^ ^4      pV P                  V^,          ^V^,          ,          ,           4      \        ^^ 4      V^,          ^V^,          ,          ,           ^3.38X  g   Q hV P                  V^,          V^,          ,           4      \        ^^ 4      WV,          ,
          ^3WV,          ,           ^3.38X  g   Q hV P                  ^V^,          ,          V^,          ,           4      \        ^^ 4      ^V,          W2,          ,
          ^3^V,          W2,          ,           ^3.38X  g   Q hR# r   )r   r   dmp_zz_i_factorr   s       r   test_dmp_zz_i_factorr     s    64 GA!Q
AQTAadF]+!QZ1a4!AqD&=!,-./ / / QTAqD[)!QZ1s7A,qS!567 7 7 Qq!tVad]+!QZ1Q39a.1Q39a.9:; ; ;r   c                  n   \        R \        P                  ! \        4      4      w  rR pV P	                  ^ 4      V! . 4      . 38X  g   Q hV! \        ^4      .4      V,          V! \        ^4      .4      ,           pV P	                  V4      V! \        ^4      .4      V^3.38X  g   Q hV! \        ^4      .4      V,          V! \        ^4      .4      ,           pV P	                  V4      V! \        ^4      .4      V^3.38X  g   Q hV! \        ^4      .4      V^,          ,          V! \        ^^4      .4      ,           pV! \        ^4      .4      V^,          ,          V! \        ^^4      .4      ,           pV P	                  V4      V! \        ^4      .4      V^3.38X  g   Q hV! \        ^4      .4      V^,          ,          V! \        ^4      .4      ,           pV P	                  V4      V! \        ^^4      .4      V! \        ^4      .4      V^,          ,          V! \        R4      \        ^ 4      .4      ,           ^3V! \        ^4      .4      V^,          ,          V! \        ^4      \        ^ 4      .4      ,           ^3.38X  g   Q hV! \        ^^4      .4      V^,          ,          V! \        ^	^4      .4      ,           pV P	                  V4      V! \        ^^4      .4      V! \        ^^4      .4      V,          V! \        ^^4      ) \        ^ ^4      .4      ,           ^3V! \        ^^4      .4      V,          V! \        ^^4      \        ^ ^4      .4      ,           ^3.38X  g   Q hV! \        ^^4      .4      V^,          ,          V! \        ^^4      .4      V^,          ,          ,           V! \        ^M^4      .4      V^,          ,          ,           V! \        ^^4      .4      V,          ,           V! \        ^^4      .4      ,           pV P	                  V4      V! \        ^^4      .4      V! \        ^^4      .4      V,          V! \        ^^4      ) \        ^^4      .4      ,           ^3V! \        ^^4      .4      V,          V! \        ^^4      ) \        ^ ^4      .4      ,           ^3V! \        ^^4      .4      V,          V! \        ^^4      \        ^ ^4      .4      ,           ^3V! \        ^^4      .4      V,          V! \        ^^4      \        ^^4      .4      ,           ^3.38X  g   Q h\        R \        P                  ! \        ^4      4      4      w  rR pV! \        ^4      .4      V^,          ,          V! \        ^^4      .4      ,           pV P	                  V4      V! \        ^4      .4      V! \        ^4      .4      V^,          ,          V! \        R4      \        ^ 4      .4      V,          ,           V! \        ^4      .4      ,           ^3V! \        ^4      .4      V^,          ,          V! \        ^4      \        ^ 4      .4      V,          ,           V! \        ^4      .4      ,           ^3.38X  g   Q hV! \        ^^4      .4      V^,          ,          V! \        ^4      \        ^ 4      .4      V,          ,           V! \        ^^4      .4      ,           pV P	                  V4      V! \        ^^4      .4      V! ^.4      V,          V! ^^ .4      ,           ^3.38X  g   Q hV P	                  V^,          4      V! \        ^^4      .4      V! ^.4      V,          V! ^^ .4      ,           ^3.38X  g   Q hW2! \        ^^4      .4      ,          pV P	                  V4      V! \        ^^4      .4      V! ^.4      V,          V! ^^ .4      ,           ^3.38X  g   Q hV P	                  V^,          4      V! \        ^^4      .4      V! ^.4      V,          V! ^^ .4      ,           ^3.38X  g   Q hR# )r   c                 `    \        V \        ^4      \        ^ 4      \        ^4      .\        4      # r   r   r   elements   &r   anp test_dup_ext_factor.<locals>.anp  $    7RUBqE2a51266r   c                 `    \        V \        ^4      \        ^ 4      \        R4      .\        4      # r   r-   r   r   s   &r   r   r     s$    7RUBqE2b62B77r   NrO   )r   r   algebraic_fieldr   dup_ext_factorr   )r   r   r   r/   r0   s        r   test_dup_ext_factorr     sJ   R''*+DA7 A3r7B-///RUGQbeW%AA31w<1a&"::::RUGQbeW%AA31w<1a&"::::RUGQTCAq
O+ARUGQTCAq
O+AA31w<1a&"::::RUGQTCAL(AA	bAhZCALA-RVRUO0DDaHALA-RVRUO0DDaHJ 	KK K K 	R1XJ1sBq!H:.AA	bAhZCAq
OA-bAhY1a4I0JJANAq
OA-bAh1a4I0JJANP 	QQ Q Q 	R1XJ1sBq!H:q!t33c2b!9+6Fq!t6KKcSUVXZ[S\R]N^_`N``cfhjknpqhrgscttAA	bAhZCAq
OA-bAhY1a4I0JJANAq
OA-bAhY1a4I0JJANAq
OA-bAh1a4I0JJANAq
OA-bAh1a4I0JJANP 	QQ Q Q R''Q01DA8 	RUGQTCAq
O+AA	beWbeWad*S"R&"Q%-A!-CCc2a5'lRTUVbeWad*S"a&"Q%-A!-CCc2a5'lRTUVX 	YY Y Y 	R1XJ1sBqE2a5>2144sBq!H:FAA	bAhZCHQJaV4a89:; ; ; AqD!	bAhZCHQJaV4a89:; ; ; bAhZAA	bAhZCHQJaV4a89:; ; ; AqD!	bAhZCHQJaV4a89:; ; ;r   c            
         \         P                  ! \        ^4      4      p \        RV 4      w  rpV P                  pR pVP                  ^ 4      V! . 4      . 38X  g   Q hV! \        ^4      .4      V,          V! \        ^4      .4      ,           pVP                  V4      V! \        ^4      .4      V^3.38X  g   Q hV! \        ^4      .4      V,          V! \        ^4      .4      ,           pVP                  V4      V! \        ^4      .4      V^3.38X  g   Q hV! \        ^4      .4      V^,          ,          V! \        R4      .4      V^,          ,          ,           pVP                  V4      V! \        ^4      .4      V! \        ^4      .4      V,          V! \        R4      \        ^ 4      .4      V,          ,           ^3V! \        ^4      .4      V,          V! \        ^4      \        ^ 4      .4      V,          ,           ^3.38X  g   Q hV! \        ^4      .4      V^,          ,          V! \        R4      .4      V^,          ,          ,           pVP                  V4      V! \        ^4      .4      V! \        ^4      .4      V,          V! \        R4      \        ^ 4      .4      V,          ,           ^3V! \        ^4      .4      V,          V! \        ^4      \        ^ 4      .4      V,          ,           ^3.38X  g   Q hV^,           pW4,           p	V^,          V,           ^,           ^V,          ,           p
V^,          V	^,          ,          V
^,          ,          pVP                  V4      V P                  V^3V	^3V
^3.38X  g   Q hR# )   r!   c                 `    \        V \        ^4      \        ^ 4      \        R4      .\        4      # r   r   )r   s   &r   r    test_dmp_ext_factor.<locals>.anp9  s$    1r!ubeRV,b11r   Nr-   rO   rf   )r   r   r   r   unitdmp_ext_factorone)r   r   r   r$   sqrt2r   r/   r0   f1f2f3s              r   test_dmp_ext_factorr   4  s   
47#A%^FAFFE2 A3r7B-///RUGQbeW%AA31w<1a&"::::RUGQbeW%AA31w<1a&"::::RUGQTCBM!Q$..AA	beWbeWa#r"vr!uo*>q*@@!DbeWa#r1vr!uo*>q*@@!DF 	GG G G 	RUGQTCBM!Q$..AA	beWbeWa#r"vr!uo*>q*@@!DbeWa#r1vr!uo*>q*@@!DF 	GG G G 
QB	
B	
AA%	B
AAAAA155B7RGb!W*E"FFFFr   c            
        a \        R \        4      w  op SP                  ^ 4      ^ . 38X  g   Q hSP                  ^4      ^. 38X  g   Q h\        R \        4      w  op SP                  ^ 4      ^ . 38X  g   Q hSP                  \        ^^4      4      \        ^^4      . 38X  g   Q h\        R \        R,          4      w  op SP                  ^ 4      ^ . 38X  g   Q hSP                  ^4      ^. 38X  g   Q h\        R \        R,          4      w  op SP                  ^ 4      ^ . 38X  g   Q hSP                  \        ^^4      4      \        ^^4      . 38X  g   Q h\        R \        4      w  op SP	                  ^ 4      R.8X  g   Q hSP	                  ^4      R.8X  g   Q hSP                  V ^,          ^V ,          ,           ^,           4      ^V ^,           ^3.38X  g   Q hSP	                  V ^,          ^V ,          ,           ^,           4      V ^,           ^3.8X  g   Q hSP                  ^V ^,          ,          ^V ,          ,
          ^,
          4      ^^V ,          ^,
          ^3^V ,          ^,           ^3.38X  g   Q h\        R \        4      w  op SP                  \        ^^4      V ^,          ,          V ,           \        ^^4      ,           4      \        ^^4      V ^,           ^3.38X  g   Q h\        R \        ^4      4      w  op SP                  V ^,          ^,           4      ^V ^,           ^3.38X  g   Q h\        R \        4      w  op SP                  RV ^,          ,          RV ,          ,           R,           4      RRV ,          R,           ^3.38X  g   Q hSP                  RV ^,          ,          RV ,          ,           R,           4      RRV ,          R,           ^3.38X  g   Q hRV ^,          ,          RV ,          ,
          R,
          pSP                  V4      w  r#V\        R4      8X  g   Q h\        V4      ^8X  g   Q hV^ ,          ^ ,          P                  4       \        R4      8X  g   Q hV^ ,          ^,          ^8X  g   Q h\        R\        4      w  rE\        R V4      w  op ^V,          V ^,          ,          ^V^,          ,          V ,          ,           pSP                  V4      ^V,          V ^3W,           ^3.38X  g   Q h\        R\        4      w  rE\        R V4      w  op \        ^^4      V,          V ^,          ,          \        ^^4      V^,          ,          V ,          ,           pSP                  V4      \        ^^4      V,          V ^3W,           ^3.38X  g   Q h\        R \        P                  ! \        4      4      w  op R pV! \        ^^4      .4      V ^,          ,          V! \        ^^4      .4      V ^,          ,          ,           pSP                  V4      V! \        ^^4      .4      V! \        ^^4      .4      V ,          ^3V! \        ^^4      .4      V ^,          ,          V! . 4      V ,          ,           V! \        ^^4      .4      ,           ^3.38X  g   Q h\        R \        4      w  op \        \        V3R	 l4       R
# )r   r3         ?       @g      @w@ lJ%@k?c                 `    \        V \        ^4      \        ^ 4      \        ^4      .\        4      # r   r   r   s   &r   r   !test_dup_factor_list.<locals>.anp  r   r   c                  J   < S P                  \        \        ^4      4      4      # r   )dup_factor_listr
   r   r   s   r   <lambda>&test_dup_factor_list.<locals>.<lambda>       1 1"SV* =r   Nr   r   rb   r   )r   r   r   r   dup_factor_list_includer   r	   lenmax_normr   r   r
   r   r   )r   r/   coeffrX   Rtr3   r   r   s          @r   test_dup_factor_listr   Y  s   R=DAqQAr7***QAr7***R=DAqQAr7***R1X&2a8R.888RWDAqQAr7***QAr7***RWDAqQAr7***R1X&2a8R.888R=DAq$$Q'F8333$$Q'F8333QTAaCZ!^,a!eQZL0AAAA$$QTAaCZ!^4!a%DDDQq!tVac\A-.1!a|acAgq\6R2SSSSR=DAqR!WQT\A-1Q78R1XQPQ
|<TTTTRUDAqQTAX&1Aqzl*;;;;R=DAqSAXA-34AQ?O>P8QQQQSAXA-34AQ?O>P8QQQQ1/114DDA&&q)NEB'((((w<11:a=!!#r#w...1:a=AbMEBR=DAq	!AqD1QT6!8AQ	
11veQZ 	   bMEBR=DAq
1a
1a4"Q(1a4-/)AQ	Aq!q!fUAJ  	!! ! ! R''*+DAq7 	R1XJ1sBq!H:q!t33AQ	bAhZCAq
OA-q1Aq
OAqD03r719<sBq!H:NPQRT 	UU U U R=DAq
;=>r   c                    aaa	 \        R \        4      w  ooo	SP                  ^ 4      \        ^ 4      . 38X  g   Q hSP                  ^4      ^. 38X  g   Q h\        R \        4      w  ooo	SP                  ^ 4      \        ^ 4      . 38X  g   Q hSP                  \        ^^4      4      \        ^^4      . 38X  g   Q h\        R\        4      w  r\        R V 4      w  ooo	SP                  ^ 4      ^ . 38X  g   Q hSP                  ^4      \        ^4      . 38X  g   Q h\        R\        4      w  r\        R V 4      w  ooo	SP                  ^ 4      ^ . 38X  g   Q hSP                  \        ^^4      4      \        ^^4      . 38X  g   Q h\        R \        4      w  ooo	SP	                  ^ 4      R.8X  g   Q hSP	                  ^4      R.8X  g   Q h\        R\        4      w  opV^ ,          ^,          ^V^ ,          ,          ,           ^,           V^ ,          ^,           rCSP                  V4      ^V^3.38X  g   Q hVR,          ^,          ^VR,          ,          ,           ^,           VR,          ^,           rCSP                  V4      ^V^3.38X  g   Q h\        R\        4      w  ooSP                  S^,          ^S,          ,           ^,           4      ^S^,           ^3.38X  g   Q h\        R\        4      w  ooSP                  \        ^^4      S^,          ,          S,           \        ^^4      ,           4      \        ^^4      S^,           ^3.38X  g   Q h\        R \        4      w  ooo	SP                  S^,          ^S,          ,           ^,           4      ^S^,           ^3.38X  g   Q h\        R \        4      w  ooo	SP                  \        ^^4      S^,          ,          S,           \        ^^4      ,           4      \        ^^4      S^,           ^3.38X  g   Q h\        R \        4      w  ooo	^S^,          ,          S	,          ^S,          S	^,          ,          ,           pSP                  V4      ^S	^3S^3SS	,           ^3.38X  g   Q hSP	                  V4      ^S	,          ^3S^3SS	,           ^3.8X  g   Q h\        R \        4      w  ooo	\        ^^4      S^,          ,          S	,          \        ^^4      S,          S	^,          ,          ,           pSP                  V4      \        ^^4      S	^3S^3SS	,           ^3.38X  g   Q h\        R \        4      w  ooo	RS^,          ,          RS	^,          ,          ,
          pSP                  V4      \        R4      RS,          S	,
          ^3RS,          S	,           ^3.38X  g   Q hRS^,          ,          S	^,          ,          RS,          S	,          ,
          R	,
          pSP                  V4      w  rVV\        R4      8X  g   Q h\        V4      ^8X  g   Q hV^ ,          ^ ,          P                  4       \        R
4      8X  g   Q hV^ ,          ^,          ^8X  g   Q h\        R\        4      w  r\        R V 4      w  ooo	^V,          S^,          ,          ^V^,          ,          S,          ,           pSP                  V4      ^V,          S^3SV,           ^3.38X  g   Q h\        R\        4      w  r\        R V 4      w  ooo	\        ^^4      V,          S^,          ,          \        ^^4      V^,          ,          S,          ,           pSP                  V4      \        ^^4      V,          S^3SV,           ^3.38X  g   Q h\        R \        ^4      4      w  ooo	\        \        VVV	3R l4       \        R \        4      w  ooo	\        \        V3R l4       R# )r!   r3   zx:200r   r   g       @g      ?r   r   r   r   c                  P   < S P                  S^,          S^,          ,           4      # )r   )dmp_factor_listr#   s   r   r   &test_dmp_factor_list.<locals>.<lambda>  s    (9(9!Q$A+(Fr   c                  J   < S P                  \        \        ^4      4      4      # r   )r   r
   r   r   s   r   r   r     r   r   Nr   r   rO   )r   r   r   r   dmp_factor_list_includer   r	   r   r   r   r   NotImplementedErrorr
   r   )
r   r3   Xr/   r0   r   rX   r   r   r$   s
          @@@r   test_dmp_factor_listr     sM   5"oGAq!QBqE2;...QAr7***5"oGAq!QBqE2;...R1X&2a8R.888bMEB5"oGAq!QAr7***QBqE2;...bMEB5"oGAq!QAr7***R1X&2a8R.8885"oGAq!$$Q'F8333$$Q'F8333"DAqQ47QqtVa1qQAAx=000R5!8a"g!1R519qQAAx=000R=DAqQTAaCZ!^,a!eQZL0AAAAR=DAqR!WQT\A-1Q78R!WAqzl<SSSS5"oGAq!QTAaCZ!^,a!eQZL0AAAA5"oGAq!R!WQT\A-1Q78R!WAqzl<SSSS5"oGAq!	!Q$q1Q3q!t8AQ	
aVV!eQZ 	  
 $$Q'
A#q
Q
a%	  
 5"oGAq!
1Q1QAa1a4'AQ	AaAq6q6E1: 	      
 5"oGAq!AqD3q!t8AQ	CCEAIq>EAIq># 	$$ $ $ 	1QT!$4Q$6q$88;KKA&&q)NEB'((((w<11:a=!!#r#w...1:a=AbMEB5"oGAq!	!AqD1QT6!8AQ	
11v!eQZ 	   bMEB5"oGAq!
1a
1a4"Q(1a4-/)AQ	Aq!q!fUAJ  	!! ! ! 5"Q% GAq!
 FG5"oGAq!
;=>r   c                      \        R \        4      w  rV P                  V^,          V,           ^,           4      RJ g   Q hV P                  V^,          ^V,          ,           ^,           4      RJ g   Q hR# )r   TFN)r   r   dup_irreducible_pr   s     r   test_dup_irreducible_pr     s]    R=DAq!tax!|,444q!taczA~.%777r   c                      \        R \        4      w  rpV P                  V^,          V,           ^,           4      RJ g   Q hV P                  V^,          ^V,          ,           ^,           4      RJ g   Q hR# )r!   TFN)r   r   dmp_irreducible_pr#   s      r   test_dmp_irreducible_pr     s_    5"oGA!q!tax!|,444q!taczA~.%777r   N)C__doc__sympy.polys.ringsr   r   sympy.polys.domainsr   r   r   r   r   r	   r
   sympy.polysr   rT   sympy.polys.polyerrorsr   sympy.polys.polyclassesr   sympy.polys.specialpolysr   r   sympy.core.numbersr   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   sympy.ntheory.generater   sympy.testing.pytestr   r   f_0r   r   r   r   r   r   rg   w_2r   r%   r(   r+   r8   r<   r?   rB   rE   rH   r]   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r   r   <module>r     s    J ) > > > , . ' 5   9 8 , . %,I !S#sCc9Sz
z
F;
#")O5D:A,m*^*(Z I I(9I-XJ8;"?2;@;F"GJH?V`?F88r   