+
    ‹°³j×�  ã                  ó  € R t ^ RIHt ^ RIHt ^ RI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 ^ RIHt ^R	IHtHt ^R
IHtHt ^ RIHtHt  ! R R]4      t]! ]4      R 4       t  ! R R]4      t!]! ]!4      R 4       t"R# )zI
A Printer for generating readable representation of most SymPy classes.
)Úannotations)ÚAny)ÚSÚRationalÚPowÚBasicÚMulÚNumber)Ú_keep_coeff)ÚInteger)Ú
Relational)Údefault_sort_key)Úsift)Ú
precedenceÚ
PRECEDENCE)ÚPrinterÚprint_function)Úprec_to_dpsÚto_strc                  óŽ  € ] tR t^t$ RtRRRRRRRRR	R
RRRRRR/tR]R&   / tR]R&   R˜R ltR™R lt	R t
Rš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R' tR( tR) tR* t R+ t!R, t"R- t#R. t$R/ t%R0 t&R1 t'R2 t(R3 t)R4 t*R5 t+R6 t,R7 t-R8 t.R9 t/R: t0R; t1R< t2R= t3R> t4R? t5R@ t6RA t7RB t8RC t9RD t:RE t;RF t<RG t=RH t>RI t?RJ t@RK tARL tBRM tCRN tDRO tERP tFRQ tGRR tHRS tIRT tJRU tKRV tLRW tMRX tNR˜RY ltORZ tPR[ tQR\ tRR] tSR^ tTR_ tUR` tVRa tWRb tXRc tYRd tZRe t[Rf t\Rg t]Rh t^Ri t_Rj t`Rk taRl tbRm tcRn tdRo teRp tfRq tgRr thRs tiRt tjRu tk]ktl]ktmRv tnRw toRx tpRy tqRz trR{ tsR| ttR} tuR~ tvR twR€ txR� tyR‚ tzRƒ 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ŒR• t�R– tŽR—t�R# )›Ú
StrPrinterÚ	_sympystrÚorderNÚ	full_precÚautoÚsympy_integersFÚabbrevÚperm_cyclicTÚminÚmaxÚdpszdict[str, Any]Ú_default_settingszdict[str, str]Ú_relationalsc                	ó¤   € \        V4      V8  g   V'       g)   \        V4      V8:  d   R V P                  V4      ,          # V P                  V4      # )ú(%s))r   Ú_print)ÚselfÚitemÚlevelÚstricts   &&&&ÚS/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sympy/printing/str.pyÚparenthesizeÚStrPrinter.parenthesize#   s@   € Ü�tÓ˜uÔ$¯v¼:ÀdÓ;KÈuÔ;TØ˜DŸK™K¨Ó-Õ-Ð-à—;‘;˜tÓ$Ð$ó    c           	     	ój   € TP                  V Uu. uF  q@P                  WC4      NK  	  up4      # u upi ©N)Újoinr+   )r&   ÚargsÚsepr(   r'   s   &&&& r*   Ú	stringifyÚStrPrinter.stringify)   s,   € Ø�x‰xÁDÓIÁD¸D×*Ñ*¨4Ö7ÁDÑIÓJÐJùÒIs   �0c                	óŠ   € \        V\        4      '       d   V# \        V\        4      '       d   \        V4      # \        V4      # r/   )Ú
isinstanceÚstrr   Úrepr©r&   Úexprs   &&r*   ÚemptyPrinterÚStrPrinter.emptyPrinter,   s5   € Ü�dœC× Ò ØˆKÜ˜œe×$Ò$Ü˜“:Ðä�t“9Ðr-   c                	óæ  € V P                  WR 7      p\        V4      p. pV F›  pV P                  V4      pVP                  R4      '       d   VP                  '       g   RpVR,          pMRp\        V4      V8  g   VP                  '       d   VP                  VRV,          .4       K‰  VP                  W‡.4       K�  	  VP                  ^ 4      pVR8X  d   RpVRP                  V4      ,           # )©r   Ú-ºé   NNÚ+r$   Ú Ú )Ú_as_ordered_termsr   r%   Ú
startswithÚis_AddÚextendÚpopr0   )	r&   r:   r   ÚtermsÚprecÚlÚtermÚtÚsigns	   &&&      r*   Ú
_print_AddÚStrPrinter._print_Add4   sÌ   € Ø×&Ñ& tÐ&Ó9ˆä˜$ÓˆØˆÛˆDØ—‘˜DÓ!ˆAØ�|‰|˜C× Ò ¨¯¯¨Ø�Ø�b•E‘à�Ü˜$Ó $Ô&¨$¯+¯+¨+Ø—‘˜$ ¨¥
Ð+Ö,à—‘˜$˜Ö#ñ ð �u‰u�Q‹xˆØ�3Œ;ØˆDØ�c—h‘h˜q“kÕ!Ð!r-   c                	ó   € R # )ÚTrue© r9   s   &&r*   Ú_print_BooleanTrueÚStrPrinter._print_BooleanTrueI   s   € Ùr-   c                	ó   € R # )ÚFalserT   r9   s   &&r*   Ú_print_BooleanFalseÚStrPrinter._print_BooleanFalseL   ó   € Ùr-   c                	ól   € R V P                  VP                  ^ ,          \        R,          4      ,          # )z~%sÚNot)r+   r1   r   r9   s   &&r*   Ú
_print_NotÚStrPrinter._print_NotO   s'   € Ø�t×(Ñ(¨¯©°1­´jÀÕ6GÓHÕIÐIr-   c                	óV  € \        VP                  4      p\        V4       Fh  w  r4\        V\        4      '       g   K  VP
                  P                  \        P                  J g   KG  VP                  ^ VP                  V4      4       Kj  	  V P                  VR\        R,          4      # )é    z & Ú
