+
    KV-j�H  ã                   ó¸   € ^ RI t ^ RIHtHtHtHtHtHtHtH	t	H
t
HtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHt ^RIHt  ! R R]P>                  4      t R# )é    N)ÚArithOpÚExprÚLanguageÚOpÚas_applyÚas_arrayÚ
as_complexÚas_derefÚas_eqÚas_exprÚ
as_factorsÚas_geÚas_gtÚas_leÚas_ltÚas_neÚ	as_numberÚas_numer_denomÚas_refÚ	as_stringÚ	as_symbolÚas_termsÚ
as_ternaryÚeliminate_quotesÚ
fromstringÚinsert_quotesÚ	normalize)Úutilc                   óh   a € ] tR t^$t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tRtV tR# )ÚTestSymbolicc                ó  € R  pR
 F€  pV! VR,           4       V! VR,           V,           R,           4       V! VR,           4       V! VR,           V,           R,           4       V! VR,           4       V! RV,           R,           4       K‚  	  R	# )c                 óF   € \        V 4      w  r\        W4      pW08X  g   Q hR # ©N)r   r   )ÚsÚrÚdÚs1s   &   Úo/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/numpy/f2py/tests/test_symbolic.pyÚworkerÚ2TestSymbolic.test_eliminate_quotes.<locals>.worker&   s!   € Ü# AÓ&‰DˆAÜ˜qÓ$ˆBØ”7ˆN’7ó    z"1234" // "ABCD"z
"1234" // z"ABCD"z"1234" // 'ABCD'z'ABCD'z"1\"2'AB'34"za = z'1\'2"AB"34'N)Ú Úmykind_© )Úselfr)   Úkinds   &  r(   Útest_eliminate_quotesÚ"TestSymbolic.test_eliminate_quotes%   s}   € ò	ó
 $ˆDÙ�4Ð,Õ,Ô-Ù�4˜,Õ&¨Õ-°Õ8Ô9Ù�4Ð.Õ.Ô/Ù�4˜,Õ&¨Õ-°Õ8Ô9Ù�4Ð+Õ+Ô,Ù�6˜D•=Ð#4Õ4Ö5ó $r+   c                óè  € \        R 4      p\        R4      p\        R4      pVP                  \        P                  8X  g   Q h\	        V4      R8X  g   Q hW8X  g   Q hW8w  g   Q h\        V4      f   Q h\        ^{4      p\        R4      pVP                  \        P                  8X  g   Q h\	        V4      R8X  g   Q hWD8X  g   Q hWE8w  g   Q h\        V4      f   Q h\        R4      p\        R4      pVP                  \        P                  8X  g   Q h\	        V4      R	8X  g   Q hWf8X  g   Q hWg8w  g   Q h\        V4      f   Q h\        ^^4      p\        ^^4      p	VP                  \        P                  8X  g   Q h\	        V4      R
