+
    ‹°³j°1  ã                  ó¢  € R t ^ RIHt ^ RIHt ^ RIHtHtHt ^ RI	H
t
 ^ RIHt ^ RIHt / RR R	3.bR
R R3.bRR R3.bRR R3.bRR R3.bRR R3.bRR R3.bRR R3.bRR  R!3.bR"R# R$3.bR%R& R'3.bR(R) R*3.bR+R, R-3.bR.R/ R03.bR1R2 R33.bR4R5 R63.bR7R8 R93.b/ R:R; R<3.bR=R> R?3.bR@RA RB3.bRCRD RE3.bRFRG RH3.bRIRJ RK3.bRLRM RN3.bRORP RQ3.bRRRS RT3.bRURV RW3.bRXRY RZ3.bR[R\ R[3.bR]R^ R]3.bR_R` Ra3.bRbRc Ra3.bRdRe Rf3.bRgRh Ri3.bC/ RjRk Rl3.bRmRn Ro3.bRpRq Rl3.bRrRs Rt3.bRuRv Rw3.bRxRy Rz3.bR{R| R}3.bR~R R€3.bR�R‚ R€3.bRƒR„ R…3.bR†R‡ Rˆ3.bR‰RŠ R‹3.bRŒR� RŽ3.bR�R� R‘3.bR’R“ R”3.bR•R– R—3.bR˜R™ Rš3.bC/ R›Rœ R�3.bRžRŸ R 3.bR¡R¢ R£3.bR¤R¥ R¦3.bR§R¨ R©3.bRªR« R¬3.bR­R® R¯3.bR°R± R²3.bR³R´ Rµ3.bR¶R· Rµ3.bR¸R¹ Rº3.bR»R¼ R½3.bR¾R¿ RÀ3.bRÁRÂ RÃ3.bRÄRÅ RÆ3.bRÇRÈ RÉ3.bRÊRË RÉ3.bC/ RÌRÍ RÎ3.bRÏRÐ RÑ3.bRÒRÓ RÔ3.bRÕRÖ R×3.bRØRÙ RÚ3.bRÛRÜ RÝ3.bRÞRß RÝ3.bRàRá Râ3.bRãRä Rå3.bRæRç Rè3.bRéRê Rë3.bRìRí Rî3.bRïRð Rñ3.bRòRó Rô3.bRõRö R÷3.bRøRù Rú3.bRûRü Rý3.bC/ RþRÿ ER 3.bERER ER3.bERER ER3.bERER ER	3.bER
ER ER3.bERER ER3.bERER ER3.bERER ER3.bERER ER3.bERER ER3.bERER ER3.bERER  ER!3.bER"ER# ER$3.bER%ER& ER'3.bER(ER) ER(3.bER*ER+ ER,3.bER-ER. ER-3.bCER/ER0 ER13./Ct ! ER2 ER3]4      tER4 tER5# (6  z
Mathematica code printer
)Úannotations)ÚAny)ÚBasicÚExprÚFloat)Údefault_sort_key)ÚCodePrinter)Ú
precedenceÚexpc                ó   € R # ©T© ©Úxs   &Ú[/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sympy/printing/mathematica.pyÚ<lambda>r      ó   € ‘tó    ÚExpÚlogc                ó   € R # r   r   r   s   &r   r   r      r   r   ÚLogÚsinc                ó   € R # r   r   r   s   &r   r   r      r   r   ÚSinÚcosc                ó   € R # r   r   r   s   &r   r   r      r   r   ÚCosÚtanc                ó   € R # r   r   r   s   &r   r   r      r   r   ÚTanÚcotc                ó   € R # r   r   r   s   &r   r   r      r   r   ÚCotÚsecc                ó   € R # r   r   r   s   &r   r   r      r   r   ÚSecÚcscc                ó   € R # r   r   r   s   &r   r   r      r   r   ÚCscÚasinc                ó   € R # r   r   r   s   &r   r   r      ó   € ™r   ÚArcSinÚacosc                ó   € R # r   r   r   s   &r   r   r      r,   r   ÚArcCosÚatanc                ó   € R # r   r   r   s   &r   r   r      r,   r   ÚArcTanÚacotc                ó   € R # r   r   r   s   &r   r   r      r,   r   ÚArcCotÚasecc                ó   € R # r   r   r   s   &r   r   r      r,   r   ÚArcSecÚacscc                ó   € R # r   r   r   s   &r   r   r      r,   r   ÚArcCscÚsinhc                ó   € R # r   r   r   s   &r   r   r      r,   r   ÚSinhÚcoshc                ó   € R # r   r   r   s   &r   r   r      r,   r   ÚCoshÚtanhc                ó   € R # r   r   r   s   &r   r   r       r,   r   ÚTanhÚcothc                ó   € R # r   r   r   s   &r   r   r   !   r,   r   ÚCothÚsechc                ó   € R # r   r   r   s   &r   r   r   "   r,   r   ÚSechÚcschc                ó   € R # r   r   r   s   &r   r   r   #   r,   r   ÚCschÚasinhc                ó   € R # r   r   r   s   &r   r   r   $   ó   € ™r   ÚArcSinhÚacoshc                ó   € R # r   r   r   s   &r   r   r   %   rQ   r   ÚArcCoshÚatanhc                ó   € R # r   r   r   s   &r   r   r   &   rQ   r   ÚArcTanhÚacothc                ó   € R # r   r   r   s   &r   r   r   '   rQ   r   ÚArcCothÚasechc                ó   € R # r   r   r   s   &r   r   r   (   rQ   r   ÚArcSechÚacschc                ó   € R # r   r   r   s   &r   r   r   )   rQ   r   ÚArcCschÚsincc                ó   € R # r   r   r   s   &r   r   r   *   r,   r   ÚSincÚ	conjugatec                ó   € R # r   r   r   s   &r   r   r   +   ó   € ™Tr   Ú	ConjugateÚMaxc                 ó   € R # r   r   r   s   *r   r   r   ,   r,   r   ÚMinc                 ó   € R # r   r   r   s   *r   r   r   -   r,   r   Úerfc                ó   € R # r   r   r   s   &r   r   r   .   r   r   ÚErfÚerf2c                 ó   € R # r   r   r   s   *r   r   r   /   rQ   r   Úerfcc                ó   € R # r   r   r   s   &r   r   r   0   r,   r   ÚErfcÚerfic                ó   € R # r   r   r   s   &r   r   r   1   r,   r   ÚErfiÚerfinvc                ó   € R # r   r   r   s   &r   r   r   2   ó   € ™$r   Ú
InverseErfÚerfcinvc                ó   € R # r   r   r   s   &r   r   r   3   ó   € ™4r   ÚInverseErfcÚerf2invc                 ó   € R # r   r   r   s   *r   r   r   4   ó   € ™Dr   Úexpintc                 ó   € R # r   r   r   s   *r   r   r   5   r~   r   ÚExpIntegralEÚEic                ó   € R # r   r   r   s   &r   r   r   6   ó   € ‘dr   ÚExpIntegralEiÚfresnelcc                ó   € R # r   r   r   s   &r   r   r   7   r‚   r   ÚFresnelCÚfresnelsc                ó   € R # r   r   r   s   &r   r   r   8   r‚   r   ÚFresnelSÚgammac                ó   € R # r   r   r   s   &r   r   r   9   rQ   r   ÚGammaÚ
uppergammac                 ó   € R # r   r   r   s   *r   r   r   :   ó   € ™tr   Ú	polygammac                 ó   € R # r   r   r   s   *r   r   r   ;   ó   € ™dr   Ú	PolyGammaÚloggammac                ó   € R # r   r   r   s   &r   r   r   <   r‚   r   ÚLogGammaÚbetac                 ó   € R # r   r   r   s   *r   r   r   =   rQ   r   ÚBetaÚCic                ó   € R # r   r   r   s   &r   r   r   >   rˆ   r   ÚCosIntegralÚSic                ó   € R # r   r   r   s   &r   r   r   ?   rˆ   r   ÚSinIntegralÚChic                ó   € R # r   r   r   s   &r   r   r   @   r   r   ÚCoshIntegralÚShic                ó   € R # r   r   r   s   &r   r   r   A   r   r   ÚSinhIntegralÚlic                ó   € R # r   r   r   s   &r   r   r   B   rˆ   r   ÚLogIntegralÚ	factorialc                ó   € R # r   r   r   s   &r   r   r   C   rg   r   Ú	FactorialÚ
factorial2c                ó   € R # r   r   r   s   &r   r   r   D   r˜   r   Ú
Factorial2Úsubfactorialc                ó   € R # r   r   r   s   &r   r   r   E   ó   € ¡r   ÚSubfactorialÚcatalanc                ó   € R # r   r   r   s   &r   r   r   F   r~   r   ÚCatalanNumberÚharmonicc                 ó   € R # r   r   r   s   *r   r   r   G   rg   r   ÚHarmonicNumberÚlucasc                ó   € R # r   r   r   s   &r   r   r   H   rQ   r   ÚLucasLÚRisingFactorialc                 ó   € R # r   r   r   s   *r   r   r   I   s   € ¡Dr   Ú
PochhammerÚFallingFactorialc                 ó   € R # r   r   r   s   *r   r   r   J   s   € ¡Tr   ÚFactorialPowerÚlaguerrec                 ó   € R # r   r   r   s   *r   r   r   K   rg   r   Ú	LaguerreLÚassoc_laguerrec                 ó   € R # r   r   r   s   *r   r   r   L   ó   € ¡4r   Úhermitec                 ó   € R # r   r   r   s   *r   r   r   M   r‚   r   ÚHermiteHÚjacobic                 ó   € R # r   r   r   s   *r   r   r   N   r~   r   ÚJacobiPÚ
gegenbauerc                 ó   € R # r   r   r   s   *r   r   r   O   r•   r   ÚGegenbauerCÚ
chebyshevtc                 ó   € R # r   r   r   s   *r   r   r   P   r•   r   Ú
ChebyshevTÚ
chebyshevuc                 ó   € R # r   r   r   s   *r   r   r   Q   r•   r   Ú
ChebyshevUÚlegendrec                 ó   € R # r   r   r   s   *r   r   r   R   rg   r   Ú	LegendrePÚassoc_legendrec                 ó   € R # r   r   r   s   *r   r   r   S   rÍ   r   Úmathieucc                 ó   € R # r   r   r   s   *r   r   r   T   rg   r   ÚMathieuCÚmathieusc                 ó   € R # r   r   r   s   *r   r   r   U   rg   r   ÚMathieuSÚmathieucprimec                 ó   € R # r   r   r   s   *r   r   r   V   ó   € ¡$r   ÚMathieuCPrimeÚmathieusprimec                 ó   € R # r   r   r   s   *r   r   r   W   rê   r   ÚMathieuSPrimeÚ	stieltjesc                ó   € R # r   r   r   s   &r   r   r   X   rg   r   ÚStieltjesGammaÚ
elliptic_ec                 ó   € R # r   r   r   s   *r   r   r   Y   r•   r   Ú	EllipticEÚ
elliptic_fc                 ó   € R # r   r   r   s   *r   r   r   Z   r•   r   Ú
elliptic_kc                ó   € R # r   r   r   s   &r   r   r   [   r˜   r   Ú	EllipticKÚelliptic_pic                 ó   € R # r   r   r   s   *r   r   r   \   r·   r   Ú
EllipticPiÚzetac                 ó   € R # r   r   r   s   *r   r   r   ]   rQ   r   ÚZetaÚdirichlet_etac                ó   € R # r   r   r   s   &r   r   r   ^   s   € ¡r   ÚDirichletEtaÚ
riemann_xic                ó   € R # r   r   r   s   &r   r   r   _   r˜   r   Ú	RiemannXiÚbesselic                 ó   € R # r   r   r   s   *r   r   r   `   r‚   r   ÚBesselIÚbesseljc                 ó   € R # r   r   r   s   *r   r   r   a   r‚   r   ÚBesselJÚbesselkc                 ó   € R # r   r   r   s   *r   r   r   b   r‚   r   ÚBesselKÚbesselyc                 ó   € R # r   r   r   s   *r   r   r   c   r‚   r   ÚBesselYÚhankel1c                 ó   € R # r   r   r   s   *r   r   r   d   r‚   r   ÚHankelH1Úhankel2c                 ó   € R # r   r   r   s   *r   r   r   e   r‚   r   ÚHankelH2Úairyaic                ó   € R # r   r   r   s   &r   r   r   f   rz   r   ÚAiryAiÚairybic                ó   € R # r   r   r   s   &r   r   r   g   rz   r   ÚAiryBiÚairyaiprimec                ó   € R # r   r   r   s   &r   r   r   h   r•   r   ÚAiryAiPrimeÚairybiprimec                ó   € R # r   r   r   s   &r   r   r   i   r•   r   ÚAiryBiPrimeÚpolylogc                 ó   € R # r   r   r   s   *r   r   r   j   r‚   r   ÚPolyLogÚlerchphic                 ó   € R # r   r   r   s   *r   r   r   k   rg   r   ÚLerchPhiÚgcdc                 ó   € R # r   r   r   s   *r   r   r   l   r,   r   ÚGCDÚlcmc                 ó   € R # r   r   r   s   *r   r   r   m   r,   r   ÚLCMÚjnc                 ó   € R # r   r   r   s   *r   r   r   n   r   r   ÚSphericalBesselJÚync                 ó   € R # r   r   r   s   *r   r   r   o   r   r   ÚSphericalBesselYÚhyperc                 ó   € R # r   r   r   s   *r   r   r   p   rz   r   ÚHypergeometricPFQÚmeijergc                 ó   € R # r   r   r   s   *r   r   r   q   r‚   r   ÚMeijerGÚappellf1c                 ó   € R # r   r   r   s   *r   r   r   r   rg   r   ÚAppellF1Ú
DiracDeltac                ó   € R # r   r   r   s   &r   r   r   s   r˜   r   Ú	Heavisidec                ó   € R # r   r   r   s   &r   r   r   t   rg   r   ÚHeavisideThetaÚKroneckerDeltac                 ó   € R # r   r   r   s   *r   r   r   u   rÍ   r   Úsqrtc                ó   € R # r   r   r   s   &r   r   r   v   r,   r   ÚSqrtc                  ój  a € ] tR t^zt$ RtRtRt]! ]P                  3/ R^R/ /B t	R]
R&   ]! 4       tR]
R	&   ]! 4       tR
]
R&   / 3R ltR tR tV 3R l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R tR tR t R t!R  t"]"t#]"t$R! t%R" t&R# t'R$ t(R% t)])t*R& t+R' t,R( t-R) t.R* t/R+ t0R,t1V ;t2# )-ÚMCodePrinterzUA printer to convert Python expressions to
strings of the Wolfram's Mathematica code
Ú_mcodezWolfram LanguageÚ	precisionÚuser_functionszdict[str, Any]Ú_default_settingszset[tuple[Expr, Float]]Ú_number_symbolsz
set[Basic]Ú_not_supportedc                óB  € \         P                  ! W4       \        \        4      V n        VP	                  R/ 4      P                  4       pVP                  4        F%  w  r4\        V\        4      '       d   K  R V3.W#&   K'  	  V P                  P                  V4       R# )z+Register function mappings supplied by userrM  c                 ó   € R # r   r   r   s   *r   r   Ú'MCodePrinter.__init__.<locals>.<lambda>�   s   € ©Dr   N)
r   Ú__init__ÚdictÚknown_functionsÚgetÚcopyÚitemsÚ
isinstanceÚlistÚupdate)ÚselfÚsettingsÚ	userfuncsÚkÚvs   &&   r   rT  ÚMCodePrinter.__init__‰   s|   € ä×Ò˜TÔ,Ü#¤OÓ4ˆÔØ—L‘LÐ!1°2Ó6×;Ñ;Ó=ˆ	Ø—O‘OÖ%‰DˆAÜ˜a¤×&Ô&Ù!0°!Ð 4Ð5�	“ñ &ð 	×Ñ×#Ñ# IÖ.r   c                	ó   € V# ©Nr   )r]  Úliness   &&r   Ú_format_codeÚMCodePrinter._format_code“   s   € Øˆr   c                	ó’   € \        V4      pV P                  VP                  V4      : R V P                  VP                  V4      : 2# )Ú^)r	   ÚparenthesizeÚbaser
   )r]  ÚexprÚPRECs   && r   Ú
