+
    ‰°³jûh  ã                   óæ  € R t ^ RIt^RIHtHtHtHtHt ^RIH	t	H
t
HtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtH t H!t!H"t"H#t#H$t$H%t%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t-H.t.H/t/H0t0H1t1H2t2H3t3H4t4H5t5H6t6H7t7H8t8H9t9 ^RI:H;t;H<t<H=t=H>t>H?t?H@t@HAtAHBtBHCtCHDtDHEtEHFtFHGtGHHtHHItIHJtJHKtKHLtLHMtMHNtNHOtOHPtPHQtQHRtR ] ]3tS]]3tT]!]3tU]"]3tV]#]$3tW]#]$]%3tXR tYR tZR t[R]3R	 lt\R
 t]]3R lt^R t_]3R lt`]3R lta^ ]3R ltb^ ]3R ltc]3R ltdR]3R lteR tf]3R ltg]3R lth]3R lti]3R ltj]3R ltk]3R ltl]3R ltm]3R ltn]3R lto]3R ltp]3R ltq]3R ltr]3R  lts]3R! ltt]3R" ltuR# tv]3R$ ltw]3R% ltx]3R& lty]3R' ltzR( t{]3R) lt|]3R* lt}]3R+ lt~]3R, lt]3R- lt€]3R. lt�]3R/ lt‚]3R0 ltƒ]3R1 lt„]3R2 lt…]3R3 lt†]3R4 lt‡]3R5 ltˆ]3R6 lt‰]3R7 ltŠ]! R84      t‹]! R94      tŒR: t�]3R; ltŽ]3R< lt�]3R= lt�]3R> lt‘]3R? lt’]3R@ lt“RGRA lt”RGRB lt•RGRC lt–RGRD lt—]RE8X  d(    ^ RI˜H™u Hšu H›tœ ]œPü                  t~]œPô                  tzR# R#   ]�]ž3 d    ]Ÿ! RF4        R# i ; i)Hz-
Low-level functions for complex arithmetic.
N)ÚMPZÚMPZ_ZEROÚMPZ_ONEÚMPZ_TWOÚBACKEND)1Úround_floorÚround_ceilingÚ
round_downÚround_upÚround_nearestÚ
round_fastÚbitcountÚbctableÚ	normalizeÚ
normalize1Úreciprocal_rndÚrshiftÚlshiftÚgiant_stepsÚnegative_rndÚto_strÚto_fixedÚfrom_man_expÚ
from_floatÚto_floatÚfrom_intÚto_intÚfzeroÚfoneÚftwoÚfhalfÚfinfÚfninfÚfnanÚfnoneÚmpf_absÚmpf_posÚmpf_negÚmpf_addÚmpf_subÚmpf_mulÚmpf_divÚmpf_mul_intÚ	mpf_shiftÚmpf_sqrtÚ	mpf_hypotÚmpf_rdiv_intÚ	mpf_floorÚmpf_ceilÚmpf_nintÚmpf_fracÚmpf_signÚmpf_hashÚComplexResult)Úmpf_piÚmpf_expÚmpf_logÚmpf_cos_sinÚmpf_cosh_sinhÚmpf_tanÚmpf_pow_intÚmpf_log_hypotÚmpf_cos_sin_piÚmpf_phiÚmpf_cosÚmpf_sinÚ
mpf_cos_piÚ
mpf_sin_piÚmpf_atanÚ	mpf_atan2Úmpf_coshÚmpf_sinhÚmpf_tanhÚmpf_asinÚmpf_acosÚ	mpf_acoshÚmpf_nthrootÚmpf_fibonaccic                óB   € V w  rV\         9   d   R# V\         9   d   R# R# )z2Check if either real or imaginary part is infiniteTF)Ú_infs©ÚzÚreÚims   &  ÚT/home/luca/screen-checking/.venv/lib/python3.14/site-packages/mpmath/libmp/libmpc.pyÚ
mpc_is_infrW   )   s   € à�F€BØ	ŒU„{™4Ø	ŒU„{™4Ùó    c                óB   € V w  rV\         9   d   R# V\         9   d   R# R# )z9Check if either real or imaginary part is infinite or nanTF)Ú	_infs_nanrR   s   &  rV   Úmpc_is_infnanr[   0   s   € à�F€BØ	ŒY„™tØ	ŒY„™tÙrX   c                 óÖ   € V w  r4\        W14      pV^ ,          '       d,   VR,           \        \        V4      V3/ VB ,           R,           # VR,           \        WA3/ VB ,           R,           # )é    z - Újz + )r   r'   )rS   ÚdpsÚkwargsrT   rU   Úrss   &&,   rV   Ú
mpc_to_strrb   7   s]   € Ø�F€BÜ	�‹€BØ	ˆ!‡u„uØ�E�zœF¤7¨2£;°Ñ>°vÑ>Õ>ÀÕDÐDà�E�zœF 2Ñ5¨fÑ5Õ5¸Õ;Ð;rX   Fc                 óJ   € V w  r4\        \        W1V4      \        WAV4      4      # ©N)Úcomplexr   )rS   ÚstrictÚrndrT   rU   s   &&&  rV   Úmpc_to_complexrh   ?   s$   € Ø�F€BÜ”8˜B¨Ó,¬h°rÀ3Ó.GÓHÐHrX   c                 ót  € \         P                  R8¼  dr   V w  r\        V4      \         P                  P                  \        V4      ,          ,           pV^\         P                  P
                  ,          ,          p\        V4      #  \        \        V RR7      4      #   \         d    \        T 4      u # i ; i)é   T)rf   )rj   é   )
ÚsysÚversion_infor6   Ú	hash_infoÚimagÚwidthÚintÚhashrh   ÚOverflowError)rS   rT   rU   Úhs   &   rV   Úmpc_hashru   C   s‰   € Ü
×Ñ˜6Ô!Ø‰ˆÜ�R‹Lœ3Ÿ=™=×-Ñ-´¸³Õ<Õ<ˆà�”C—M‘M×'Ñ'Õ'Õ(ˆÜ�1‹vˆð	Üœ q°Ô6Ó7Ð7øÜô 	Ü˜“7ŠNð	ús   ÂB ÂB7Â6B7c                 ó&   € V w  r4V\        WAV4      3# rd   ©r'   ©rS   Úprecrg   rT   rU   s   &&&  rV   Úmpc_conjugaterz   P   s   € Ø�F€BØŒw�r Ó%Ð%Ð%rX   c                 ó   € V \         8g  # rd   )Úmpc_zero)rS   s   &rV   Úmpc_is_nonzeror}   T   s   € Ø”‰=ÐrX   c                 óB   € V w  rEVw  rg\        WFW#4      \        WWW#4      3# rd   ©r(   ©rS   Úwry   rg   ÚaÚbÚcÚds   &&&&    rV   Úmpc_addr†   W   ó)   € Ø�D€AØ�D€AÜ�1˜Ó#¤W¨Q°4Ó%=Ð=Ð=rX   c                 ó&   € V w  rE\        WAW#4      V3# rd   r   )rS   Úxry   rg   r‚   rƒ   s   &&&&  rV   Úmpc_add_mpfrŠ   \   ó   € Ø�D€AÜ�1˜Ó# QÐ&Ð&rX   c                 óB   € V w  rEVw  rg\        WFW#4      \        WWW#4      3# rd   ©r)   r€   s   &&&&    rV   Úmpc_subrŽ   `   r‡   rX   c                 ó&   € V w  rE\        WAW#4      V3# rd   r�   )rS   Úpry   rg   r‚   rƒ   s   &&&&  rV   Úmpc_sub_mpfr‘   e   r‹   rX   c                 ó:   € V w  r4\        W1V4      \        WAV4      3# rd   )r&   ©rS   ry   rg   r‚   rƒ   s   &&&  rV   Úmpc_posr”   i   ó"   € Ø�D€AÜ�1˜CÓ ¤'¨!°3Ó"7Ð7Ð7rX   c                 ó:   € V w  r4\        W1V4      \        WAV4      3# rd   rw   r“   s   &&&  rV   Úmpc_negr—   m   r•   rX   c                 ó6   € V w  r#\        W!4      \        W14      3# rd   )r-   )rS   Únr‚   rƒ   s   &&  rV   Ú	mpc_shiftrš   q   s   € Ø�D€AÜ�Q‹?œI a›OÐ+Ð+rX   c                ó"   € V w  r4\        W4W4      # )zAAbsolute value of a complex number, |a+bi|.
Returns an mpf value.)r/   r“   s   &&&  rV   Úmpc_absrœ   u   s   € ð �D€AÜ�Q˜4Ó%Ð%rX   c                ó"   € V w  r4\        WCW4      # )z3Argument of a complex number. Returns an mpf value.)rG   r“   s   &&&  rV   Úmpc_argrž   {   s   € à�D€AÜ�Q˜4Ó%Ð%rX   c                 ó:   € V w  r4\        W1V4      \        WAV4      3# rd   )r1   r“   s   &&&  rV   Ú	mpc_floorr    €   s"   € Ø�D€AÜ�Q˜cÓ"¤I¨a°sÓ$;Ð;Ð;rX   c                 ó:   € V w  r4\        W1V4      \        WAV4      3# rd   )r2   r“   s   &&&  rV   Úmpc_ceilr¢   „   ó"   € Ø�D€AÜ�A˜SÓ!¤8¨A°SÓ#9Ð9Ð9rX   c                 ó:   € V w  r4\        W1V4      \        WAV4      3# rd   )r3   r“   s   &&&  rV   Úmpc_nintr¥   ˆ   r£   rX   c                 ó:   € V w  r4\        W1V4      \        WAV4      3# rd   )r4   r“   s   &&&  rV   Úmpc_fracr§   Œ   r£   rX   c                ó    € V w  rEVw  rg\        WF4      p\        WW4      p	\        WG4      p
\        WV4      p\        W‰W#4      p\        W«W#4      pWÍ3# )zº
Complex multiplication.

