Ë
    7^(hi,  ã                   ó–  — d dl mZmZmZmZmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZ d dlmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z" d dl#m$Z$ d dl%m&Z& d dl'm(Z( d dl)m*Z*m+Z+ d dl,m-Z-m.Z. d dl%m/Z/  ed	«      \  Z0Z1Z2d
„ Z3d„ Z4d„ Z5d„ Z6d„ Z7d„ Z8d„ Z9d„ Z:d„ Z;d„ Z<d„ Z=d„ Z>d„ Z?d„ Z@d„ ZAd„ ZBd„ ZCd„ ZDd„ ZEd„ ZFd„ ZGd„ ZHd „ ZId!„ ZJd"„ ZKy#)$é    )ÚpiÚooÚsymbolsÚRationalÚIntegerÚGoldenRatioÚ
EulerGammaÚCatalanÚLambdaÚDummyÚSÚEqÚNeÚLeÚLtÚGtÚGeÚMod)Ú	PiecewiseÚsinÚcosÚAbsÚexpÚceilingÚsqrtÚsinhÚcoshÚtanhÚasinÚacosÚacoshÚMaxÚMin)Úraises)ÚJavascriptCodePrinter)Úimplemented_function)ÚIndexedBaseÚIdx)ÚMatrixÚMatrixSymbol©Újscodezx,y,zc                  ó>   — t        t        t        «      «      dk(  sJ ‚y )NúMath.abs(x))r,   r   Úx© ó    ú^/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sympy/printing/tests/test_jscode.pyÚtest_printmethodr3      s   € Ü”#”a“&‹>˜]Ò*Ð*Ñ*r1   c                  ó¼   — t        t        t        «      «      dk(  sJ ‚t        t        dz  «      dk(  sJ ‚t        t        t        j                  dz  z  «      dk(  sJ ‚y )NzMath.sqrt(x)g      à?é   zMath.cbrt(x))r,   r   r/   r   ÚOner0   r1   r2   Útest_jscode_sqrtr7      sM   € Ü”$”q“'‹?˜nÒ,Ð,Ð,Ü”!�S‘&‹>˜^Ò+Ð+Ð+Ü”!”a—e‘e˜A‘g‘,Ó >Ò1Ð1Ñ1r1   c                  ój  — t        dt        t        dt        z  «      «      } t        t        dz  «      dk(  sJ ‚t        t        t        dz  z  «      dk(  sJ ‚t        d | t        «      dz  t        t        t        z  z
  z  z  t        dz  t        z   z  «      dk(  sJ ‚t        t        d	z  «      d
k(  sJ ‚y )NÚgé   r5   zMath.pow(x, 3)zMath.pow(x, Math.pow(y, 3))é   g      @z;Math.pow(3.5*2*x, -x + Math.pow(y, x))/(Math.pow(x, 2) + y)g      ð¿z1/x)r&   r   r/   r,   Úy)r9   s    r2   Útest_jscode_Powr=      s¥   € Ü˜S¤&¬¨A¬a©C£.Ó1€AÜ”!�Q‘$‹<Ð+Ò+Ð+Ð+Ü”!”a˜‘d‘)ÓÐ =Ò=Ð=Ð=Ü�!‘Q”q“T˜#‘X¤¤Q¬¡T¡Ñ*Ñ*¬A¨q©D´1©HÑ5Ó6ØEòFð Fð Fä”!�T‘'‹?˜eÒ#Ð#Ñ#r1   c                  ó°   — t        t        d«      «      dk(  sJ ‚t        t        «      dk(  sJ ‚t        t        «      dk(  sJ ‚t        t         «      dk(  sJ ‚y )Nr;   zMath.EzMath.PIzNumber.POSITIVE_INFINITYzNumber.NEGATIVE_INFINITY)r,   r   r   r   r0   r1   r2   Útest_jscode_constants_mathhr?   $   sR   € Ü”#�a“&‹>˜XÒ%Ð%Ð%Ü”"‹:˜Ò"Ð"Ð"Ü”"‹:Ð3Ò3Ð3Ð3Ü”2�#‹;Ð4Ò4Ð4Ñ4r1   c                  ó  — t        dt        z  «      dt        j                  d«      z  k(  sJ ‚t        dt        z  «      dt        j                  d«      z  k(  sJ ‚t        dt        z  «      dt	        j                  d«      z  k(  sJ ‚y )Nr:   z#var GoldenRatio = %s;
2*GoldenRatioé   zvar Catalan = %s;
2*Catalanz!var EulerGamma = %s;
2*EulerGamma)r,   r   Úevalfr
   r	   r0   r1   r2   Útest_jscode_constants_otherrC   +   s’   € ÜØ	Œ+‰óØ@Ä;×CTÑCTÐUWÓCXÑXòYð Yð Yä�!”G‘)ÓÐ >ÄÇÁÈrÓARÑ RÒRÐRÐRÜØ	Œ*‰óØ=Ä