8X  g   Q hWˆ8X  g   Q hW‰8w  g   Q h\        V4      f   Q h\        R4      p
\        R4      pV
P                  \        P                  8X  g   Q h\	        V
4      R8X  g   Q \	        V
4      4       hWª8X  g   Q hW«8w  g   Q h\        WE34      p\        V34      pVP                  \        P                  8X  g   Q h\	        V4      R8X  g   Q hWÌ8X  g   Q hWÍ8w  g   Q h\        V4      p\        V4      pVP                  \        P                   8X  g   Q h\	        V4      R8X  g   Q hWî8X  g   Q hWï8w  g   Q h\        V4      f   Q h\#        V4      p\#        V4      pVP                  \        P$                  8X  g   Q h\	        V4      R8X  g   Q hVV8X  g   Q hVV8w  g   Q h\        V4      f   Q h\'        WV4      p\'        WV4      pVP                  \        P(                  8X  g   Q hWî8X  g   Q hWï8w  g   Q h\        V4      f   Q h\+        W4      p\-        W4      pVP                  \        P.                  8X  g   Q hVV8X  g   Q hVV8w  g   Q h\        V4      f   Q hR# )ÚxÚyÚzzExpr(Op.SYMBOL, 'x')NéÈ  zExpr(Op.INTEGER, (123, 4))gš™™™™™(@gÍÌÌÌÌÌF@zExpr(Op.REAL, (12.3, 4))zFExpr(Op.COMPLEX, (Expr(Op.INTEGER, (1, 4)), Expr(Op.INTEGER, (2, 4))))z'123'ú"ABC"zExpr(Op.STRING, ("'123'", 1))zHExpr(Op.ARRAY, (Expr(Op.INTEGER, (123, 4)), Expr(Op.INTEGER, (456, 4))))z)Expr(Op.TERMS, {Expr(Op.SYMBOL, 'x'): 1})z+Expr(Op.FACTORS, {Expr(Op.SYMBOL, 'x'): 1}))r   Úopr   ÚSYMBOLÚreprÚhashr   ÚINTEGERÚREALr	   ÚCOMPLEXr   ÚSTRINGr   ÚARRAYr   ÚTERMSr   ÚFACTORSr   ÚTERNARYr   r   Ú
RELATIONAL)r/   r4   r5   r6   ÚnÚmÚfnÚfmÚcÚc2r$   Ús2ÚaÚbÚtÚuÚvÚwÚeÚfs   &                   r(   Útest_sanityÚTestSymbolic.test_sanity3   s›  € Ü�c‹NˆÜ�c‹NˆÜ�c‹Nˆà�t‰t”r—y‘yÔ Ð Ð Ü�A‹wÐ0Ô0Ð0Ð0ØŒvˆˆvØŒvˆˆvÜ�A‹wÒ"Ð"Ð"ä�c‹NˆÜ�c‹NˆØ�t‰t”r—z‘zÔ!Ð!Ð!Ü�A‹wÐ6Ô6Ð6Ð6ØŒvˆˆvØŒvˆˆvÜ�A‹wÒ"Ð"Ð"ä�t‹_ˆÜ�t‹_ˆØ�u‰uœŸ™ÔÐÐÜ�B‹xÐ5Ô5Ð5Ð5ØŒxˆˆxØŒxˆˆxÜ�B‹xÒ#Ð#Ð#ä�q˜!ÓˆÜ˜˜1ÓˆØ�t‰t”r—z‘zÔ!Ð!Ð!Ü�A‹wð 9ô :ð 	:ð :àŒvˆˆvØŒwˆˆwÜ�A‹wÒ"Ð"Ð"ä�gÓˆÜ�wÓˆØ�t‰t”r—y‘yÔ Ð Ð Ü�A‹wÐ;Ô;ÐD¼TÀ!»WÓDÐ;ØŒvˆˆvØŒwˆˆwä�a�VÓˆÜ�a�U‹OˆØ�t‰t”r—x‘xÔÐÐÜ�A‹wð ;ô <ð 	<ð <àŒvˆˆvØŒvˆˆvä�Q‹KˆÜ�Q‹KˆØ�t‰t”r—x‘xÔÐÐÜ�A‹wÐEÔEÐEÐEØŒvˆˆvØŒvˆˆvÜ�A‹wÒ"Ð"Ð"ä�q‹MˆÜ�q‹MˆØ�t‰t”r—z‘zÔ!Ð!Ð!Ü�A‹wÐGÔGÐGÐGØ�AŒvˆˆvØ�AŒvˆˆvÜ�A‹wÒ"Ð"Ð"ä�q˜QÓˆÜ�q˜QÓˆØ�t‰t”r—z‘zÔ!Ð!Ð!ØŒvˆˆvØŒvˆˆvÜ�A‹wÒ"Ð"Ð"ä�!‹KˆÜ�!‹KˆØ�t‰t”r—}‘}Ô$Ð$Ð$Ø�AŒvˆˆvØ�AŒvˆˆvÜ�A‹wÒ"Ð"Ò"r+   c                óÄ
  € \        R 4      p\        R4      p\        R4      p\        ^{4      p\        R4      p\        WE34      p\        WE4      p\	        V4      R 8X  g   Q h\	        V4      R8X  g   Q h\	        V4      R8X  g   Q h\	        V4      R8X  g   Q h\	        \        \        P                  V^/4      4      R 8X  g   Q h\	        \        \        P                  V^/4      4      R8X  g   Q h\	        \        \        P                  VR#/4      4      R8X  g   Q h\	        \        \        P                  VR$/4      4      R	8X  g   Q h\	        \        \        P                  V^V^/4      4      R
8X  g   Q h\	        \        \        P                  VR#VR#/4      4      R8X  g   Q h\	        \        \        P                  V^V^/4      4      R8X  g   Q h\	        \        \        P                  VR$V^/4      4      R8X  g   Q h\	        \        \        P                  V^VR%/4      4      R8X  g   Q h\	        \        \        P                  V^/4      4      R 8X  g   Q h\	        \        \        P                  V^/4      4      R8X  g   Q h\	        \        \        P                  VR#/4      4      R8X  g   Q h\	        \        \        P                  VR$/4      4      R8X  g   Q h\	        \        \        P                  V^V^/4      4      R8X  g   Q h\	        \        \        P                  V^V^/4      4      R8X  g   Q h\        \        P                  V^\        \        P                  V^V^/4      ^/4      p\	        V4      R8X  g   Q \	        V4      4       h\        \        P                  V^\        \        P                  V^V^/4      ^/4      p\	        V4      R8X  g   Q \	        V4      4       h\	        \        \        P                  RR&/ 34      4      R8X  g   Q h\	        \        \        P                  RV3/ 34      4      R8X  g   Q h\	        \        \        P                  RW3/ 34      4      R8X  g   Q h\	        \        \        P                  RV34      4      R8X  g   Q h\	        \        WV4      4      R8X  g   Q h\	        \        W4      4      R8X  g   Q h\	        \        W4      4      R8X  g   Q h\	        \        W4      4      R8X  g   Q h\	        \        W4      4      R8X  g   Q h\	        \!        W4      4      R 8X  g   Q h\	        \#        W4      4      R!8X  g   Q hR"# )'r4   r5   r6   r7   Ú123z
[123, 456]z
(123, 456)z2 * xz-xz-2 * xúx + yz-x - yz2 * x + 3 * yz-2 * x + 3 * yz2 * x - 3 * yúx ** 2zx ** -1zx ** -2úx * yzx ** 2 * y ** 3zx ** 2 * (x + y) ** 3zx ** 2 * (x * y) ** 3rT   zf()úf(x)zf(x, y)úf[x]zmerge(y, z, x)úx .eq. yúx .ne. yúx .lt. yúx .le. yúx .gt. yúx .ge. yNéÿÿÿÿéþÿÿÿéýÿÿÿr.   )r   r   r   r	   Ústrr   r   rB   rC   ÚAPPLYÚINDEXINGr   r   r   r   r   r   r   )	r/   r4   r5   r6   rF   rG   rM   rJ   rQ   s	   &        r(   Útest_tostring_fortranÚ"TestSymbolic.test_tostring_fortran„   sn  € Ü�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�a�VÓˆÜ�qÓˆä�1‹v˜Œ}Ðˆ}Ü�1‹v˜ŒÐˆÜ�1‹v˜Ô%Ð%Ð%Ü�1‹v˜Ô%Ð%Ð%ä”4œŸ™ 1 a &Ó)Ó*¨cÔ1Ð1Ð1Ü”4œŸ™ 1 a &Ó)Ó*¨gÔ5Ð5Ð5Ü”4œŸ™ 1 b 'Ó*Ó+¨tÔ3Ð3Ð3Ü”4œŸ™ 1 b 'Ó*Ó+¨xÔ7Ð7Ð7Ü”4œŸ™ 1 a¨¨A ,Ó/Ó0°GÔ;Ð;Ð;Ü”4œŸ™ 1 b¨!¨R .Ó1Ó2°hÔ>Ð>Ð>Ü”4œŸ™ 1 a¨¨A ,Ó/Ó0°OÔCÐCÐCÜ”4œŸ™ 1 b¨!¨Q -Ó0Ó1Ð5EÔEÐEÐEÜ”4œŸ™ 1 a¨¨B -Ó0Ó1°_ÔDÐDÐDä”4œŸ
™
 Q¨ FÓ+Ó,°Ô3Ð3Ð3Ü”4œŸ
™
 Q¨ FÓ+Ó,°Ô8Ð8Ð8Ü”4œŸ
™
 Q¨ GÓ,Ó-°Ô:Ð:Ð:Ü”4œŸ
™
 Q¨ GÓ,Ó-°Ô:Ð:Ð:Ü”4œŸ
™
 Q¨¨1¨a LÓ1Ó2°gÔ=Ð=Ð=Ü”4œŸ
™
 Q¨¨1¨a LÓ1Ó2Ð6GÔGÐGÐGä”—‘˜a ¤D¬¯©°A°q¸!¸Q°<Ó$@À!ÐDÓEˆÜ�1‹vÐ0Ô0Ð8´#°a³&Ó8Ð0Ü”—‘˜a ¤D¬¯©°a¸¸A¸q°\Ó$BÀAÐFÓGˆÜ�1‹vÐ0Ô0Ð8´#°a³&Ó8Ð0ä”4œŸ™ 3¨¨B -Ó0Ó1°UÔ:Ð:Ð:Ü”4œŸ™ 3¨¨¨rÐ"2Ó3Ó4¸Ô>Ð>Ð>Ü”4œŸ™ 3¨¨°Ð"3Ó4Ó5¸ÔBÐBÐBÜ”4œŸ™ c¨1 XÓ.Ó/°6Ô9Ð9Ð9ä”:˜a AÓ&Ó'Ð+;Ô;Ð;Ð;Ü”5˜“;Ó :Ô-Ð-Ð-Ü”5˜“;Ó :Ô-Ð-Ð-Ü”5˜“;Ó :Ô-Ð-Ð-Ü”5˜“;Ó :Ô-Ð-Ð-Ü”5˜“;Ó :Ô-Ð-Ð-Ü”5˜“;Ó :Ô-Ð-Ò-r+   c                ó`  € \         P                  p\        R 4      p\        R4      p\        R4      p\        ^{4      p\	        \
        P                  V^/4      P                  VR7      R8X  g   Q h\	        \
        P                  W#,           ^/4      P                  VR7      R8X  g   Q h\	        \
        P                  V^/4      P                  VR7      R8X  g   Q h\        \        P                  VV4      P                  VR7      R8X  g   Q h\        \        P                  VW#,           4      P                  VR7      R8X  g   Q h\        \        P                  W#,
          VV,           4      P                  VR7      R	8X  g   Q hW"V,
          W#,           ,          ,           V,           P                  VR7      R
8X  g   Q h\        W#V4      P                  VR7      R8X  g   Q h\        W#4      P                  VR7      R8X  g   Q h\        W#4      P                  VR7      R8X  g   Q h\        W#4      P                  VR7      R8X  g   Q h\        W#4      P                  VR7      R8X  g   Q h\!        W#4      P                  VR7      R8X  g   Q h\#        W#4      P                  VR7      R8X  g   Q hR# )r4   r5   r6   ©Úlanguagezx * xz(x + y) * (x + y)z
pow(x, 12)úx / yzx / (x + y)z(x - y) / (x + y)z123 + x + (x - y) / (x + y)z(x?y:z)úx == yúx != yúx < yúx <= yúx > yúx >= yN)r   ÚCr   r   r   r   rC   Útostringr   r   ÚDIVr   r   r   r   r   r   r   )r/   rn   r4   r5   r6   rF   s   &     r(   Útest_tostring_cÚTestSymbolic.test_tostring_cµ   s�  € Ü—:‘:ˆÜ�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�c‹Nˆä”B—J‘J  A Ó'×0Ñ0¸(Ð0ÓCÀwÔNÐNÐNÜ”R—Z‘ZØ�E�1ð"
ó ç‰8˜Xˆ8Ó&Ð*=ô>ð 	?ð >ô ”B—J‘JØˆrð!
ó ç‰8˜Xˆ8Ó&¨,ô7ð 	7ð 7ô œŸ™ QØóß#™8¨X˜8Ó6¸'ôBð 	Bð BäœŸ™ aØ�ó ß (¡°( Ó ;¸}ôMð 	Nð MäœŸ™ a¥e¨QØõ.ó ß$™H¨h˜HÓ7Ð;NôOð 	Pð Oà˜•U˜q�uÕ%Õ%Øõß‘8 X�8Ó.Ð2OôPð 	Pð Pô ˜! Ó"×+Ñ+°XÐ+Ó>À)ÔKÐKÐKÜ�Q‹{×#Ñ#¨XÐ#Ó6¸(ÔBÐBÐBÜ�Q‹{×#Ñ#¨XÐ#Ó6¸(ÔBÐBÐBÜ�Q‹{×#Ñ#¨XÐ#Ó6¸'ÔAÐAÐAÜ�Q‹{×#Ñ#¨XÐ#Ó6¸(ÔBÐBÐBÜ�Q‹{×#Ñ#¨XÐ#Ó6¸'ÔAÐAÐAÜ�Q‹{×#Ñ#¨XÐ#Ó6¸(ÔBÐBÒBr+   c                ód  € \        R 4      p\        R4      p\        R4      pW,           \        \        P                  V^/4      8X  g   Q hW,
          \        \        P                  R	4      8X  g   Q hW,           \        \        P                  V^V^/4      8X  g   Q hW,
          \        \        P                  V^VR
/4      8X  g   Q hW,          \        \        P
                  V^/4      8X  g   Q hW,          \        \        P
                  V^V^/4      8X  g   Q hV5V8X  g   Q hV) \        \        P                  VR