_print_PowÚMCodePrinter._print_Pow–   s>   € Ü˜$ÓˆØ×+Ñ+¨D¯I©I°tÖ<Ø×+Ñ+¨D¯H©H°dÕ;ð=ð 	=r   c                	óè   <a a€ \        V4      oVP                  4       w  r#\        SS `  VP                  ! V!  4      pV'       d-   VR ,          pVRP                  VV 3R lV 4       4      ,          pV# )Ú*z**c              3  óH   <"  € T F  pSP                  VS4      x € K  	  R # 5ird  )rj  )Ú.0Úarm  r]  s   & €€r   Ú	<genexpr>Ú*MCodePrinter._print_Mul.<locals>.<genexpr>¡   s!   øé € ÐDÁ¸A˜T×.Ñ.¨q°$×7Ð7Ãùs   ƒ")r	   Úargs_cncÚsuperÚ
_print_MulÚfuncÚjoin)r]  rl  ÚcÚncÚresrm  Ú	__class__s   f&   @€r   ry  ÚMCodePrinter._print_Mul›   s[   ú€ Ü˜$ÓˆØ—‘“‰ˆÜ‰gÑ  §¢¨A¡Ó/ˆßØ�3�JˆCØ�4—9‘9ÕDÁÓDÓDÕDˆCØˆ
r   c                	óª   € V P                  VP                  4      pV P                  VP                  4      pVP                  pR P	                  W$V4      # )z{} {} {})Ú_printÚlhsÚrhsÚrel_opÚformat)r]  rl  Úlhs_codeÚrhs_codeÚops   &&   r   Ú_print_RelationalÚMCodePrinter._print_Relational¤   sB   € Ø—;‘;˜tŸx™xÓ(ˆØ—;‘;˜tŸx™xÓ(ˆØ�[‰[ˆØ× Ñ  ¨xÓ8Ð8r   c                	ó   € R # )Ú0r   ©r]  rl  s   &&r   Ú_print_ZeroÚMCodePrinter._print_Zero«   ó   € Ùr   c                	ó   € R # )Ú1r   rŽ  s   &&r   Ú
_print_OneÚMCodePrinter._print_One®   r‘  r   c                	ó   € R # )z-1r   rŽ  s   &&r   Ú_print_NegativeOneÚMCodePrinter._print_NegativeOne±   ó   € Ùr   c                	ó   € R # )z1/2r   rŽ  s   &&r   Ú_print_HalfÚMCodePrinter._print_Half´   s   € Ùr   c                	ó   € R # )ÚIr   rŽ  s   &&r   Ú_print_ImaginaryUnitÚ!MCodePrinter._print_ImaginaryUnit·   r‘  r   c                	ó   € R # )ÚInfinityr   rŽ  s   &&r   Ú_print_InfinityÚMCodePrinter._print_Infinity¼   s   € Ùr   c                	ó   € R # )z	-Infinityr   rŽ  s   &&r   Ú_print_NegativeInfinityÚ$MCodePrinter._print_NegativeInfinity¿   s   € Ùr   c                	ó   € R # )ÚComplexInfinityr   rŽ  s   &&r   Ú_print_ComplexInfinityÚ#MCodePrinter._print_ComplexInfinityÂ   s   € Ù r   c                	ó   € R # )ÚIndeterminater   rŽ  s   &&r   Ú
_print_NaNÚMCodePrinter._print_NaNÅ   s   € Ùr   c                	ó   € R # )ÚEr   rŽ  s   &&r   Ú_print_Exp1ÚMCodePrinter._print_Exp1Ê   r‘  r   c                	ó   € R # )ÚPir   rŽ  s   &&r   Ú	_print_PiÚMCodePrinter._print_PiÍ   r™  r   c                	ó   € R # )ÚGoldenRatior   rŽ  s   &&r   Ú_print_GoldenRatioÚMCodePrinter._print_GoldenRatioÐ   s   € Ùr   c                	ó^   € VP                  R R7      p\        V4      pV P                  W#4      # )T)rz  )Úexpandr	   rj  )r]  rl  Úexpandedrm  s   &&  r   Ú_print_TribonacciConstantÚ&MCodePrinter._print_TribonacciConstantÓ   s-   € Ø—;‘; D�;Ó)ˆÜ˜$ÓˆØ× Ñ  Ó0Ð0r   c                	ó   € R # )Ú
EulerGammar   rŽ  s   &&r   Ú_print_EulerGammaÚMCodePrinter._print_EulerGammaØ   s   € Ùr   c                	ó   € R # )ÚCatalanr   rŽ  s   &&r   Ú_print_CatalanÚMCodePrinter._print_CatalanÛ   s   € Ùr   c                	óV   a € R RP                  V 3R lV 4       4      ,           R,           # )Ú{ú, c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ird  ©Údoprint©rs  rt  r]  s   & €r   ru  Ú+MCodePrinter._print_list.<locals>.<genexpr>à   s   øé € Ð=¹°1˜tŸ|™|¨AŸ˜»ùó   ƒ!Ú}©r{  rŽ  s   f&r   Ú_print_listÚMCodePrinter._print_listß   s"   ø€ Ø�T—Y‘YÔ=¹Ó=Ó=Õ=ÀÕCÐCr   c                	ó@   € V P                  VP                  4       4      # rd  ©rÎ  ÚtolistrŽ  s   &&r   Ú_print_ImmutableDenseMatrixÚ(MCodePrinter._print_ImmutableDenseMatrixä   ó   € Ø�|‰|˜DŸK™K›MÓ*Ð*r   c                	óh   a aa€ V 3R  loVV3R lpVV 3R lpRP                  V! 4       V! 4       4      # )c                ó    <€ R P                  SP                  V ^ ,          ^,           V ^,          ^,           34      SP                  V4      4      # )ú{} -> {}©r†  rÎ  ©ÚposÚvalr]  s   &&€r   Ú
print_ruleÚ=MCodePrinter._print_ImmutableSparseMatrix.<locals>.print_ruleé   sD   ø€ Ø×$Ñ$Ø�L‰L˜#˜a�& �( C¨¥F¨1¥HÐ-Ó.°·±¸SÓ0AóCð Cr   c                 ó°   <€ \        SP                  4       P                  4       \        R 7      p RRP	                  V3R lV  4       4      ,           R,           # ))ÚkeyrÊ  rË  c              3  ó8   <"  € T F  w  rS! W4      x € K  	  R # 5ird  r   )rs  r`  ra  rã  s   &  €r   ru  ÚPMCodePrinter._print_ImmutableSparseMatrix.<locals>.print_data.<locals>.<genexpr>ð   s   øé € Ð=±u©t¨q™* Q×*Ð*³uùs   ƒrÒ  )ÚsortedÚtodokrY  r   r{  )rY  rl  rã  s    €€r   Ú
print_dataÚ=MCodePrinter._print_ImmutableSparseMatrix.<locals>.print_dataí   sF   ø€ Ü˜4Ÿ:™:›<×-Ñ-Ó/Ô5EÔFˆEØØ—	‘	Ô=±uÓ=Ó=õ>àõð r   c                 ó:   <€ SP                  S P                  4      # rd  ©rÎ  Úshape©rl  r]  s   €€r   Ú
print_dimsÚ=MCodePrinter._print_ImmutableSparseMatrix.<locals>.print_dimsó   s   ø€ Ø—<‘< §
¡
Ó+Ð+r   úSparseArray[{}, {}]©r†  )r]  rl  rë  rñ  rã  s   ff  @r   Ú_print_ImmutableSparseMatrixÚ)MCodePrinter._print_ImmutableSparseMatrixç   s,   ú€ õ	Cö	ö	,ð %×+Ñ+©J«L¹*»,ÓGÐGr   c                	ó@   € V P                  VP                  4       4      # rd  r×  rŽ  s   &&r   Ú_print_ImmutableDenseNDimArrayÚ+MCodePrinter._print_ImmutableDenseNDimArrayø   rÛ  r   c                	ó|   a aaaa€ R  oR oV 3R loVVVV3R lpVV 3R lpRP                  V! 4       V! 4       4      # )c                óN   € R RP                  R V  4       4      ,           R,           # )rÊ  rË  c              3  ó$   "  € T F  qx € K  	  R # 5ird  r   )rs  rt  s   & r   ru  ÚZMCodePrinter._print_ImmutableSparseNDimArray.<locals>.print_string_list.<locals>.<genexpr>ý   s   é € Ð":©k¨¤1«kùs   ‚rÒ  rÓ  )Ústring_lists   &r   Úprint_string_listÚGMCodePrinter._print_ImmutableSparseNDimArray.<locals>.print_string_listü   s!   € Ø˜Ÿ™Ñ":©kÓ":Ó:Õ:¸SÕ@Ð@r   c                 óZ   € \         ;QJ d    . R V  4       F  NK  	  5# ! R V  4       4      # )zŽHelper function to change Python style indexing to
Pathematica indexing.