Returns the real and imaginary part of (a+bi)*(c+di), rounded to
the specified precision. The rounding mode applies to the real and
imaginary parts separately.
)r*   r)   r(   )rS   r�   ry   rg   r‚   rƒ   r„   r…   r�   ÚqÚrÚsrT   rU   s   &&&&          rV   Úmpc_mulr¬   ‘   sU   € ð �D€AØ�D€AÜ�‹€AÜ�‹€AÜ�‹€AÜ�‹€AÜ	��tÓ	!€BÜ	��tÓ	!€BØˆ6€MrX   c                 ó„   € V w  r4\        W34      p\        WD4      p\        W4W4      p\        WVW4      p\        V^4      p	W‰3# ©é   )r*   r)   r-   )
rS   ry   rg   r‚   rƒ   r�   r©   rª   rT   rU   s
   &&&       rV   Ú
mpc_squarer°   £   sE   € à�D€AÜ�‹€AÜ�‹€AÜ��TÓ€AÜ	��tÓ	!€BÜ	�1�a‹€BØˆ6€MrX   c                 ó@   € V w  rE\        WAW#4      p\        WQW#4      pWg3# rd   )r*   ©rS   r�   ry   rg   r‚   rƒ   rT   rU   s   &&&&    rV   Úmpc_mul_mpfr³   ­   s(   € Ø�D€AÜ	��tÓ	!€BÜ	��tÓ	!€BØˆ6€MrX   c                óR   € V w  rE\        \        WQW#4      4      p\        WAW#4      pWg3# )z:
Multiply the mpc value z by I*x where x is an mpf value.
)r'   r*   )rS   r‰   ry   rg   r‚   rƒ   rT   rU   s   &&&&    rV   Úmpc_mul_imag_mpfrµ   ³   s/   € ð �D€AÜ	”˜˜tÓ)Ó	*€BÜ	��tÓ	!€BØˆ6€MrX   c                 ó@   € V w  rE\        WAW#4      p\        WQW#4      pWg3# rd   )r,   )rS   r™   ry   rg   r‚   rƒ   rT   rU   s   &&&&    rV   Úmpc_mul_intr·   ¼   s(   € Ø�D€AÜ	�Q˜4Ó	%€BÜ	�Q˜4Ó	%€BØˆ6€MrX   c                 ó  € V w  rEVw  rgV^
,           p\        \        Wf4      \        Ww4      V4      p	\        \        WF4      \        WW4      V4      p
\        \        WV4      \        WG4      V4      p\        W©W#4      \        W¹W#4      3# ©é
   )r(   r*   r)   r+   )rS   r�   ry   rg   r‚   rƒ   r„   r…   ÚwpÚmagÚtÚus   &&&&        rV   Úmpc_divr¿   Â   st   € Ø�D€AØ�D€AØ	��€Bä