BitwiseAnd)Úlistr1   Ú	enumerater6   r   Ú	canonicalÚrhsr   ÚNegativeInfinityÚinsertrI   r3   r   )r&   r:   r1   ÚjÚis   &&   r*   Ú
_print_AndÚStrPrinter._print_AndR   sr   € Ü�D—I‘I‹ˆÜ˜d–O‰DˆAÜ˜!œZ×(Ô(Ø—K‘K—O‘O¤q×'9Ñ'9Õ9Ø—‘˜A˜tŸx™x¨›{Ö+ñ $ð �~‰~˜d E¬:°lÕ+CÓDÐDr-   c                	óR   € V P                  VP                  R \        R,          4      # )z | Ú	BitwiseOr©r3   r1   r   r9   s   &&r*   Ú	_print_OrÚStrPrinter._print_OrZ   s   € Ø�~‰~˜dŸi™i¨´
¸;Õ0GÓHÐHr-   c                	óR   € V P                  VP                  R \        R,          4      # )z ^ Ú
BitwiseXorro   r9   s   &&r*   Ú
_print_XorÚStrPrinter._print_Xor]   s   € Ø�~‰~˜dŸi™i¨´
¸<Õ0HÓIÐIr-   c                	ó|   € V P                  VP                  4      : R V P                  VP                  R4      : R2# ©Ú(ú, Ú))r%   Úfunctionr3   Ú	argumentsr9   s   &&r*   Ú_print_AppliedPredicateÚ"StrPrinter._print_AppliedPredicate`   s/   € à�K‰K˜Ÿ™Ö&¨¯©°t·~±~ÀtÖ(LðNð 	Nr-   c                	óÄ   € VP                    Uu. uF  q P                  V4      NK  	  ppVP                  P                  R RP	                  V4      ,          ,           # u upi ©r$   ry   )r1   r%   Ú	__class__Ú__name__r0   )r&   r:   ÚorL   s   &&  r*   Ú_print_BasicÚStrPrinter._print_Basicd   sG   € Ø%)§Y¢YÓ/¡Y �[‰[˜Ž^¡YˆÐ/Ø�~‰~×&Ñ&¨°$·)±)¸A³,Õ)>Õ>Ð>ùò 0s   �Ac                	ó²   € VP                   P                  R8X  d#   V P                  VP                   R,          4       V P                  VP                   4      # )rA   )rA   rA   )ra   ra   )ÚblocksÚshaper%   )r&   ÚBs   &&r*   Ú_print_BlockMatrixÚStrPrinter._print_BlockMatrixh   s9   € Ø�8‰8�>‰>˜VÔ#Ø�K‰K˜Ÿ™ �Ô'Ø�{‰{˜1Ÿ8™8Ó$Ð$r-   c                	ó   € R # )ÚCatalanrT   r9   s   &&r*   Ú_print_CatalanÚStrPrinter._print_Catalanm   s   € Ùr-   c                	ó   € R # )ÚzoorT   r9   s   &&r*   Ú_print_ComplexInfinityÚ!StrPrinter._print_ComplexInfinityp   ó   € Ùr-   c                	ó.  € \        VP                  VP                  3 Uu. uF  q P                  V4      NK  	  up4      pVP                  \
        P                  J d
   R V,          # W0P                  VP                  4      3,          pRV,          # u upi )zConditionSet(%s, %s)zConditionSet(%s, %s, %s))ÚtupleÚsymÚ	conditionr%   Úbase_setr   ÚUniversalSet)r&   Úsrj   r1   s   &&  r*   Ú_print_ConditionSetÚStrPrinter._print_ConditionSets   st   € Ü¨q¯u©u°a·k±kÑ.BÓCÑ.B¨—k‘k !–nÑ.BÑCÓDˆØ�:‰:œŸ™Ó'Ø)¨DÕ0Ð0Ø—‘˜QŸZ™ZÓ(Ð*Õ*ˆØ)¨DÕ0Ð0ùò	 Ds    B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      ,          # u upi )rA   zDerivative(%s)ry   c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   ©r%   ©Ú.0Úargr&   s   & €r*   Ú	<genexpr>Ú/StrPrinter._print_Derivative.<locals>.<genexpr>}   s   øé € Ð,YÉÀ#¨T¯[©[¸×-=Ð-=Ëùó   ƒ!)r:   Úvariable_countr0   )r&   r:   Údexprrj   Údvarss   f&   r*   Ú_print_DerivativeÚStrPrinter._print_Derivativez   s`   ø€ Ø—	‘	ˆØ37×3FÒ3FÓGÑ3F¨a˜1� œ��1–¨Ò)Ñ3FˆÐGØ $§)¡)Ô,YÈ%ÈÐSXÎÓ,YÓ"ZÕZÐZùò Hs   œ!A)c                	ó  € \        VP                  4       \        R 7      p. pV FA  pV P                  V4      : RV P                  W,          4      : 2pVP	                  V4       KC  	  RRP                  V4      ,          # )©Úkeyz: ú{%s}ry   )ÚsortedÚkeysr   r%   Úappendr0   )r&   Údr±   Úitemsr®   r'   s   &&    r*   Ú_print_dictÚStrPrinter._print_dict   sd   € Ü�a—f‘f“hÔ$4Ô5ˆØˆãˆCØ#Ÿ{™{¨3Ö/°·±¸Q½VÕ1DÐEˆDØ�L‰L˜Öñ ð ˜Ÿ	™	 %Ó(Õ(Ð(r-   c                	ó$   € V P                  V4      # r/   )rµ   r9   s   &&r*   Ú_print_DictÚStrPrinter._print_Dict‰   ó   € Ø×Ñ Ó%Ð%r-   c                	ól  € \        VR 4      '       d'   RV P                  VP                  4       4      ,           # \        VR4      '       dJ   RV P                  VP                  4      ,           R,           V P                  VP                  4      ,           # RV P                  VP                  4      ,           # )Ú
as_booleanzDomain: Úsetz in z
Domain on )Úhasattrr%   r¼   Úsymbolsr½   )r&   r³   s   &&r*   Ú_print_RandomDomainÚStrPrinter._print_RandomDomainŒ   s„   € Ü�1�l×#Ò#Ø §¡¨A¯L©L«NÓ ;Õ;Ð;Ü�Q˜×ÒØ §¡¨Q¯Y©YÓ!7Õ7¸&Õ@Ø—K‘K §¡Ó&õ'ð (ð   $§+¡+¨a¯i©iÓ"8Õ8Ð8r-   c                	ó(   € R VP                   ,           # ©Ú_©Únamer9   s   &&r*   Ú_print_DummyÚStrPrinter._print_Dummy•   s   € Ø�T—Y‘Y�Ðr-   c                	ó   € R # )Ú
EulerGammarT   r9   s   &&r*   Ú_print_EulerGammaÚStrPrinter._print_EulerGamma˜   s   € Ùr-   c                	ó   € R # )ÚErT   r9   s   &&r*   Ú_print_Exp1ÚStrPrinter._print_Exp1›   ó   € Ùr-   c                	ó|   € R V P                  VP                  4      : RV P                  VP                  4      : R2# rw   )r%   r:   Úcondr9   s   &&r*   Ú_print_ExprCondPairÚStrPrinter._print_ExprCondPairž   s'   � Ø!Ÿ[™[¨¯©Ö3°T·[±[ÀÇÁÖ5KÐLÐLr-   c                	ó~   € VP                   P                  R V P                  VP                  R4      ,          ,           # r€   )Úfuncr‚   r3   r1   r9   s   &&r*   Ú_print_FunctionÚStrPrinter._print_Function¡   s+   € Ø�y‰y×!Ñ! F¨T¯^©^¸D¿I¹IÀtÓ-LÕ$LÕLÐLr-   c                	ó   € R # )ÚGoldenRatiorT   r9   s   &&r*   Ú_print_GoldenRatioÚStrPrinter._print_GoldenRatio¤   s   € Ùr-   c                	ó~   € VP                   P                  R V P                  VP                  R4      ,          ,           # r€   )r×   r‚   r3   Úpargsr9   s   &&r*   Ú_print_HeavisideÚStrPrinter._print_Heaviside§   s-   € ð �y‰y×!Ñ! F¨T¯^©^¸D¿J¹JÈÓ-MÕ$MÕMÐMr-   c                	ó   € R # )ÚTribonacciConstantrT   r9   s   &&r*   Ú_print_TribonacciConstantÚ$StrPrinter._print_TribonacciConstant¬   s   € Ù#r-   c                	ó   € R # ©ÚIrT   r9   s   &&r*   Ú_print_ImaginaryUnitÚStrPrinter._print_ImaginaryUnit¯   rÑ   r-   c                	ó   € R # )ÚoorT   r9   s   &&r*   Ú_print_InfinityÚStrPrinter._print_Infinity²   ó   € Ùr-   c                	óÂ   a € V 3R  lpRP                  VP                   Uu. uF
  q2! V4      NK  	  up4      pRS P                  VP                  4      : RV: R2# u upi )c                ó´   <€ \        V 4      ^8X  d   SP                  V ^ ,          4      # SP                  V ^ ,          3\        V R,          4      ,           4      # ©rA   r@   ©Úlenr%   r–   ©Úxabr&   s   &€r*   Ú
_xab_tostrÚ.StrPrinter._print_Integral.<locals>._xab_tostr¶   óC   ø€ Ü�3‹x˜1Œ}Ø—{‘{ 3 q¥6Ó*Ð*à—{‘{ C¨¥F 9¬u°S¸µW«~Õ#=Ó>Ð>r-   ry   z	Integral(rz   ©r0   Úlimitsr%   r{   ©r&   r:   r÷   rL   ÚLs   f&   r*   Ú_print_IntegralÚStrPrinter._print_Integralµ   sL   ø€ õ	?ð
 �I‰I¨d¯kªkÓ:©k¨�z !–}©kÑ:Ó;‰Ø%)§[¡[°·±Ö%?ÃÐCÐCùò ;ó   ¡Ac           
     	ó|  € R pVP                   w  r4rVVP                  '       d   VP                  '       d   RpMmVP                  '       d   V'       g   RpMPVP                  '       d   V'       g   RpM3V'       g   V'       g   RpM V'       d   V'       d   RpMV'       d   RpMRpVP                  ! R/ RVRVRV/B # )	zInterval{m}({a}, {b})rC   z.openz.Lopenz.RopenÚaÚbÚmrT   )r1   Úis_infiniteÚformat)r&   rj   Úfinr  r  rL   Úrr  s   &&      r*   Ú_print_IntervalÚStrPrinter._print_Interval¾   sŠ   € Ø&ˆØ—V‘V‰
ˆˆaØ�=�=ˆ=˜QŸ]Ÿ]˜]Ø‰AØ�]�]ˆ]§1Ø‰AØ�]�]ˆ]§1Ø‰AßŸ1Ø‰Aß—1Ø‰AßØ‰AàˆAØ�zŠzÑ5˜S ! S¨!¨S°!Ð4Ñ5Ð5r-   c                	ó|   € R V P                  VP                  4      : RV P                  VP                  4      : R2# )zAccumBounds(ry   rz   )r%   r   r   )r&   rj   s   &&r*   Ú_print_AccumulationBoundsÚ$StrPrinter._print_AccumulationBoundsÑ   s,   � Ø(,¯©°A·E±EÖ(:Ø(,¯©°A·E±EÖ(:ð<ð 	<r-   c                	ó^   € R V P                  VP                  \        R,          4      ,          # )z%s**(-1)r   ©r+   r£   r   )r&   rè   s   &&r*   Ú_print_InverseÚStrPrinter._print_InverseÕ   s#   € Ø˜D×-Ñ-¨a¯e©e´ZÀÕ5FÓGÕGÐGr-   c                	óè   € VP                   pVP                  p\        V4      ^8X  d#   V^ ,          P                  '       d
   V^ ,          pRV P	                  V4      : RV P	                  V4      : R2# )rA   zLambda(ry   rz   )r:   Ú	signaturerô   Ú	is_symbolr%   )r&   Úobjr:   Úsigs   &&  r*   Ú_print_LambdaÚStrPrinter._print_LambdaØ   sU   € Ø�x‰xˆØ�m‰mˆÜˆs‹8�qŒ=˜S �V×-×-Ð-Ø�a•&ˆCøØ#'§;¡;¨sÖ#3°T·[±[ÀÖ5FÐGÐGr-   c                	ó´   a € \        VP                  \        R 7      pVP                  P                  RRP                  V 3R lV 4       4      ,          ,           # )r­   r$   ry   c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    r¡   s   & €r*   r¤   Ú.StrPrinter._print_LatticeOp.<locals>.<genexpr>á   s   øé € Ð6XÑSWÈC°t·{±{À3×7GÐ7GÓSWùr¦   )r°   r1   r   r×   r‚   r0   ©r&   r:   r1   s   f& r*   Ú_print_LatticeOpÚStrPrinter._print_LatticeOpß   s>   ø€ Ü�d—i‘iÔ%5Ô6ˆØ�y‰y×!Ñ! F¨T¯Y©YÔ6XÑSWÓ6XÓ-XÕ$XÕXÐXr-   c           
     	óp   € VP                   w  r#rER \        \        V P                  W#WE34      4      ,          # )zLimit(%s, %s, %s, dir='%s'))r1   r–   Úmapr%   )r&   r:   ÚeÚzÚz0Údirs   &&    r*   Ú_print_LimitÚStrPrinter._print_Limitã   s.   € ØŸ	™	‰ˆˆbØ,¬u´S¸¿¹ÀqÈRÀoÓ5VÓ/WÕWÐWr-   c                	ó4   € R V P                  VR4      ,          # )ú[%s]ry   )r3   r9   s   &&r*   Ú_print_listÚStrPrinter._print_listè   s   € Ø˜Ÿ™ t¨TÓ2Õ2Ð2r-   c                	ó$   € V P                  V4      # r/   )r)  r9   s   &&r*   Ú_print_ListÚStrPrinter._print_Listë   rº   r-   c                	ó$   € VP                  V 4      # r/   )Ú_format_strr9   s   &&r*   Ú_print_MatrixBaseÚStrPrinter._print_MatrixBaseî   rº   r-   c                	óØ   € V P                  VP                  \        R ,          RR7      RV P                  VP                  4      : RV P                  VP
                  4      : R2,           # )ÚAtomT©r)   Ú[ry   Ú])r+   Úparentr   r%   rj   ri   r9   s   &&r*   Ú_print_MatrixElementÚStrPrinter._print_MatrixElementñ   sN   € Ø× Ñ  §¡¬j¸Õ.@ÈÐ ÔNØ ŸK™K¨¯©Ö/°·±¸T¿V¹VÖ1DÐEõFð 	Fr-   c                	ó<  a € V 3R  lpS P                  VP                  \        R,          RR7      R,           V! VP                  VP                  P                  4      ,           R,           V! VP
                  VP                  P                  4      ,           R,           # )c                ó¾   <€ \        V 4      p V ^,          ^8X  d   V ^ V ^ ,          ^ 8X  d   RV ^ &   V ^,          V8X  d   RV ^&   RP                  V3R lV  4       4      # )é   rC   Ú:c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    r¡   s   & €r*   r¤   ÚBStrPrinter._print_MatrixSlice.<locals>.strslice.<locals>.<genexpr>þ   s   øé € Ð;¹°#˜TŸ[™[¨×-Ð-»ùr¦   )rc   r0   )ÚxÚdimr&   s   &&€r*   ÚstrsliceÚ/StrPrinter._print_MatrixSlice.<locals>.strsliceö   s[   ø€ Ü�Q“ˆAØ��t�qŒyØ�a�DØ��t�qŒyØ��!‘Ø��t�sŒ{Ø��!‘Ø—8‘8Ô;¹Ó;Ó<Ð<r-   r3  Tr4  r5  ry   r6  )r+   r7  r   ÚrowsliceÚrowsÚcolsliceÚcols)r&   r:   rB  s   f& r*   Ú_print_MatrixSliceÚStrPrinter._print_MatrixSliceõ   s€   ø€ õ	=ð ×!Ñ! $§+¡+¬z¸&Õ/AÈ$Ð!ÓOÐRUÕUÙ˜Ÿ™¨¯©×(8Ñ(8Ó9õ:Ø<@õAá˜Ÿ™¨¯©×(8Ñ(8Ó9õ:à<?õ@ð 	Ar-   c                	ó   € VP                   # r/   rÅ   r9   s   &&r*   Ú_print_DeferredVectorÚ StrPrinter._print_DeferredVector  ó   € Ø�y‰yÐr-   c           
     	óv  € \        V4      pVP                  pV^ ,          \        P                  J gJ   \        ;QJ d#    R VR,           4       F  '       g   K   RM	  RM! R VR,           4       4      '       Ed'   \        VR RR7      w  rE\        V4       F¦  w  rgVP                  P                  '       d   VP                  ) pMB\        VP                  P                  4      p	V	^ ,          ) V	^ &   \        P                  ! V	4      pV^,
          '       d   \        VP                  VRR7      MVP                  WF&   K¨  	  . p