Python indexing (0, 1 ... n-1)
-> Mathematica indexing (1, 2 ... n)
c              3  ó2   "  € T F  q^,           x € K  	  R# 5i)é   Nr   )rs  Úis   & r   ru  Ú]MCodePrinter._print_ImmutableSparseNDimArray.<locals>.to_mathematica_index.<locals>.<genexpr>  s   é € Ð-© 1˜QŸš«ùs   ‚)Útuple)Úargss   *r   Úto_mathematica_indexÚJMCodePrinter._print_ImmutableSparseNDimArray.<locals>.to_mathematica_indexÿ   s&   € ÷ ”5Ñ-©Ó-—5Ð-�5Ñ-©Ó-Ó-Ð-r   c                ód   <€ RP                  SP                  V 4      SP                  V4      4      # )z.Helper function to print a rule of MathematicarÞ  rß  rà  s   &&€r   rã  Ú@MCodePrinter._print_ImmutableSparseNDimArray.<locals>.print_rule  s(   ø€ à×$Ñ$ T§\¡\°#Ó%6¸¿¹ÀSÓ8IÓJÐJr   c                 ó¾   <€ S! \        SP                  P                  4       4       U Uu. uF!  w  rS! S! SP                  V 4      !  V4      NK#  	  upp 4      # u upp i )zçHelper function to print data part of Mathematica
sparse array.