”'˜!“-¤¨£°Ó
3€Cä”˜“œg a›l¨BÓ/€AÜ”˜“œg a›l¨BÓ/€AÜ�1˜Ó"¤G¨A°$Ó$;Ð;Ð;rX   c                ó@   € V w  rE\        WAW#4      p\        WQW#4      pWg3# )zCalculate z/p where p is real)r+   r²   s   &&&&    rV   Úmpc_div_mpfrÁ   Í   s(   € à�D€AÜ	��tÓ	!€BÜ	��tÓ	!€BØˆ6€MrX   c                óž   € V w  r4\        \        W34      \        WD4      V^
,           4      p\        W5W4      p\        \        WEW4      4      pWg3# )zCalculate 1/z efficiently©r(   r*   r+   r'   )rS   ry   rg   r‚   rƒ   ÚmrT   rU   s   &&&     rV   Úmpc_reciprocalrÅ   Ô   sG   € à�D€AÜ”˜“œW Q›\¨$¨r­'Ó2€AÜ	��tÓ	!€BÜ	”˜˜tÓ)Ó	*€BØˆ6€MrX   c                óÆ   € Vw  rE\        \        WD4      \        WU4      V^
,           4      p\        \        W@4      WbV4      p\        \        \        WP4      4      WbV4      pWx3# )z)Calculate p/z where p is real efficientlyrÃ   )	r�   rS   ry   rg   r‚   rƒ   rÄ   rT   rU   s	   &&&&     rV   Úmpc_mpf_divrÇ   Ü   sS   € à�D€AÜ”˜“œW Q›\¨4°­7Ó3€AÜ	”˜“˜q¨Ó	,€BÜ	”œ ›Ó&¨°Ó	5€BØˆ6€MrX   c                ó   € ^p^ pV'       dq   V^,          '       d3   W0,          WA,          ,
          W@,          W1,          ,           rCV^,          pW ,          W,          ,
          ^V ,          V,          rV^,          pKx  W43# )zcComplex integer power: computes (a+b*I)**n exactly for
nonnegative n (a and b must be Python ints).© )r‚   rƒ   r™   ÚwreÚwims   &&&  rV   Úcomplex_int_powrÌ   ä   sa   € ð €CØ
€Cß
Øˆq�5Œ5Ø•u˜s�u•} c¥e¨c­e¥m�Ø��FˆAØ�s�Q•S�y˜!˜A�#˜a�%ˆ1Ø	ˆa�ŠØˆ8€OrX   c           	      ó¦   € V^,          \         8X  d   \        W^ ,          W#4      # \        \        \	        W^
,           4      W^
,           4      W#4      # r®   )r   Úmpc_pow_mpfÚmpc_expr¬   Úmpc_log)rS   r�   ry   rg   s   &&&&rV   Úmpc_powrÑ   ñ   s?   € Øˆ…tŒu„}Ü˜1 �d DÓ.Ð.Ü”7œ7 1¨2¥gÓ.°¸µ7Ó;¸TÓGÐGrX   c           	      ó  € Vw  rErgV^ 8¼  d"   \        V RV,          WV,          ,          W#4      # VR8X  d.   \        W^
,           4      p\        VRV,          V,          W#4      # \        \        \	        W^
,           4      W^
,           4      W#4      # )r]   éÿÿÿÿ)Úmpc_pow_intÚmpc_sqrtrÏ   r³   rÐ   )	rS   r�   ry   rg   ÚpsignÚpmanÚpexpÚpbcÚsqrtzs	   &&&&     rV   rÎ   rÎ   ö   s{   € ØÑ€E�Øˆq„yÜ˜1˜r E�k¨T­ZÕ8¸$ÓDÐDØˆr„zÜ˜ �GÓ$ˆÜ˜5 2¨¥+°Õ"4°dÓ@Ð@Ü”;œw q¨r­'Ó2°A¸BµwÓ?ÀÓKÐKrX   c           	      óÆ  € V w  rEV\         8X  d   \        WAW#4      \         3# V\         8X  dd   \        WQW#4      pV^,          pV^ 8X  d	   V\         3# V^8X  d	   \         V3# V^8X  d   \        V4      \         3# V^8X  d   \         \        V4      3# V^ 8X  d   \        # V^8X  d   \	        WV4      # V^8X  d   \        WV4      # VR8X  d   \        WV4      # V^ 8  d   \        \        W) V^,           4      W#4      # Vw  rxršVw  r¼rÞV'       d   V) pV'       d   V) pW�,
          p\        V4      pVV\        W®4      ,           ,          pVR8  di   V^ 8”  d   W�,          pTp	MWÏ) ,          pT	p\        WŒV4      w  pp\        V\        W,          4      W#4      p\        V\        W,          4      W#4      pVV3# \        \        \        W^