V'       dX   V^ ,          P                  '       g?   V^ ,          P                  4       '       d"   V P!                  VP#                  ^ 4      4      .p
T
V Uu. uF  pV P%                  W²RR7      NK  	  up,           pV'       g   R	.p\'        V4      ^8”  d@   V^ ,          P                  4       '       d#   V P!                  VP#                  ^ 4      4      .p
M. p
T
V Uu. uF  pV P%                  W²RR7      NK  	  up,           pR
P)                  V4      pR
P)                  V4      p\'        V4      ^8”  d   V: RV: R2# V'       d
   V: RV: 2# V# VP+                  4       w  rèV^ 8  d   \-        V) V4      pRpMRp. p. p. pV P.                  R9  d   VP1                  4       pM\        P2                  ! V4      pR pV EF¾  pVP4                  '       Ed   \7        V\        4      '       dë   \9        VP                  P+                  4       ^ ,          ^ 8  4      '       d¸   VP                  \        P:                  Jd   VP=                  V! V4      4       K—  \'        VP                  ^ ,          P                  4      ^8w  d8   \7        VP                  \        \        34      '       d   VP=                  V4       VP=                  VP                  4       EK  VP>                  '       d…   V\        P@                  Jdq   VPB                  ^8w  d%   VP=                  \E        VPB                  4      4       VPF                  ^8w  d(   VP=                  \E        VPF                  4      4       EKª  EK­  VP=                  V4       EKÁ  	  T;'       g    \        P                  .pV Uu. uF  pV P%                  VVRR7      NK  	  ppV Uu. uF  pV P%                  VVRR7      NK  	  ppV F[  pVP                  V9   g   K  RVVPI                  VP                  4      ,          ,          VVPI                  VP                  4      &   K]  	  V'       g   VR
P)                  V4      ,           # \'        V4      ^8X  d.   VR
P)                  V4      ,           R,           V^ ,          ,           # VR
P)                  V4      ,           RR
P)                  V4      ,          ,           # u upi u upi u upi u upi )ra   c              3  ó
  "  € T Fy  p\        V\        4      ;'       g]    VP                  ;'       dI    \        ;QJ d&    R  VP                   4       F  '       d   K   RM	  RM! R  VP                   4       4      x € K{  	  R# 5i)c              3  ó8   "  € T F  qP                   x € K  	  R # 5ir/   )Ú
is_Integer)r¢   Úais   & r*   r¤   Ú2StrPrinter._print_Mul.<locals>.<genexpr>.<genexpr>  s   é € Ð @¹°2§¦»ùs   ‚FTN)r6   r	   Úis_PowÚallr1   )r¢   r  s   & r*   r¤   Ú(StrPrinter._print_Mul.<locals>.<genexpr>  sd   é € ð ##ñ "�Aô ˜1œfÓ%÷ Að AØ—‘×@Ð@ŸS›SÑ @¸¿ºÓ @ŸSŸSšSÑ @¸¿ºÓ @Ó@ôAã!ùs   ‚BžB²B¾BÁ'Br@   TFc                óŒ   € \        V \        4      ;'       d.    \        V P                  P	                  4       ^ ,          ^ 8  4      # ©ra   )r6   r   ÚboolÚexpÚas_coeff_Mul)r@  s   &r*   Ú<lambda>Ú'StrPrinter._print_Mul.<locals>.<lambda>  s3   € Ü˜1œcÓ"×HÐH¤t¨A¯E©E×,>Ñ,>Ó,@ÀÕ,CÀaÑ,GÓ'HÐHr-   )Úbinary©Úevaluater4  Ú1Ú*z/(rz   Ú/r?   rC   c                ól  € V P                  4       w  r\        \        P                  ! V4      4      pV^ ,          \        P
                  J d   VR,          pMV^ ,          ) V^ &   \        P                  ! V4      p\        V \        4      '       d   V P                  WRR7      # V P                  VRR7      # )ra   r@   Fr_  )
Úas_base_exprc   r   Ú	make_argsr   ÚNegativeOneÚ
_from_argsr6   r   r×   )rj   r  r!  Úeargss   &   r*   ÚapowÚ#StrPrinter._print_Mul.<locals>.apowL  s‹   € Ø—=‘=“?‰DˆAÜœŸš qÓ)Ó*ˆEØ�Q�xœ1Ÿ=™=Ó(Ø˜b�	‘à! !�H˜9��a‘Ü—’˜uÓ%ˆAÜ˜!œS×!Ò!Ø—v‘v˜a¨U�vÓ3Ð3Ø—6‘6˜! e�6Ó,Ð,r-   r$   z/(%s))ÚoldÚnone)%r   r1   r   ÚOneÚanyr   rd   rZ  Ú	is_Numberrc   r   rh  r   ÚbaserG   Úcould_extract_minus_signr%   rI   r+   rô   r0   r[  r
   r   Úas_ordered_factorsrf  Úis_commutativer6   rY  rg  r²   Úis_RationalÚInfinityÚpr   ÚqÚindex)r&   r:   rK   r1   r³   Únrj   Údir!  ÚdargsÚprer  ÚnfactorsÚdfactorsÚcrO   r  Ú	pow_parenrj  r'   r@  Úa_strÚb_strs   &&                     r*   Ú
_print_MulÚStrPrinter._print_Mul  sß  € ä˜$Óˆð �y‰yˆØ��7”a—e‘eÓŸs›sñ ##ð ˜bžó##ŸsŸsšsñ ##ð ˜bžó##÷  #ó  #ô ˜ñ Iàô‰DˆAô # 1ž‘�Ø—6‘6×#×#Ð#ØŸ™˜‘Aä  §¡§¡Ó-�EØ % a¥˜y�E˜!‘HÜŸš uÓ-�AØ:;¸a¿%¼%”s˜2Ÿ7™7 A°Õ6ÀRÇWÁW�“ñ &ð ˆCç˜˜1�ŸŸ˜¨¨1­×)FÑ)F×)HÒ)HØ—{‘{ 1§5¡5¨£8Ó,Ð-�àÙóÙ�Að #×/Ñ/°ÀÐ/ÖFÙñõ ˆHçØ˜5�ô �1‹v˜Œz˜a �d×;Ñ;×=Ò=Ø—{‘{ 1§5¡5¨£8Ó,Ð-‘à�ØÙóÙ�Að #×/Ñ/°ÀÐ/ÖFÙñõ ˆHð —‘˜Ó"ˆAØ—‘˜Ó"ˆAÜ�8‹}˜qÔ Û$%£qÐ)Ð)ßÛ"#¢QÐ'Ð'ØˆHà× Ñ Ó"‰ˆØˆqŒ5Ü ˜r 1Ó%ˆDØ‰DàˆDàˆØˆàˆ	à�:‰:˜_Ô,Ø×*Ñ*Ó,‰Dô —=’= Ó&ˆDò
	-ô ˆDØ×#×#Ñ#Ü˜t¤S×)Ò)Ü˜Ÿ™×.Ñ.Ó0°Õ3°aÑ7×8Ò8Ø—8‘8¤1§=¡=Ó0Ø—H‘H™T $›ZÖ(ä˜DŸI™I a�L×-Ñ-Ó.°!Ô3Ü& t§y¡y´3¼°*×=Ò=à!×(Ñ(¨Ô.Ø—H‘H˜TŸY™Y×'Ø×!×!Ð! d´!·*±*Ó&<Ø—6‘6˜Q”;Ø—H‘HœX d§f¡fÓ-Ô.Ø—6‘6˜Q”;Ø—H‘HœX d§f¡fÓ-×.ò ð —‘˜—ñ% ð( �LˆL”!—%‘%�ˆáCDÓEÁ1¸a�×"Ñ" 1 d°5Ð"Ö9Á1ˆÐEÙCDÓEÁ1¸a�×"Ñ" 1 d°5Ð"Ö9Á1ˆÐEó ˆDØ�y‰y˜AŽ~Ø,2°U¸1¿7¹7À4Ç9Á9Ó;MÕ5NÕ,N��a—g‘g˜dŸi™iÓ(Ó)ñ ÷ Ø˜#Ÿ(™( 5›/Õ)Ð)Ü�‹V�qŒ[Ø˜#Ÿ(™( 5›/Õ)¨CÕ/°%¸µ(Õ:Ð:à˜#Ÿ(™( 5›/Õ)¨G°c·h±h¸u³oÕ,EÕEÐEùòmùòùò~ FùÚEs   Æ(X'È.X,Ó2X1ÔX6c                	óÞ  € VP                  4       w  r#R pVP                  '       dz   VP                  4       w  rVVP                  '       d#   VP                  '       d   \        V) V4      pRpM3VP                  '       d"   VP                  '       d   \        V) V4      pRpTRP                  VP                   Uu. uF  qpP                  V\        V4      4      NK  	  up4      ,           # u upi )rC   r?   rb  )