It uses the fourth notation ``SparseArray[data,{d1,d2,...}]``
from
https://reference.wolfram.com/language/ref/SparseArray.html

``data`` must be formatted with rule.
)ré  Ú_sparse_arrayrY  Ú_get_tuple_index)ræ  Úvaluerl  rã  rÿ  r  s     €€€€r   rë  Ú@MCodePrinter._print_ImmutableSparseNDimArray.<locals>.print_data  sn   ø€ ñ %ô #)¨×);Ñ);×)AÑ)AÓ)CÔ"DôFñ #E‘J�Cñ Ù(¨4×+@Ñ+@ÀÓ+EÑGØöñ #EòFóð ùóFs   ª'A
c                 ó:   <€ SP                  S P                  4      # )zÆHelper function to print dimensions part of Mathematica
sparse array.

It uses the fourth notation ``SparseArray[data,{d1,d2,...}]``
from
https://reference.wolfram.com/language/ref/SparseArray.html
rî  rð  s   €€r   rñ  Ú@MCodePrinter._print_ImmutableSparseNDimArray.<locals>.print_dims  s   ø€ ð —<‘< §
¡
Ó+Ð+r   ró  rô  )r]  rl  rë  rñ  rã  rÿ  r  s   ff  @@@r   Ú_print_ImmutableSparseNDimArrayÚ,MCodePrinter._print_ImmutableSparseNDimArrayû   s<   ü€ ò	Aò	.õ	K÷	ð 	ö"	,ð %×+Ñ+©J«L¹*»,ÓGÐGr   c                	ó2  a € VP                   P                  S P                  9   dp   S P                  VP                   P                  ,          pV FA  w  r4V! VP                  !  '       g   K  V: R S P	                  VP                  R4      : R2u # 	  MÅVP                   P                  S P
                  9   d¡   S P
                  VP                   P                  ,          w  rVS P                  V4      '       da   \        ;QJ d    V 3R lV 4       F  '       d   K   RM	  RM! V 3R lV 4       4      '       d!   S P                  VP                  V4      4      # VP                   P                  RS P	                  VP                  R4      ,          ,           # )Ú[rË  Ú]c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ird  )Ú