/4      8X  g   Q \        V) 4      4       h^V,          \        \        P                  V^/4      8X  g   Q h^V,           \        \        P                  V^\        ^4      ^/4      8X  g   Q h^V,          ^V,          ,           \        \        P                  V^V^/4      8X  g   Q hW,           ^,          \        \        P                  V^V^/4      8X  g   Q hV^,          \        \        P
                  V^/4      8X  g   Q hW,           ^,          \        \        P                  \        \        P
                  V^/4      ^\        \        P
                  V^/4      ^\        \        P
                  V^V^/4      ^/4      8X  g   Q hW,           V,          V^,          W,          ,           8X  g   Q hW,           ^,          V^,          ^V,          V,          ,           V^,          ,           8X  g   Q hW,           ^,          W,
          ^,          ,           ^V^,          ,          ^V^,          ,          ,           8X  g   Q hW,           V,          W,          W#,          ,           8X  g   Q hW1V,           ,          W,          W#,          ,           8X  g   Q hV^,          \        \        P                  V\        ^4      4      8X  g   Q h^V,          ^,          V8X  g   Q h^V,          ^,          \        \        P                  ^V,          \        ^4      4      8X  g   Q h^V,          ^,          ^V,          8X  g   Q h^V,          ^,          \        \        P                  ^V,          \        ^4      4      8X  g   Q h^V,          ^,          ^V,          8X  g   Q h^V,          ^,          \        \        P                  ^V,          \        ^4      4      8X  g   Q h^V^,          ,          V^,          ,          ^V^,          ,          V^,          ,          ,          \        \        P                  ^V,          ^V,          4      8X  g   Q h^V,          ^,          ^,          \        \        P                  V\        ^4      4      8X  g   Q ^V,          ^,          ^,          4       hV^V,          ,          \        \        P                  V^,          \        ^4      4      8X  g   Q hVR,          \        \        P                  VR/4      8X  g   Q h\        R4      p\        R4      pWE,          \        \        P                  R4      8X  g   Q hWA,          \        \        P                  WA34      8X  g   Q hW,          \        \        P                  W34      8X  g   Q h\        RR4      pV) \        RR4      8X  g   Q hWf,           \        R4      8X  g   Q hWf,          \        R4      8X  g   Q hR# )r4   r5   r6   g       @g      à?r8   ú"123"g      ð?N)r   é   rd   )z"ABC123"é   g      ð¿g       Ày       @      @y      À      @)r   r   r   rB   r=   rC   r;   r   r   r   rx   r   r@   ÚCONCATr	   r   )r/   r4   r5   r6   r$   rO   rJ   s   &      r(   Útest_operationsÚTestSymbolic.test_operationsÕ   s”  € Ü�c‹NˆÜ�c‹NˆÜ�c‹Nˆà�uœœRŸX™X¨¨1 vÓ.Ô.Ð.Ð.Ø�uœœRŸZ™Z¨Ó0Ô0Ð0Ð0Ø�uœœRŸX™X¨¨1¨a° |Ó4Ô4Ð4Ð4Ø�uœœRŸX™X¨¨1¨a° }Ó5Ô5Ð5Ð5Ø�uœœRŸZ™Z¨!¨Q¨Ó0Ô0Ð0Ð0Ø�uœœRŸZ™Z¨!¨Q°°1¨Ó6Ô6Ð6Ð6àˆr�QŒwˆˆwØˆr”Tœ"Ÿ(™( Q¨ GÓ,Ô,Ð6¬d°A°2«hÓ6Ð,Ø�1�uœœRŸX™X¨¨1 vÓ.Ô.Ð.Ð.Ø�1�uœœRŸX™X¨¨1¬i¸«l¸AÐ'>Ó?Ô?Ð?Ð?Ø�1�u�q˜1•u�}¤¤R§X¡X°°1°a¸¨|Ó <Ô<Ð<Ð<Ø•˜�{œd¤2§8¡8¨a°°A°q¨\Ó:Ô:Ð:Ð:à�!�t”tœBŸJ™J¨¨A¨Ó/Ô/Ð/Ð/Ø•˜�zœTÜ�H‰Hä”R—Z‘Z ! Q Ó(¨!Ü”R—Z‘Z ! Q Ó(¨!Ü”R—Z‘ZØ�qØ�qð"ó ð ðó