Úas_coeff_mmulÚ	is_numberÚas_real_imagÚis_zeroÚis_negativer
   r0   r1   r+   r   )r&   r:   r€  r  rO   ÚreÚimr£   s   &&      r*   Ú_print_MatMulÚStrPrinter._print_MatMul|  s·   € Ø×!Ñ!Ó#‰ˆàˆØ�;�;ˆ;Ø—^‘^Ó%‰FˆBØ�z�zˆz˜bŸnŸn˜nÜ" A 2 qÓ)�Ø‘Ø——� §§ Ü" A 2 qÓ)�Ø�à�c—h‘hØAEÇÂÓKÁ¸#×Ñ˜s¤J¨tÓ$4Ö5ÁÑKó
õ 
ð 	
ùÚKs   Â:#C*
c                	ól   € R P                  VP                  V P                  VP                  4      4      # )z{}.({}))r  r{   r%   r:   r9   s   &&r*   Ú_print_ElementwiseApplyFunctionÚ*StrPrinter._print_ElementwiseApplyFunction�  s,   € Ø×ÑØ�M‰MØ�K‰K˜Ÿ	™	Ó"ó
ð 	
r-   c                	ó   € R # )ÚnanrT   r9   s   &&r*   Ú
_print_NaNÚStrPrinter._print_NaN“  r”   r-   c                	ó   € R # )z-oorT   r9   s   &&r*   Ú_print_NegativeInfinityÚ"StrPrinter._print_NegativeInfinity–  r”   r-   c                	óî  € VP                   '       dO   \        ;QJ d&    R  VP                   4       F  '       d   K   RM	  RM! R  VP                   4       4      '       ds   \        VP                   4      ^8:  d#   RV P	                  VP
                  4      ,          # RV P                  VP
                  3VP                   ,           R^ 4      ,          # RV P                  VP                  R^ 4      ,          # )c              3  óD   "  € T F  q\         P                  J x € K  	  R # 5ir/   )r   ÚZero)r¢   rw  s   & r*   r¤   Ú*StrPrinter._print_Order.<locals>.<genexpr>š  s   é € Ð$E¹*°Q¬!¯&©&¥[»*ùs   ‚ FTzO(%s)ry   )Ú	variablesrU  Úpointrô   r%   r:   r3   r1   r9   s   &&r*   Ú_print_OrderÚStrPrinter._print_Order™  s    € Ø�~�~ˆ~§£Ñ$E¸$¿*º*Ó$E§§¢Ñ$E¸$¿*º*Ó$E×!EÒ!EÜ�4—>‘>Ó" aÔ'Ø §¡¨T¯Y©YÓ!7Õ7Ð7à §¡°·±°¸t¿~¹~Õ0MÈtÐUVÓ!WÕWÐWà˜TŸ^™^¨D¯I©I°t¸QÓ?Õ?Ð?r-   c                	ó"   € VP                  4       # r/   ©Ú__str__r9   s   &&r*   Ú_print_OrdinalÚStrPrinter._print_Ordinal¢  ó   € Ø�|‰|‹~Ðr-   c                	ó"   € VP                  4       # r/   r£  r9   s   &&r*   Ú_print_CycleÚStrPrinter._print_Cycle¥  r§  r-   c                	óÈ  € ^ RI HpHp ^ RIHp VP
                  pVe   V! RV R2RR^R7       MV P                  P                  R	R
4      pV'       d‘   VP                  '       g   R# V! V4      ! VP                  ^,
          4      P                  4       \        R4      R pVP                  R4      pV^ 8X  g   RWgR 9  d   WgR VRV ,           pVP                  RR4      pV# VP                  4       pV'       gV   VP                  ^8  d#   RV P                  VP                  4      ,          # RV P                  VP                  4      ,          # V P                  VP                  RVR,          ^,            4      RV P                  VP                  4      ,          ,           pV P                  VP                  4      ;rš\        V4      \        V
4      8  d   Tp	RV	,          # )ra   )ÚPermutationÚCycle)Úsympy_deprecation_warningNzw
                Setting Permutation.print_cyclic is deprecated. Instead use
                init_printing(perm_cyclic=z).
                z1.6z#deprecated-permutation-print_cyclic)Údeprecated_since_versionÚactive_deprecations_targetÚ