_can_print)rs  Úfr]  s   & €r   ru  Ú/MCodePrinter._print_Function.<locals>.<genexpr>2  s   øé € Ð0YÉ[È°·±À×1CÐ1CË[ùrÑ  FTz[%s])
rz  Ú__name__rV  r  Ú	stringifyÚ_rewriteable_functionsr  Úallr‚  Úrewrite)r]  rl  Ú
cond_mfuncÚcondÚmfuncÚtarget_fÚrequired_fss   f&     r   Ú_print_FunctionÚMCodePrinter._print_Function)  s  ø€ Ø�9‰9×Ñ ×!5Ñ!5Ô5Ø×-Ñ-¨d¯i©i×.@Ñ.@ÕAˆJÛ)‘�Ù˜Ÿ™×#Ò#Û',¨d¯n©n¸T¿Y¹YÈÖ.MÐNÒNò  *ð �Y‰Y×Ñ 4×#>Ñ#>Ô>à$(×$?Ñ$?ÀÇ	Á	×@RÑ@RÕ$SÑ!ˆHØ�‰˜x×(Ò(¯S«SÔ0YÉ[Ó0Y¯S¯SªSÔ0YÉ[Ó0Y×-YÒ-YØ—{‘{ 4§<¡<°Ó#9Ó:Ð:Ø�y‰y×!Ñ! F¨T¯^©^¸D¿I¹IÀtÓ-LÕ$LÕLÐLr   c                	ó<  € \        VP                  4      ^8X  d2   RP                  V P                  VP                  ^ ,          4      4      # RP                  V P                  VP                  ^,          4      V P                  VP                  ^ ,          4      4      # )r  zProductLog[{}]zProductLog[{}, {}])Úlenr  r†  r‚  rŽ  s   &&r   Ú_print_LambertWÚMCodePrinter._print_LambertW8  sp   € Üˆt�y‰y‹>˜QÔØ#×*Ñ*¨4¯;©;°t·y±yÀµ|Ó+DÓEÐEØ#×*Ñ*Ø�K‰K˜Ÿ	™	 !�Ó% t§{¡{°4·9±9¸Qµ<Ó'@óBð 	Br   c                	ó¦   € R P                  V P                  VP                  ^,          4      V P                  VP                  ^ ,          4      4      # )zArcTan[{}, {}])r†  r‚  r  rŽ  s   &&r   Ú_print_atan2ÚMCodePrinter._print_atan2>  s>   € Ø×&Ñ&Ø�K‰K˜Ÿ	™	 !�Ó% t§{¡{°4·9±9¸Qµ<Ó'@óBð 	Br   c                	ó0  a € \        VP                  4      ^8X  dH   VP                  ^ ,          R,          '       g(   VP                  ^ ,          VP                  ^ ,          .pMVP                  pRRP	                  V 3R lV 4       4      ,           R,           # )r  :r  NNzHold[Integrate[rË  c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ird  rÍ  rÏ  s   & €r   ru  Ú/MCodePrinter._print_Integral.<locals>.<genexpr>G  s   øé € Ð,KÁdÀ¨T¯\©\¸!¯_¨_ÃdùrÑ  ú]])r)  Ú	variablesÚlimitsr  r{  )r]  rl  r  s   f& r   Ú_print_IntegralÚMCodePrinter._print_IntegralB  si   ø€ Üˆt�~‰~Ó !Ô#¨D¯K©K¸­N¸2×,>Ô,>Ø—I‘I˜a•L $§.¡.°Õ"3Ð4‰Dà—9‘9ˆDØ  4§9¡9Ô,KÁdÓ,KÓ#KÕKÈdÕRÐRr   c                	ój   a € R RP                  V 3R lVP                   4       4      ,           R,           # )z	Hold[Sum[rË  c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ird  rÍ  rÏ  s   & €r   ru  Ú*MCodePrinter._print_Sum.<locals>.<genexpr>J  s   øé € Ð&JÁ	¸1 t§|¡|°A§ Ã	ùrÑ  r2  )r{  r  rŽ  s   f&r   Ú
_print_SumÚMCodePrinter._print_SumI  s&   ø€ Ø˜TŸY™YÔ&JÀÇ	Â	Ó&JÓJÕJÈTÕQÐQr   c                	óê   a € VP                   pVP                   Uu. uF  q3^,          ^8X  d
   V^ ,          MTNK  	  ppRRP                  V 3R lV.V,            4       4      ,           R,           # u upi )r  zHold[D[rË  c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ird  rÍ  rÏ  s   & €r   ru  Ú1MCodePrinter._print_Derivative.<locals>.<genexpr>O  s   øé € Ð$N¹o¸ T§\¡\°!§_ _»oùrÑ  r2  )rl  Úvariable_countr{  )r]  rl  Údexprr  Údvarss   f&   r   Ú_print_DerivativeÚMCodePrinter._print_DerivativeL  se   ø€ Ø—	‘	ˆØ37×3FÒ3FÓGÑ3F¨a˜1� œ��1–¨Ò)Ñ3FˆÐGØ˜4Ÿ9™9Ô$N¸u¸gÈ¾oÓ$NÓNÕNÐQUÕUÐUùò Hs   œ!A0c                	ó$   € R P                  V4      # )z(* {} *)rô  )r]  Útexts   &&r   Ú_get_commentÚMCodePrinter._get_commentR  s   € Ø× Ñ  Ó&Ð&r   )rV  )3r  Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚprintmethodÚlanguagerU  r   rN  Ú__annotations__ÚsetrO  rP  rT  rf  rn  ry  rŠ  r�  r”  r—  r›  rŸ  r£  r¦  rª  r®  r²  r¶  rº  r¿  rÃ  rÇ  rÔ  Ú_print_tupleÚ_print_TuplerÙ  rõ  rø  r  r&  Ú_print_MinMaxBaser*  r-  r5  r:  rB  rF  Ú__static_attributes__Ú__classcell__)r  s   @r   rJ  rJ  z   s"  ø‡ ñð €KØ!€Há(,¨[×-JÑ-Jñ )Ø�RØ˜"ðOñ )Ð�~ó ñ
 03«u€OÐ,Ó4Ù!$£€N�JÓ&à "ô /òò=õ