×@PÑ@PÐQSÓ@TÑTòUð Uñ Ur1   c                  óÔ   — t        t        dd«      «      dk(  sJ ‚t        t        dd«      «      dk(  sJ ‚t        t        dd«      «      dk(  sJ ‚t        t        d	d«      «      dk(  sJ ‚y )
Nr5   é   z3/7é   é	   Ú2éùÿÿÿz-3/7éýÿÿÿ)r,   r   r0   r1   r2   Útest_jscode_RationalrK   3   sg   € Ü”(˜1˜a“.Ó! UÒ*Ð*Ð*Ü”(˜2˜q“/Ó" cÒ)Ð)Ð)Ü”(˜1˜b“/Ó" fÒ,Ð,Ð,Ü”(˜2˜rÓ"Ó# uÒ,Ð,Ñ,r1   c                  óœ  — t        t        t        t        «      «      dk(  sJ ‚t        t	        t        t        «      «      dk(  sJ ‚t        t        t        t        «      «      dk(  sJ ‚t        t        t        t        «      «      dk(  sJ ‚t        t        t        t        «      «      dk(  sJ ‚t        t        t        t        «      «      dk(  sJ ‚y )Nzx == yzx != yzx <= yzx < yzx > yzx >= y)	r,   r   r/   r<   r   r   r   r   r   r0   r1   r2   Útest_RelationalrM   :   s˜   € Ü”"”Qœ“(Ó˜xÒ'Ð'Ð'Ü”"”Qœ“(Ó˜xÒ'Ð'Ð'Ü”"”Qœ“(Ó˜xÒ'Ð'Ð'Ü”"”Qœ“(Ó˜wÒ&Ð&Ð&Ü”"”Qœ“(Ó˜wÒ&Ð&Ð&Ü”"”Qœ“(Ó˜xÒ'Ð'Ñ'r1   c                  óØ  — t        t        t        t        «      «      dk(  sJ ‚t        t        t        t        t        z   «      «      dk(  sJ ‚t	        dd¬«      \  } }t        t        | |«      «      dk(  sJ ‚t        t        | |dz   «      «      dk(  sJ ‚t        t        d	d
d¬«      «      dk(  sJ ‚t        t        | |«       «      dk(  sJ ‚t        t        t        | |«      z  «      dk(  sJ ‚y )Nz((x % y) + y) % yz#((x % (x + y)) + (x + y)) % (x + y)zp1 p2T)Úpositivezp1 % p2r5   zp1 % (p2 + 3)rJ   rI   F)Úevaluatez(-3) % (-7)z
-(p1 % p2)zx*(p1 % p2))r,   r   r/   r<   r   )Úp1Úp2s     r2   Útest_ModrS   C   sÔ   € Ü”#”aœ“)ÓÐ 3Ò3Ð3Ð3Ü”#”aœœQ™“-Ó Ð$IÒIÐIÐIÜ�W tÔ,�F€BˆÜ”#�b˜"“+Ó )Ò+Ð+Ð+Ü”#�b˜"˜q™&“/Ó" oÒ5Ð5Ð5Ü”#�b˜" uÔ-Ó.°-Ò?Ð?Ð?Ü”3�r˜2“;�,Ó <Ò/Ð/Ð/Ü”!”C˜˜B“K‘-Ó  MÒ1Ð1Ñ1r1   c                  óh   — t        t        d«      «      dk(  sJ ‚t        t        d«      «      dk(  sJ ‚y )NéC   Ú67éÿÿÿÿz-1)r,   r   r0   r1   r2   Útest_jscode_IntegerrX   N   s0   € Ü”'˜"“+Ó $Ò&Ð&Ð&Ü”'˜"“+Ó $Ò&Ð&Ñ&r1   c                  óÚ  — t        t        t        «      t        t        «      z  «      dk(  sJ ‚t        t	        t        «      t        t        «      z  «      dk(  sJ ‚t        t        t        t        «      t        t        t        «      z   «      dk(  sJ ‚t        t        t        «      t        t        «      z  «      dk(  sJ ‚t        t        t        «      t        t        «      z
  «      dk(  sJ ‚y )Nz"Math.pow(Math.sin(x), Math.cos(x))zMath.sinh(x)*Math.cosh(x)zMath.max(x, y) + Math.min(x, y)zMath.tanh(x)*Math.acosh(y)z-Math.acos(y) + Math.asin(x))r,   r   r/   r   r   r   r"   r<   r#   r   r!   r   r    r0   r1   r2   Útest_jscode_functionsrZ   S   sª   € Ü”#”a“&œC¤›FÑ"Ó#Ð'KÒKÐKÐKÜ”$”q“'œD¤›GÑ#Ó$Ð(CÒCÐCÐCÜ”#”aœ“)œc¤!¤Q›iÑ'Ó(Ð,MÒMÐMÐMÜ”$”q“'œ%¤›(Ñ"Ó#Ð'CÒCÐCÐCÜ”$”q“'œ$œq›'‘/Ó"Ð&DÒDÐDÑDr1   c            	      óÔ  — t        d«      } t        dt        | d| z  «      «      }t         || «      «      dk(  sJ ‚t        dt        | d| z  t        z  «      «      }t         || «      «      dt	        j
                  d«      z  k(  sJ ‚t        d«      }t        dt        d	d
¬«      «      }t        dt        | | d| z   z  d| z   z  «      «      }t         |||   «      ||   ¬«      dk(  sJ ‚y )Nr/   r9   r:   z2*xzvar Catalan = %s;
2*x/CatalanrA   ÚAÚiÚnT©Úintegerr;   ©Ú	assign_toz@for (var i=0; i<n; i++){
   A[i] = (A[i] + 1)*(A[i] + 2)*A[i];
})r   r&   r   r,   r
   rB   r'   r(   )r/   r9   r\   r]   s       r2   Útest_jscode_inline_functionrc   [   sâ   € Ü�‹€AÜ˜S¤&¨¨A¨a©C£.Ó1€AÜ‘!�A“$‹<˜5Ò Ð Ð Ü˜S¤&¨¨A¨a©C´©KÓ"8Ó9€AÜ‘!�A“$‹<Ð;¼g¿m¹mÈBÓ>OÑOÒOÐOÐOÜ�CÓ€AÜˆC”˜ dÔ+Ó,€AÜ˜S¤&¨¨A¨q°1©u©I°q¸1±uÑ,=Ó">Ó?€AÜ‘!�A�a‘D“' Q q¡TÔ*ð	òð ñ r1   c                  óx   — t        t        t        «      «      dk(  sJ ‚t        t        t        «      «      dk(  sJ ‚y )NzMath.ceil(x)r.   )r,   r   r/   r   r0   r1   r2   Útest_jscode_exceptionsre   k   s/   € Ü”'œ!“*Ó Ò/Ð/Ð/Ü”#”a“&‹>˜]Ò*Ð*Ñ*r1   c                  óª  — t        t        t        z  «      dk(  sJ ‚t        t        t        z  «      dk(  sJ ‚t        t         «      dk(  sJ ‚t        t        t        z  t        z  «      dk(  sJ ‚t        t        t        z  t        z  «      dk(  sJ ‚t        t        t        z  t        z  «      dk(  sJ ‚t        t        t        z  t        z  «      dk(  sJ ‚y )Nzx && yzx || yz!xzx && y && zzx || y || zzz || x && yzz && (x || y))r,   r/   r<   Úzr0   r1   r2   Útest_jscode_booleanrh   p   s®   € Ü”!”a‘%‹=˜HÒ$Ð$Ð$Ü”!”a‘%‹=˜HÒ$Ð$Ð$Ü”1�"‹:˜ÒÐÐÜ”!”a‘%œ!‘)Ó Ò-Ð-Ð-Ü”!”a‘%œ!‘)Ó Ò-Ð-Ð-Ü”1”q‘5œA‘+Ó -Ò/Ð/Ð/Ü”1”q‘5œA‘+Ó /Ò1Ð1Ñ1r1   c                  ó<  ‡— t        t        t        dk  ft        dz  df«      Št        ‰«      } d}| |k(  sJ ‚t        ‰d¬«      dk(  sJ ‚t        t        t        dk  ft        dz  t        dkD  ft        t        «      t        dkD  f«      Št	        t
        ˆfd	„«       y )
Nr;   r:   Tz,((x < 1) ? (
   x
)
: (
   Math.pow(x, 2)
))Úcra   z8if (x < 1) {
   c = x;
}
else {
   c = Math.pow(x, 2);
}r   c                  ó   •— t        ‰ «      S )Nr+   )Úexprs   €r2   ú<lambda>z'test_jscode_Piecewise.<locals>.<lambda>�   s   ø€ œv d›|€ r1   )r   r/   r,   r   r$   Ú
ValueError)ÚpÚsrl   s     @r2   Útest_jscode_Piecewiserq   z   s˜   ø€ Ü”aœ˜Q™�Z¤! Q¡$¨ Ó.€DÜˆt‹€Aðð ð �Š6€Mˆ6Ü�$ #Ô&ðò	ð 	ð 	ô ”aœ˜Q™�Z¤! Q¡$¬¨A© ´´Q³¼¸Q¹°Ó@€DÜ
Œ:Ó+Õ,r1   c                  ór   — t        dt        t        t        dk  ft        dz  df«      z  «      } d}| |k(  sJ ‚y )Nr:   r;   Tz.2*((x < 1) ? (
   x
)
: (
   Math.pow(x, 2)
)))r,   r   r/   )ro   rp   s     r2   Útest_jscode_Piecewise_deeprs   “   s?   € Üˆq”œAœq 1™u˜:¬¨1©¨d |Ó4Ñ4Ó5€Aðð ð �Š6€M‰6r1   c                  ó&   — t        t        d„ «       y )Nc                  ó6   — t        t        t        «      d¬«      S )NÚgarbage)Úmethod)r,   r   r/   r0   r1   r2   rm   z&test_jscode_settings.<locals>.<lambda>¢   s   € œf¤S¬£V°IÔ>€ r1   )r$   Ú	TypeErrorr0   r1   r2   Útest_jscode_settingsry   ¡   s   € Ü
Œ9Ñ>Õ?r1   c                  óê  — t        dd¬«      \  } }}t        d| «      t        d|«      t        d|«      }}}t        «       }t        «       |_        t        d«      |   }|j                  |«      dk(  sJ ‚t        d	«      ||f   }|j                  |«      d
||z  |z   z  k(  sJ ‚t        d«      |||f   }	|j                  |	«      d||z  |z  ||z  z   |z   z  k(  sJ ‚|j                  t        «       k(  sJ ‚y )Nzn m oTr_   r]   ÚjÚkr/   zx[j]r\   zA[%s]ÚBzB[%s])r   r(   r%   ÚsetÚ_not_cr'   Ú_print_Indexed)
r^   ÚmÚor]   r{   r|   ro   r/   r\   r}   s
             r2   Útest_jscode_Indexedrƒ   ¥   s   € Ü�g tÔ,�G€A€qˆ!Ü�#�q‹kœ3˜s A›;¬¨C°«ˆ!€q€AÜÓ€AÜ‹u€A„Hä�CÓ˜Ñ€AØ×Ñ˜AÓ &Ò(Ð(Ð(Ü�CÓ˜˜A˜Ñ€AØ×Ñ˜AÓ '¨Q¨q©S°©UÑ"3Ò3Ð3Ð3Ü�CÓ˜˜A˜q˜Ñ!€AØ×Ñ˜AÓ '¨Q¨q©S°©U°1°Q±3©Y°q©[Ñ"9Ò9Ð9Ð9à�8‰8”s“uÒÐÑr1   c                  óÞ   — t        dd¬«      \  } }t        d«      }t        d«      }t        d«      }t        d|«      }t        d| «      }d	}t        |||f   ||   z  ||   ¬