,           4      W^
,           4      W#4      # )é   i'  rÓ   )r   r>   r'   Úmpc_oner”   r°   rÅ   rÔ   ÚabsÚmaxrÌ   r   rq   rÏ   r·   rÐ   )rS   r™   ry   rg   r‚   rƒ   ÚvÚasignÚamanÚaexpÚabcÚbsignÚbmanÚbexpÚbbcÚdeÚabs_deÚ
exact_sizerT   rU   s   &&&&                rV   rÔ   rÔ   ÿ   sÂ  € Ø�D€AØŒE„zÜ˜1 Ó+¬UÐ2Ð2ØŒE„zÜ˜˜dÓ(ˆØ	ˆQ�ˆØ�Œ6Ø”e�8ˆOØ�!ŒVÜ˜!�8ˆOØ�!ŒVÜ˜1“:œuÐ$Ð$Ø�!ŒVÜœ' !›*Ð$Ð$ØˆA„v”gˆ~ØˆA„v”g˜a sÓ+Ð+ØˆA„v”j ¨#Ó.Ð.ØˆB„w”~ a¨sÓ3Ð3Øˆ1„u”^¤K°°2°t¸AµvÓ$>ÀÓJÐJØÑ€E�ØÑ€E�ß�d�Uˆdß�d�UˆdØ	�€BÜ�‹W€FØ�FœS ›]Õ*Õ+€JØ�EÔØ�Œ6Ø�KˆDØ‰Dà�c�NˆDØˆDÜ  ¨QÓ/‰ˆˆBÜ˜"œc !¥&›k¨4Ó5ˆÜ˜"œc !¥&›k¨4Ó5ˆØ�2ˆvˆÜ”;œw q¨r­'Ó2°A¸BµwÓ?ÀÓKÐKrX   c                óŠ  € V w  r4V\         8X  dO   V\         8X  d   W43# V^ ,          '       d   \        \        V4      W4      p\         V3# \        W1V4      pV\         3# V^,           pV^ ,          '       gV   \        \	        W43V4      W74      p\        VR4      p	\        W‘V4      p\        V^4      p
\        W§4      p\        WKW4      pWe3# \        \	        W43V4      W74      p\        VR4      p	\        W‘V4      p\        V^4      p
\        W§4      p\        WKW4      pV^ ,          '       d   \        V4      p\        V4      pWe3# )z�Complex square root (principal branch).

We have sqrt(a+bi) = sqrt((r+a)/2) + b/sqrt(2*(r+a))*i where
r = abs(a+bi), when a+bi is not a negative real number.rÓ   )r   r.   r'   r(   rœ   r-   r+   r)   )rS   ry   rg   r‚   rƒ   rU   rT   r»   r½   r¾   rà   r�   s   &&&         rV   rÕ   rÕ   '  s2  € ð
 �D€AØŒE„zØ”Œ:Ø�6ˆMàˆQ�4Œ4Üœ' !›* dÓ0ˆBÜ˜2�;Ðä˜! 3Ó'ˆBØœ�;ÐØ	ˆb�€BØˆQ�4Œ4Ü”W˜a˜V RÓ(¨!Ó0ˆÜ�a˜ÓˆÜ�a˜sÓ#ˆÜ�a˜‹OˆÜ�a‹_ˆÜ�Q˜4Ó%ˆð ˆ6€Mô ”G˜Q˜F BÓ'¨Ó/ˆÜ�a˜ÓˆÜ�a˜sÓ#ˆÜ�a˜‹OˆÜ�a‹_ˆÜ�Q˜4Ó%ˆØˆQ�4Œ4Ü˜“ˆBÜ˜“ˆBØˆ6€MrX   c                 ó8  € ^2p\        \        WW$,          ,
          4      4      p\        \        WW$,          ,
          4      4      p VRV,          ,           RV,          ,          pVP                  pVP                  p	\	        \        V4      4      p\	        \        V	4      4      p	^
pTpTp\        WCV,           4       EFm  p\        W‰V^,
          4      w  pp\        VV^,
          V,          V,
          V,
          4      p\        VV^,
          V,          V,
          V,
          4      pVV,          VV,          ,           Wþ,           ,	          p\        WV,
          4      p\        WV,
          4      pVV,          VV,          ,           V,	          pV) V,          VV,          ,           V,	          pVV,          V,          pVV,          V,          pVV^,
          \        W�V,
          4      ,          ,           V,          pVV^,
          \        WŸV,
          4      ,          ,           V,          p	TpEKp  	  W‰3#   \
         d^    \        YT4      p\        Yd4      p\        T4      p
\        ^Y¤4      p\        YV3T\        3T4      w  r‰\        T4      p\        T	4      p	 ELôi ; i)é2   y              ð?g      ð?)rq   r   Úrealro   r   rs   r   r0   rÑ   r   r   r   rÌ   r   )r‚   rƒ   r™   ry   ÚstartÚa1Úb1rª   rT   rU   ÚfnÚnthÚextraÚprevpÚextra1r�   Úre2Úim2Úr4ÚapÚbpÚrecÚimcÚrebÚimbs   &&&&                     rV   Úmpc_nthroot_fixedr  K  s  € à€EÜ	ŒV�A˜a�g•~Ó&Ó	'€BÜ	ŒV�A˜a�g•~Ó&Ó	'€BðØ�"�r•'�\˜S �UÕ#ˆØ�V‰VˆØ�V‰VˆÜ”�R“‹\ˆÜ”�R“‹\ˆð €EØ€EØ€FÜ˜ U¥
×+ˆä" 2¨1¨Q­3Ó/‰ˆˆSÜ�S˜1˜Q�3 �+¨�/¨FÕ2Ó3ˆÜ�S˜1˜Q�3 �+¨�/¨FÕ2Ó3ˆØ�#�g˜˜C�Õ Q¥ZÕ0ˆÜ�A˜a•xÓ ˆÜ�A˜a•xÓ ˆØ�C�x˜"˜s�(Õ" qÕ(ˆØˆs�S�y˜2 �8Õ#¨Õ)ˆØ�a�x˜BÕˆØ�a�x˜BÕˆØ�Q�q•Sœ&  u¥WÓ-Õ-Õ-°Õ1ˆØ�Q�q•Sœ&  u¥WÓ-Õ-Õ-°Õ1ˆØ‹ñ ,ð ˆ6€Møô5 ô Ü�bÓ ˆÜ�bÓ ˆÜ�a‹[ˆÜ˜1˜bÓ(ˆÜ˜"˜ C¬ <°Ó7‰ˆÜ�B‹ZˆÜ�B‹Z‹ðús   ÁAH1 È1A$JÊJc                ó  € V w  rEV^ ,          ^ 8X  d    V\         8X  d   \        WAW#4      pV\         3# V^8  dn   V^ 8X  d   \        # V^8X  d   \        WE3W#4      # VR8X  d   \	        \        WE3W#4      # \        WE3V) V^,           \        V,          4      p\	        \        WrV4      # V^8:  d¿   \        RV^
,           ,          4      pVw  ršr¼Vw  rÞpp\        WE3V4      pVR,          VR,          ,           R8”  dr   VR,          VR,          ,           V8  dV   \        WH4      p\        WX4      p\        VVW4      w  pp^
p\        Wh) V,
          Wƒ4      p\        VV) V,
          Wƒ4      pVV3# \        V4      pV^
,           ^
,           p\        ^VV4      p\        WE3V\         3Wƒ4      w  pp\        V^ ,          V^,          V^,          V^,          W#4      p\        V^ ,          V^,          V^,          V^,          W#4      pVV3# )ze
Complex n-th root.