stacklevelr   Tz()r­  rx   Ú,rC   zPermutation(%s)zPermutation([], size=%s)z	, size=%séÿÿÿÿ)Ú sympy.combinatorics.permutationsr¬  r­  Úsympy.utilities.exceptionsr®  Úprint_cyclicÚ	_settingsÚgetÚsizeÚ__repr__rô   ÚrfindÚreplaceÚsupportr%   Ú
array_form)r&   r:   r¬  r­  r®  r   r›   ÚlastÚtrimÚuseÚfulls   &&         r*   Ú_print_PermutationÚStrPrinter._print_Permutation¨  s”  € ßGÝHà!×.Ñ.ˆØÒ"Ù%ð+à+6¨-ð 8ðð */Ø+PØöð Ÿ.™.×,Ñ,¨]¸DÓAˆKçØ—9—9�9Ùñ �d”˜DŸI™I¨�MÓ*×3Ñ3Ó5´c¸'³l°mÐDˆAØ—7‘7˜3“<ˆDØ˜1”9 ¨A¨e¨HÔ!4Ø�e�H˜q  $˜xÕ'�Ø—	‘	˜#˜rÓ"ˆAØˆHà—‘“ˆAßØ—9‘9˜q”=Ø,¨t¯{©{¸4¿?¹?Ó/KÕKÐKØ1°D·K±KÀÇ	Á	Ó4JÕJÐJØ—;‘;˜tŸ™¨z°°"µ¸µ	Ð:Ó;¸kÈDÏKÉKÐX\×XaÑXaÓLbÕ>bÕbˆDØŸ™ T§_¡_Ó5Ð5ˆCÜ�4‹yœ3˜t›9Ô$Ø�Ø$ sÕ*Ð*r-   c                	óð   € VP                   w  r#p\        VP                  4      ^8X  d   V^ ,          pV^ ,          pRV P                  V4      : RV P                  V4      : RV P                  V4      : R2# )rA   zSubs(ry   rz   )r1   rô   rŸ  r%   )r&   r  r:   rl  Únews   &&   r*   Ú_print_SubsÚStrPrinter._print_SubsÑ  s`   € ØŸ™‰ˆ�3Üˆs�y‰y‹>˜QÔØ�a•&ˆCØ�a•&ˆCøà�K‰K˜Ö˜tŸ{™{¨3Ö/°·±¸SÖ1AðCð 	Cr-   c                	ó"   € VP                  4       # r/   r    r9   s   &&r*   Ú_print_TensorIndexÚStrPrinter._print_TensorIndexÙ  ó   € Ø�{‰{‹}Ðr-   c                	ó"   € VP                  4       # r/   r    r9   s   &&r*   Ú_print_TensorHeadÚStrPrinter._print_TensorHeadÜ  rÌ  r-   c                	ó"   € VP                  4       # r/   r    r9   s   &&r*   Ú_print_TensorÚStrPrinter._print_Tensorß  rÌ  r-   c                	ó°   € VP                  4       w  r#TR P                  V Uu. uF  q@P                  V\        V4      4      NK  	  up4      ,           # u upi )rb  )Ú!_get_args_for_traditional_printerr0   r+   r   )r&   r:   rO   r1   r£   s   &&   r*   Ú_print_TensMulÚStrPrinter._print_TensMulâ  sO   € à×;Ñ;Ó=‰
ˆØ�c—h‘hÙAEÓFÁ¸#×Ñ˜s¤J¨tÓ$4Ö5ÁÑFó
õ 
ð 	
ùÚFs   £#A
c                	ó"   € VP                  4       # r/   r    r9   s   &&r*   Ú_print_TensAddÚStrPrinter._print_TensAddé  rÌ  r-   c                	ó8   € V P                  VP                  4      # r/   ©r%   rÆ   r9   s   &&r*   Ú_print_ArraySymbolÚStrPrinter._print_ArraySymbolì  s   € Ø�{‰{˜4Ÿ9™9Ó%Ð%r-   c           
     	óÚ   € V P                  VP                  \        R ,          R4      : RRP                  VP                   Uu. uF  q P                  V4      NK  	  up4      : R2# u upi )ÚFuncTr5  ry   r6  )r+   rÆ   r   r0   Úindicesr%   )r&   r:   rj   s   && r*   Ú_print_ArrayElementÚStrPrinter._print_ArrayElementï  sW   € à×Ñ˜dŸi™i¬°FÕ);¸TÖBÀDÇIÁIÐgk×gsÒgsÓNtÑgsÐbcÏ{É{Ð[\Î~ÑgsÑNtÖDuðwð 	wùÚNts   ÁA(c                	óž   € VP                    Uu. uF  pR V P                  V4      ,          NK  	  ppRRP                  V4      ,          # u upi )z    %szPermutationGroup([
%s])z,
)r1   r%   r0   )r&   r:   r  rw  s   &&  r*   Ú_print_PermutationGroupÚ"StrPrinter._print_PermutationGroupó  sB   € Ø04·	²	Ó:±	¨1ˆX˜Ÿ™ A›×&Ð&±	ˆÐ:Ø)¨E¯J©J°q«MÕ9Ð9ùò ;s   �!A
c                	ó   € R # )ÚpirT   r9   s   &&r*   Ú	_print_PiÚStrPrinter._print_Pi÷  rï   r-   c                	óÌ   a € R RP                  V 3R lVP                   4       4      : RS P                  VP                  4      : RS P                  VP                  4      : R2# )zPolynomial ring in ry   c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    )r¢   Úrsr&   s   & €r*   r¤   Ú-StrPrinter._print_PolyRing.<locals>.<genexpr>ü  s   øé € Ð?±,¨B˜Ÿ™ BŸ˜³,ùr¦   ú over ú with ú order©r0   r¿   r%   Údomainr   )r&   Úrings   f&r*   Ú_print_PolyRingÚStrPrinter._print_PolyRingú  sB   ø� à�Y‰YÔ?°$·,²,Ó?Ö@Ø�K‰K˜Ÿ™Ö$ d§k¡k°$·*±*Ö&=ð?ð 	?r-   c                	óÌ   a € R RP                  V 3R lVP                   4       4      : RS P                  VP                  4      : RS P                  VP                  4      : R2# )zRational function field in ry   c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    )r¢   Úfsr&   s   & €r*   r¤   Ú.StrPrinter._print_FracField.<locals>.<genexpr>  s   øé € Ð@±-¨B˜Ÿ™ BŸ˜³-ùr¦   rî  rï  rð  rñ  ©r&   Úfields   f&r*   Ú_print_FracFieldÚStrPrinter._print_FracFieldÿ  sD   ø� à�Y‰YÔ@°%·-²-Ó@ÖAØ�K‰K˜Ÿ™Ö% t§{¡{°5·;±;Ö'?ðAð 	Ar-   c                	ó"   € VP                  4       # r/   r£  )r&   Úelms   &&r*   Ú_print_FreeGroupElementÚ"StrPrinter._print_FreeGroupElement  s   € Ø�{‰{‹}Ðr-   c                	ó@   € R VP                   : RVP                  : R2# )rx   ú + z*I))r@  Úy©r&   Úpolys   &&r*   Ú_print_GaussianElementÚ!StrPrinter._print_GaussianElement  s   � Ø $§¤¨¯¬Ð/Ð/r-   c                	ó2   € VP                  V \        R R4      # )z%s**%srb  )r7   r   r  s   &&r*   Ú_print_PolyElementÚStrPrinter._print_PolyElement
  s   € Ø�x‰x˜œj¨(°CÓ8Ð8r-   c                	ó  € VP                   ^8X  d   V P                  VP                  4      # V P                  VP                  \        R,          RR7      pV P                  VP                   \        R,          RR7      pVR,           V,           # )rA   r   Tr4  r3  rc  )Údenomr%   Únumerr+   r   )r&   Úfracr  r  s   &&  r*   Ú_print_FracElementÚStrPrinter._print_FracElement  so   € Ø�:‰:˜Œ?Ø—;‘;˜tŸz™zÓ*Ð*à×%Ñ% d§j¡j´*¸UÕ2CÈDÐ%ÓQˆEØ×%Ñ% d§j¡j´*¸VÕ2DÈTÐ%ÓRˆEØ˜3•; Õ&Ð&r-   c                	ód  € \         R ,          ^,
          p. VP                   Uu. uF  q0P                  W24      NK  	  pppVP                  4        EF•  w  rg. p\	        V4       FS  w  ršV
^ 8”  g   K  V
^8X  d   VP                  WY,          4       K.  VP                  WY,          RV
,          ,           4       KU  	  RP                  V4      pVP                  '       d;   V'       d!   RV P                  V4      ,           R,           pM~V P                  V4      pMlV'       dT   V\        P                  J d   VP                  RV.4       Kø  V\        P                  J d   VP                  RV.4       EK"  V P                  V4      pV'       g   TpMVR,           V,           pVP                  R4      '       d   VP                  RVR,          .4       EK‚  VP                  RV.4       EK˜  	  V^ ,          R9   d,   VP                  ^ 4      pVR8X  d   RV^ ,          ,           V^ &   TP                  P                   R,           p^ R	IHp  VR
VP'                  4       ,          ,          pVR,          p\	        V4       F\  w  pp\+        V4      ^8”  g   K  VR,          R8X  g   K(  V\+        V4      ^,
          R R8X  g   KD  V^\+        V4      ^,
           VV&   K^  	  VRP                  V4      RP                  V4      3,          # u upi   T d"    TRTP)                  4       ,          ,          p LÉi ; i)r3  z**%drb  rx   rz   rB   r?   r@   z(%s, %s)ÚPolynomialErrorz, modulus=%sz, domain='%s':NrA   NNrD   ry   )r?   rB   )r   Úgensr+   rJ   rd   r²   r0   rG   r%   r   rn  rH   rg  rF   rI   r�   r‚   Úsympy.polys.polyerrorsr  Úget_modulusÚ
get_domainrô   )r&   r:   Ú	ATOM_PRECr›   rJ   r  ÚmonomÚcoeffÚs_monomrj   r!  Ús_coeffÚs_termÚmodifierr  r  ry  r'   s   &&                r*   Ú_print_PolyÚStrPrinter._print_Poly  s‡  € Ü˜vÕ&¨Õ*ˆ	ØÀTÇYÂYÓPÁYÀ×-Ñ-¨aÖ;ÁYˆtÐPˆà ŸJ™JŸL‰LˆEØˆGä! %Ö(‘�Ø�q–5Ø˜A”vØŸ™ t¥wÖ/àŸ™ t¥w°¸!µÕ';Ö<ñ )ð —h‘h˜wÓ'ˆGà�|�|ˆ|ßØ! D§K¡K°Ó$6Õ6¸Õ<‘Gà"Ÿk™k¨%Ó0‘GçØ¤§¡“~ØŸ™ c¨7 ^Ô4Ù à¤§¡Ó-ØŸ™ c¨7 ^Ô4Ú àŸ+™+ eÓ,�çØ ‘à  3�¨Õ0�à× Ñ  ×%Ò%Ø—‘˜c 6¨"¥:Ð.×/à—‘˜c 6˜]×+ñK )ðN ��8�zÔ!Ø—y‘y “|ˆHà˜3ŒØ  q¥�>��a‘à—‘×(Ñ(¨9Õ4ˆå:ð	:Ø�n t×'7Ñ'7Ó'9Õ9Õ9ˆFð 	�#�ˆä$ Tž?‰KˆE�4Ü�4‹y˜1Ž} $ r¥(¨c¦/°d¼3¸t»9Àq½=¸>Ð6JÈcÖ6QØ" 1¤S¨£Y°¥]Ð3��U“ñ +ð ˜Ÿ™ %›¨$¯)©)°D«/Ð:Õ:Ð:ùò} Qøðj ô 	:Ø�o¨¯©Ó(9Õ9Õ9ŠFð	:ús   ¤LÉL Ì%L/Ì.L/c                	ó   € R # )rš   rT   )r&   rw  s   &&r*   Ú_print_UniversalSetÚStrPrinter._print_UniversalSetW  s   € Ùr-   c                	ó¾   € VP                   '       d.   V P                  VP                  4       P                  4       4      # V P                  VP                  4       4      # r/   )Ú
is_aliasedr%   Úas_polyÚas_exprr9   s   &&r*   Ú_print_AlgebraicNumberÚ!StrPrinter._print_AlgebraicNumberZ  s>   € Ø�?�?ˆ?Ø—;‘;˜tŸ|™|›~×5Ñ5Ó7Ó8Ð8à—;‘;˜tŸ|™|›~Ó.Ð.r-   c                óX  a € \        V4      pVP                  \        P                  J d+   V'       g#   RS P	                  VP
                  4      ,          # VP                  '       dü   VP                  ) \        P                  J d|   V'       gt   R\        ;QJ d7    . V 3R l\        P                  VP
                  3 4       F  NK  	  5,          # ! V 3R l\        P                  VP
                  3 4       4      ,          # VP                  \        P                  ) J dC   S P	                  \        P                  4      : RS P                  VP
                  VRR7      : 2# S P                  VP                  VRR7      pS P                  R8X  dw   VP                  P                  '       d[   VP                  P                  ^8w  d@   VP                  R4      '       d)   S P                  VP
                  VRR7      : R	V^R
 : 2# S P                  VP
                  VRR7      : R	V: 2# )aL  Printing helper function for ``Pow``

Parameters
==========

rational : bool, optional
    If ``True``, it will not attempt printing ``sqrt(x)`` or
    ``x**S.Half`` as ``sqrt``, and will use ``x**(1/2)``
    instead.

    See examples for additional details

Examples
========

>>> from sympy import sqrt, StrPrinter
>>> from sympy.abc import x

How ``rational`` keyword works with ``sqrt``:

>>> printer = StrPrinter()
>>> printer._print_Pow(sqrt(x), rational=True)
'x**(1/2)'
>>> printer._print_Pow(sqrt(x), rational=False)
'sqrt(x)'
>>> printer._print_Pow(1/sqrt(x), rational=True)
'x**(-1/2)'
>>> printer._print_Pow(1/sqrt(x), rational=False)
'1/sqrt(x)'

Notes
=====