«      }||k(  sJ ‚y )Nún mTr_   r\   r/   r<   r]   r{   zˆfor (var i=0; i<m; i++){
   y[i] = 0;
}
for (var i=0; i<m; i++){
   for (var j=0; j<n; j++){
      y[i] = A[n*i + j]*x[j] + y[i];
   }
}ra   ©r   r'   r(   r,   )	r^   r�   r\   r/   r<   r]   r{   rp   rj   s	            r2   Útest_jscode_loops_matrix_vectorr‡   µ   s}   € Ü�5 $Ô'�D€A€qÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜˆC�‹€AÜˆC�‹€Að	ð ô 	ˆq��A�‰w�q˜‘t‰| q¨¡tÔ,€AØ�Š6€M‰6r1   c                  óò   — t        ddt        ¬«      \  } }t        d«      }t        d«      }t        | |«      } d| j                  j
                  |j
                  dœz  }t        ||    ||    ¬«      }||k(  sJ ‚y )	Nzi mT)r`   Úclsr/   r<   zlfor (var i_%(icount)i=0; i_%(icount)i<m_%(mcount)i; i_%(icount)i++){
   y[i_%(icount)i] = x[i_%(icount)i];
})ÚicountÚmcountra   )r   r   r'   r(   ÚlabelÚdummy_indexr,   )r]   r�   r/   r<   ÚexpectedÚcodes         r2   Útest_dummy_loopsr�   Ë   s|   € Ü�5 $¬EÔ2�D€A€qÜ�CÓ€AÜ�CÓ€AÜˆAˆq‹	€Að	ð —7‘7×&Ñ&°!·-±-Ñ@ñ	A€Hô
 �!�A‘$ ! A¡$Ô'€DØ�8ÒÐÑr1   c                  ó  — t        dd¬«      \  } }t        d«      }t        d«      }t        d«      }t        d«      }t        d|«      }t        d	| «      }d
}t        |||f   ||   z  ||   z   ||   z   ||   ¬«      }	|	|k(  sJ ‚y )Nr…   Tr_   r\   r/   r<   rg   r]   r{   z’for (var i=0; i<m; i++){
   y[i] = x[i] + z[i];
}
for (var i=0; i<m; i++){
   for (var j=0; j<n; j++){
      y[i] = A[n*i + j]*x[j] + y[i];
   }
}ra   r†   )
r^   r�   r\   r/   r<   rg   r]   r{   rp   rj   s
             r2   Útest_jscode_loops_addr’   Ú   s™   € Ü�5 $Ô'�D€A€qÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜˆC�‹€AÜˆC�‹€Að	ð ô 	ˆq��A�‰w�q˜‘t‰|˜a ™dÑ" Q q¡TÑ)°Q°q±TÔ:€AØ�Š6€M‰6r1   c                  ó„  — t        dd¬«      \  } }}}t        d«      }t        d«      }t        d«      }t        d|«      }t        d| «      }t        d	|«      }	t        d
|«      }
d|| z  |z  |z  ||z  |z  z   |	|z  z   |
z   ›d||z  |z  |	|z  z   |
z   ›d�dz   }t        |||	|
f   ||||	|
f   z  ||   ¬«      }||k(  sJ ‚y )Nún m o pTr_   ÚaÚbr<   r]   r{   r|   Úlz³for (var i=0; i<m; i++){
   y[i] = 0;
}
for (var i=0; i<m; i++){
   for (var j=0; j<n; j++){
      for (var k=0; k<o; k++){
         for (var l=0; l<p; l++){
            y[i] = a[z]*b[ú
] + y[i];
ú         }
      }
   }
}ra   r†   )r^   r�   r‚   ro   r•   r–   r<   r]   r{   r|   r—   rp   rj   s                r2   Ú'test_jscode_loops_multiple_contractionsrš   ñ   sù   € Ü˜¨DÔ1�J€A€qˆ!ˆQÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜˆC�‹€AÜˆC�‹€AÜˆC�‹€AÜˆC�‹�Að 78¸±c¸!±e¸A±gÀÀ!ÁÀAÁ±oÈÈ!ÉÑ6KÈaÓ6OÐQRÐSTÑQTÐUVÑQVÐYZÐ[\ÑY\ÑQ\Ð_`ÓQ`ð	bð	ñ	ð ô 	ˆq��A�q�‰z˜!˜A˜q ! Q˜J™-Ñ'°1°Q±4Ô8€AØ�Š6€M‰6r1   c                  óê  — t        dd¬«      \  } }}}t        d«      }t        d«      }t        d«      }t        d«      }t        d|«      }t        d	| «      }	t        d
|«      }
t        d|«      }d|| z  |z  |z  |	|z  |z  z   |
|z  z   |z   ›d|| z  |z  |z  |	|z  |z  z   |
|z  z   |z   ›d|	|z  |z  |
|z  z   |z   ›d�dz   }t        |||	|
|f   |||	|
|f   z   ||	|
|f   z  ||   ¬«      }||k(  sJ ‚y )Nr”   Tr_   r•   r–   rj   r<   r]   r{   r|   r—   z´for (var i=0; i<m; i++){
   y[i] = 0;
}
for (var i=0; i<m; i++){
   for (var j=0; j<n; j++){
      for (var k=0; k<o; k++){
         for (var l=0; l<p; l++){
            y[i] = (a[z] + b[z])*c[r˜   r™   ra   r†   )r^   r�   r‚   ro   r•   r–   rj   r<   r]   r{   r|   r—   rp   s                r2   Útest_jscode_loops_addfactorrœ     sg  € Ü˜¨DÔ1�J€A€qˆ!ˆQÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜˆC�‹€AÜˆC�‹€AÜˆC�‹€AÜˆC�‹�Að ABÀ!ÁÀAÁÀaÁÈ!ÈAÉ#ÈaÉ%ÁÐRSÐTUÑRUÑ@UÐXYÓ@YÐ[\Ð]^Ñ[^Ð_`Ñ[`ÐabÑ[bÐefÐghÑehÐijÑejÑ[jÐmnÐopÑmpÑ[pÐstÓ[tÐvwÐxyÑvyÐz{Ñv{Ð~ð  ABñ  Bñ  wBð  EFó  wFð	Gð	ñ	ð ô 	��!�Q˜˜1�*‘  ! Q¨¨1 *¡Ñ-¨q°°A°q°©zÑ9ÀQÀqÁTÔJ€AØ�Š6€M‰6r1   c                  óˆ  — t        dd¬«      \  } }}}t        d«      }t        d«      }t        d«      }t        d«      }t        d|«      }t        d	| «      }	t        d
|«      }
d}d|| z  |z  |	|z  z   |
z   z  dz   }d||z  |
z   z  dz   }d|| z  |	z   z  dz   }t        ||	   |||	f   z  ||
   |||
f   z  z   ||	   ||
   z  |||	|
f   z  z   ||   ¬«      }|||z   |z   |d d z   k(  s\|||z   |z   |d d z   k(  sJ|||z   |z   |d d z   k(  s8|||z   |z   |d d z   k(  s&|||z   |z   |d d z   k(  s|||z   |z   |d d z   k(  sJ ‚y y y y y y )Nr”   Tr_   r•   r–   rj   r<   r]   r{   r|   z(for (var i=0; i<m; i++){
   y[i] = 0;
}
z|for (var i=0; i<m; i++){
   for (var j=0; j<n; j++){
      for (var k=0; k<o; k++){
         y[i] = b[j]*b[k]*c[%s] + y[i];
z      }
   }
}
zUfor (var i=0; i<m; i++){
   for (var k=0; k<o; k++){
      y[i] = a[%s]*b[k] + y[i];
z   }
}
zUfor (var i=0; i<m; i++){
   for (var j=0; j<n; j++){
      y[i] = a[%s]*b[j] + y[i];
ra   rW   r†   )r^   r�   r‚   ro   r•   r–   rj   r<   r]   r{   r|   Ús0Ús1Ús2Ús3s                  r2   Ú test_jscode_loops_multiple_termsr¢   *  s	  € Ü˜¨DÔ1�J€A€qˆ!ˆQÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜ�CÓ€AÜˆC�‹€AÜˆC�‹€AÜˆC�‹€Að	ð ð	4ð 89¸±s¸1±u¸qÀ¹s±{ÀQ±ñ	Hð	ñ		ð ð	,à/0°©s°Q©wñ	8ð	ñ	ð ð	,à/0°©s°Q©wñ	8ð	ñ	ð ô 	Ø	ˆ!‰ˆQˆq�!ˆt‰W‰�q˜‘t˜A˜a ˜d™G‘|Ñ# a¨¡d¨1¨Q©4¡i°°!°Q¸°'±
Ñ&:Ñ:ÀaÈÁdô	L€Aà��b‘˜2‘  3 B Ñ'Ò'Ø��b‘˜2‘  3 B Ñ'Ò'Ø��b‘˜2‘  3 B Ñ'Ò'Ø��b‘˜2‘  3 B Ñ'Ò'Ø��b‘˜2‘  3 B Ñ'Ò'Ø��b‘˜2‘  3 B Ñ'Ò'ð)ð (ð
 (ð (ð (ð (ð (ð (r1   c            	      óX  — t        t        t        z  t        dt        z   t        dkD  ft        df«      t	        t
        «      g«      } t        ddd«      }t        | |«      dk(  sJ ‚t        d|d   z  t        dkD  f|d   df«      t	        |d	   «      z   |d
   z   }t        |«      dk(  sJ ‚t        ddd«      }t        ddd«      }t        t	        |d	   «      dt        |d   «      g|d	   |d   z   |d   dgd|d   z  |d	   z  t        |d
   «      dz   dgg«      }t        ||«      dk(  sJ ‚y )Nr:   r   Tr\   r5   r;   zUA[0] = x*y;
if (y > 0) {
   A[1] = x + 2;
}
else {
   A[1] = y;
}
A[2] = Math.sin(z);)r:   r   )r;   r   ©r   r   z?((x > 0) ? (
   2*A[2]
)
: (
   A[2]
)) + Math.sin(A[1]) + A[0]Úqé   ÚM)r5   r   )é   r   r¨   zœM[0] = Math.sin(q[1]);
M[1] = 0;
M[2] = Math.cos(q[2]);
M[3] = q[1] + q[2];
M[4] = q[3];
M[5] = 5;
M[6] = 2*q[4]/q[1];
M[7] = Math.sqrt(q[0]) + 4;
M[8] = 0;)
r)   r/   r<   r   r   rg   r*   r,   r   r   )Úmatr\   rl   r¥   r§   r�   s         r2   Útest_Matrix_printingrª   Z  s\  € ä
”!”A‘#”y !¤a¡%¬¨1© ´°4¨yÓ9¼3¼q»6ÐBÓ
C€CÜ�S˜!˜QÓ€AÜ�#�q‹>ð	òð ð ô �a˜˜$™‘i¤ Q¡Ð'¨!¨D©'°4¨Ó9¼CÀÀ$Á»LÑHÈ1ÈTÉ7ÑR€DÜ�$‹<ð	%ò&ð &ð &ô 	�S˜!˜QÓ€AÜ�S˜!˜QÓ€AÜ”�Q�s‘V“˜a¤ Q s¡V£Ð-Ø	
ˆ3‰�!�C‘&‰˜!˜D™' 1Ð%Ø	
ˆ1ˆT‰7‰�1�S‘6Ñ	œ4  #¡›<¨!Ñ+¨QÐ/ð1ó 	2€Aô �!�Q‹<ð	ò	ð 	ñ 	r1   c                  óô   — t        ddd«      } t        ddd«      }t        ddd«      }t        | d   «      dk(  sJ ‚t        d| d   z  «      dk(  sJ ‚|d   j                  || |z
  «      }t        |«      d	k(  sJ ‚y )
Nr\   r;   r5   r}   ÚCr¤   zA[0]z3*A[0]z
(A - B)[0])r*   r,   Úsubs)r\   r}   r¬   ÚFs       r2   Útest_MatrixElement_printingr¯   ‚  s‡   € ä�S˜!˜QÓ€AÜ�S˜!˜QÓ€AÜ�S˜!˜QÓ€Aä�!�D‘'‹?˜fÒ$Ð%Ð$Ü�!�a˜‘g‘+Ó (Ò*Ð+Ð*à	ˆ$‰�‰�Q˜˜A™Ó€AÜ�!‹9˜Ò$Ð%Ñ$r1   N)LÚ
sympy.corer   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   Úsympy.functionsr   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   Úsympy.testing.pytestr$   Úsympy.printing.jscoder%   Úsympy.utilities.lambdifyr&   Úsympy.tensorr'   r(   Úsympy.matricesr)   r*   r,   r/   r<   rg   r3   r7   r=   r?   rC   rK   rM   rS   rX   rZ   rc   re   rh   rq   rs   ry   rƒ   r‡   r�   r’   rš   rœ   r¢   rª   r¯   r0   r1   r2   ú<module>r·      sà   ð÷)÷ )÷ )÷ )÷ )÷L÷ L÷ L÷ Lñ Lå 'Ý 7Ý 9ß )ß /å (á
�'Ó
�€€1€aò+ò2ò$ò5òUò-ò(ò2ò'ò
Eòò +ò
2ò-ò2ò@òò ò,òò.ò8ò:-)ò`%óP
&r1   