Use Newton method as in the real case when it is faster,
otherwise use z**(1/n)
g333333ó?rÓ   éþÿÿÿiöÿÿÿ)r   rN   rÝ   r”   r¿   Úmpc_nthrootr   rq   rœ   r   r  r   r   r0   rÑ   r   )rS   r™   ry   rg   r‚   rƒ   rT   ÚinverseÚprec2rá   râ   rã   rä   rå   ræ   rç   rè   ÚpfÚafÚbfrU   rõ   ró   rô   s   &&&&                    rV   r  r  r  sç  € ð �D€AØˆ…tˆq„y�Qœ%”ZÜ˜˜tÓ)ˆØ”Eˆ{ÐØˆ1„uØ�Œ6ÜˆNØ�Œ6Ü˜A˜6 4Ó-Ð-Ø�Œ7Üœ7 Q F¨DÓ6Ð6Ü˜q˜f q b¨$¨q­&´.ÀÕ2EÓFˆÜ”w ¨sÓ3Ð3ØˆB„wÜ�C˜4 "�9Õ%Ó&ˆØ!"Ñˆ�TØ!"Ñˆ�T˜3Ü�a�U˜DÓ!ˆØˆb�6�B�r•F�?˜SÔ  b¨¥f¨r°"­v¥o¸Ô&<Ü˜!Ó#ˆBÜ˜!Ó#ˆBÜ& r¨2¨qÓ8‰FˆB�ØˆEÜ˜b &¨¥,°Ó;ˆBÜ˜b 5 &¨¥,°Ó;ˆBØ�r�6ˆMÜ	�!‹€BØ��G�b�L€EÜ
�q˜"˜eÓ
$€CÜ�a�V˜c¤5˜\¨5Ó6�F€BˆÜ	�2�a•5˜"˜Q�%  A¥¨¨1­¨tÓ	9€BÜ	�2�a•5˜"˜Q�%  A¥¨¨1­¨tÓ	9€BØˆrˆ6€MrX   c                ó   € \        V ^W4      # )z
Complex cubic root.
)r  ©rS   ry   rg   s   &&&rV   Úmpc_cbrtr  ›  s   € ô �q˜!˜TÓ'Ð'rX   c                óø   € V w  r4V\         8X  d   \        WAV4      # V\         8X  d   \        W1V4      \         3# \        W1^,           V4      p\        WA^,           V4      w  rg\        WVW4      p\        WWW4      p	W‰3# )aJ  
Complex exponential function.

We use the direct formula exp(a+bi) = exp(a) * (cos(b) + sin(b)*i)
for the computation. This formula is very nice because it is
pefectly stable; since we just do real multiplications, the only
numerical errors that can creep in are single-ulp rounding errors.

The formula is efficient since mpmath's real exp is quite fast and
since we can compute cos and sin simultaneously.