``sqrt(x)`` is canonicalized as ``Pow(x, S.Half)`` in SymPy,
so there is no need of defining a separate printer for ``sqrt``.
Instead, it should be handled here as well.
zsqrt(%s)z%s/sqrt(%s)c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    r¡   s   & €r*   r¤   Ú(StrPrinter._print_Pow.<locals>.<genexpr>�  s   øé € Ð-]ÑJ\À3¨d¯k©k¸#×.>Ð.>ÓJ\ùr¦   rc  Fr4  Ú
_sympyreprz	(Rationalú**r³  )r   rZ  r   ÚHalfr%   rq  rt  r–   rn  r+   Úprintmethodru  rx  rF   )r&   r:   ÚrationalÚPRECr!  s   f&&  r*   Ú
_print_PowÚStrPrinter._print_Pow`  s“  ø€ ôL ˜$Óˆà�8‰8”q—v‘vÓ§hØ §¡¨D¯I©IÓ 6Õ6Ð6à××ÐØ—‘ˆyœAŸF™FÓ"¯8ð %§u¤uÔ-]Ì1Ï5É5ÐRV×R[ÑR[ÑJ\Ó-]§uÕ^Ð^ uÔ-]Ì1Ï5É5ÐRV×R[ÑR[ÑJ\Ó-]Ó'^Õ^Ð^Ø�x‰xœAŸE™E˜6Ó!à"&§+¡+¬a¯e©eÖ"4Ø"&×"3Ñ"3°D·I±I¸tÈEÐ"3Õ"RðTð Tð ×Ñ˜dŸh™h¨°UÐÓ;ˆØ×Ñ˜|Ô+°·±×0D×0DÐ0DÈÏÉÏÉÐWXÌð �|‰|˜K×(Ò(Ø#'×#4Ñ#4°T·Y±YÀÈUÐ#4Ö#SÐUVÐWXÐY[ÒU\Ð]Ð]Ø×,Ñ,¨T¯Y©Y¸ÀUÐ,ÖKÊQÐOÐOr-   c                	óF   € V P                  VP                  ^ ,          4      # rX  ©r%   r1   r9   s   &&r*   Ú_print_UnevaluatedExprÚ!StrPrinter._print_UnevaluatedExpr�  s   € Ø�{‰{˜4Ÿ9™9 Q�<Ó(Ð(r-   c                	óš   € \        V4      pV P                  VP                  VR R7      : RV P                  VP                  VR R7      : 2# )Fr4  r.  )r   r+   rq  rZ  )r&   r:   r2  s   && r*   Ú_print_MatPowÚStrPrinter._print_MatPow   sJ   € Ü˜$ÓˆØ×,Ñ,¨T¯Y©Y¸ÀUÐ,ÖKØ×*Ñ*¨4¯8©8°TÀ%Ð*ÕHðJð 	Jr-   c                	ó‚   € V P                   P                  R R4      '       d
   RV,          # \        VP                  4      # )r   FzS(%s))r·  r¸  r7   rw  r9   s   &&r*   Ú_print_IntegerÚStrPrinter._print_Integer¥  s3   € Ø�>‰>×ÑÐ.°×6Ò6Ø˜dÕ#Ð#Ü�4—6‘6‹{Ðr-   c                	ó   € R # )ÚIntegersrT   r9   s   &&r*   Ú_print_IntegersÚStrPrinter._print_Integersª  ó   € Ùr-   c                	ó   € R # )ÚNaturalsrT   r9   s   &&r*   Ú_print_NaturalsÚStrPrinter._print_Naturals­  rC  r-   c                	ó   € R # )Ú	Naturals0rT   r9   s   &&r*   Ú_print_Naturals0ÚStrPrinter._print_Naturals0°  ó   € Ùr-   c                	ó   € R # )Ú	RationalsrT   r9   s   &&r*   Ú_print_RationalsÚStrPrinter._print_Rationals³  rL  r-   c                	ó   € R # )ÚRealsrT   r9   s   &&r*   Ú_print_RealsÚStrPrinter._print_Reals¶  r[   r-   c                	ó   € R # )Ú	ComplexesrT   r9   s   &&r*   Ú_print_ComplexesÚStrPrinter._print_Complexes¹  rL  r-   c                	ó   € R # )ÚEmptySetrT   r9   s   &&r*   Ú_print_EmptySetÚStrPrinter._print_EmptySet¼  rC  r-   c                	ó   € R # )ÚEmptySequencerT   r9   s   &&r*   Ú_print_EmptySequenceÚStrPrinter._print_EmptySequence¿  s   € Ùr-   c                	ó   € \        V4      # r/   ©r7   r9   s   &&r*   Ú
_print_intÚStrPrinter._print_intÂ  ó   € Ü�4‹yÐr-   c                	ó   € \        V4      # r/   rb  r9   s   &&r*   Ú
_print_mpzÚStrPrinter._print_mpzÅ  re  r-   c                	ó  € VP                   ^8X  d   \        VP                  4      # V P                  P	                  RR4      '       d   RVP                  : RVP                   : 2# VP                  : RVP                   : 2# )rA   r   FzS(z)/rc  )rx  r7   rw  r·  r¸  r9   s   &&r*   Ú_print_RationalÚStrPrinter._print_RationalÈ  sY   € Ø�6‰6�QŒ;Ü�t—v‘v“;Ðà�~‰~×!Ñ!Ð"2°E×:Ó:Ø%)§V¤V¨T¯V«VÐ4Ð4Ø"Ÿfœf d§f£fÐ-Ð-r-   c                	óŒ   € VP                   ^8X  d   \        VP                  4      # RVP                  VP                   3,          # )rA   z%d/%d)rx  r7   rw  r9   s   &&r*   Ú_print_PythonRationalÚ StrPrinter._print_PythonRationalÐ  s3   € Ø�6‰6�QŒ;Ü�t—v‘v“;Ðà˜dŸf™f d§f¡fÐ-Õ-Ð-r-   c                	óˆ   € VP                   ^8X  d   \        VP                  4      # VP                  : RVP                   : 2# ©rA   rc  ©Údenominatorr7   Ú	numeratorr9   s   &&r*   Ú_print_FractionÚStrPrinter._print_FractionÖ  ó4   € Ø×Ñ˜qÔ Ü�t—~‘~Ó&Ð&à"Ÿnœn¨d×.>Ó.>Ð?Ð?r-   c                	óˆ   € VP                   ^8X  d   \        VP                  4      # VP                  : RVP                   : 2# rp  rq  r9   s   &&r*   Ú
_print_mpqÚStrPrinter._print_mpqÜ  rv  r-   c                	óÚ  € VP                   pV P                  P                  R R4      pVf   V^8  d   ^ M\        VP                   4      pV P                  R,          RJ d   RpMAV P                  R,          RJ d   RpM'V P                  R,          R8X  d   V P                  ^8„  pRV P                  9   d   V P                  R,          MRpRV P                  9   d   V P                  R,          MRp\        VP                  VXWVR7      pVP                  R	4      '       d   R
VR,          ,           pM'VP                  R4      '       d   RVR,          ,           pVP                  R4      pV# )r    Nr   TFr   r   r   )Ústrip_zerosÚ	min_fixedÚ	max_fixedz-.0z-0.:é   NNz.0z0.:r<  NNrB   )	Ú_precr·  r¸  r   Ú_print_levelÚmlib_to_strÚ_mpf_rF   Úremoveprefix)r&   r:   rK   r    ÚstripÚlowÚhighÚrvs   &&      r*   Ú_print_FloatÚStrPrinter._print_Floatâ  s  € Ø�z‰zˆØ�n‰n× Ñ  ¨Ó-ˆØŠ;Ø˜a”x‘!¤[°·±Ó%<ˆCØ�>‰>˜+Õ&¨$Ó.Ø‰EØ�^‰^˜KÕ(¨EÓ1Ø‰EØ�^‰^˜KÕ(¨FÔ2Ø×%Ñ%¨Ñ)ˆEØ',°·±Ô'>ˆd�n‰n˜UÖ#ÀDˆØ(-°·±Ô(?ˆt�~‰~˜eÖ$ÀTˆÜ˜Ÿ™ S°eÀsÔ[ˆØ�=‰=˜×ÒØ˜˜B�•‰BØ�]‰]˜4× Ò Ø˜˜2�•ˆBØ�_‰_˜SÓ!ˆØˆ	r-   c                	óü  € R RRRRRRRRR	R
RRRRR/pVP                   V9   dQ   W!P                   ,          : RV P                  VP                  4      : RV P                  VP                  4      : R2# V P	                  VP                  \        V4      4      : RV P                  P                  VP                   4      ;'       g    VP                   : RV P	                  VP                  \        V4      4      : 2# )z==ÚEqz!=ÚNez:=Ú
Assignmentz+=ÚAddAugmentedAssignmentz-=ÚSubAugmentedAssignmentz*=ÚMulAugmentedAssignmentz/=ÚDivAugmentedAssignmentz%=ÚModAugmentedAssignmentrx   ry   rz   rD   )Úrel_opr%   Úlhsrf   r+   r   r"   r¸  )r&   r:   Úcharmaps   && r*   Ú_print_RelationalÚStrPrinter._print_Relational÷  sã   € ð �$Ø�$Ø�,ØÐ*ØÐ*ØÐ*ØÐ*ØÐ*ð	
ˆð �;‰;˜'Ô!Ø#*¯;©;×#7Ð#7¸¿¹ÀTÇXÁXÖ9NØ#'§;¡;¨t¯x©xÖ#8ð:ð :ð "×.Ñ.¨t¯x©x¼ÀDÓ9IÖJØ×,Ñ,×0Ñ0°·±Ó=×LÐLÀÇÁÒLØ×,Ñ,¨T¯X©X´zÀ$Ó7GÕHðJð 	Jr-   c                	ób   € R V P                  VP                  RR7      VP                  3,          # )zCRootOf(%s, %d)Úlexr>   )rP   r:   ry  r9   s   &&r*   Ú_print_ComplexRootOfÚStrPrinter._print_ComplexRootOf  s.   € Ø  D§O¡O°D·I±IÀe OÓ$LØ$(§J¡Jð$0õ 0ð 	0r-   c                	óþ   € V P                  VP                  R R7      .pVP                  \        P                  Jd+   VP                  V P                  VP                  4      4       RRP                  V4      ,          # )r™  r>   zRootSum(%s)ry   )rP   r:   Úfunr   ÚIdentityFunctionr²   r%   r0   r  s   && r*   Ú_print_RootSumÚStrPrinter._print_RootSum  sY   € Ø—‘ §	¡	°�Ó7Ð8ˆà�8‰8œ1×-Ñ-Ó-Ø�K‰K˜Ÿ™ D§H¡HÓ-Ô.à˜tŸy™y¨›Õ.Ð.r-   c                	ó
  € VP                   P                  pVP                   Uu. uF  q0P                  W1P                  R 7      NK   	  ppRRP                  V4      ,          pVP                   Uu. uF  qPP                  V4      NK  	  ppRV P                  VP                  4      ,          pRV P                  VP                  4      ,          pV.V,           Wx.,           p	V: RRP                  V	4      : R2# u upi u upi )r>   r(  ry   zdomain='%s'z
order='%s'rx   rz   )	r�   r‚   ÚexprsrP   r   r0   r  r%   rò  )
r&   ÚbasisÚclsr£   r¢  Úgenr  rò  r   r1   s
   &&        r*   Ú_print_GroebnerBasisÚStrPrinter._print_GroebnerBasis  sÆ   € Ø�o‰o×&Ñ&ˆàDIÇKÂKÓPÁK¸S—‘ ¯K©K�Ö8ÁKˆÐPØ˜Ÿ™ 5Ó)Õ)ˆà-2¯ZªZÓ9©Z c—‘˜SÖ!©ZˆÐ9Ø §¡¨U¯\©\Ó!:Õ:ˆØ˜tŸ{™{¨5¯;©;Ó7Õ7ˆàˆw˜�~  Õ/ˆã §	¡	¨$¦Ð0Ð0ùò Qùò :s   ¥$C;Á1D c                	ó‚   a € \        V\        R 7      pRP                  V 3R lV 4       4      pV'       g   R# RV,          # )r­   ry   c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    ©r¢   r'   r&   s   & €r*   r¤   Ú(StrPrinter._print_set.<locals>.<genexpr>)  ó   øé € Ð=±u¨t˜Ÿ™ T×*Ð*³uùr¦   zset()r¯   )r°   r   r0   ©r&   r›   r´   r1   s   f&  r*   Ú
_print_setÚStrPrinter._print_set&  s4   ø€ Ü�qÔ.Ô/ˆà�y‰yÔ=±uÓ=Ó=ˆßÙØ˜�}Ðr-   c                	ó.  a a€ ^ RI Ho \        V\        R7      pRP	                  V 3R lV 4       4      p\
        ;QJ d    V3R lV 4       F  '       g   K   RM	  RM! V3R lV 4       4      '       d   RP                  V4      # R	P                  V4      # )
ra   )Ú	FiniteSetr­   ry   c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    rª  s   & €r*   r¤   Ú.StrPrinter._print_FiniteSet.<locals>.<genexpr>2  r¬  r¦   c              3  óD   <"  € T F  qP                  S4      x € K  	  R # 5ir/   )Úhas)r¢   r'   r±  s   & €r*   r¤   r³  3  s   øé € Ð5©u t�x‰x˜	×"Ð"«uùs   ƒ TFzFiniteSet({})z{{{}}})Úsympy.sets.setsr±  r°   r   r0   ro  r  )r&   r›   r´   r1   r±  s   f&  @r*   Ú_print_FiniteSetÚStrPrinter._print_FiniteSet.  sh   ù€ Ý-Ü�qÔ.Ô/ˆà�y‰yÔ=±uÓ=Ó=ˆß‹3Ô5©uÓ5�3�3Š3Ô5©uÓ5×5Ò5Ø"×)Ñ)¨$Ó/Ð/Ø�‰˜tÓ$Ð$r-   c                	ó~   a € \        V\        R 7      pRP                  V 3R lV 4       4      pRP                  V4      # )r­   ry   c              3  óF   <"  € T F  pSP                  V4      x € K  	  R # 5ir/   r    r¡   s   & €r*   r¤   Ú.StrPrinter._print_Partition.<locals>.<genexpr>:  s   øé € Ð;±U¨c˜Ÿ™ S×)Ð)³Uùr¦   zPartition({}))r°   r   r0   r  r­  s   f&  r*   Ú_print_PartitionÚStrPrinter._print_Partition7  s5   ø€ Ü�qÔ.Ô/ˆà�y‰yÔ;±UÓ;Ó;ˆØ×%Ñ% dÓ+Ð+r-   c                	óF   € V'       g   R # RV P                  V4      ,          # )zfrozenset()zfrozenset(%s))r®  ©r&   r›   s   &&r*   Ú_print_frozensetÚStrPrinter._print_frozenset=  s   € ßÙ Ø §¡°Ó!3Õ3Ð3r-   c                	óÂ   a € V 3R  lpRP                  VP                   Uu. uF
  q2! V4      NK  	  up4      pRS P                  VP                  4      : RV: R2# u upi )c                ó´   <€ \        V 4      ^8X  d   SP                  V ^ ,          4      # SP                  V ^ ,          3\        V R,          4      ,           4      # rò   ró   rõ   s   &€r*   r÷   Ú)StrPrinter._print_Sum.<locals>._xab_tostrC  rù   r-   ry   zSum(rz   rú   rü   s   f&   r*   Ú
_print_SumÚStrPrinter._print_SumB  sL   ø€ õ	?ð
 �I‰I¨d¯kªkÓ:©k¨�z !–}©kÑ:Ó;‰Ø $§¡¨D¯M©MÖ :»AÐ>Ð>ùò ;r   c                	ó   € VP                   # r/   rÅ   r9   s   &&r*   Ú_print_SymbolÚStrPrinter._print_SymbolK  rM  r-   c                	ó   € R # rç   rT   r9   s   &&r*   Ú_print_IdentityÚStrPrinter._print_IdentityP  rÑ   r-   c                	ó   € R # )Ú0rT   r9   s   &&r*   Ú_print_ZeroMatrixÚStrPrinter._print_ZeroMatrixS  rÑ   r-   c                	ó   € R # )ra  rT   r9   s   &&r*   Ú_print_OneMatrixÚStrPrinter._print_OneMatrixV  rÑ   r-   c                	ó(   € R VP                   ,          # )zQ.%srÅ   r9   s   &&r*   Ú_print_PredicateÚStrPrinter._print_PredicateY  s   € Ø˜Ÿ	™	Õ!Ð!r-   c                	ó   € \        V4      # r/   rb  r9   s   &&r*   Ú
_print_strÚStrPrinter._print_str\  re  r-   c                	ó’   € \        V4      ^8X  d    RV P                  V^ ,          4      ,          # RV P                  VR4      ,          # )rA   z(%s,)r$   ry   )rô   r%   r3   r9   s   &&r*   Ú_print_tupleÚStrPrinter._print_tuple_  s;   € Üˆt‹9˜Œ>Ø˜TŸ[™[¨¨a­Ó1Õ1Ð1à˜DŸN™N¨4°Ó6Õ6Ð6r-   c                	ó$   € V P                  V4      # r/   )rÛ  r9   s   &&r*   Ú_print_TupleÚStrPrinter._print_Tuplee  s   € Ø× Ñ  Ó&Ð&r-   c                	ó^   € R V P                  VP                  \        R,          4      ,          # )z%s.Tr   r  )r&   ÚTs   &&r*   Ú_print_TransposeÚStrPrinter._print_Transposeh  s#   € Ø˜×)Ñ)¨!¯%©%´¸EÕ1BÓCÕCÐCr-   c                	ó|   € R V P                  VP                  4      : RV P                  VP                  4      : R2# )zUniform(ry   rz   )r%   r  r  r9   s   &&r*   Ú_print_UniformÚStrPrinter._print_Uniformk  s'   � Ø$(§K¡K°·±Ö$7¸¿¹ÀTÇVÁVÖ9LÐMÐMr-   c                	ó’   € V P                   P                  R R4      '       d   RVP                  ,          # RVP                  ,          # )r   Fz%s)r·  r¸  r   rÆ   r9   s   &&r*   Ú_print_QuantityÚStrPrinter._print_Quantityn  s7   € Ø�>‰>×Ñ˜h¨×.Ò.Ø˜$Ÿ+™+Õ%Ð%Ø�d—i‘iÕÐr-   c           	     	ó0  € VP                    Uu. uF!  q P                  V\        R ,          RR7      NK#  	  ppV^ ,          .\        VR,          R4       UUu. uF  w  r$VR,           V,           NK  	  upp,           pRP	                  V4      # u upi u uppi )r   Tr4  r@   Úijkrb  r  )r1   r+   r   Úzipr0   )r&   r:   rj   r›   ri   r  s   &&    r*   Ú_print_QuaternionÚStrPrinter._print_Quaternions  s~   € ØKOÏ9Ê9ÓUÉ9Àa×Ñ˜q¤*¨UÕ"3¸DÐÖAÉ9ˆÐUØˆq�TˆF¬#¨a°­e°UÔ*;Ô<Ñ*;¡$ !�a˜•e˜A—g�gÑ*;Ò<Õ<ˆØ�z‰z˜!‹}Ðùò VùÛ<s   �'BÁBc                	ó   € \        V4      # r/   rb  r9   s   &&r*   Ú_print_DimensionÚStrPrinter._print_Dimensionx  re  r-   c                	ó(   € VP                   R ,           # rÃ   rÅ   r9   s   &&r*   Ú_print_WildÚStrPrinter._print_Wild{  ó   € Ø�y‰y˜3�Ðr-   c                	ó(   € VP                   R ,           # rÃ   rÅ   r9   s   &&r*   Ú_print_WildFunctionÚStrPrinter._print_WildFunction~  rõ  r-   c                	ó   € VP                   # r/   rÅ   r9   s   &&r*   Ú_print_WildDotÚStrPrinter._print_WildDot�  rM  r-   c                	ó   € VP                   # r/   rÅ   r9   s   &&r*   Ú_print_WildPlusÚStrPrinter._print_WildPlus„  rM  r-   c                	ó   € VP                   # r/   rÅ   r9   s   &&r*   Ú_print_WildStarÚStrPrinter._print_WildStar‡  rM  r-   c                	ó~   € V P                   P                  R R4      '       d   R# V P                  \        ^ 4      4      # )r   FzS(0))r·  r¸  r=  r   r9   s   &&r*   Ú_print_ZeroÚStrPrinter._print_ZeroŠ  s2   € Ø�>‰>×ÑÐ.°×6Ò6ÙØ×"Ñ"¤7¨1£:Ó.Ð.r-   c                	ó¾   € VP                   P                  pV P                  VP                  4       4      pV P                  VP                  4      pV: R V: RV: R2# rw   )r�   r‚   r%   Úto_listÚdom)r&   rw  r¤  Úrepr  s   &&   r*   Ú
_print_DMPÚStrPrinter._print_DMP�  sD   € Ø�k‰k×"Ñ"ˆØ�k‰k˜!Ÿ)™)›+Ó&ˆØ�k‰k˜!Ÿ%™%Ó ˆã"£C«Ð-Ð-r-   c                	óô   € VP                   P                  pV P                  VP                  4      pV P                  VP                  4      pV P                  VP
                  4      pV: R V: RV: RV: R2# rw   )r�   r‚   r%   ÚnumÚdenr  )r&   r:   r¤  r  r  r  s   &&    r*   Ú
_print_DMFÚStrPrinter._print_DMF–  sV   € Ø�n‰n×%Ñ%ˆØ�k‰k˜$Ÿ(™(Ó#ˆØ�k‰k˜$Ÿ(™(Ó#ˆØ�k‰k˜$Ÿ(™(Ó#ˆã#&««S³#Ð6Ð6r-   c                	ó(   € R VP                   ,          # )zObject("%s")rÅ   )r&   r  s   &&r*   Ú_print_ObjectÚStrPrinter._print_Objectž  s   € Ø §¡Õ(Ð(r-   c                	ó(   € R VP                   ,          # )zIdentityMorphism(%s))rò  ©r&   Úmorphisms   &&r*   Ú_print_IdentityMorphismÚ"StrPrinter._print_IdentityMorphism¡  s   € Ø%¨¯©Õ7Ð7r-   c                	ó\   € R VP                   : RVP                  : RVP                  : R2# )zNamedMorphism(ry   z, "z"))rò  ÚcodomainrÆ   r  s   &&r*   Ú_print_NamedMorphismÚStrPrinter._print_NamedMorphism¤  s#   � à—” ×!2Ô!2°H·M´MðCð 	Cr-   c                	ó(   € R VP                   ,          # )zCategory("%s")rÅ   )r&   Úcategorys   &&r*   Ú_print_CategoryÚStrPrinter._print_Category¨  s   € Ø (§-¡-Õ/Ð/r-   c                	ó.   € VP                   P                   # r/   rÅ   )r&   Úmanifolds   &&r*   Ú_print_ManifoldÚStrPrinter._print_Manifold«  s   € Ø�}‰}×!Ñ!Ð!r-   c                	ó.   € VP                   P                   # r/   rÅ   )r&   Úpatchs   &&r*   Ú_print_PatchÚStrPrinter._print_Patch®  s   € Ø�z‰z�‰Ðr-   c                	ó.   € VP                   P                   # r/   rÅ   )r&   Úcoordss   &&r*   Ú_print_CoordSystemÚStrPrinter._print_CoordSystem±  s   € Ø�{‰{×ÑÐr-   c                	ód   € VP                   P                  VP                  ,          P                  # r/   ©Ú
_coord_sysr¿   Ú_indexrÆ   rú  s   &&r*   Ú_print_BaseScalarFieldÚ!StrPrinter._print_BaseScalarField´  s#   € Ø×Ñ×'Ñ'¨¯©Õ5×:Ñ:Ð:r-   c                	ór   € R VP                   P                  VP                  ,          P                  ,          # )ze_%sr-  rú  s   &&r*   Ú_print_BaseVectorFieldÚ!StrPrinter._print_BaseVectorField·  s(   € Ø˜×(Ñ(×0Ñ0°·±Õ>×CÑCÕCÐCr-   c                	óÞ   € VP                   p\        VR 4      '       d9   RVP                  P                  VP                  ,          P
                  ,          # RV P                  V4      ,          # )r.  zd%szd(%s))Ú_form_fieldr¾   r.  r¿   r/  rÆ   r%   )r&   Údiffrû  s   && r*   Ú_print_DifferentialÚStrPrinter._print_Differentialº  sT   € Ø× Ñ ˆÜ�5˜,×'Ò'Ø˜5×+Ñ+×3Ñ3°E·L±LÕA×FÑFÕFÐFà˜TŸ[™[¨Ó/Õ/Ð/r-   c                	óV   € R : RV P                  VP                  ^ ,          4      : R2# )ÚTrrx   rz   r6  r9   s   &&r*   Ú	_print_TrÚStrPrinter._print_TrÁ  s   € ã §¡¨T¯Y©Y°q­\Ö!:Ð;Ð;r-   c                	ó8   € V P                  VP                  4      # r/   rÛ  r¿  s   &&r*   Ú
_print_StrÚStrPrinter._print_StrÅ  s   € Ø�{‰{˜1Ÿ6™6Ó"Ð"r-   c                	ó¸   € VP                   pV P                  V4      : R V P                  VP                  4      : RV P                  VP                  4      : R2# rw   )r{   r%   r”  rf   )r&   r:   Úrels   && r*   Ú_print_AppliedBinaryRelationÚ'StrPrinter._print_AppliedBinaryRelationÈ  sA   € Ø�m‰mˆØ#Ÿ{™{¨3Ö/Ø#Ÿ{™{¨4¯8©8Ö4Ø#Ÿ{™{¨4¯8©8Ö4ð6ð 	6r-   rT   )FrX  r/   )�r‚   Ú
__module__Ú__qualname__Ú__firstlineno__r0  r!   Ú__annotations__r"   r+   r3   r;   rP   rU   rY   r^   rk   rp   rt   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)  r,  r0  r8  rH  rK  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(  r3  r7  r:  r=  rA  rF  rJ  rO  rS  rW  r[  r_  rc  rg  rj  rm  rt  rx  rˆ  r–  rš  rŸ  r¦  r®  r·  r¼  rÀ  rÅ  rÈ  Ú_print_MatrixSymbolÚ_print_RandomSymbolrË  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*  r0  r3  r8  r<  r?  rC  Ú__static_attributes__rT   r-   r*   r   r      s  ‡ Ø€Kà�Ø�VØ˜%Ø�%Ø�tØˆtØˆtØ�ð	)Ð�~ó 	ð $&€L�.Ó%ô%ôKòô"ò*òòJòEòIòJòNò?ò%ò
òò1ò[ò
)ò&ò9òòòòMòMòòNò
$òòòDò6ò&<òHòHòYòXò
3ò&ò&òFòAòòtFòl
ò"
òòò@òòò'+òRCòòòò
òò&òwò:òò?ò
Aò
ò0ò9ò'ò@;òDò/ô;Pòz)òJò
ò
òòòòòòòòòò.ò.ò@ò@òò*Jò*0ò/ò1òò%ò,ò4ò
?òà'ÐØ'Ðòòòò"òò7ò'òDòNò ò
ò
òòòòòò/ò
.ò7ò)ò8òCò0ò"òò ò;òDò0ò<ò#ö6r-   r   c                ó>   € \        V4      pVP                  V 4      pV# )a:  Returns the expression as a string.

For large expressions where speed is a concern, use the setting
order='none'. If abbrev=True setting is used then units are printed in
abbreviated form.

Examples
========

>>> from sympy import symbols, Eq, sstr
>>> a, b = symbols('a b')
>>> sstr(Eq(a + b, 0))
'Eq(a + b, 0)'
)r   Údoprint©r:   Úsettingsrw  r›   s   &,  r*   ÚsstrrP  Ï  s    € ô" 	�8Ó€AØ	�	‰	�$‹€Aà€Hr-   c                  ó&   € ] tR tRtRtR tR tRtR# )ÚStrReprPrinteriæ  z(internal) -- see sstrreprc                	ó   € \        V4      # r/   )r8   r¿  s   &&r*   rØ  ÚStrReprPrinter._print_stré  s   € Ü�A‹wˆr-   c                	óp   € VP                   P                  : R V P                  VP                  4      : R2# )rx   rz   )r�   r‚   r%   rÆ   r¿  s   &&r*   r?  ÚStrReprPrinter._print_Strì  s$   € àŸ;™;×/Ô/°·±¸Q¿V¹VÖ1DÐEÐEr-   rT   N)r‚   rE  rF  rG  Ú__doc__rØ  r?  rK  rT   r-   r*   rR  rR  æ  s   † Ù$òöFr-   rR  c                ó>   € \        V4      pVP                  V 4      pV# )zÅreturn expr in mixed str/repr form

i.e. strings are returned in repr form with quotes, and everything else
is returned in str form.

This function could be useful for hooking into sys.displayhook
)rR  rM  rN  s   &,  r*   ÚsstrreprrY  ð  s    € ô 	�xÓ €AØ	�	‰	�$‹€Aà€Hr-   N)#rW  Ú
__future__r   Útypingr   Ú
sympy.corer   r   r   r   r   r	   Úsympy.core.mulr
   Úsympy.core.numbersr   Úsympy.core.relationalr   Úsympy.core.sortingr   Úsympy.utilities.iterablesr   r   r   Úprinterr   r   Úmpmath.libmpr   r   r�  r   rP  rR  rY  rT   r-   r*   Ú<module>rd     s   ðñõ #Ý ç ;× ;Ý &Ý &Ý ,Ý /Ý *ß .ß ,ç ;ôx6�ô x6ñv �
Óñó ðô,F�Zô Fñ �Óñó  òr-   