ô 

ð 
	
ð 

ð •˜�{˜a �d Q¥U�lÔ*Ð*Ð*Ø•˜�z˜Q �T A¨¥E¨A¥IÕ-°°1µÕ4Ô4Ð4Ð4Ø•˜�z˜Q�U Q�JÕ&¨!¨a°­d­(°Q¸¸A½µXÕ*=Ô=Ð=Ð=Ø•˜�{˜a�e a¥e�mÔ+Ð+Ð+Ø˜•E�{˜a�e a¥e�mÔ+Ð+Ð+à�A•œ(¤7§;¡;°´9¸Q³<Ó@Ô@Ð@Ð@Ø�A•˜•	˜aÔÐÐØ�A•˜•	œh¤w§{¡{°A¸µE¼9ÀQ»<ÓHÔHÐHÐHØ�A•˜•	˜a !�eÔ#Ð#Ð#Ø�A•˜•	œh¤w§{¡{°A¸µE¼9ÀQ»<ÓHÔHÐHÐHØ�A•˜•	˜a !�eÔ#Ð#Ð#Ø˜!•˜a•¤H¬W¯[©[¸!¸a½%ÄÈ1ÃÓ$NÔNÐNÐNØ�Q˜•T•	˜A˜q�DÕ  B¨¨A­¥I°°1µÕ$4Õ5¼(Ü�K‰K˜˜Q�  A¥ó;'ô 'ð 	'ð 'à�a•˜!•˜qÕ ¤X¬g¯k©k¸1Ü.7¸«ló&<ô <ð 	NØ>@À1½fÀq½jÈAÕ=Mó	Nð <à�Q˜•U•¤¬¯©°a¸µd¼IÀa»LÓ IÔIÐIÐIà�C•œD¤§¡¨A¨s¨8Ó4Ô4Ð4Ð4ä�gÓˆÜ�gÓˆà�vœœbŸi™i¨Ó9Ô9Ð9Ð9Ø�vœœbŸi™i¨!¨Ó0Ô0Ð0Ð0Ø�vœœbŸi™i¨!¨Ó0Ô0Ð0Ð0ä�s˜CÓ ˆØˆr”Z  dÓ+Ô+Ð+Ð+Ø�uœ Ó-Ô-Ð-Ð-Ø�uœ Ó,Ô,Ð,Ò,r+   c                óR  € \        R 4      p\        R4      p\        R4      p\        W34      pVP                  W/4      V8X  g   Q hW,           P                  W/4      W#,           8X  g   Q hW,          P                  W/4      W#,          8X  g   Q hV^,          P                  W/4      V^,          8X  g   Q hW,          P                  W/4      W2,          8X  g   Q hVP                  WV,           /4      W#,           8X  g   Q hVP                  WV,           /4      \        W#,           V34      8X  g   Q h\        WV4      P                  WV,           /4      \        W#,           W#4      8X  g   Q h\	        W4      P                  WV,           /4      \	        W#,           V4      8X  g   Q hR# )r4   r5   r6   N)r   r   Ú
substituter   r   )r/   r4   r5   r6   rM   s   &    r(   Útest_substituteÚTestSymbolic.test_substitute  sn  € Ü�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�a�VÓˆà�|‰|˜Q˜FÓ# qÔ(Ð(Ð(Ø•×!Ñ! 1 &Ó)¨Q­UÔ2Ð2Ð2Ø•×!Ñ! 1 &Ó)¨Q­UÔ2Ð2Ð2Ø�1•× Ñ  ! Ó(¨A¨q­DÔ0Ð0Ð0Ø•×!Ñ! 1 &Ó)¨Q­UÔ2Ð2Ð2Ø�|‰|˜Q A¥˜JÓ'¨1­5Ô0Ð0Ð0Ø�|‰|˜Q A¥˜JÓ'¬8°QµU¸A°JÓ+?Ô?Ð?Ð?ä˜!Øóß'™Z¨°­E¨
Ó3´zÀ!Å%ÈÓ7NôOð 	Oð Oä�Q‹{×%Ñ% q¨a­% jÓ1´U¸1½5À!³_ÔDÐDÒDr+   c                óÆ  € \        R 4      p\        R4      p\        R4      p\        R4      p\        R4      p\        R4      p\        W34      p\        R 4      V8X  g   Q h\        R4      V8X  g   Q h\        R4      V) 8X  g   Q h\        R4      W,           8X  g   Q h\        R	4      V^,           8X  g   Q h\        R
4      W,          8X  g   Q h\        R4      V^,          8X  g   Q h\        R4      W,          8X  g   Q h\        R\        P
                  R7      V^,          8X  g   Q h\        R\        P
                  R7      V^,          8X  g   Q h\        R4      W,           V,          8X  g   Q h\        R4      V! V4      8X  g   Q h\        R4      V! W4      8X  g   Q h\        R4      WA,          8X  g   Q h\        R4      WA,          V,          8X  g   Q h\        R4      V8X  g   Q h\        \        R\        P                  R7      4      WV,          8X  g   Q h\        R4      V! V4      8X  g   Q h\        R4      \        RR4      8X  g   Q h\        R4      V8X  g   Q \        R4      4       h\        R4      V! V4      8X  g   Q h\        R4      \        W,           V,          34      8X  g   Q h\        R4      \        ^{4      8X  g   Q h\        R4      \        ^{^4      8X  g   Q h\        R4      \        ^{R4      8X  g   Q h\        R 4      \        R!^4      8X  g   Q h\        R"4      \        R!^4      8X  g   Q h\        R#4      \        R!^4      8X  g   Q h\        R$4      \        R!^4      8X  g   Q h\        R%4      \        R!^4      8X  g   Q h\        R&4      \        R!^4      8X  g   Q h\        R'4      \        R!^4      8X  g   Q h\        R(4      \        R!^4      8X  g   Q h\        R)4      \        R!R*4      8X  g   Q h\        R+4      \        R,^4      8X  g   Q h\        R-4      \        ^^4      8X  g   Q h\        R.4      \        \        R/4      \        R04      4      8X  g   Q h\        R14      \        \        ^4      \        ^4      34      8X  g   Q h\        R24      \        \        R34      V\        ^4      R47      8X  g   Q h\        R54      \        \        R64      \        R74      \        ^24      \        \        ^"4      \        ^4      34      R87      8X  g   Q h\        R94      \        WV4      8X  g   Q h\        R:4      \        V4      8X  g   Q h\        R;4      \        \        V4      4      8X  g   Q h\        R<4      \        V4      8X  g   Q h\        R=4      \        V4      \        V4      ,          8X  g   Q h\        R>4      \        V4      \        V4      ,          8X  g   Q h\        R?4      \        V4      \        V4      ,          8X  g   Q h\        R@4      \        V4      \        V4      ,          8X  g   Q h\        RA4      \        W4      8X  g   Q h\        RB4      \        W4      8X  g   Q h\        RC4      \!        W4      8X  g   Q h\        RD4      \#        W4      8X  g   Q h\        RE4      \%        W4      8X  g   Q h\        RF4      \'        W4      8X  g   Q h\        RG\        P                  R7      \        W4      8X  g   Q h\        RH\        P                  R7      \        W4      8X  g   Q h\        RI\        P                  R7      \!        W4      8X  g   Q h\        RJ\        P                  R7      \#        W4      8X  g   Q h\        RK\        P                  R7      \%        W4      8X  g   Q h\        RL\        P                  R7      \'        W4      8X  g   Q hRM# )Nr4   r5   r6   rT   r8   r|   z+ xz-  xrY   zx + 1r[   zx * 2ro   rZ   rm   zx ** 2 ** 3z(x + y) * zr\   zf(x,y)r]   zf[x][y]z"ABC" // "123" zf("ABC")zMYSTRKIND_"ABC"Ú	MYSTRKINDz(/x, y/)zf((/x, y/))z(/(x+y)*z/)rX   Ú123_2Ú123_myintkindÚ	myintkindz123.0g     À^@z123.0_4z123.0_8z123.0e0z123.0d0Ú123d0z123e-0z123d+0z123.0_myrealkindÚ
myrealkindÚ3E4g     LÝ@z(1, 2)z	(1e2, PI)g      Y@ÚPIz[1, 2]zPOINT(x, y=1)ÚPOINT)r5   z-PERSON(name="John", age=50, shape=(/34, 23/))ÚPERSONz"John")ÚnameÚageÚshapezx?y:zz*xz**xz&xz(*x) * (*y)z	(*x) * *yz*x * *yz*x**yrp   rq   rr   rt   rs   ru   r^   r_   r`   rb   ra   rc   N)r   r   r   r   r   ÚPythonr   ÚFortranr   r	   r   r   r
   r   r   r   r   r   r   r   )r/   r4   r5   r6   rT   r$   rO   rM   s   &       r(   Útest_fromstringÚTestSymbolic.test_fromstring'  sÖ  € ä�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�gÓˆÜ�gÓˆÜ�a�VÓˆä˜#‹ !Ô#Ð#Ð#Ü˜%Ó  AÔ%Ð%Ð%Ü˜&Ó! a RÔ'Ð'Ð'Ü˜'Ó" a¥eÔ+Ð+Ð+Ü˜'Ó" a¨!¥eÔ+Ð+Ð+Ü˜'Ó" a¥eÔ+Ð+Ð+Ü˜'Ó" a¨!¥eÔ+Ð+Ð+Ü˜'Ó" a¥eÔ+Ð+Ð+Ü˜(¬X¯_©_Ô=ÀÀAÅÔEÐEÐEÜ˜-´(·/±/ÔBÀaÈÅgÔMÐMÐMÜ˜-Ó(¨Q­U°a­KÔ7Ð7Ð7ä˜&Ó!¡Q q£TÔ)Ð)Ð)Ü˜(Ó#¡q¨£wÔ.Ð.Ð.Ü˜&Ó! Q¥TÔ)Ð)Ð)Ü˜)Ó$¨­¨Q­Ô/Ð/Ð/ä˜'Ó" aÔ'Ð'Ð'ÜÜÐ(Ü (× 0Ñ 0ô2ó3à67µfô=ð 	>ð =ô ˜*Ó%©¨1«Ô-Ð-Ð-ÜÐ+Ó,´	¸'À;Ó0OÔOÐOÐOä˜*Ó%¨Ô*ÐB¬J°zÓ,BÓBÐ*Ü˜-Ó(©A¨a«DÔ0Ð0Ð0Ü˜-Ó(¬H°qµuÀµk°_Ó,EÔEÐEÐEä˜%Ó ¤I¨c£NÔ2Ð2Ð2Ü˜'Ó"¤i°°QÓ&7Ô7Ð7Ð7Ü˜/Ó*¬i¸¸[Ó.IÔIÐIÐIä˜'Ó"¤i°°qÓ&9Ô9Ð9Ð9Ü˜)Ó$¬	°%¸Ó(;Ô;Ð;Ð;Ü˜)Ó$¬	°%¸Ó(;Ô;Ð;Ð;Ü˜)Ó$¬	°%¸Ó(;Ô;Ð;Ð;Ü˜)Ó$¬	°%¸Ó(;Ô;Ð;Ð;Ü˜'Ó"¤i°°qÓ&9Ô9Ð9Ð9Ü˜(Ó#¤y°¸Ó':Ô:Ð:Ð:Ü˜(Ó#¤y°¸Ó':Ô:Ð:Ð:ÜÐ,Ó-´¸5À,Ó1OÔOÐOÐOÜ˜%Ó ¤I¨g°qÓ$9Ô9Ð9Ð9ä˜(Ó#¤z°!°QÓ'7Ô7Ð7Ð7Ü˜+Ó&¬*´Y¸uÓ5EÜ5>¸t³_ó+Fô Fð 	Fð Fô ˜(Ó#¤x´¸1³¼yÈ»|Ð0LÓ'MÔMÐMÐMä˜/Ó*¬h´yÀÓ7IØ78Ü9BÀ1»ô/Gô Gð 	Gð Gô Ø;ó=Ü@HÜ˜(Ó#Ü˜xÓ(Ü˜b“MÜ¤	¨"£¬y¸«}Ð=Ó>ô	Aôð 	ð ô ˜'Ó"¤j°°qÓ&9Ô9Ð9Ð9ä˜$Ó¤8¨A£;Ô.Ð.Ð.Ü˜%Ó ¤H¬X°a«[Ó$9Ô9Ð9Ð9Ü˜$Ó¤6¨!£9Ô,Ð,Ð,Ü˜-Ó(¬H°Q«K¼(À1»+Õ,EÔEÐEÐEÜ˜+Ó&¬(°1«+¼À»Õ*CÔCÐCÐCÜ˜)Ó$¬°«´h¸q³kÕ(AÔAÐAÐAÜ˜'Ó"¤h¨q£k´H¸Q³KÕ&?Ô?Ð?Ð?ä˜(Ó#¤u¨Q£{Ô2Ð2Ð2Ü˜(Ó#¤u¨Q£{Ô2Ð2Ð2Ü˜'Ó"¤e¨A£kÔ1Ð1Ð1Ü˜'Ó"¤e¨A£kÔ1Ð1Ð1Ü˜(Ó#¤u¨Q£{Ô2Ð2Ð2Ü˜(Ó#¤u¨Q£{Ô2Ð2Ð2ä˜*¬x×/?Ñ/?Ô@ÄEÈ!ÃKÔOÐOÐOÜ˜*¬x×/?Ñ/?Ô@ÄEÈ!ÃKÔOÐOÐOÜ˜*¬x×/?Ñ/?Ô@ÄEÈ!ÃKÔOÐOÐOÜ˜*¬x×/?Ñ/?Ô@ÄEÈ!ÃKÔOÐOÐOÜ˜*¬x×/?Ñ/?Ô@ÄEÈ!ÃKÔOÐOÐOÜ˜*¬x×/?Ñ/?Ô@ÄEÈ!ÃKÔOÐOÒOr+   c                ó  aa	a
€ \        R 4      o
\        R4      p\        R4      p\        R4      pV3V
3R llpS
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! V4      P                  V4      V! V4      8X  g   Q hV! S
4      P                  V4      V! V4      8X  g   Q hW1,          P                  V4      W1,          8X  g   Q hW2,          P                  V4      W2,          8X  g   Q hS
V,           V,           P                  V4      ^V,          V,           8X  g   Q hS
V! VS
V,
          4      ,           P                  V4      VV! V\        ^ 4      4      ,           8X  g   Q h\        S
V4      P                  V4      \        W!4      8X  g   Q h\	        4       o\	        4       o	VV	3R lpS
V! VS
V,
          4      ,           P                  V4       SV08X  g   Q hS	S
W08X  g   Q hR p\	        4       o	S
V! VS
V,
          4      ,           P                  VS	4       S	S
WV08X  g   Q hR p\	        4       o	S
V! VS
V,
          4      ,           P                  VS	4       S	S
08X  g   Q hR# )	r4   r5   r6   rT   c                 ó   <€ V S8X  d   V# R # r#   r.   )r$   r%   r4   s   &&€r(   Úreplace_visitÚ1TestSymbolic.test_traverse.<locals>.replace_visitŒ  s   ø€ Ø�AŒvØ�ñ r+   c                 ó8  <€ V P                   \        P                  J dA   V P                  ^ ,          pSP	                  V4       VS9   d   SP                  V4       R# R# V P                   \        P                  J d   V S9  d   SP	                  V 4       R# R# R# )r   N)r9   r   rh   ÚdataÚaddÚremover:   )r$   ÚoperÚfunction_symbolsÚsymbolss   & €€r(   Úcollect_symbolsÚ3TestSymbolic.test_traverse.<locals>.collect_symbols¡  sr   ø€ Ø�t‰t”r—x‘xÓØ—v‘v˜a•y�Ø ×$Ñ$ TÔ*Ø˜7”?Ø—N‘N 4Ö(ñ #à—‘œŸ™Ó" qÐ0@Ô'@Ø—‘˜A–ñ (AÑ"r+   c                 óh   € V P                   \        P                  J d   VP                  V 4       R # R # r#   )r9   r   r:   rž   ©Úexprr¢   s   &&r(   Úcollect_symbols2Ú4TestSymbolic.test_traverse.<locals>.collect_symbols2¯  s#   € Ø�w‰wœ"Ÿ)™)Ó#Ø—‘˜DÖ!ñ $r+   c                 ó¨   € V P                   \        P                  J d   V # V P                   \        P                  J d   VP	                  V 4       R # R # r#   )r9   r   rh   r:   rž   r¦   s   &&r(   Úcollect_symbols3Ú4TestSymbolic.test_traverse.<locals>.collect_symbols3¸  s8   € Ø�w‰wœ"Ÿ(™(Ó"à�Ø�w‰wœ"Ÿ)™)Ó#Ø—‘˜DÖ!ñ $r+   N)r   Útraverser   r   Úset)r/   r5   r6   rT   rš   r£   r¨   r«   r¡   r¢   r4   s   &       @@@r(   Útest_traverseÚTestSymbolic.test_traverse…  sS  ú€ Ü�c‹NˆÜ�c‹NˆÜ�c‹NˆÜ�c‹Nˆð  !÷ 	ð �z‰z˜-Ó(¨AÔ-Ð-Ð-Ø�z‰z˜-Ó(¨AÔ-Ð-Ð-Ø�z‰z˜-Ó(¨AÔ-Ð-Ð-Ù�!“�‰˜}Ó-±°1³Ô5Ð5Ð5Ù�!“�‰˜}Ó-±°1³Ô5Ð5Ð5Ø•�‰˜}Ó-°µÔ5Ð5Ð5Ø•�‰˜}Ó-°µÔ5Ð5Ð5Ø�A•˜•	×#Ñ# MÓ2°q¸1µu¸qµyÔAÐAÐAØÙ�!�Q˜•U“õß%™X mÓ4¸Ù9:¸1¼iÈ»lÓ9Kõ:LôMð 	Mð Mô �Q˜‹{×#Ñ# MÓ2´e¸A³kÔAÐAÐAô ›5ÐÜ“%ˆö	ð 
‰Qˆq�!�a•%‹[�×"Ñ" ?Ô3Ø A 3Ô&Ð&Ð&Ø˜1˜a˜)Ô#Ð#Ð#ò	"ô “%ˆØ	
‰Qˆq�!�a•%‹[�×"Ñ"Ð#3°WÔ=Ø˜1˜a A˜,Ô&Ð&Ð&ò	"ô “%ˆØ	
‰Qˆq�!�a•%‹[�×"Ñ"Ð#3°WÔ=Ø˜1˜#Œ~ÐŠ~r+   c                ó   a€ \        R 4      o\        R4      p\        R4      pSP                  S4      \        ^4      \        ^ 4      38X  g   Q hS^,           P                  S4      \        ^4      \        ^4      38X  g   Q h^S,          P                  S4      \        ^4      \        ^ 4      38X  g   Q h^S,          ^,           P                  S4      \        ^4      \        ^4      38X  g   Q h\        ^4      P                  S4      \        ^ 4      \        ^4      38X  g   Q hVP                  S4      \        ^ 4      V38X  g   Q hW,          P                  S4      \        ^ 4      W,          38X  g   Q hSV,           P                  S4      \        ^4      V38X  g   Q hVS,          V,           P                  S4      W!38X  g   Q hW!,           S,          V,           P                  S4      W!,           V38X  g   Q hW!,          S,          V,           P                  S4      W!,          V38X  g   Q h\        P                  ! \
        V3R l4       R# )r4   r5   r6   c                  ó4   <€ S S ,          P                  S 4      # r#   )Úlinear_solve)r4   s   €r(   Ú<lambda>Ú0TestSymbolic.test_linear_solve.<locals>.<lambda>Õ  s   ø€ ¨Q°­U×,@Ñ,@ÀÔ,Cr+   N)r   r³   r   ÚpytestÚraisesÚRuntimeError)r/   r5   r6   r4   s   &  @r(   Útest_linear_solveÚTestSymbolic.test_linear_solveÃ  sÞ  ø€ Ü�c‹NˆÜ�c‹NˆÜ�c‹Nˆà�~‰~˜aÓ ¤Y¨q£\´9¸Q³<Ð$@Ô@Ð@Ð@Ø�A•×#Ñ# AÓ&¬9°Q«<¼À1»Ð*FÔFÐFÐFØ�A•×#Ñ# AÓ&¬9°Q«<¼À1»Ð*FÔFÐFÐFØ�A•˜•	×'Ñ'¨Ó*¬y¸«|¼YÀq»\Ð.JÔJÐJÐJÜ˜‹|×(Ñ(¨Ó+´	¸!³¼iÈ»lÐ/KÔKÐKÐKØ�~‰~˜aÓ ¤Y¨q£\°1Ð$5Ô5Ð5Ð5Ø•×#Ñ# AÓ&¬9°Q«<¸½Ð*?Ô?Ð?Ð?à�A•×#Ñ# AÓ&¬9°Q«<¸Ð*;Ô;Ð;Ð;Ø�A•˜•	×'Ñ'¨Ó*¨q¨fÔ4Ð4Ð4Ø•˜!•˜a•×-Ñ-¨aÓ0°QµU¸A°JÔ>Ð>Ð>Ø•˜•	˜A•×+Ñ+¨AÓ.°1µ5¸!°*Ô<Ð<Ð<ä�Š”lÔ$CÖDr+   c                óV  € \        R 4      p\        R4      p\        ^{4      p\        V4      V\        ^4      38X  g   Q h\        W,          4      W38X  g   Q h\        W1,          4      W138X  g   Q h\        W,          4      W38X  g   Q h\        W,          4      W,          \        ^4      38X  g   Q h\        W1V,          ,           4      WV,          ,           V38X  g   Q h\        W1W!V,          ,
          ,          ,           4      W#^,          ,          W#,          V,
          38X  g   Q hR# ©r4   r5   N)r   r   r   ©r/   r4   r5   rF   s   &   r(   Útest_as_numer_denomÚ TestSymbolic.test_as_numer_denom×  sò   € Ü�c‹NˆÜ�c‹NˆÜ�c‹Nˆä˜aÓ  Q¬	°!«Ð$5Ô5Ð5Ð5Ü˜a�eÓ$¨¨Ô.Ð.Ð.Ü˜a�eÓ$¨¨Ô.Ð.Ð.Ü˜a�eÓ$¨¨Ô.Ð.Ð.Ü˜a�eÓ$¨­´	¸!³Ð(=Ô=Ð=Ð=Ü˜a a¥%�iÓ(¨Q°Qµ­Y¸¨NÔ:Ð:Ð:Ü˜a q¨q­5¥y¥/Õ1Ó2°q¸a½4µxÀÅÈÅÐ6KÔKÐKÒKr+   c                ód  € \        R 4      p\        R4      p\        ^{4      pVP                  4       V08X  g   Q hVP                  4       \        4       8X  g   Q hW!,          P                  4       W!,          08X  g   Q hV! V4      P                  4       V! V4      08X  g   Q hV! V4      V,           P                  4       V! V4      V08X  g   Q hV! V4      W,          ,          P                  4       V! V4      W,          08X  g   Q hV! V4      V,          P                  4       V! V4      08X  g   Q hR# r¼   )r   r   Úpolynomial_atomsr®   r½   s   &   r(   Útest_polynomial_atomsÚ"TestSymbolic.test_polynomial_atomsä  s  € Ü�c‹NˆÜ�c‹NˆÜ�c‹Nˆà×!Ñ!Ó#¨ sÔ*Ð*Ð*Ø×!Ñ!Ó#¤s£uÔ,Ð,Ð,Ø•×&Ñ&Ó(¨Q­T¨FÔ2Ð2Ð2Ù�!“×&Ñ&Ó(©Q¨q«T¨FÔ2Ð2Ð2Ù�!“�q•×*Ñ*Ó,±°1³°q°	Ô9Ð9Ð9Ù�!“�q•t•×-Ñ-Ó/±A°a³D¸!½$°<Ô?Ð?Ð?Ù�!“�a•×)Ñ)Ó+±°!³¨vÔ5Ð5Ò5r+   c                óÔ   € \         P                  ! \        R R7      ;_uu_ 4        \        P                  ! R\
        P                  R7       RRR4       R#   + '       g   i     R# ; i)zMismatch of \(\) parenthesis)ÚmatchzDATA (A, I=1, Nrm   N)r¶   r·   Ú
ValueErrorr   Úparser   r•   )r/   s   &r(   Ú"test_unmatched_parenthesis_gh30268Ú/TestSymbolic.test_unmatched_parenthesis_gh30268ñ  s9   € ä�]Š]œ:Ð-L×MÖMÜ�JŠJÐ(´8×3CÑ3CÕD÷ N×M×MÒMús   ¥'AÁA'	r.   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r1   rU   rj   ry   r€   r„   r–   r¯   r¹   r¾   rÂ   rÈ   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r(   r    r    $   sU   ø‡ € ò6òO#òb/.òbCò@>-ò@Eò$\Pò|<ò|Eò(Lò6÷Eð Er+   r    )!r¶   Únumpy.f2py.symbolicr   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r,   r   ÚF2PyTestr    r.   r+   r(   Ú<module>rÓ      sI   ðÛ ÷÷ ÷ ÷ ÷ ÷ ÷ ñ õ< ôPE�4—=‘=ö PEr+   