It is no problem if a and b are large; if the implementations of
exp/cos/sin are accurate and efficient for all real numbers, then
so is this function for all complex numbers.
)r   r;   r9   r*   )
rS   ry   rg   r‚   rƒ   r¼   r„   r«   rT   rU   s
   &&&       rV   rÏ   rÏ   ¡  sy   € ð  �D€AØŒE„zÜ˜1 CÓ(Ð(ØŒE„zÜ�q Ó$¤eÐ+Ð+Ü
�!˜!•V˜SÓ
!€CÜ�q˜q�& #Ó&�D€AÜ	�˜Ó	#€BÜ	�˜Ó	#€BØˆ6€MrX   c                 óV   € \        V ^ ,          V ^,          W4      p\        WV4      pW43# ©r]   )r?   rž   rx   s   &&&  rV   rÐ   rÐ   ¼  s+   € Ü	�q˜•t˜Q˜q�T 4Ó	-€BÜ	�˜#Ó	€BØˆ6€MrX   c                ó  € V w  r4V\         8X  d   \        W1V4      \         3# V\         8X  d   \        WAV4      \         3# V^,           p\        W54      w  rg\	        WE4      w  r‰\        WhW4      p
\        WyW4      pV
\        V4      3# )a?  Complex cosine. The formula used is cos(a+bi) = cos(a)*cosh(b) -
sin(a)*sinh(b)*i.

The same comments apply as for the complex exp: only real
multiplications are pewrormed, so no cancellation errors are
possible. The formula is also efficient since we can compute both
pairs (cos, sin) and (cosh, sinh) in single stwps.)r   rB   rH   r;   r<   r*   r'   ©rS   ry   rg   r‚   rƒ   r»   r„   r«   ÚchÚshrT   rU   s   &&&         rV   Úmpc_cosr  Á  s„   € ð �D€AØŒE„zÜ�q Ó$¤eÐ+Ð+ØŒE„zÜ˜ Ó%¤uÐ,Ð,Ø	��€BÜ�qÓ�D€AÜ˜1Ó!�F€BÜ	�˜Ó	"€BÜ	�˜Ó	"€BØŒw�r‹{ˆ?ÐrX   c                óú   € V w  r4V\         8X  d   \        W1V4      \         3# V\         8X  d   \         \        WAV4      3# V^,           p\        W54      w  rg\	        WE4      w  r‰\        WxW4      p
\        WiW4      pW«3# )z{Complex sine. We have sin(a+bi) = sin(a)*cosh(b) +
cos(a)*sinh(b)*i. See the docstring for mpc_cos for additional
comments.)r   rC   rI   r;   r<   r*   r  s   &&&         rV   Úmpc_sinr  Õ  s}   € ð �D€AØŒE„zÜ�q Ó$¤eÐ+Ð+ØŒE„zÜ”h˜q¨Ó,Ð,Ð,Ø	��€BÜ�qÓ�D€AÜ˜1Ó!�F€BÜ	�˜Ó	"€BÜ	�˜Ó	"€BØˆ6€MrX   c                ó`  € V w  r4Vw  rVrxVw  ršr¼V\         8X  d   \        W1V4      \         3# V\         8X  d   \         \        WAV4      3# V^,           p\        V^4      p\        V^4      p\	        W=4      w  rï\        WM4      w  pp\        VVV4      p\        VVW4      p\        VVW4      pVV3# )z_Complex tangent. Computed as tan(a+bi) = sin(2a)/M + sinh(2b)/M*i
where M = cos(2a) + cosh(2b).)r   r=   rJ   r-   r;   r<   r(   r+   )rS   ry   rg   r‚   rƒ   rá   râ   rã   rä   rå   ræ   rç   rè   r»   r„   r«   r  r  r¼   rT   rU   s   &&&                  rV   Úmpc_tanr  å  s»   € ð �D€AØÑ€E�ØÑ€E�ØŒE„zœ' !¨3Ó/´Ð6Ð6ØŒE„zœ%¤¨!°3Ó!7Ð7Ð7Ø	��€BÜ�!�Q‹€AÜ�!�Q‹€AÜ�qÓ�D€AÜ˜1Ó!�F€Bˆä
�!�R˜Ó
€CÜ	��C˜Ó	#€BÜ	��S˜$Ó	$€BØˆrˆ6€MrX   c                 óV  € V w  r4V\         8X  d   \        W1V4      \         3# \        V\        V^,           4      V^,           4      pV\         8X  d   \	        WAV4      \         3# V^,           p\        W54      w  rg\        WE4      w  r‰\        WhW4      p
\        WyW4      pV
\        V4      3# ©é   )r   rD   r*   r8   rH   r@   r<   r'   r  s   &&&         rV   Ú
mpc_cos_pir  ø  sœ   € Ø�D€AØŒE„zÜ˜! 3Ó'¬Ð.Ð.Ü�”6˜$˜q�&“> 4¨¥6Ó*€AØŒE„zÜ˜ Ó%¤uÐ,Ð,Ø	��€BÜ˜!Ó �D€AÜ˜1Ó!�F€BÜ	�˜Ó	"€BÜ	�˜Ó	"€BØŒw�r‹{ˆ?ÐrX   c                 óB  € V w  r4V\         8X  d   \        W1V4      \         3# \        V\        V^,           4      V^,           4      pV\         8X  d   \         \	        WAV4      3# V^,           p\        W54      w  rg\        WE4      w  r‰\        WxW4      p
\        WiW4      pW«3# r  )r   rE   r*   r8   rI   r@   r<   r  s   &&&         rV   Ú
mpc_sin_pir    s•   € Ø�D€AØŒE„zÜ˜! 3Ó'¬Ð.Ð.Ü�”6˜$˜q�&“> 4¨¥6Ó*€AØŒE„zÜ”h˜q¨Ó,Ð,Ð,Ø	��€BÜ˜!Ó �D€AÜ˜1Ó!�F€BÜ	�˜Ó	"€BÜ	�˜Ó	"€BØˆ6€MrX   c                 ót  € V w  r4V\         8X  d   \        WAV4      w  rVV\         3\         V33# V\         8X  d   \        W1V4      w  rxV\         3V\         33# V^,           p	\        W94      w  rx\        WI4      w  rV\        WuW4      p
\        W†W4      p\        W…W4      p\        WvW4      pV
\	        V4      3WÍ33# )é   )r   r<   r;   r*   r'   )rS   ry   rg   r‚   rƒ   r  r  r„   r«   r»   ÚcreÚcimÚsreÚsims   &&&           rV   Úmpc_cos_sinr%    sÀ   € Ø�D€AØŒE„zÜ˜q¨Ó,‰ˆØ”Eˆ{œU B˜KÐ'Ð'ØŒE„zÜ˜1 CÓ(‰ˆØ”5ˆz˜Aœu˜:Ð%Ð%Ø	��€BÜ�qÓ�D€AÜ˜1Ó!�F€BÜ
�!˜Ó
#€CÜ
�!˜Ó
#€CÜ
�!˜Ó
#€CÜ
�!˜Ó
#€CØ”˜“Ð  
Ð*Ð*rX   c                 ó¼  € V w  r4V\         8X  d   \        W1V4      w  rVV\         3V\         33# \        V\        V^,           4      V^,           4      pV\         8X  d   \	        WAV4      w  rxV\         3\         V33# V^,           p	\        W94      w  rV\	        WI4      w  rx\        WWW4      p
\        WhW4      p\        WgW4      p\        WXW4      pV
\        V4      3WÍ33# r  )r   r@   r*   r8   r<   r'   )rS   ry   rg   r‚   rƒ   r„   r«   r  r  r»   r!  r"  r#  r$  s   &&&           rV   Úmpc_cos_sin_pir'  %  sÚ   € Ø�D€AØŒE„zÜ˜a sÓ+‰ˆØ”5ˆz˜Aœu˜:Ð%Ð%Ü�”6˜$˜q�&“> 4¨¥6Ó*€AØŒE„zÜ˜q¨Ó,‰ˆØ”Eˆ{œU B˜KÐ'Ð'Ø	��€BÜ˜!Ó �D€AÜ˜1Ó!�F€BÜ
�!˜Ó
#€CÜ
�!˜Ó
#€CÜ
�!˜Ó
#€CÜ
�!˜Ó
#€CØ”˜“Ð  
Ð*Ð*rX   c                ó8   € V w  r4\        V\        V4      3W4      # )z:Complex hyperbolic cosine. Computed as cosh(z) = cos(z*i).)r  r'   r“   s   &&&  rV   Úmpc_coshr)  7  s   € à�D€AÜ�A”w˜q“z�? DÓ.Ð.rX   c                ó.   € V w  r4\        WC3W4      w  rCW43# )z;Complex hyperbolic sine. Computed as sinh(z) = -i*sin(z*i).)r  r“   s   &&&  rV   Úmpc_sinhr+  <  ó    € à�D€AÜ�A�6˜4Ó%�D€AØˆ4€KrX   c                ó.   € V w  r4\        WC3W4      w  rCW43# )z>Complex hyperbolic tangent. Computed as tanh(z) = -i*tan(z*i).)r  r“   s   &&&  rV   Úmpc_tanhr.  B  r,  rX   c                 óh  € V w  r4V^,           p\        \        WE4      \        V4      3p\        \        WE4      V3p\	        We4      p\	        Wu4      p	\        W‰W4      w  r4\        \        VR4      4      \        VR4      3p
V
^,          \        8X  d!   \        V 4      '       d   V
^ ,          \        3p
V
# ©é   rÓ   )
r(   r   r'   r)   rÐ   rŽ   r-   r#   rW   r   )rS   ry   rg   r‚   rƒ   r»   r‰   ÚyÚl1Úl2rà   s   &&&        rV   Úmpc_atanr5  I  sœ   € Ø�D€Að 
��€BÜ”�aÓœg a›jÐ(€AÜ”�aÓ˜aÐ€AÜ	�‹€BÜ	�‹€BÜ�2˜4Ó%�D€Aä”	˜!˜B“Ó ¤)¨A¨b£/Ð1€Að 	ˆ…tŒt„|œ
 1ŸšØˆq�T”5ˆMˆØ€HrX   gû:pÎˆä?g      ø?c                ó
  € V w  rEV^
,           pV\         8X  dì   \        \        \        V4      V4      pV^ ,          '       g,   V^ 8X  d   \	        WAV4      \         3# \        WAV4      \         3# V^ ,          '       dL   \        W4      p\        \        V4      W4      p	V^ 8X  d   V\        V	4      3# \        \        VR4      4      V	3# \        WAV4      p	V^ 8X  d	   \         V	3# \        W4      p\        VR4      \        V	4      3# ^ ;r«V^ ,          '       d   \        V4      p^p
V^ ,          '       d   \        V4      p^p\        \        WF4      p\        \        WF4      p\        WÅV4      p\        WuV4      p\        \        WÞV4      R4      p\        WOV4      p\        WUV4      p\        \        VV4      ^ ,          '       g$   V^ 8X  d   \	        VV4      pEMI\        VV4      pEM;\        WôV4      pV^ ,          '       g�   \        V\        WÜV4      V4      p	\        WçV4      p\        \        V\        V	VV4      V4      R4      pV^ 8X  d"   \        \        \!        VV4      WF4      V4      pM³\        \        V\!        VV4      V4      V4      pM‘\        V\        WÜV4      V4      p	\        V\        WçV4      V4      p\        \        V	VV4      R4      p\        V\!        VV4      V4      pV^ 8X  d   \        \        VWF4      V4      pM\        \        VVV4      V4      p\        \"        Wö4      ^ ,          '       gÑ   \        V\        WÜV4      V4      p\        V4      ^ ,          '       d2   \        WçV4      p\        VVV4      p\        \        VVV4      R4      pM#\        WçV4      p\        \        VVV4      R4      p\        V\        V\        V4      V4      p\%        \        \        \        V\!        VV4      V4      V4      V4      pM<\!        \        \        WÿV4      \        V4      V4      p\%        \        VVV4      V4      pV
'       d*   V^ 8X  d   \        \        V4      VV4      pM\        V4      pV'       g   V^ 8X  d   \        V4      pV'       d   V^8X  d   \        V4      p\'        V^ ,          V^,          V^,          V^,          W4      p\'        V^ ,          V^,          V^,          V^,          W4      pVV3# )aé  complex acos for n = 0, asin for n = 1
The algorithm is described in
T.E. Hull, T.F. Fairgrieve and P.T.P. Tang
'Implementing the Complex Arcsine and Arcosine Functions
using Exception Handling',
ACM Trans. on Math. Software Vol. 23 (1997), p299
The complex acos and asin can be defined as
acos(z) = acos(beta) - I*sign(a)* log(alpha + sqrt(alpha**2 -1))
asin(z) = asin(beta) + I*sign(a)* log(alpha + sqrt(alpha**2 -1))
where z = a + I*b
alpha = (1/2)*(r + s); beta = (1/2)*(r - s) = a/alpha
r = sqrt((a+1)**2 + y**2); s = sqrt((a-1)**2 + y**2)
These expressions are rewritten in different ways in different
regions, delimited by two crossovers alpha_crossover and beta_crossover,
and by abs(a) <= 1, in order to improve the numerical accuracy.
rÓ   )r   r)   r   r%   rL   rK   r8   rM   r'   r-   r(   r/   r+   r*   Úbeta_crossoverrF   r.   Úalpha_crossoverr:   r   )rS   ry   rg   r™   r‚   rƒ   r»   ÚamÚpir„   rá   rå   rû   rª   r«   ÚalphaÚbetaÚb2rT   ÚAxr…   Úc1Úc2ÚAm1rU   s   &&&&                     rV   Ú	acos_asinrB  _  s[  € ð" �D€AØ	��€BàŒE„zÜ”Tœ7 1›: rÓ*ˆà�!�uŒuØ�AŒvÜ ¨Ó-¬uÐ4Ð4ä ¨Ó-¬uÐ4Ð4ð ��tŒtÜ˜DÓ&�Üœg a›j¨$Ó4�Ø˜”6Øœw q›z˜>Ð)ä"¤9¨R°Ó#4Ó5°qÐ8Ð8ô ˜a sÓ+�Ø˜”6Ü  !˜8�Oä Ó*�BÜ$ R¨Ó,¬g°a«jÐ8Ð8ØÐ€EØˆ‡t„tÜ�A‹JˆØˆØˆ‡t„tÜ�A‹JˆØˆÜ	”�qÓ	€BÜ	”�qÓ	€BÜ�"˜Ó€AÜ�"˜Ó€AÜ”g˜a BÓ'¨Ó,€EÜ�1˜RÓ €DÜ	��bÓ	€Bä”> 4¨Ó,¨Q×/Ô/Ø�Œ6Ü˜$ Ó#ŠBä˜$ Ó#ŠBô �U˜rÓ"ˆà�!�uŒuô
 ˜œG A¨2Ó.°Ó3ˆAÜ˜˜rÓ"ˆAÜœ7 2¤w¨q°!°RÓ'8¸"Ó=¸rÓBˆBØ�AŒvÜœg¤h¨r°2Ó&6¸Ó>ÀÓC‘äœg a¬°"°bÓ)9¸2Ó>ÀÓC‘ô ˜œG A¨2Ó.°Ó3ˆAÜ˜œG A¨2Ó.°Ó3ˆAÜœ7 1 a¨Ó,¨bÓ1ˆBÜ˜œH R¨Ó,¨bÓ1ˆBØ�AŒvÜœg b¨!Ó0°"Ó5‘äœg a¨¨RÓ0°"Ó5�ô
 ”? EÓ.¨q×1Ô1Ü�Rœ ¨Ó+¨RÓ0ˆä�2‹;�q�>Œ>ä˜ Ó#ˆBÜ˜˜R Ó$ˆBÜœG B¨¨BÓ/°Ó4‰Cô ˜ Ó#ˆBÜœG B¨¨BÓ/°Ó4ˆCä�Sœ' %¬¨rÓ2°BÓ7ˆÜ”WœT¤7¨3´¸¸RÓ0@À"Ó#EÀrÓJÈBÓO‰ô ”gœg e°BÓ7¼¸rÓBÀBÓGˆÜ”W˜U B¨Ó+¨RÓ0ˆßØ�Œ6Üœ › R¨Ó,‰Bä˜“ˆBß�Q˜!”VÜ�R‹[ˆß��a”Ü�R‹[ˆÜ	�2�a•5˜"˜Q�%  A¥¨¨1­¨tÓ	9€BÜ	�2�a•5˜"˜Q�%  A¥¨¨1­¨tÓ	9€BØˆrˆ6€MrX   c                 ó   € \        WV^ 4      # r  ©rB  r  s   &&&rV   Úmpc_acosrE  ç  ó   € Ü�Q˜c 1Ó%Ð%rX   c                 ó   € \        WV^4      # r®   rD  r  s   &&&rV   Úmpc_asinrH  ê  rF  rX   c                 óV   € V w  r4\        V\        V4      3W4      w  r4\        V4      V3# rd   )rH  r'   r“   s   &&&  rV   Ú	mpc_asinhrJ  í  s-   € à�D€AÜ�aœ ›�_ dÓ0�D€AÜ�1‹:�qˆ=ÐrX   c                 ó†   € \        WV4      w  r4V^ ,          '       g   V\        8X  d   \        V4      V3# V\        V4      3# r  )rE  r   r'   r“   s   &&&  rV   Ú	mpc_acoshrL  ó  s=   € ô �A˜SÓ!�D€AØˆ‡t„tˆq”EŒzÜ�q‹z˜1ˆ}Ðà”'˜!“*ˆ}ÐrX   c                 ó  € V^,           p\        V \        V4      p\        \        W4      p\        WC4      p\        WS4      p\	        \        WEV4      R4      pV^ ,          \
        8X  d!   \        V 4      '       d   \        V^,          3pV# r0  )r†   rÝ   rŽ   rÐ   rš   r#   rW   r   )rS   ry   rg   r»   r‚   rƒ   rà   s   &&&    rV   Ú	mpc_atanhrN  ü  sq   € à	��€BÜ�”7˜BÓ€AÜ”˜Ó€AÜ�‹€AÜ�‹€AÜ”'˜! Ó# RÓ(€Að 	ˆ…tŒt„|œ
 1ŸšÜ�A�a•DˆMˆØ€HrX   c                 óÄ  € V w  r4V\         8X  d   \        W1V4      \         3# \        \        V^,          V^,          ,           4      \        V^,          V^,          ,           4      4      pW,           ^,           p\	        V4      p\        \        V^4      \        V4      p\        V\         3W4      p	\        W4      p
\        W©V4      p
\        WšV4      p	\        W˜W4      p	V	# )rk   )r   rO   rß   rÞ   rA   r(   r-   r$   rÑ   r  r¿   rŽ   rÁ   )rS   ry   rg   rT   rU   Úsizer»   r‚   rƒ   r¾   rà   s   &&&        rV   Úmpc_fibonaccirQ  
  s¼   € Ø�F€BØ	ŒU„{Ü˜b¨Ó,¬eÐ4Ð4ÜŒs�2�a•5˜˜A�•;Ó¤ R¨¥U¨2¨a­5¥[Ó!1Ó2€DØ	��rÕ	€BÜ�‹€AÜ”	˜!˜Q“¤¨Ó+€AÜ�”E�
˜AÓ"€AÜ�1Ó€AÜ��bÓ€AÜ��bÓ€AÜ�A˜$Ó$€AØ€HrX   c                 ó   € \         hrd   ©r7   ©r‰   ry   rg   s   &&&rV   Úmpf_expjrU    ó   € Ü
ÐrX   c                 ó  € V w  r4V\         8X  d   \        W1V4      # V\         8X  d   \        \        V4      W4      \         3# \        \        V4      V^
,           4      p\        W1^
,           4      w  rg\	        WVW4      p\	        WWW4      pW43# r¹   )r   r;   r9   r'   r*   )rS   ry   rg   rT   rU   Úeyr„   r«   s   &&&     rV   Úmpc_expjrY    s}   € Ø�F€BØ	ŒU„{Ü˜2 SÓ)Ð)Ø	ŒU„{Ü”w˜r“{ DÓ.´Ð5Ð5Ü	”˜“˜d 2�gÓ	&€BÜ�r �7Ó#�D€AÜ	�˜Ó	"€BÜ	�˜Ó	"€BØˆ6€MrX   c                 ó   € \         hrd   rS  rT  s   &&&rV   Ú
mpf_expjpir[  (  rV  rX   c                 óŽ  € V w  r4V\         8X  d   \        W1V4      # Vw  rVrxV^
,           p	V'       d   V	\        ^ Wx,           4      ,          p	\        \	        \        V	4      WI4      4      pV\         8X  d   \        WAV4      \         3# \        WA^
,           4      p
\        W1^
,           4      w  r¼\	        W«W4      p\	        W¬W4      pW43# r¹   )r   r@   rß   r'   r*   r8   r9   )rS   ry   rg   rT   rU   ÚsignÚmanÚexpÚbcr»   rX  r„   r«   s   &&&          rV   Ú
mpc_expjpira  +  s°   € Ø�F€BØ	ŒU„{Ü˜b¨Ó,Ð,ØÑ€DˆsØ	ˆb�€Bß
Ø
Œc�!�S•V‹nÕˆÜ	”œ › RÓ,Ó	-€BØ	ŒU„{Ü�r Ó%¤uÐ,Ð,Ü	�˜"•WÓ	€BÜ˜" 2�gÓ&�D€AÜ	�˜Ó	"€BÜ	�˜Ó	"€BØˆ6€MrX   Úsagez&Warning: Sage imports in libmpc failed)Úf) Ú__doc__rl   Úbackendr   r   r   r   r   Úlibmpfr   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$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   Ú	libelefunr8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rÝ   r|   Úmpc_twoÚmpc_halfrQ   rZ   rW   r[   rb   rh   ru   rz   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  r  r  rÏ   rÐ   r  r  r  r  r  r%  r'  r)  r+  r.  r5  r7  r8  rB  rE  rH  rJ  rL  rN  rQ  rU  rY  r[  ra  Úsage.libs.mpmath.ext_libmpÚlibsÚmpmathÚ	ext_libmpÚ_lbmpÚImportErrorÚAttributeErrorÚprintrÉ   rX   rV   Ú<module>rr     sG  ðñó ç =Õ =÷÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ õ ÷÷ ÷ ÷ ÷ ÷ ó ð �ˆ+€Ø�%ˆ<€Ø
�ˆ+€Ø�5ˆ>€à	ˆuˆ€Ø�5˜$Ð€	òòò<ð #¨
ô Iòð  *ô &òð 'ô >ð
 !+ô 'ð ˜jô >ð
  *ô 'ð $ô 8ð ˜jô 8ò,ð $ô &ð $ô &ð
 &ô <ð %ô :ð %ô :ð %ô :ð
 'ô ð$ 'ô ð !+ô ð &0ô ð !+ô ð 'ô 	<ð !+ô ð !+ô ð !+ô òð 'ô Hð
 !+ô Lð !+ô &LðP %ô "òH%ðN !+ô 'ðR %ô (ð $ô ð6 $ô ð
 $ô ð( $ô ð  $ô ð& 'ô ð 'ô ð (ô +ð" !+ô +ð$ %ô /ð
 %ô ð %ô ð %ô ñ& ˜FÓ#€Ù˜S“/€òFðP %ô &ð %ô &ð &ô ð &ô ð &ô ð  *ô ôô
ôôð$ ˆfÔð8ß2Ó2Ø—-‘-ˆØ—>‘>Šñ	 øð
 ˜Ð(ô 8ÙÐ6×7ð8ús   È3$I ÉI0É/I0