ò9òòòòòò
òò!òò
òòò1ò
òòDà€LØ€Lò+òHò"+ò,Hò\Mð (ÐòBòBòSòRòV÷'ð 'r   rJ  c                ó6   € \        V4      P                  V 4      # )zæConverts an expr to a string of the Wolfram Mathematica code

Examples
========

>>> from sympy import mathematica_code as mcode, symbols, sin
>>> x = symbols('x')
>>> mcode(sin(x).series(x).removeO())
'(1/120)*x^5 - 1/6*x^3 + x'
)rJ  rÎ  )rl  r^  s   &,r   Úmathematica_coderV  V  s   € ô ˜Ó!×)Ñ)¨$Ó/Ð/r   N)rK  Ú
__future__r   Útypingr   Ú
sympy.corer   r   r   Úsympy.core.sortingr   Úsympy.printing.codeprinterr   Úsympy.printing.precedencer	   rV  rJ  rV  r   r   r   Ú<module>r]     sE	  ðñõ #Ý ç )Ñ )Ý /å 2Ý 0ðhØ	‰^˜UÐ#Ð$ðhà	‰^˜UÐ#Ð$ðhð 
‰^˜UÐ#Ð$ðhð 
‰^˜UÐ#Ð$ð	hð
 
‰^˜UÐ#Ð$ðhð 
‰^˜UÐ#Ð$ðhð 
‰^˜UÐ#Ð$ðhð 
‰^˜UÐ#Ð$ðhð ‰n˜hÐ'Ð(ðhð ‰n˜hÐ'Ð(ðhð ‰n˜hÐ'Ð(ðhð ‰n˜hÐ'Ð(ðhð ‰n˜hÐ'Ð(ðhð ‰n˜hÐ'Ð(ðhð ‰n˜fÐ%Ð&ðhð  ‰n˜fÐ%Ð&ð!hð" ‰n˜fÐ%Ð&ñ#hð$ ‰n˜fÐ%Ð&ð%hð& ‰n˜fÐ%Ð&ð'hð( ‰n˜fÐ%Ð&ð)hð* ‰~˜yÐ)Ð*ð+hð, ‰~˜yÐ)Ð*ð-hð. ‰~˜yÐ)Ð*ð/hð0 ‰~˜yÐ)Ð*ð1hð2 ‰~˜yÐ)Ð*ð3hð4 ‰~˜yÐ)Ð*ð5hð6 ‰n˜fÐ%Ð&ð7hð8 ‘> ;Ð/Ð0ð9hð: 
‰_˜eÐ$Ð%ð;hð< 
‰_˜eÐ$Ð%ð=hð> 
‰^˜UÐ#Ð$ð?hð@ ‰o˜uÐ%Ð&ðAhðB ‰n˜fÐ%Ð&ðChðD ‰n˜fÐ%Ð&òEhðF ‘ Ð-Ð.ðGhðH ‘ Ð/Ð0ðIhðJ ‘ ,Ð/Ð0ðKhðL ‘ Ð0Ð1ðMhðN 	‰N˜OÐ,Ð
-ðOhðP ‘. *Ð-Ð.ðQhðR ‘. *Ð-Ð.ðShðT ‰~˜wÐ'Ð(ðUhðV ‘O WÐ-Ð.ðWhðX ‘? KÐ0Ð1ðYhðZ ‘. *Ð-Ð.ð[hð\ ‰o˜vÐ&Ð'ð]hð^ 	‰N˜MÐ*Ð
+ð_hð` 	‰N˜MÐ*Ð
+ðahðb 
‰^˜^Ð,Ð-ðchðd 
‰^˜^Ð,Ð-ðehðf 	‰N˜MÐ*Ð
+òghðh ‘> ;Ð/Ð0ðihðj ‘N LÐ1Ð2ðkhðl ‘n nÐ5Ð6ðmhðn ‘ Ð1Ð2ðohðp ‘/Ð#3Ð4Ð5ðqhðr ‰~˜xÐ(Ð)ðshðt ™¨,Ð7Ð8ðuhðv ™/Ð+;Ð<Ð=ðwhðx ‘/ ;Ð/Ð0ðyhðz ™¨Ð5Ð6ð{hð| ‘ *Ð-Ð.ð}hð~ ‘ Ð+Ð,ðhð@ ‘O ]Ð3Ð4ðAhðB ‘O \Ð2Ð3ðChðD ‘O \Ð2Ð3ðEhðF ‘/ ;Ð/Ð0ðGhðH ™¨Ð5Ð6òIhðJ ‘/ :Ð.Ð/ðKhðL ‘/ :Ð.Ð/ðMhðN ‘¨Ð8Ð9ðOhðP ‘¨Ð8Ð9ðQhðR ‘>Ð#3Ð4Ð5ðShðT ‘O [Ð1Ð2ðUhðV ‘O [Ð1Ð2ðWhðX ‘N KÐ0Ð1ðYhðZ ‘_ lÐ3Ð4ð[hð\ ‰o˜vÐ&Ð'ð]hð^ ‘~ ~Ð6Ð7ð_hð` ‘N KÐ0Ð1ðahðb ‘ )Ð,Ð-ðchðd ‘ )Ð,Ð-ðehðf ‘ )Ð,Ð-ðghðh ‘ )Ð,Ð-ðihðj ‘ *Ð-Ð.òkhðl ‘¡*Ð-Ð.ðmhñn ’¡Ð)Ð*ðohñp ’¡Ð)Ð*ðqhñr ’^¡]Ð3Ð4ðshñt ’^¡]Ð3Ð4ðuhñv ’¡)Ð,Ð-ðwhñx ’/¡:Ð.Ð/ðyhñz 
Š_™eÐ$Ð%ð{hñ| 
Š_™eÐ$Ð%ð}hñ~ 	ŠOÑ/Ð0Ð
1ðhñ@ 	ŠOÑ/Ð0Ð
1ðAhñB ŠÑ 3Ð4Ð5ðChñD ’¡)Ð,Ð-ðEhñF ’/¡:Ð.Ð/ðGhñH ’N¡LÐ1Ð2ðIhñJ ’>Ñ#3Ð4Ð5ðKhñL šÑ)9Ð:Ð;ñMhñN Šn™fÐ%Ð&ñOh€öVY'�;ô Y'öx0r   