§
    «³Ùg°Â ã            	       ó¢  — d dl mZmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZmZmZmZ d dlmZmZmZmZ d dlmZ d dlmZmZmZmZmZ d d	lmZmZ d d
l m!Z! d dl"m#Z#m$Z$ d dl%m&Z& d dl'm(Z(m)Z) d dl*m+Z+m,Z, d dl-m.Z/m0Z0m1Z1 d dl2m3Z3m4Z4 d dl5m6Z6 d dl7m8Z8m9Z9m:Z: d dl;m<Z< d dl=m>Z>m?Z?m@Z@ d dlAmBZB d dlCmDZD d dlEmFZF d dlGmHZH d„ ZI G d„ de¦  «        ZJed„ ¦   «         ZKd„ ZLdDde
d eMd!ee
d"f         fd#„ZN G d$„ d%eJ¦  «        ZO G d&„ d'eJ¦  «        ZP G d(„ d)eJ¦  «        ZQ G d*„ d+eJ¦  «        ZR G d,„ d-eJ¦  «        ZS G d.„ d/eS¦  «        ZT G d0„ d1eS¦  «        ZU G d2„ d3e¦  «        ZV G d4„ d5e¦  «        ZW G d6„ d7eW¦  «        ZX G d8„ d9eW¦  «        ZY G d:„ d;eW¦  «        ZZ G d<„ d=eW¦  «        Z[ G d>„ d?eW¦  «        Z\ G d@„ dAeW¦  «        Z] G dB„ dCeW¦  «        Z^d"S )Eé    )ÚTupleÚUnion)ÚAdd)Úcacheit)ÚExpr)ÚFunctionÚArgumentIndexErrorÚ	PoleErrorÚ
expand_mul)Ú	fuzzy_notÚfuzzy_orÚ	FuzzyBoolÚ	fuzzy_and)ÚMod)ÚRationalÚpiÚIntegerÚFloatÚequal_valued)ÚNeÚEq)ÚS)ÚSymbolÚDummy)Úsympify)Ú	factorialÚRisingFactorial)Ú	bernoulliÚeuler)ÚargÚimÚre)ÚlogÚexp)Úfloor)ÚsqrtÚMinÚMax)Ú	Piecewise)Ú	cos_tableÚ	ipartfracÚfermat_coords)ÚAnd)Ú	factorint)Úsymmetric_poly)Únumbered_symbolsc                 ón   — t          | t          ¦  «        rdS |                      t          j        ¦  «        S )z; Helper to extract symbolic coefficient for imaginary unit N)Ú
isinstancer   Úas_coefficientr   ÚImaginaryUnit)r    s    ú^/granary/edev/quantum/lib/python3.11/site-packages/sympy/functions/elementary/trigonometric.pyÚ_imaginary_unit_as_coefficientr6   !   s/   € å�#•uÑÔð 3Øˆtà×!Ò!¥!¤/Ñ2Ô2Ð2ó    c                   óJ   — e Zd ZdZdZej        fZd„ Zd„ Z	d	d„Z
d	d„Zd
d„ZdS )ÚTrigonometricFunctionz(Base class for trigonometric functions. Tc                 ó¼   —  | j         | j        Ž }|j         | j         k    r7|j        d         j        r!t          |j        d         j        ¦  «        rdS d S d S |j        S ©Nr   F)ÚfuncÚargsÚis_rationalr   Úis_zero©ÚselfÚss     r5   Ú_eval_is_rationalz'TrigonometricFunction._eval_is_rational3   sm   € ØˆDŒI�t”yÐ!ˆØŒ6�T”YÒÐØŒv�aŒyÔ$ð ­°1´6¸!´9Ô3DÑ)EÔ)Eð Ø�uðð ð ð ð ”=Ð r7   c                 ó  —  | j         | j        Ž }|j         | j         k    r\t          | j        d         j        ¦  «        r| j        d         j        rdS t          | j        d         ¦  «        }|�	|j        rdS d S d S |j        S ©Nr   FT)r<   r=   r   r?   Úis_algebraicÚ	_pi_coeffr>   )rA   rB   Úpi_coeffs      r5   Ú_eval_is_algebraicz(TrigonometricFunction._eval_is_algebraic;   s�   € ØˆDŒI�t”yÐ!ˆØŒ6�T”YÒÐÝ˜œ 1œÔ-Ñ.Ô.ð °4´9¸Q´<Ô3Lð Ø�uÝ  ¤¨1¤Ñ.Ô.ˆHØÐ#¨Ô(<Ð#Ø�tð $Ð#Ð#Ð#ð ”>Ð!r7   c                 óJ   —  | j         dd|i|¤Ž\  }}||t          j        z  z   S )NÚdeep© )Úas_real_imagr   r4   )rA   rK   ÚhintsÚre_partÚim_parts        r5   Ú_eval_expand_complexz*TrigonometricFunction._eval_expand_complexF   s6   € Ø,˜4Ô,Ð@Ð@°$Ð@¸%Ð@Ð@Ñˆ�Ø˜¥¤Ñ0Ñ0Ð0r7   c                 ó^  — | j         d         j        rE|r*d|d<    | j         d         j        |fi |¤Žt          j        fS | j         d         t          j        fS |r/ | j         d         j        |fi |¤Ž                     ¦   «         \  }}n"| j         d                              ¦   «         \  }}||fS )Nr   FÚcomplex)r=   Úis_extended_realÚexpandr   ÚZerorM   )rA   rK   rN   r"   r!   s        r5   Ú_as_real_imagz#TrigonometricFunction._as_real_imagJ   s¾   € ØŒ9�QŒ<Ô(ð 	.Øð .Ø#(��iÑ Ø+˜œ	 !œÔ+¨DÐ:Ð:°EÐ:Ð:½A¼FÐCÐCàœ	 !œ¥a¤fÐ-Ð-Øð 	1Ø(�T”Y˜q”\Ô(¨Ð7Ð7°Ð7Ð7×DÒDÑFÔF‰FˆB��à”Y˜q”\×.Ò.Ñ0Ô0‰FˆB�Ø�Bˆxˆr7   Nc                 ó   — t          | j        d         ¦  «        }|€t          |j        ¦  «        d         }|                     |¦  «        st
          j        S ||k    r|S ||j        v rˆ|j        r0|                     |¦  «        \  }}||k    r|t          |¦  «        z  S |j
        rJ|                     |¦  «        \  }}|                     |d¬¦  «        \  }}||k    r|t          |¦  «        z  S t          d¦  «        ‚)Nr   F)Úas_Addz%Use the periodicity function instead.)r   r=   ÚtupleÚfree_symbolsÚhasr   rV   Úis_MulÚas_independentÚabsÚis_AddÚNotImplementedError)rA   Úgeneral_periodÚsymbolÚfÚgÚhÚas          r5   Ú_periodzTrigonometricFunction._periodW   s  € Ý�t”y ”|Ñ$Ô$ˆØˆ>Ý˜1œ>Ñ*Ô*¨1Ô-ˆFà�uŠu�V‰}Œ}ð 	Ý”6ˆMà�Š;ˆ;Ø!Ð!à�Q”^Ð#Ð#ØŒxð 1Ø×'Ò'¨Ñ/Ô/‘��1Ø˜’;�;Ø)­#¨a©&¬&Ñ0Ð0àŒxð 1Ø×'Ò'¨Ñ/Ô/‘��1Ø×'Ò'¨°uÐ'Ñ=Ô=‘��1Ø˜’;�;Ø)­#¨a©&¬&Ñ0Ð0å!Ð"IÑJÔJÐJr7   ©T©N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
unbranchedr   ÚComplexInfinityÚ_singularitiesrC   rI   rQ   rW   rh   rL   r7   r5   r9   r9   -   sŠ   € € € € € Ø2Ð2à€JØÔ'Ð)€Nð!ð !ð !ð	"ð 	"ð 	"ð1ð 1ð 1ð 1ðð ð ð ðKð Kð Kð Kð Kð Kr7   r9   c            	      ó   — ddddddddd	œS )
N)é   é   )rt   é   )ru   é   )rv   é
   )rv   é   )rx   rw   )é   é   )é(   é<   )é   ry   rz   é   é   r{   r|   éx   rL   rL   r7   r5   Ú_table2r�   q   s+   € ð ØØØØØØØð	ð 	ð 	r7   c                 ó¦  — t           j        }g }t          j        | ¦  «        D ]@}|                     t
          ¦  «        }|r|j        r||z  }Œ+|                     |¦  «         ŒA|t           j        u r| t           j        fS |t           j        z  }||z
  }|j	        sd|z  j	        r |j
        du rt          ||t
          z  gz   Ž |fS | t           j        fS )aË  
    Split ARG into two parts, a "rest" and a multiple of $\pi$.
    This assumes ARG to be an Add.
    The multiple of $\pi$ returned in the second position is always a Rational.

    Examples
    ========

    >>> from sympy.functions.elementary.trigonometric import _peeloff_pi
    >>> from sympy import pi
    >>> from sympy.abc import x, y
    >>> _peeloff_pi(x + pi/2)
    (x, 1/2)
    >>> _peeloff_pi(x + 2*pi/3 + pi*y)
    (x + pi*y + pi/6, 1/2)

    é   F)r   rV   r   Ú	make_argsÚcoeffr   r>   ÚappendÚHalfÚ
is_integerÚis_even)r    rH   Ú
rest_termsrg   ÚKÚm1Úm2s          r5   Ú_peeloff_pirŽ   ƒ   sä   € õ$ Œv€HØ€JÝŒ]˜3ÑÔð !ð !ˆØ�GŠG•B‰KŒKˆØð 	!�”ð 	!Ø˜‰MˆHˆHà×Ò˜aÑ Ô Ð Ð à•1”6ÐÐØ•A”Fˆ{Ðà
•Q”VÑ
€BØ	�B‰€BØ	„}ð 0˜!˜B™$Ô*ð 0¨r¬z¸UÐ/BÐ/BÝ�Z 2¥b¡5 'Ñ)Ð+¨RÐ/Ð/Ø•”ˆ;Ðr7   é   r    ÚcyclesÚreturnNc                 óâ  — | t           u rt          j        S | st          j        S | j        �r0|                      t           ¦  «        }|�r|                     ¦   «         \  }}|j        rµt          |¦  «        dz  }|dk    r|t          t          t          |d¦  «                             ¦   «         ¦  «        ¦  «         }d|z  }||z  }t          |¦  «        }	t          |	|¦  «        rt          |	|¦  «        }||z  }n!t          t          |¦  «        ¦  «        }||z  }|j        r6|dz  }
|
dk    r|S |
s"|j        �t          j        S t#          d¦  «        S |
|z  S |S n| j        rt          j        S dS )a6  
    When arg is a Number times $\pi$ (e.g. $3\pi/2$) then return the Number
    normalized to be in the range $[0, 2]$, else `None`.

    When an even multiple of $\pi$ is encountered, if it is multiplying
    something with known parity then the multiple is returned as 0 otherwise
    as 2.

    Examples
    ========

    >>> from sympy.functions.elementary.trigonometric import _pi_coeff
    >>> from sympy import pi, Dummy
    >>> from sympy.abc import x
    >>> _pi_coeff(3*x*pi)
    3*x
    >>> _pi_coeff(11*pi/7)
    11/7
    >>> _pi_coeff(-11*pi/7)
    3/7
    >>> _pi_coeff(4*pi)
    0
    >>> _pi_coeff(5*pi)
    1
    >>> _pi_coeff(5.0*pi)
    1
    >>> _pi_coeff(5.5*pi)
    3/2
    >>> _pi_coeff(2 + pi)

    >>> _pi_coeff(2*Dummy(integer=True)*pi)
    2
    >>> _pi_coeff(2*Dummy(even=True)*pi)
    0

    r�   r   rƒ   N)r   r   ÚOnerV   r]   r…   Úas_coeff_MulÚis_Floatr_   ÚintÚroundr#   Úevalfr   r   rˆ   r‰   r   r?   )r    r�   ÚcxÚcÚxrd   ÚpÚmÚcmÚiÚc2s              r5   rG   rG   ¨   su  € ðJ �b€y€yÝŒuˆØð  ÝŒvˆØ	Œñ Ø�YŠY•r‰]Œ]ˆØñ 	Ø—?’?Ñ$Ô$‰DˆAˆqØŒzð å˜‘F”F˜Q‘J�Ø˜’6�6Ý�U¥3 q¨!¡9¤9§?¢?Ñ#4Ô#4Ñ5Ô5Ñ6Ô6Ð6�AØ˜1™�AØ˜1™�BÝ˜B™œ�AÝ# A rÑ*Ô*ð !Ý$ Q¨™NœN˜Ø˜q™S˜øå ¥ Q¡¤Ñ(Ô(�AØ˜1™�BØŒ|ð 	 Ø˜‘U�Ø˜’7�7Ø�HØð  Ø”yÐ,Ý œv˜Ý" 1™:œ:Ð%à˜a™4�KØˆIð5	ð6 
Œð ÝŒvˆØˆ4r7   c                   óâ   — e Zd ZdZdd„Zd d„Zed„ ¦   «         Zee	d„ ¦   «         ¦   «         Z
d!d	„Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd"d„Zd„ Zd#d„Zd„ Zd„ Zd„ Zd„ ZdS )$Úsina»  
    The sine function.

    Returns the sine of x (measured in radians).

    Explanation
    ===========

    This function will evaluate automatically in the
    case $x/\pi$ is some rational number [4]_.  For example,
    if $x$ is a multiple of $\pi$, $\pi/2$, $\pi/3$, $\pi/4$, and $\pi/6$.

    Examples
    ========

    >>> from sympy import sin, pi
    >>> from sympy.abc import x
    >>> sin(x**2).diff(x)
    2*x*cos(x**2)
    >>> sin(1).diff(x)
    0
    >>> sin(pi)
    0
    >>> sin(pi/2)
    1
    >>> sin(pi/6)
    1/2
    >>> sin(pi/12)
    -sqrt(2)/4 + sqrt(6)/4


    See Also
    ========

    csc, cos, sec, tan, cot
    asin, acsc, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.14
    .. [3] https://functions.wolfram.com/ElementaryFunctions/Sin
    .. [4] https://mathworld.wolfram.com/TrigonometryAngles.html

    Nc                 ó>   — |                       dt          z  |¦  «        S ©Nrƒ   ©rh   r   ©rA   rc   s     r5   Úperiodz
sin.period#  ó   € Ø�|Š|˜A�b™D &Ñ)Ô)Ð)r7   r�   c                 ób   — |dk    rt          | j        d         ¦  «        S t          | |¦  «        ‚©Nr�   r   )Úcosr=   r	   ©rA   Úargindexs     r5   Úfdiffz	sin.fdiff&  s/   € Ø�qŠ=ˆ=Ý�t”y ”|Ñ$Ô$Ð$å$ T¨8Ñ4Ô4Ð4r7   c           
      ón  — ddl m} ddlm} |j        rS|t
          j        u rt
          j        S |j        rt
          j        S |t
          j	        t
          j
        fv r |dd¦  «        S |t
          j        u rt
          j        S t          ||¦  «        �r¢ddlm} |j        |j        }}t#          |dt$          z  z  ¦  «        }|t
          j
        ur||dz  t$          z  z
  }|t
          j	        ur||dz  t$          z  z
  } |||¦  «                              |t$          dz  t$          t)          dd¦  «        z  ¦  «        ¦  «        t
          j        urm |||¦  «                              |t$          t)          d	d¦  «        z  t$          t)          d
d¦  «        z  ¦  «        ¦  «        t
          j        ur |dd¦  «        S  |||¦  «                              |t$          dz  t$          t)          dd¦  «        z  ¦  «        ¦  «        t
          j        ur4 |t-          t/          |¦  «        t/          |¦  «        ¦  «        d¦  «        S  |||¦  «                              |t$          t)          d	d¦  «        z  t$          t)          dd¦  «        z  ¦  «        ¦  «        t
          j        ur4 |dt1          t/          |¦  «        t/          |¦  «        ¦  «        ¦  «        S  |t-          t/          |¦  «        t/          |¦  «        ¦  «        t1          t/          |¦  «        t/          |¦  «        ¦  «        ¦  «        S t          ||¦  «        r|                     | ¦  «        S |                     ¦   «         r | | ¦  «         S t7          |¦  «        }|�ddlm}	 t
          j         |	|¦  «        z  S t?          |¦  «        }
|
��|
j         rt
          j        S d|
z  j         r%|
j!        du rt
          j"        |
t
          j#        z
  z  S |
j$        s|
t$          z  }||k    r | |¦  «        S d S |
j$        r¨|
dz  }|dk    r | |dz  t$          z  ¦  «         S d|z  dk    r | d|z
  t$          z  ¦  «        S |
t)          d	d¦  «        z   dz  t$          z  }tK          |¦  «        }t          |tJ          ¦  «        s|S |
t$          z  |k    r | |
t$          z  ¦  «        S d S |j&        r]tO          |¦  «        \  }}|rI|t$          z  }t/          |¦  «        tK          |¦  «        z  tK          |¦  «        t/          |¦  «        z  z   S |j        rt
          j        S t          |tP          ¦  «        r|j)        d         S t          |tT          ¦  «        r%|j)        d         }|tW          d|dz  z   ¦  «        z  S t          |tX          ¦  «        r%|j)        \  }}|tW          |dz  |dz  z   ¦  «        z  S t          |tZ          ¦  «        r"|j)        d         }tW          d|dz  z
  ¦  «        S t          |t\          ¦  «        r+|j)        d         }dtW          dd|dz  z  z   ¦  «        |z  z  S t          |t^          ¦  «        r|j)        d         }d|z  S t          |t`          ¦  «        r%|j)        d         }tW          dd|dz  z  z
  ¦  «        S d S )Nr   ©ÚAccumBounds©ÚSetExpréÿÿÿÿr�   ©Ú	FiniteSetrƒ   ru   rs   é   rx   )ÚsinhF)1Ú!sympy.calculus.accumulationboundsr±   Úsympy.sets.setexprr³   Ú	is_Numberr   ÚNaNr?   rV   ÚInfinityÚNegativeInfinityrp   r2   Úsympy.sets.setsr¶   ÚminÚmaxr%   r   Úintersectionr   ÚEmptySetr'   r¢   r(   Ú
_eval_funcÚcould_extract_minus_signr6   Ú%sympy.functions.elementary.hyperbolicr¸   r4   rG   rˆ   r‰   ÚNegativeOner‡   Úis_Rationalr«   r`   rŽ   Úasinr=   Úatanr&   Úatan2ÚacosÚacotÚacscÚasec)Úclsr    r±   r³   r¶   rÀ   rÁ   ÚdÚi_coeffr¸   rH   Únargr›   Úresultr�   Úys                   r5   Úevalzsin.eval,  sž  € àAÐAÐAÐAÐAÐAØ.Ð.Ð.Ð.Ð.Ð.ØŒ=ð 	*Ø•a”eˆ|ˆ|Ý”u�Ø”ð *Ý”v�Ø�œ¥QÔ%7Ð8Ð8Ð8Ø"�{ 2 qÑ)Ô)Ð)à•!Ô#Ð#Ð#Ý”5ˆLå�c˜;Ñ'Ô'ñ 	'Ø1Ð1Ð1Ð1Ð1Ð1Ø”w ¤�ˆCÝ�c˜1�R™4‘jÑ!Ô!ˆAØ�!Ô,Ð,Ð,Ø˜A˜a™C¥™F‘l�Ø�!œ*Ð$Ð$Ø˜A˜a™C¥™F‘l�Øˆ{˜3 Ñ$Ô$×1Ò1°)°)½B¸q¹DÅ"ÅXÈaÐQRÁ^Ä^ÑBSÑ2TÔ2TÑUÔUÝœ:ð&ð &à�K  SÑ)Ô)×6Ò6°y°yÅÅHÈQÐPQÁNÄNÑARÝ�8 A q™>œ>Ñ)ñ8+ô 8+ñ ,ô ,Ý34´:ð>ð >à"�{ 2 qÑ)Ô)Ð)Ø�˜S #Ñ&Ô&×3Ò3°I°I½bÀ¹dÅBÅxÐPQÐSTÁ~Ä~ÑDUÑ4VÔ4VÑWÔWÝœ:ð&ð &à"�{¥3¥s¨3¡x¤xµ°S±´Ñ#:Ô#:¸AÑ>Ô>Ð>Ø�˜S #Ñ&Ô&×3Ò3°I°I½bÅÈ!ÈQÁÄÑ>OÕQSÕT\Ð]^Ð`aÑTbÔTbÑQbÑ4cÔ4cÑdÔdÝ œzð*ð *à"�{ 2¥s­3¨s©8¬8µS¸±X´XÑ'>Ô'>Ñ?Ô?Ð?à"�{¥3¥s¨3¡x¤xµ°S±´Ñ#:Ô#:Ý #¥C¨¡H¤H­c°#©h¬hÑ 7Ô 7ñ9ô 9ð 9å˜˜WÑ%Ô%ð 	'Ø—>’> #Ñ&Ô&Ð&à×'Ò'Ñ)Ô)ð 	Ø�C˜˜‘I”I�:Ðå0°Ñ5Ô5ˆØÐØBÐBÐBÐBÐBÐBÝ”? 4 4¨¡=¤=Ñ0Ð0å˜S‘>”>ˆØÑØÔ"ð Ý”v�à�(‘
Ô&ð >ð Ô# uÐ,Ð,Ýœ=¨8µa´fÑ+<Ñ=Ð=àÔ'ð Ø¥‘{�Ø˜3’;�;Ø˜3˜t™9œ9Ð$Ø�tð Ô#ð Ø˜q‘L�Ø�q’5�5Ø˜C  Q¡­¡
™OœOÐ+Ð+Ø�Q‘3˜’7�7Ø˜3  A¡¥r™z™?œ?Ð*Ø!¥H¨Q°¡N¤NÑ2°aÑ7½Ñ;�Ý˜T™œ�Ý! &­#Ñ.Ô.ð "Ø!�MØ�B‘; #Ò%Ð%Ø˜3˜x­™{Ñ+Ô+Ð+Ø�tàŒ:ð 	5Ý˜sÑ#Ô#‰DˆAˆqØð 5Ø•b‘D�Ý˜1‘v”v�c !™fœf‘}¥s¨1¡v¤v­c°!©f¬f¡}Ñ4Ð4àŒ;ð 	Ý”6ˆMå�c�4Ñ Ô ð 	Ø”8˜A”;Ðå�c�4Ñ Ô ð 	$Ø”˜”ˆAØ•T˜!˜a ™d™(‘^”^Ñ#Ð#å�c�5Ñ!Ô!ð 	'Ø”8‰DˆAˆqØ•T˜!˜Q™$  A¡™+Ñ&Ô&Ñ&Ð&å�c�4Ñ Ô ð 	"Ø”˜”ˆAÝ˜˜A˜q™D™‘>”>Ð!å�c�4Ñ Ô ð 	*Ø”˜”ˆAØ•d˜1˜q  A¡™v™:Ñ&Ô& qÑ(Ñ)Ð)å�c�4Ñ Ô ð 	Ø”˜”ˆAØ�Q‘3ˆJå�c�4Ñ Ô ð 	$Ø”˜”ˆAÝ˜˜A˜a ™d™F™
Ñ#Ô#Ð#ð	$ð 	$r7   c                 ó   — | dk     s	| dz  dk    rt           j        S t          |¦  «        }t          |¦  «        dk    r|d         }| |dz  z  | | dz
  z  z  S t           j        | dz  z  || z  z  t          | ¦  «        z  S ©Nr   rƒ   éþÿÿÿr�   ©r   rV   r   ÚlenrÇ   r   ©Únr›   Úprevious_termsrœ   s       r5   Útaylor_termzsin.taylor_term¡  óŠ   € ð ˆqŠ5ˆ5�A˜‘E˜Q’J�JÝ”6ˆMå˜‘
”
ˆAå�>Ñ"Ô" QÒ&Ð&Ø" 2Ô&�Ø�r˜!˜Q™$‘w  1 q¡5¡	Ñ*Ð*å”} q¨!¡tÑ,¨Q°©TÑ1µ)¸A±,´,Ñ>Ð>r7   r   c                 ó8  — | j         d         }|�#|                     t          |¦  «        |¦  «        }|                     |d¦  «                             t          j        t          j        ¦  «        rt          d| z  ¦  «        ‚t          j	        | ||||¬¦  «        S ©Nr   zCannot expand %s around 0)rÝ   ÚlogxÚcdir©
r=   Úsubsr#   r\   r   r¼   rp   r
   r   Ú_eval_nseries©rA   r›   rÝ   rã   rä   r    s         r5   rç   zsin._eval_nseries¯  ó†   € ØŒi˜ŒlˆØÐØ—(’(�3˜q™6œ6 4Ñ(Ô(ˆCØ�8Š8�A�q‰>Œ>×Ò�aœe¥QÔ%6Ñ7Ô7ð 	BÝÐ7¸4Ñ@ÑAÔAÐAÝÔ% d¨A°¸ÀDÐIÑIÔIÐIr7   c                 ó  — ddl m} t          j        }t	          |t
          |f¦  «        r8|                     |j        d         ¦  «                             t          ¦  «        }t          ||z  ¦  «        t          | |z  ¦  «        z
  d|z  z  S ©Nr   ©ÚHyperbolicFunctionrƒ   ©
rÆ   rí   r   r4   r2   r9   r<   r=   Úrewriter$   )rA   r    Úkwargsrí   ÚIs        r5   Ú_eval_rewrite_as_expzsin._eval_rewrite_as_exp·  sƒ   € ØLÐLÐLÐLÐLÐLÝŒOˆÝ�cÕ1Ð3EÐFÑGÔGð 	5Ø—(’(˜3œ8 Aœ;Ñ'Ô'×/Ò/µÑ4Ô4ˆCÝ�C˜‘E‘
”
�S #  a¡™[œ[Ñ(¨1¨Q©3Ñ/Ð/r7   c                 ó’   — t          |t          ¦  «        r1t          j        }|j        d         }||| z  z  dz  |||z  z  dz  z
  S d S ©Nr   rƒ   ©r2   r#   r   r4   r=   ©rA   r    rð   rñ   r›   s        r5   Ú_eval_rewrite_as_Powzsin._eval_rewrite_as_Pow¾  sU   € Ý�c�3ÑÔð 	)Ý”ˆAØ”˜”ˆAØ�Q˜˜‘U‘7˜1‘9˜q  A¡™v q™yÑ(Ð(ð	)ð 	)r7   c                 ó:   — t          |t          dz  z
  d¬¦  «        S ©Nrƒ   F©Úevaluate©r«   r   ©rA   r    rð   s      r5   Ú_eval_rewrite_as_coszsin._eval_rewrite_as_cosÄ  ó   € Ý�3�˜A™‘:¨Ð.Ñ.Ô.Ð.r7   c                 óV   — t          t          j        |z  ¦  «        }d|z  d|dz  z   z  S ©Nrƒ   r�   ©Útanr   r‡   ©rA   r    rð   Útan_halfs       r5   Ú_eval_rewrite_as_tanzsin._eval_rewrite_as_tanÇ  s*   € Ý•q”v˜c‘z‘?”?ˆØ�‰z˜1˜x¨™{™?Ñ+Ð+r7   c                 ó`   — t          |¦  «        t          |¦  «        z  t          |¦  «        z  S rj   ©r¢   r«   rý   s      r5   Ú_eval_rewrite_as_sincoszsin._eval_rewrite_as_sincosË  ó$   € Ý�3‰xŒx�˜C™œÑ ¥ S¡¤Ñ)Ð)r7   c                 ó  — t          t          j        |z  ¦  «        }t          dt	          t          t          |¦  «        d¦  «        t          t          |t          ¦  «        d¦  «        ¦  «        fd|z  d|dz  z   z  df¦  «        S )Nr   rƒ   r�   T©	Úcotr   r‡   r)   r-   r   r!   r   r   ©rA   r    rð   Úcot_halfs       r5   Ú_eval_rewrite_as_cotzsin._eval_rewrite_as_cotÎ  so   € Ý•q”v˜c‘z‘?”?ˆÝ˜!�S¥¥B s¡G¤G¨Q¡¤µµC¸½R±L´LÀ!Ñ1DÔ1DÑEÔEÐFØ˜H™* a¨(°A©+¡oÑ6¸Ð=ñ?ô ?ð 	?r7   c                 óJ   —   | j         t          fi |¤Žj         t          fi |¤ŽS rj   )rï   r«   Úpowrý   s      r5   Ú_eval_rewrite_as_powzsin._eval_rewrite_as_powÓ  s1   € Ø2ˆ|ˆtŒ|�CÐ*Ð* 6Ð*Ð*Ô2µ3ÐAÐA¸&ÐAÐAÐAr7   c                 óJ   —   | j         t          fi |¤Žj         t          fi |¤ŽS rj   )rï   r«   r&   rý   s      r5   Ú_eval_rewrite_as_sqrtzsin._eval_rewrite_as_sqrtÖ  s1   € Ø2ˆ|ˆtŒ|�CÐ*Ð* 6Ð*Ð*Ô2µ4ÐBÐB¸6ÐBÐBÐBr7   c                 ó&   — dt          |¦  «        z  S ©Nr�   ©Úcscrý   s      r5   Ú_eval_rewrite_as_csczsin._eval_rewrite_as_cscÙ  ó   € Ø•�S‘”‰zÐr7   c                 ó@   — dt          |t          dz  z
  d¬¦  «        z  S )Nr�   rƒ   Frú   ©Úsecr   rý   s      r5   Ú_eval_rewrite_as_seczsin._eval_rewrite_as_secÜ  s"   € Ø•�S�2˜a™4‘Z¨%Ð0Ñ0Ô0Ñ0Ð0r7   c                 ó&   — |t          |¦  «        z  S rj   )Úsincrý   s      r5   Ú_eval_rewrite_as_sinczsin._eval_rewrite_as_sincß  s   € Ø•4˜‘9”9‰}Ðr7   c                 óp   — ddl m} t          t          |z  dz  ¦  «         |t          j        |¦  «        z  S )Nr   ©Úbesseljrƒ   ©Úsympy.functions.special.besselr%  r&   r   r   r‡   ©rA   r    rð   r%  s       r5   Ú_eval_rewrite_as_besseljzsin._eval_rewrite_as_besseljâ  s;   € Ø:Ð:Ð:Ð:Ð:Ð:Ý•B�s‘F˜1‘H‰~Œ~˜g˜g¥a¤f¨cÑ2Ô2Ñ2Ð2r7   c                 óf   — |                       | j        d                              ¦   «         ¦  «        S ©Nr   ©r<   r=   Ú	conjugate©rA   s    r5   Ú_eval_conjugatezsin._eval_conjugateæ  ó&   € Ø�yŠy˜œ 1œ×/Ò/Ñ1Ô1Ñ2Ô2Ð2r7   Tc                 ó¢   — ddl m}m}  | j        dd|i|¤Ž\  }}t	          |¦  «         ||¦  «        z  t          |¦  «         ||¦  «        z  fS ©Nr   ©Úcoshr¸   rK   rL   )rÆ   r4  r¸   rW   r¢   r«   ©rA   rK   rN   r4  r¸   r"   r!   s          r5   rM   zsin.as_real_imagé  sl   € ØDÐDÐDÐDÐDÐDÐDÐDØ#�Ô#Ð7Ð7¨Ð7°Ð7Ð7‰ˆˆBÝ�B‘”˜˜˜R™œÑ ¥# b¡'¤'¨$¨$¨r©(¬(Ñ"2Ð3Ð3r7   c           	      ó  — ddl m}m} | j        d         }d }|j        r®|                     ¦   «         \  }}t          |d¬¦  «                             ¦   «         }t          |d¬¦  «                             ¦   «         }t          |d¬¦  «                             ¦   «         }	t          |d¬¦  «                             ¦   «         }
||
z  ||	z  z   S |j	        r§| 
                    d¬¦  «        \  }}|j        r‡|j        r/t          j        |dz
  dz  z   ||t          |¦  «        ¦  «        z  S t          t          j        |dz  dz
  z  t          |¦  «        z   ||dz
  t          |¦  «        ¦  «        z  d¬	¦  «        S t          |¦  «        S )
Nr   )Ú
chebyshevtÚ
chebyshevuFrú   T©Úrationalr�   rƒ   )rK   )Ú#sympy.functions.special.polynomialsr7  r8  r=   r`   Úas_two_termsr¢   Ú_eval_expand_trigr«   r]   r”   Ú
is_IntegerÚis_oddr   rÇ   r   )rA   rN   r7  r8  r    r›   rÕ   ÚsxÚsyr™   ÚcyrÝ   s               r5   r=  zsin._eval_expand_trigî  s¡  € ØNÐNÐNÐNÐNÐNÐNÐNØŒi˜ŒlˆØˆØŒ:ð 	Mà×#Ò#Ñ%Ô%‰DˆAˆqÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBØ�b‘5˜2˜b™5‘=Ð ØŒZð 
	MØ×#Ò#¨TÐ#Ñ2Ô2‰DˆAˆqØŒ|ð Mð ”8ð MÝœ=¨A°©E°1©9Ñ5°j°jÀÅCÈÁFÄFÑ6KÔ6KÑKÐKå%¥a¤m°a¸±c¸A±gÑ&>½sÀ1¹v¼vÑ&EØ&0 j°°Q±½¸A¹¼Ñ&?Ô&?ñ'@ØFKðMñ Mô Mð Må�3‰xŒxˆr7   c                 óþ  — ddl m} | j        d         }|                     |d¦  «                             ¦   «         }|t
          z  }|j        r2||t
          z  z
                       |¦  «        }t          j	        |z  |z  S |t          j
        u r.|                     |dt          |¦  «        j        rdnd¬¦  «        }|t          j        t          j        fv r |dd¦  «        S |j        r|                      |¦  «        n| S )Nr   r°   ú-ú+©Údirr´   r�   ©r¹   r±   r=   ræ   Úcancelr   rˆ   Úas_leading_termr   rÇ   rp   Úlimitr"   Úis_negativer½   r¾   Ú	is_finiter<   ©	rA   r›   rã   rä   r±   r    Úx0rÝ   Últs	            r5   Ú_eval_as_leading_termzsin._eval_as_leading_term  sõ   € ØAÐAÐAÐAÐAÐAØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ�r‰EˆØŒ<ð 	)Ø˜�"™‘*×-Ò-¨aÑ0Ô0ˆBÝ”M 1Ñ$ bÑ(Ð(Ø•Ô"Ð"Ð"Ø—’˜1˜a­B¨t©H¬HÔ,@Ð%I S SÀc�ÑJÔJˆBØ•!”*�aÔ0Ð1Ð1Ð1Ø�;˜r 1Ñ%Ô%Ð%Ø "¤Ð6ˆt�yŠy˜‰}Œ}ˆ}°$Ð6r7   c                 ó.   — | j         d         j        rdS d S ©Nr   T©r=   rT   r.  s    r5   Ú_eval_is_extended_realzsin._eval_is_extended_real  ó"   € ØŒ9�QŒ<Ô(ð 	Ø�4ð	ð 	r7   c                 ó2   — | j         d         }|j        rdS d S rS  rT  ©rA   r    s     r5   Ú_eval_is_finitezsin._eval_is_finite  s'   € ØŒi˜ŒlˆØÔð 	Ø�4ð	ð 	r7   c                 ó\   — t          | j        d         ¦  «        \  }}|j        r|j        S d S r+  ©rŽ   r=   r?   rˆ   ©rA   ÚrestÚpi_mults      r5   Ú_eval_is_zerozsin._eval_is_zero  ó6   € Ý# D¤I¨a¤LÑ1Ô1‰ˆˆgØŒ<ð 	&ØÔ%Ð%ð	&ð 	&r7   c                 óR   — | j         d         j        s| j         d         j        rdS d S rS  ©r=   rT   Ú
is_complexr.  s    r5   Ú_eval_is_complexzsin._eval_is_complex#  s3   € ØŒ9�QŒ<Ô(ð 	Ø”9˜Q”<Ô*ð	à�4ð	ð 	r7   rj   ©r�   ©r   ri   r+  ) rk   rl   rm   rn   r§   r®   ÚclassmethodrÖ   Ústaticmethodr   rß   rç   rò   r÷   rþ   r  r	  r  r  r  r  r  r"  r)  r/  rM   r=  rQ  rU  rY  r_  rd  rL   r7   r5   r¢   r¢   ó   sß  € € € € € ð-ð -ð^*ð *ð *ð *ð5ð 5ð 5ð 5ð ðr$ð r$ñ „[ðr$ðh Øð
?ð 
?ñ „Wñ „\ð
?ðJð Jð Jð Jð0ð 0ð 0ð)ð )ð )ð/ð /ð /ð,ð ,ð ,ð*ð *ð *ð?ð ?ð ?ð
Bð Bð BðCð Cð Cðð ð ð1ð 1ð 1ðð ð ð3ð 3ð 3ð3ð 3ð 3ð4ð 4ð 4ð 4ð
ð ð ð27ð 7ð 7ð 7ðð ð ðð ð ð
&ð &ð &ð
ð ð ð ð r7   r¢   c                   óâ   — e Zd ZdZdd„Zd d„Zed„ ¦   «         Zee	d„ ¦   «         ¦   «         Z
d!d	„Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zdefd„Zd„ Zd„ Zd„ Zd„ Zd"d„Zd„ Zd#d„Zd„ Zd„ Zd„ Zd„ ZdS )$r«   aþ  
    The cosine function.

    Returns the cosine of x (measured in radians).

    Explanation
    ===========

    See :func:`sin` for notes about automatic evaluation.

    Examples
    ========

    >>> from sympy import cos, pi
    >>> from sympy.abc import x
    >>> cos(x**2).diff(x)
    -2*x*sin(x**2)
    >>> cos(1).diff(x)
    0
    >>> cos(pi)
    -1
    >>> cos(pi/2)
    0
    >>> cos(2*pi/3)
    -1/2
    >>> cos(pi/12)
    sqrt(2)/4 + sqrt(6)/4

    See Also
    ========

    sin, csc, sec, tan, cot
    asin, acsc, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.14
    .. [3] https://functions.wolfram.com/ElementaryFunctions/Cos

    Nc                 ó>   — |                       dt          z  |¦  «        S r¤   r¥   r¦   s     r5   r§   z
cos.periodU  r¨   r7   r�   c                 ód   — |dk    rt          | j        d         ¦  «         S t          | |¦  «        ‚rª   )r¢   r=   r	   r¬   s     r5   r®   z	cos.fdiffX  s2   € Ø�qŠ=ˆ=Ý˜œ	 !œÑ%Ô%Ð%Ð%å$ T¨8Ñ4Ô4Ð4r7   c                 ó|
  — ddl m} ddlm} ddlm} |j        rS|t          j        u rt          j        S |j	        rt          j
        S |t          j        t          j        fv r |dd¦  «        S |t          j        u rt          j        S t          ||¦  «        rt          |t           dz  z   ¦  «        S t          ||¦  «        r|                     | ¦  «        S |j        r|j        du r |dd¦  «        S |                     ¦   «         r | | ¦  «        S t+          |¦  «        }|�dd	lm}  ||¦  «        S t1          |¦  «        }|��|j        rt          j        |z  S d|z  j        r|j        du rt          j        S |j        s|t           z  }||k    r | |¦  «        S d S |j        �r±|j        }	|j        d|	z  z  }
|
|	k    r|dz
  t           z  } | |¦  «         S d|
z  |	k    rd|z
  t           z  } | |¦  «         S tA          ¦   «         }|	|v rv||	         \  }}|
t           z  |z  |
t           z  |z  }} | |¦  «         | |¦  «        }}d ||fv rd S ||z   | t           dz  |z
  ¦  «         | t           dz  |z
  ¦  «        z  z   S |	d
k    rd S t          j!        tE          d¦  «        dz   dz  dœ}|	|v r0||j                 } ||j        |¦  «         #                    ¦   «         S d|	dz  k    rm|dz  t           z  } | |¦  «        }d |k    rd S d|z  dz   dz  }d|dk     rdndtI          tK          |¦  «        ¦  «        z  z  }|tE          d|z   dz  ¦  «        z  S d S |j&        r]tO          |¦  «        \  }}|rI|t           z  }tQ          |¦  «        tQ          |¦  «        z  t          |¦  «        t          |¦  «        z  z
  S |j	        rt          j
        S t          |tR          ¦  «        r|j*        d         S t          |tV          ¦  «        r%|j*        d         }dtE          d|dz  z   ¦  «        z  S t          |tX          ¦  «        r%|j*        \  }}|tE          |dz  |dz  z   ¦  «        z  S t          |tZ          ¦  «        r"|j*        d         }tE          d|dz  z
  ¦  «        S t          |t\          ¦  «        r(|j*        d         }dtE          dd|dz  z  z   ¦  «        z  S t          |t^          ¦  «        r%|j*        d         }tE          dd|dz  z  z
  ¦  «        S t          |t`          ¦  «        r|j*        d         }d|z  S d S )Nr   ©r7  r°   r²   r´   r�   rƒ   F)r4  r}   ru   rt   )rs   ru   )1r;  r7  r¹   r±   rº   r³   r»   r   r¼   r?   r“   r½   r¾   rp   r2   r¢   r   rÄ   rT   rM  rÅ   r6   rÆ   r4  rG   rˆ   rÇ   r‰   rV   rÈ   Úqrœ   r�   r‡   r&   rU   r–   r_   r`   rŽ   r«   rÌ   r=   rÊ   rË   rÉ   rÍ   rÎ   rÏ   )rÐ   r    r7  r±   r³   rÒ   r4  rH   rÓ   rn  rœ   Útable2rg   ÚbÚnvalaÚnvalbÚcst_table_someÚctsÚnvalr›   Úsign_cosr�   rÕ   s                          r5   rÖ   zcos.eval^  sÅ  € àBÐBÐBÐBÐBÐBØAÐAÐAÐAÐAÐAØ.Ð.Ð.Ð.Ð.Ð.ØŒ=ð 
	*Ø•a”eˆ|ˆ|Ý”u�Ø”ð *Ý”u�Ø�œ¥QÔ%7Ð8Ð8Ð8ð
 #�{ 2 qÑ)Ô)Ð)à•!Ô#Ð#Ð#Ý”5ˆLå�c˜;Ñ'Ô'ð 	'Ý�s�R ™T‘z‘?”?Ð"Ý˜˜WÑ%Ô%ð 	'Ø—>’> #Ñ&Ô&Ð&àÔð 	& C¤M°UÐ$:Ð$:Ø�;˜r 1Ñ%Ô%Ð%à×'Ò'Ñ)Ô)ð 	Ø�3˜�t‘9”9Ðå0°Ñ5Ô5ˆØÐØBÐBÐBÐBÐBÐBØ�4˜‘=”=Ð å˜S‘>”>ˆØÑØÔ"ð 1Ýœ¨Ñ0Ð0à�(‘
Ô&ð "ð Ô# uÐ,Ð,Ýœ6�MàÔ'ð Ø¥‘{�Ø˜3’;�;Ø˜3˜t™9œ9Ð$Ø�tð Ô#ñ )9Ø”J�Ø”J ! A¡#Ñ&�Ø�q’5�5Ø$ q™L­"Ñ,�DØ˜C ™IœI˜:Ð%Ø�Q‘3˜’7�7Ø ™L­"Ñ,�DØ˜C ™IœI˜:Ð%õ !™œ�Ø˜�;�;Ø! !œ9‘D�A�qØ�R™4 ™6 1¥R¡4¨¡6�q�AØ#& 3 q¡6¤6¨3¨3¨q©6¬6˜5�EØ  u˜~Ð-Ð-Ø#˜tØ  ™;¨¨­R°©T°A©X©¬°s°s½2¸a¹4À!¹8±}´}Ñ)DÑDÐDà�r’6�6Ø˜4õ ”vÝ˜Q™œ !™ qÑ(ð"ð "�ð ˜Ð&Ð&Ø(¨¬Ô4�CØ%˜: h¤j°#Ñ6Ô6×=Ò=Ñ?Ô?Ð?à˜˜A™’:�:Ø$ Q™J­™?�DØ˜3˜t™9œ9�DØ˜t’|�|Ø#˜tØ˜8™ a™¨Ñ*�AØ "¨Q°ªU¨U r r¸½3½sÀ1¹v¼v¹;¼;Ñ&FÑG�HØ#¥D¨1¨t©8°Q©,Ñ$8Ô$8Ñ8Ð8Ø�4àŒ:ð 	5Ý˜sÑ#Ô#‰DˆAˆqØð 5Ø•b‘D�Ý˜1‘v”v�c !™fœf‘}¥s¨1¡v¤v­c°!©f¬f¡}Ñ4Ð4àŒ;ð 	Ý”5ˆLå�c�4Ñ Ô ð 	Ø”8˜A”;Ðå�c�4Ñ Ô ð 	$Ø”˜”ˆAØ•T˜!˜a ™d™(‘^”^Ñ#Ð#å�c�5Ñ!Ô!ð 	'Ø”8‰DˆAˆqØ•T˜!˜Q™$  A¡™+Ñ&Ô&Ñ&Ð&å�c�4Ñ Ô ð 	$Ø”˜”ˆAÝ˜˜A ™F™
Ñ#Ô#Ð#å�c�4Ñ Ô ð 	&Ø”˜”ˆAØ•T˜!˜a  1¡™f™*Ñ%Ô%Ñ%Ð%å�c�4Ñ Ô ð 	$Ø”˜”ˆAÝ˜˜A˜a ™d™F™
Ñ#Ô#Ð#å�c�4Ñ Ô ð 	Ø”˜”ˆAØ�Q‘3ˆJð	ð 	r7   c                 ó   — | dk     s	| dz  dk    rt           j        S t          |¦  «        }t          |¦  «        dk    r|d         }| |dz  z  | | dz
  z  z  S t           j        | dz  z  || z  z  t          | ¦  «        z  S )Nr   rƒ   r�   rÙ   rÚ   rÜ   s       r5   rß   zcos.taylor_termê  rà   r7   r   c                 ó8  — | j         d         }|�#|                     t          |¦  «        |¦  «        }|                     |d¦  «                             t          j        t          j        ¦  «        rt          d| z  ¦  «        ‚t          j	        | ||||¬¦  «        S râ   rå   rè   s         r5   rç   zcos._eval_nseriesø  ré   r7   c                 ó  — t           j        }ddlm} t	          |t
          |f¦  «        r1 |                     |j        d         ¦  «        j        t          fi |¤Ž}t          ||z  ¦  «        t          | |z  ¦  «        z   dz  S rë   ©
r   r4   rÆ   rí   r2   r9   r<   r=   rï   r$   )rA   r    rð   rñ   rí   s        r5   rò   zcos._eval_rewrite_as_exp   s†   € ÝŒOˆØLÐLÐLÐLÐLÐLÝ�cÕ1Ð3EÐFÑGÔGð 	?Ø/�#—(’(˜3œ8 Aœ;Ñ'Ô'Ô/µÐ>Ð>°vÐ>Ð>ˆCÝ�C˜‘E‘
”
�S #  a¡™[œ[Ñ(¨!Ñ+Ð+r7   c                 ó†   — t          |t          ¦  «        r+t          j        }|j        d         }||z  dz  || z  dz  z   S d S rô   rõ   rö   s        r5   r÷   zcos._eval_rewrite_as_Pow  sM   € Ý�c�3ÑÔð 	$Ý”ˆAØ”˜”ˆAØ�a‘4˜‘6˜A ˜r™E !™GÑ#Ð#ð	$ð 	$r7   c                 ó:   — t          |t          dz  z   d¬¦  «        S rù   )r¢   r   rý   s      r5   Ú_eval_rewrite_as_sinzcos._eval_rewrite_as_sin  rÿ   r7   c                 óV   — t          t          j        |z  ¦  «        dz  }d|z
  d|z   z  S r  r  r  s       r5   r  zcos._eval_rewrite_as_tan  s+   € Ý•q”v˜c‘z‘?”? AÑ%ˆØ�H‘˜q 8™|Ñ,Ð,r7   c                 ó`   — t          |¦  «        t          |¦  «        z  t          |¦  «        z  S rj   r  rý   s      r5   r	  zcos._eval_rewrite_as_sincos  r
  r7   c                 ó  — t          t          j        |z  ¦  «        dz  }t          dt	          t          t          |¦  «        d¦  «        t          t          |dt          z  ¦  «        d¦  «        ¦  «        f|dz
  |dz   z  df¦  «        S )Nrƒ   r�   r   Tr  r  s       r5   r  zcos._eval_rewrite_as_cot  sw   € Ý•q”v˜c‘z‘?”? AÑ%ˆÝ˜!�S¥¥B s¡G¤G¨Q¡¤µµC¸¸Q½r¹T±N´NÀAÑ1FÔ1FÑGÔGÐHØ# a™<¨(°Q©,Ñ7¸Ð>ñ@ô @ð 	@r7   c                 ó   —  | j         |fi |¤ŽS rj   )r  rý   s      r5   r  zcos._eval_rewrite_as_pow  s   € Ø)ˆtÔ)¨#Ð8Ð8°Ð8Ð8Ð8r7   r    c                 ó8  ‡— ddl m} t          |¦  «        Š‰€d S t          ‰t          ¦  «        rd S t          ‰t
          ¦  «        sd S t          ¦   «         }‰j        |v rE |‰j         |‰j                 ¦   «         ¦  «        }‰j        dk     r| 	                    ¦   «         }|S ‰j        dz  sc‰dz  } t          |t          z  ¦  «        j        t          fi |¤Ž}|dz   dz  }t          |¦  «        dz  rdnd}	|	t          d|z   dz  ¦  «        z  S t          ‰j        ¦  «        }
|
r|
}n0d„ t!          ‰j        ¦  «                             ¦   «         D ¦   «         }t%          |Ž }ˆfd„t'          ||¦  «        D ¦   «         }d	„ t'          |t)          d
¦  «        ¦  «        D ¦   «         }t          t+          d„ |D ¦   «         ¦  «        ¦  «                             ¦   «                              |¦  «        }|
rt1          |
¦  «        dk    r|S  |j        t          fi |¤ŽS )Nr   rm  i  rƒ   r�   r´   c                 ó   — g | ]
\  }}||z  ‘ŒS rL   rL   )Ú.0rp  Úes      r5   ú
<listcomp>z-cos._eval_rewrite_as_sqrt.<locals>.<listcomp>?  s    € ÐEÐEÐE™t˜q !�a˜‘dÐEÐEÐEr7   c              3   óN   •K  — | ]\  }}‰j         t          ||¦  «        z  V — Œ d S rj   )rœ   r   )r„  rÝ   rÑ   rH   s      €r5   ú	<genexpr>z,cos._eval_rewrite_as_sqrt.<locals>.<genexpr>B  s6   øè è € ÐMÐM±$°!°Q�(”*�x¨¨1™~œ~Ñ-ÐMÐMÐMÐMÐMÐMr7   c                 ó>   — g | ]}|d          |d         t           z  f‘ŒS )r�   r   )r   ©r„  r›   s     r5   r†  z-cos._eval_rewrite_as_sqrt.<locals>.<listcomp>C  s(   € ÐIÐIÐI ˆa�Œd�A�a”D�‘Gˆ_ÐIÐIÐIr7   Úzc              3   ó&   K  — | ]}|d          V — ŒdS )r   NrL   rŠ  s     r5   rˆ  z,cos._eval_rewrite_as_sqrt.<locals>.<genexpr>D  s&   è è € Ð'Ð' �q˜”tÐ'Ð'Ð'Ð'Ð'Ð'r7   )r;  r7  rG   r2   r   r   r*   rn  rœ   rU   r«   r   rï   r&   r–   r,   r.   Úitemsr+   Úzipr0   Úsumr=  ræ   rÛ   )rA   r    rð   r7  rs  ÚrvÚpico2ru  r›   rv  ÚFCÚdenomsÚapartÚdecompÚXÚpclsrH   s                   @r5   r  zcos._eval_rewrite_as_sqrt  s:  ø€ ØBÐBÐBÐBÐBÐBå˜S‘>”>ˆØÐØ�4å�h¥Ñ(Ô(ð 	Ø�4å˜(¥HÑ-Ô-ð 	Ø�4å"™œˆàŒ:˜Ð'Ð'Ø�˜HœJÐ(B¨°x´zÔ(BÑ(DÔ(DÑEÔEˆBØŒz˜CÒÐØ—Y’Y‘[”[�ØˆIàŒz˜A‰~ð 	3Ø˜q‘LˆEØ*•3�u�r‘z‘?”?Ô*­4Ð:Ð:°6Ð:Ð:ˆDØ˜‘˜a‘ˆAÝ  ™VœV a™ZÐ.�r�r¨QˆHØ�d A¨¡H°¡>Ñ2Ô2Ñ2Ð2å˜8œ:Ñ&Ô&ˆØð 	FØˆFˆFàEÐE¥y°´Ñ'<Ô'<×'BÒ'BÑ'DÔ'DÐEÑEÔEˆFå˜6Ð"ˆØMÐMÐMÐM½#¸eÀVÑ:LÔ:LÐMÑMÔMˆØIÐI¥c¨&Õ2BÀ3Ñ2GÔ2GÑ&HÔ&HÐIÑIÔIˆÝ•3Ð'Ð' QÐ'Ñ'Ô'Ñ'Ô'Ñ(Ô(×:Ò:Ñ<Ô<×AÒAÀ!ÑDÔDˆàð 	•S˜‘W”W ’\�\ØˆKØˆtŒ|�DÐ+Ð+ FÐ+Ð+Ð+r7   c                 ó&   — dt          |¦  «        z  S r  ©r  rý   s      r5   r  zcos._eval_rewrite_as_secJ  r  r7   c                 óH   — d t          |¦  «        j        t          fi |¤Žz  S r  )r  rï   r  rý   s      r5   r  zcos._eval_rewrite_as_cscM  ó)   € ØÐ!•�S‘”Ô!¥#Ð0Ð0¨Ð0Ð0Ñ0Ð0r7   c                 ó®   — ddl m} t          t          t          |z  dz  ¦  «         |t
          j         |¦  «        z  t          |d¦  «        fd¦  «        S )Nr   r$  rƒ   ©r�   T©r'  r%  r)   r&   r   r   r‡   r   r(  s       r5   r)  zcos._eval_rewrite_as_besseljP  s\   € Ø:Ð:Ð:Ð:Ð:Ð:ÝÝ•b˜‘f˜Q‘h‘”  ­¬¨°Ñ 5Ô 5Ñ5µr¸#¸q±z´zÐBØñô ð 	r7   c                 óf   — |                       | j        d                              ¦   «         ¦  «        S r+  r,  r.  s    r5   r/  zcos._eval_conjugateW  r0  r7   Tc                 ó¤   — ddl m}m}  | j        dd|i|¤Ž\  }}t	          |¦  «         ||¦  «        z  t          |¦  «          ||¦  «        z  fS r2  )rÆ   r4  r¸   rW   r«   r¢   r5  s          r5   rM   zcos.as_real_imagZ  sn   € ØDÐDÐDÐDÐDÐDÐDÐDØ#�Ô#Ð7Ð7¨Ð7°Ð7Ð7‰ˆˆBÝ�B‘”˜˜˜R™œÑ ¥3 r¡7¤7 (¨4¨4°©8¬8Ñ"3Ð4Ð4r7   c                 ó4  — ddl m} | j        d         }d }|j        r®|                     ¦   «         \  }}t          |d¬¦  «                             ¦   «         }t          |d¬¦  «                             ¦   «         }t          |d¬¦  «                             ¦   «         }t          |d¬¦  «                             ¦   «         }	||	z  ||z  z
  S |j        r9| 	                    d¬¦  «        \  }
}|
j
        r ||
t          |¦  «        ¦  «        S t          |¦  «        S )Nr   rm  Frú   Tr9  )r;  r7  r=   r`   r<  r¢   r=  r«   r]   r”   r>  )rA   rN   r7  r    r›   rÕ   r@  rA  r™   rB  r…   Útermss               r5   r=  zcos._eval_expand_trig_  s  € ØBÐBÐBÐBÐBÐBØŒi˜ŒlˆØˆØŒ:ð 
	5Ø×#Ò#Ñ%Ô%‰DˆAˆqÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBÝ�Q Ð'Ñ'Ô'×9Ò9Ñ;Ô;ˆBØ�b‘5˜2˜b™5‘=Ð ØŒZð 	5Ø×+Ò+°TÐ+Ñ:Ô:‰LˆE�5ØÔð 5Ø!�z %­¨U©¬Ñ4Ô4Ð4Ý�3‰xŒxˆr7   c                 ó*  — ddl m} | j        d         }|                     |d¦  «                             ¦   «         }|t
          dz  z   t
          z  }|j        r=||t
          z  z
  t
          dz  z                        |¦  «        }t          j	        |z  |z  S |t          j
        u r.|                     |dt          |¦  «        j        rdnd¬¦  «        }|t          j        t          j        fv r |dd¦  «        S |j        r|                      |¦  «        n| S )	Nr   r°   rƒ   rD  rE  rF  r´   r�   rH  rN  s	            r5   rQ  zcos._eval_as_leading_termp  s  € ØAÐAÐAÐAÐAÐAØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•"�Q‘$‰Y�‰NˆØŒ<ð 	)Ø˜�"™‘*�r !™tÑ#×4Ò4°QÑ7Ô7ˆBÝ”M 1Ñ$ bÑ(Ð(Ø•Ô"Ð"Ð"Ø—’˜1˜a­B¨t©H¬HÔ,@Ð%I S SÀc�ÑJÔJˆBØ•!”*�aÔ0Ð1Ð1Ð1Ø�;˜r 1Ñ%Ô%Ð%Ø "¤Ð6ˆt�yŠy˜‰}Œ}ˆ}°$Ð6r7   c                 ó.   — | j         d         j        rdS d S rS  rT  r.  s    r5   rU  zcos._eval_is_extended_real~  rV  r7   c                 ó2   — | j         d         }|j        rdS d S rS  rT  rX  s     r5   rY  zcos._eval_is_finite‚  s'   € ØŒi˜ŒlˆàÔð 	Ø�4ð	ð 	r7   c                 óR   — | j         d         j        s| j         d         j        rdS d S rS  rb  r.  s    r5   rd  zcos._eval_is_complexˆ  s3   € ØŒ9�QŒ<Ô(ð 	ØŒy˜Œ|Ô&ð	à�4ð	ð 	r7   c                 ó~   — t          | j        d         ¦  «        \  }}|j        r|r|t          j        z
  j        S d S d S r+  ©rŽ   r=   r?   r   r‡   rˆ   r\  s      r5   r_  zcos._eval_is_zero�  sN   € Ý# D¤I¨a¤LÑ1Ô1‰ˆˆgØŒ<ð 	1˜Gð 	1Ø�aœfÑ$Ô0Ð0ð	1ð 	1ð 	1ð 	1r7   rj   re  rf  ri   r+  ) rk   rl   rm   rn   r§   r®   rg  rÖ   rh  r   rß   rç   rò   r÷   r}  r  r	  r  r  r   r  r  r  r)  r/  rM   r=  rQ  rU  rY  rd  r_  rL   r7   r5   r«   r«   )  sÚ  € € € € € ð)ð )ðV*ð *ð *ð *ð5ð 5ð 5ð 5ð ðIð Iñ „[ðIðV Øð
?ð 
?ñ „Wñ „\ð
?ðJð Jð Jð Jð,ð ,ð ,ð$ð $ð $ð/ð /ð /ð-ð -ð -ð*ð *ð *ð@ð @ð @ð
9ð 9ð 9ð),¨ð ),ð ),ð ),ð ),ðVð ð ð1ð 1ð 1ðð ð ð3ð 3ð 3ð5ð 5ð 5ð 5ð
ð ð ð"7ð 7ð 7ð 7ðð ð ðð ð ðð ð ð
1ð 1ð 1ð 1ð 1r7   r«   c                   óê   — e Zd ZdZd d„Zd!d„Zd!d„Zed„ ¦   «         Ze	e
d„ ¦   «         ¦   «         Zd"d
„Zd„ Zd„ Zd#d„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd$d„Zd„ Zd„ Zd„ Zd„ Zd„ Z dS )%r  a¼  
    The tangent function.

    Returns the tangent of x (measured in radians).

    Explanation
    ===========

    See :class:`sin` for notes about automatic evaluation.

    Examples
    ========

    >>> from sympy import tan, pi
    >>> from sympy.abc import x
    >>> tan(x**2).diff(x)
    2*x*(tan(x**2)**2 + 1)
    >>> tan(1).diff(x)
    0
    >>> tan(pi/8).expand()
    -1 + sqrt(2)

    See Also
    ========

    sin, csc, cos, sec, cot
    asin, acsc, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.14
    .. [3] https://functions.wolfram.com/ElementaryFunctions/Tan

    Nc                 ó8   — |                       t          |¦  «        S rj   r¥   r¦   s     r5   r§   z
tan.period¹  ó   € Ø�|Š|�B Ñ'Ô'Ð'r7   r�   c                 óR   — |dk    rt           j        | dz  z   S t          | |¦  «        ‚©Nr�   rƒ   )r   r“   r	   r¬   s     r5   r®   z	tan.fdiff¼  s+   € Ø�qŠ=ˆ=Ý”5˜4 ™7‘?Ð"å$ T¨8Ñ4Ô4Ð4r7   c                 ó   — t           S ©z7
        Returns the inverse of this function.
        ©rÊ   r¬   s     r5   Úinverseztan.inverseÂ  ó	   € õ ˆr7   c           
      óž  — ddl m} |j        rg|t          j        u rt          j        S |j        rt          j        S |t          j        t          j        fv r  |t          j        t          j        ¦  «        S |t          j	        u rt          j        S t          ||¦  «        rî|j        |j        }}t          |t          z  ¦  «        }|t          j        ur||t          z  z
  }|t          j        ur||t          z  z
  }ddlm}  |||¦  «                              |t          dz  t          t%          dd¦  «        z  ¦  «        ¦  «        r  |t          j        t          j        ¦  «        S  |t'          |¦  «        t'          |¦  «        ¦  «        S |                     ¦   «         r | | ¦  «         S t+          |¦  «        }|�ddlm} t          j         ||¦  «        z  S t3          |d¦  «        }	|	���|	j        rt          j        S |	j        s|	t          z  }
|
|k    r | |
¦  «        S d S |	j        �rN|	j        }|	j        |z  }t=          ddt=          d¦  «        z  dz  z
  ¦  «        t=          ddt=          d¦  «        z  z
  ¦  «        t=          ddt=          d¦  «        z  dz  z   ¦  «        t=          ddt=          d¦  «        z  z   ¦  «        d	œ}|d
v r$d|z  |z  }|dk    rd|z
  }||          S ||         S |	j        dz  s}|	t          z  dz  }
t?          |
¦  «        t?          |
t          dz  z
  ¦  «        }}t          |t>          ¦  «        s2t          |t>          ¦  «        s|dk    rt          j	        S d|z  ||z  z
  S tA          ¦   «         }||v rM||         \  }} | |t          z  |z  ¦  «         | |t          z  |z  ¦  «        }}d ||fv rd S ||z
  d||z  z   z  S |	t          j!        z   dz  t          j!        z
  t          z  }
t?          |
¦  «        t?          |
t          dz  z
  ¦  «        }}t          |t>          ¦  «        s,t          |t>          ¦  «        s|dk    rt          j	        S ||z  S |
|k    r | |
¦  «        S |j"        rXtG          |¦  «        \  }}|rDt'          |t          z  ¦  «        }|t          j	        u rtI          |¦  «         S t'          |¦  «        S |j        rt          j        S t          |tJ          ¦  «        r|j&        d         S t          |tN          ¦  «        r|j&        \  }}||z  S t          |tP          ¦  «        r%|j&        d         }|t=          d|dz  z
  ¦  «        z  S t          |tR          ¦  «        r%|j&        d         }t=          d|dz  z
  ¦  «        |z  S t          |tT          ¦  «        r|j&        d         }d|z  S t          |tV          ¦  «        r+|j&        d         }dt=          dd|dz  z  z
  ¦  «        |z  z  S t          |tX          ¦  «        r(|j&        d         }t=          dd|dz  z  z
  ¦  «        |z  S d S )Nr   r°   rµ   rƒ   rs   )Útanhr�   ru   )r�   rƒ   rs   rt   ©ru   rw   rw   )-r¹   r±   r»   r   r¼   r?   rV   r½   r¾   rp   r2   rÀ   rÁ   r%   r   r¿   r¶   rÂ   r   r  rÅ   r6   rÆ   r´  r4   rG   rˆ   rÈ   rn  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´  rH   rÓ   rn  rœ   Útable10rÝ   ÚcresultÚsresultro  rg   rp  rq  rr  r›   r�   ÚtanmrÕ   s                             r5   rÖ   ztan.evalÈ  sM  € àAÐAÐAÐAÐAÐAØŒ=ð 	CØ•a”eˆ|ˆ|Ý”u�Ø”ð CÝ”v�Ø�œ¥QÔ%7Ð8Ð8Ð8Ø"�{¥1Ô#5µq´zÑBÔBÐBà•!Ô#Ð#Ð#Ý”5ˆLå�c˜;Ñ'Ô'ð 	7Ø”w ¤�ˆCÝ�c�"‘f‘”ˆAØ�!Ô,Ð,Ð,Ø˜A�b™D‘j�Ø�!œ*Ð$Ð$Ø˜A�b™D‘j�Ø1Ð1Ð1Ð1Ð1Ð1Øˆ{˜3 Ñ$Ô$×1Ò1°)°)½B¸q¹DÅ"ÅXÈaÐQRÁ^Ä^ÑBSÑ2TÔ2TÑUÔUð 7Ø"�{¥1Ô#5µq´zÑBÔBÐBà"�{¥3 s¡8¤8­S°©X¬XÑ6Ô6Ð6à×'Ò'Ñ)Ô)ð 	Ø�C˜˜‘I”I�:Ðå0°Ñ5Ô5ˆØÐØBÐBÐBÐBÐBÐBÝ”? 4 4¨¡=¤=Ñ0Ð0å˜S !Ñ$Ô$ˆØÑØÔ"ð Ý”v�àÔ'ð Ø¥‘{�Ø˜3’;�;Ø˜3˜t™9œ9Ð$Ø�tàÔ#ñ +%Ø”J�Ø”J ‘N�õ ˜A ¥$ q¡'¤'¡	¨!¡™OÑ,Ô,Ý˜A ¥$ q¡'¤'¡	™MÑ*Ô*Ý˜A ¥$ q¡'¤'¡	¨!¡™OÑ,Ô,Ý˜A ¥$ q¡'¤'¡	™MÑ*Ô*ð	ð �ð ˜�<�<Ø˜1™˜Q™�AØ˜1’u�uØ ™F˜Ø '¨¤
˜{Ð*à& qœzÐ)Ø”z A‘~ð ;Ø#¥B™; q™=�DÝ'*¨4¡y¤yµ#°d½RÀ¹T±kÑ2BÔ2B˜W�GÝ% g­sÑ3Ô3ð ;Ý$.¨w½Ñ$<Ô$<ð;à" aš<˜<Ý#$Ô#4Ð4Ø  ™y¨7°7©?Ñ:Ð:å ™œ�Ø˜�;�;Ø! !œ9‘D�A�qØ#& 3 q­¡t¨A¡v¡;¤;°°°Aµb±D¸±F±´˜5�EØ  u˜~Ð-Ð-Ø#˜tØ! E™M¨A°°e±©OÑ<Ð<Ø!¥A¤FÑ*¨aÑ/µ!´&Ñ8½"Ñ<�õ $' t¡9¤9­c°$½¸A¹±+Ñ.>Ô.>˜�Ý! '­3Ñ/Ô/ð -Ý *¨7µCÑ 8Ô 8ð-à !’|�|Ý Ô0Ð0Ø# G™OÐ,Ø˜3’;�;Ø˜3˜t™9œ9Ð$àŒ:ð 	"Ý˜sÑ#Ô#‰DˆAˆqØð "Ý˜1�R™4‘y”y�Ø�1Ô,Ð,Ð,Ý ™FœF˜7�Nå˜q™6œ6�MàŒ;ð 	Ý”6ˆMå�c�4Ñ Ô ð 	Ø”8˜A”;Ðå�c�5Ñ!Ô!ð 	Ø”8‰DˆAˆqØ�Q‘3ˆJå�c�4Ñ Ô ð 	$Ø”˜”ˆAØ•T˜!˜a ™d™(‘^”^Ñ#Ð#å�c�4Ñ Ô ð 	$Ø”˜”ˆAÝ˜˜A˜q™D™‘>”> !Ñ#Ð#å�c�4Ñ Ô ð 	Ø”˜”ˆAØ�Q‘3ˆJå�c�4Ñ Ô ð 	*Ø”˜”ˆAØ•d˜1˜q  A¡™v™:Ñ&Ô& qÑ(Ñ)Ð)å�c�4Ñ Ô ð 	&Ø”˜”ˆAÝ˜˜A˜a ™d™F™
Ñ#Ô# AÑ%Ð%ð	&ð 	&r7   c                 ó  — | dk     s	| dz  dk    rt           j        S t          |¦  «        }| dz
  dz  d| dz   z  }}t          | dz   ¦  «        }t	          | dz   ¦  «        }t           j        |z  |z  |dz
  z  |z  |z  || z  z  S ©Nr   rƒ   r�   )r   rV   r   r   r   rÇ   )rÝ   r›   rÞ   rg   rp  ÚBÚFs          r5   rß   ztan.taylor_termJ  s”   € ð ˆqŠ5ˆ5�A˜‘E˜Q’J�JÝ”6ˆMå˜‘
”
ˆAà˜‘U˜Q‘J  Q¨¡U¡ˆqˆAå˜!˜a™%Ñ Ô ˆAÝ˜!˜a™%Ñ Ô ˆAå”= !Ñ# AÑ% q¨1¡uÑ-¨aÑ/°Ñ1°!°Q±$Ñ6Ð6r7   r   c                 óü   — | j         d                              |d¦  «        dz  t          z  }|r7|j        r0|                      t
          ¦  «                             |||¬¦  «        S t          j        | |||¬¦  «        S )Nr   rƒ   ©rÝ   rã   )r=   rK  r   r>  rï   r«   rç   r   ©rA   r›   rÝ   rã   rä   rŸ   s         r5   rç   ztan._eval_nseriesY  s{   € ØŒI�aŒL×Ò˜q !Ñ$Ô$ QÑ&¥rÑ)ˆØð 	F�”ð 	FØ—<’<¥Ñ$Ô$×2Ò2°1¸ÀÐ2ÑEÔEÐEÝÔ% d¨A°¸Ð>Ñ>Ô>Ð>r7   c                 óš   — t          |t          ¦  «        r5t          j        }|j        d         }||| z  ||z  z
  z  || z  ||z  z   z  S d S r+  rõ   rö   s        r5   r÷   ztan._eval_rewrite_as_Pow_  s\   € Ý�c�3ÑÔð 	3Ý”ˆAØ”˜”ˆAØ�a˜!˜‘e˜a ™d‘lÑ# Q¨¨¡U¨Q°©T¡\Ñ2Ð2ð	3ð 	3r7   c                 óf   — |                       | j        d                              ¦   «         ¦  «        S r+  r,  r.  s    r5   r/  ztan._eval_conjugatee  r0  r7   Tc                 ó
  —  | j         dd|i|¤Ž\  }}|rOddlm}m} t	          d|z  ¦  «         |d|z  ¦  «        z   }t          d|z  ¦  «        |z   |d|z  ¦  «        |z  fS |                      |¦  «        t          j        fS ©NrK   r   r3  rƒ   rL   ©	rW   rÆ   r4  r¸   r«   r¢   r<   r   rV   ©rA   rK   rN   r"   r!   r4  r¸   Údenoms           r5   rM   ztan.as_real_imagh  s¤   € Ø#�Ô#Ð7Ð7¨Ð7°Ð7Ð7‰ˆˆBØð 	+ØHÐHÐHÐHÐHÐHÐHÐHÝ˜˜"™‘I”I   Q r¡T¡
¤
Ñ*ˆEÝ˜˜"™‘I”I˜e‘O T T¨!¨B©$¡Z¤Z°Ñ%5Ð6Ð6à—I’I˜b‘M”M¥1¤6Ð*Ð*r7   c                 ó¶  ‡— | j         d         }d }|j        �r
t          |j         ¦  «        }g }|j         D ]:}t          |d¬¦  «                             ¦   «         }|                     |¦  «         Œ;t          d¦  «        Šˆfd„t          |¦  «        D ¦   «         }ddg}t          |dz   ¦  «        D ]2}	|d|	dz  z
  xx         t          |	|¦  «        d|	d	z  dz  z  z  z  cc<   Œ3|d         |d         z   	                    t          t          ||¦  «        ¦  «        ¦  «        S |j        r¢|                     d
¬¦  «        \  }
}|
j        r‚|
dk    r|t          j        }t#          dd
¬¦  «        }d||z  z   |
z                       ¦   «         }t'          |¦  «        t)          |¦  «        z   	                    |t          |¦  «        fg¦  «        S t          |¦  «        S )Nr   Frú   ÚYc                 ó.   •— g | ]}t          ‰¦  «        ‘ŒS rL   ©Únext©r„  rŸ   ÚYgs     €r5   r†  z)tan._eval_expand_trig.<locals>.<listcomp>|  ó   ø€ Ð.Ð.Ð.˜q•$�r‘(”(Ð.Ð.Ð.r7   r�   rƒ   r´   rt   Tr9  Údummy©Úreal)r=   r`   rÛ   r  r=  r†   r0   Úranger/   ræ   ÚlistrŽ  r]   r”   r>  r   r4   r   rU   r!   r"   )rA   rN   r    r›   rÝ   ÚTXÚtxrÉ  rœ   rŸ   r…   r¢  rñ   r‹  ÚPrÎ  s                  @r5   r=  ztan._eval_expand_trigq  sÕ  ø€ ØŒi˜ŒlˆØˆØŒ:ñ 	=Ý�C”H‘”ˆAØˆBØ”Xð ð �Ý˜ UÐ+Ñ+Ô+×=Ò=Ñ?Ô?�Ø—	’	˜"‘”��å! #Ñ&Ô&ˆBØ.Ð.Ð.Ð.¥E¨!¡H¤HÐ.Ñ.Ô.ˆAà�A�ˆAÝ˜1˜q™5‘\”\ð Hð H�Ø�!�a˜!‘e‘)��”¥¨q°!Ñ 4Ô 4°b¸QÀ¹UÀQ¹JÑ5GÑ GÑG��‘�Ø�a”D˜˜1œ‘I×#Ò#¥D­¨Q°©¬Ñ$4Ô$4Ñ5Ô5Ð5àŒZð 	=Ø×+Ò+°TÐ+Ñ:Ô:‰LˆE�5ØÔð = E¨A¢I IÝ”O�Ý˜7¨Ð.Ñ.Ô.�Ø˜!˜A™#‘g Ñ%×-Ò-Ñ/Ô/�Ý˜1™œ�b ™eœe™×)Ò)¨A­s°5©z¬z¨?Ð*;Ñ<Ô<Ð<Ý�3‰xŒxˆr7   c                 ó*  — t           j        }ddlm} t	          |t
          |f¦  «        r8|                     |j        d         ¦  «                             t          ¦  «        }t          | |z  ¦  «        t          ||z  ¦  «        }}|||z
  z  ||z   z  S ©Nr   rì   rz  )rA   r    rð   rñ   rí   Úneg_expÚpos_exps          r5   rò   ztan._eval_rewrite_as_expŒ  s’   € ÝŒOˆØLÐLÐLÐLÐLÐLÝ�cÕ1Ð3EÐFÑGÔGð 	5Ø—(’(˜3œ8 Aœ;Ñ'Ô'×/Ò/µÑ4Ô4ˆCÝ ˜t A™v™;œ;­¨C°©E©
¬
�ˆØ�'˜GÑ#Ñ$ g°Ñ&7Ñ8Ð8r7   c                 óR   — dt          |¦  «        dz  z  t          d|z  ¦  «        z  S r¤   ©r¢   ©rA   r›   rð   s      r5   r}  ztan._eval_rewrite_as_sin”  s%   € Ø•�Q‘”˜‘‰{�3˜q ™s™8œ8Ñ#Ð#r7   c                 óZ   — t          |t          dz  z
  d¬¦  «        t          |¦  «        z  S rù   rü   rÞ  s      r5   rþ   ztan._eval_rewrite_as_cos—  s(   € Ý�1•r˜!‘t‘8 eÐ,Ñ,Ô,­S°©V¬VÑ3Ð3r7   c                 ó@   — t          |¦  «        t          |¦  «        z  S rj   r  rý   s      r5   r	  ztan._eval_rewrite_as_sincosš  ó   € Ý�3‰xŒx�˜C™œÑ Ð r7   c                 ó&   — dt          |¦  «        z  S r  ©r  rý   s      r5   r  ztan._eval_rewrite_as_cot�  r  r7   c                 óŒ   —  t          |¦  «        j        t          fi |¤Ž} t          |¦  «        j        t          fi |¤Ž}||z  S rj   )r¢   rï   r  r«   )rA   r    rð   Úsin_in_sec_formÚcos_in_sec_forms        r5   r  ztan._eval_rewrite_as_sec   óM   € Ø*�#˜c™(œ(Ô*­3Ð9Ð9°&Ð9Ð9ˆØ*�#˜c™(œ(Ô*­3Ð9Ð9°&Ð9Ð9ˆØ˜Ñ.Ð.r7   c                 óŒ   —  t          |¦  «        j        t          fi |¤Ž} t          |¦  «        j        t          fi |¤Ž}||z  S rj   )r¢   rï   r  r«   )rA   r    rð   Úsin_in_csc_formÚcos_in_csc_forms        r5   r  ztan._eval_rewrite_as_csc¥  rç  r7   c                 ó†   —   | j         t          fi |¤Žj         t          fi |¤Ž}|                     t          ¦  «        rd S |S rj   ©rï   r«   r  r\   ©rA   r    rð   rÕ   s       r5   r  ztan._eval_rewrite_as_powª  óL   € Ø/ˆLˆDŒL�Ð'Ð' Ð'Ð'Ô/µÐ>Ð>°vÐ>Ð>ˆØ�5Š5•‰:Œ:ð 	Ø�4Øˆr7   c                 ó†   —   | j         t          fi |¤Žj         t          fi |¤Ž}|                     t          ¦  «        rd S |S rj   ©rï   r«   r&   r\   rí  s       r5   r  ztan._eval_rewrite_as_sqrt°  óL   € Ø/ˆLˆDŒL�Ð'Ð' Ð'Ð'Ô/µÐ?Ð?¸Ð?Ð?ˆØ�5Š5•‰:Œ:ð 	Ø�4Øˆr7   c                 ój   — ddl m}  |t          j        |¦  «         |t          j         |¦  «        z  S ©Nr   r$  ©r'  r%  r   r‡   r(  s       r5   r)  ztan._eval_rewrite_as_besselj¶  s=   € Ø:Ð:Ð:Ð:Ð:Ð:Øˆw•q”v˜sÑ#Ô# G G­Q¬V¨G°SÑ$9Ô$9Ñ9Ð9r7   c                 ó.  — ddl m} ddlm} | j        d         }|                     |d¦  «                             ¦   «         }d|z  t          z  }|j        r1||t          z  dz  z
   	                    |¦  «        }	|j
        r|	nd|	z  S |t          j        u r*|                     |d ||¦  «        j        rdnd¬¦  «        }|t          j        t          j        fv r  |t          j        t          j        ¦  «        S |j        r|                      |¦  «        n| S )	Nr   r°   ©r"   rƒ   r´   rD  rE  rF  ©r¹   r±   Ú$sympy.functions.elementary.complexesr"   r=   ræ   rI  r   rˆ   rJ  r‰   r   rp   rK  rL  r½   r¾   rM  r<   ©
rA   r›   rã   rä   r±   r"   r    rO  rÝ   rP  s
             r5   rQ  ztan._eval_as_leading_termº  s  € ØAÐAÐAÐAÐAÐAØ;Ð;Ð;Ð;Ð;Ð;ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØˆb‰D•‰GˆØŒ<ð 	.Ø˜�"™˜Q™‘,×/Ò/°Ñ2Ô2ˆBØœÐ-�2�2¨¨2©Ð-Ø•Ô"Ð"Ð"Ø—’˜1˜a¨B¨B¨t©H¬HÔ,@Ð%I S SÀc�ÑJÔJˆBØ•!”*�aÔ0Ð1Ð1Ð1Ø�;�qÔ1µ1´:Ñ>Ô>Ð>Ø "¤Ð6ˆt�yŠy˜‰}Œ}ˆ}°$Ð6r7   c                 ó&   — | j         d         j        S r+  rT  r.  s    r5   rU  ztan._eval_is_extended_realÉ  s   € àŒy˜Œ|Ô,Ð,r7   c                 ór   — | j         d         }|j        r |t          z  t          j        z
  j        du rdS d S d S rE   ©r=   Úis_realr   r   r‡   rˆ   rX  s     r5   Ú_eval_is_realztan._eval_is_realÍ  sC   € ØŒi˜ŒlˆØŒ;ð 	˜C¥™F¥Q¤V™OÔ7¸5Ð@Ð@Ø�4ð	ð 	Ð@Ð@r7   c                 ó€   — | j         d         }|j        r |t          z  t          j        z
  j        du rdS |j        rdS d S rE   )r=   rý  r   r   r‡   rˆ   Úis_imaginaryrX  s     r5   rY  ztan._eval_is_finiteÒ  sM   € ØŒi˜ŒlˆàŒ;ð 	˜C¥™F¥Q¤V™OÔ7¸5Ð@Ð@Ø�4àÔð 	Ø�4ð	ð 	r7   c                 ó\   — t          | j        d         ¦  «        \  }}|j        r|j        S d S r+  r[  r\  s      r5   r_  ztan._eval_is_zeroÛ  r`  r7   c                 ór   — | j         d         }|j        r |t          z  t          j        z
  j        du rdS d S d S rE   rü  rX  s     r5   rd  ztan._eval_is_complexà  sC   € ØŒi˜ŒlˆàŒ;ð 	˜C¥™F¥Q¤V™OÔ7¸5Ð@Ð@Ø�4ð	ð 	Ð@Ð@r7   rj   re  rf  ri   r+  )!rk   rl   rm   rn   r§   r®   r±  rg  rÖ   rh  r   rß   rç   r÷   r/  rM   r=  rò   r}  rþ   r	  r  r  r  r  r  r)  rQ  rU  rþ  rY  r_  rd  rL   r7   r5   r  r  “  sé  € € € € € ð#ð #ðJ(ð (ð (ð (ð5ð 5ð 5ð 5ðð ð ð ð ð&ð &ñ „[ð&ðB Øð7ð 7ñ „Wñ „\ð7ð?ð ?ð ?ð ?ð3ð 3ð 3ð3ð 3ð 3ð+ð +ð +ð +ðð ð ð69ð 9ð 9ð$ð $ð $ð4ð 4ð 4ð!ð !ð !ðð ð ð/ð /ð /ð
/ð /ð /ð
ð ð ðð ð ð:ð :ð :ð7ð 7ð 7ð 7ð-ð -ð -ðð ð ð
ð ð ð&ð &ð &ð
ð ð ð ð r7   r  c                   óð   — e Zd ZdZd!d„Zd"d„Zd"d„Zed„ ¦   «         Ze	e
d„ ¦   «         ¦   «         Zd#d
„Zd„ Zd$d„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd%d„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d „ Z!dS )&r  a¸  
    The cotangent function.

    Returns the cotangent of x (measured in radians).

    Explanation
    ===========

    See :class:`sin` for notes about automatic evaluation.

    Examples
    ========

    >>> from sympy import cot, pi
    >>> from sympy.abc import x
    >>> cot(x**2).diff(x)
    2*x*(-cot(x**2)**2 - 1)
    >>> cot(1).diff(x)
    0
    >>> cot(pi/12)
    sqrt(3) + 2

    See Also
    ========

    sin, csc, cos, sec, tan
    asin, acsc, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.14
    .. [3] https://functions.wolfram.com/ElementaryFunctions/Cot

    Nc                 ó8   — |                       t          |¦  «        S rj   r¥   r¦   s     r5   r§   z
cot.period  r«  r7   r�   c                 óR   — |dk    rt           j        | dz  z
  S t          | |¦  «        ‚r­  )r   rÇ   r	   r¬   s     r5   r®   z	cot.fdiff  s,   € Ø�qŠ=ˆ=Ý”= 4¨¡7Ñ*Ð*å$ T¨8Ñ4Ô4Ð4r7   c                 ó   — t           S r¯  ©rÍ   r¬   s     r5   r±  zcot.inverse  r²  r7   c                 óÈ	  — ddl m} |j        rg|t          j        u rt          j        S |j        rt          j        S |t          j        t          j        fv r  |t          j        t          j        ¦  «        S |t          j        u rt          j        S t          ||¦  «        rt          |t          dz  z   ¦  «         S |                     ¦   «         r | | ¦  «         S t          |¦  «        }|�ddlm} t          j          ||¦  «        z  S t#          |d¦  «        }|��ô|j        rt          j        S |j        s|t          z  }||k    r | |¦  «        S d S |j        �rµ|j        dv rt          t          dz  |z
  ¦  «        S |j        dk    ru|j        dz  sk|t          z  dz  }t+          |¦  «        t+          |t          dz  z
  ¦  «        }}t          |t*          ¦  «        s t          |t*          ¦  «        sd|z  ||z  z   S |j        }	|j        |	z  }
t/          ¦   «         }|	|v rM||	         \  }} | |
t          z  |z  ¦  «         | |
t          z  |z  ¦  «        }}d ||fv rd S d||z  z   ||z
  z  S |t          j        z   dz  t          j        z
  t          z  }t+          |¦  «        t+          |t          dz  z
  ¦  «        }}t          |t*          ¦  «        s,t          |t*          ¦  «        s|dk    rt          j        S ||z  S ||k    r | |¦  «        S |j        rXt5          |¦  «        \  }}|rDt7          |t          z  ¦  «        }|t          j        u rt7          |¦  «        S t          |¦  «         S |j        rt          j        S t          |t8          ¦  «        r|j        d         S t          |t<          ¦  «        r|j        d         }d|z  S t          |t>          ¦  «        r|j        \  }}||z  S t          |t@          ¦  «        r%|j        d         }tC          d|dz  z
  ¦  «        |z  S t          |tD          ¦  «        r%|j        d         }|tC          d|dz  z
  ¦  «        z  S t          |tF          ¦  «        r(|j        d         }tC          dd|dz  z  z
  ¦  «        |z  S t          |tH          ¦  «        r+|j        d         }dtC          dd|dz  z  z
  ¦  «        |z  z  S d S )Nr   r°   rƒ   )Úcothrµ  r�   )%r¹   r±   r»   r   r¼   r?   rp   r½   r¾   r2   r  r   rÅ   r6   rÆ   r	  r4   rG   rˆ   rÈ   rn  r«   rœ   r�   r‡   r`   rŽ   r  rÍ   r=   rÊ   rË   rÉ   r&   rÌ   rÎ   rÏ   )rÐ   r    r±   rÒ   r	  rH   rÓ   r·  r¸  rn  rœ   ro  rg   rp  rq  rr  r›   r�   ÚcotmrÕ   s                       r5   rÖ   zcot.eval  sñ  € àAÐAÐAÐAÐAÐAØŒ=ð 	CØ•a”eˆ|ˆ|Ý”u�ØŒ{ð CÝÔ(Ð(Ø�œ¥QÔ%7Ð8Ð8Ð8Ø"�{¥1Ô#5µq´zÑBÔBÐBà•!Ô#Ð#Ð#Ý”5ˆLå�c˜;Ñ'Ô'ð 	$Ý˜�b ™d™
‘O”OÐ#Ð#à×'Ò'Ñ)Ô)ð 	Ø�C˜˜‘I”I�:Ðå0°Ñ5Ô5ˆØÐØBÐBÐBÐBÐBÐBÝ”OÐ# D D¨¡M¤MÑ1Ð1å˜S !Ñ$Ô$ˆØÑØÔ"ð )ÝÔ(Ð(àÔ'ð Ø¥‘{�Ø˜3’;�;Ø˜3˜t™9œ9Ð$Ø�tàÔ#ñ %Ø”: Ð(Ð(Ý�r !™t c™z™?œ?Ð*Ø”: ’>�>¨(¬*°q©.�>Ø#¥B™; q™=�DÝ'*¨4¡y¤yµ#°d½RÀ¹T±kÑ2BÔ2B˜W�GÝ% g­sÑ3Ô3ð ;Ý$.¨w½Ñ$<Ô$<ð;à  ™y¨7°7©?Ñ:Ð:Ø”J�Ø”J ‘N�Ý ™œ�Ø˜�;�;Ø! !œ9‘D�A�qØ#& 3 q­¡t¨A¡v¡;¤;°°°Aµb±D¸±F±´˜5�EØ  u˜~Ð-Ð-Ø#˜tØ  e¡™O¨e°e©mÑ<Ð<Ø"¥Q¤VÑ+¨qÑ0µA´FÑ:½BÑ>�õ $' t¡9¤9­c°$½¸A¹±+Ñ.>Ô.>˜�Ý! '­3Ñ/Ô/ð +Ý *¨7µCÑ 8Ô 8ð+à !’|�|Ý Ô0Ð0Ø" 7™?Ð*Ø˜3’;�;Ø˜3˜t™9œ9Ð$àŒ:ð 	#Ý˜sÑ#Ô#‰DˆAˆqØð #Ý˜1�R™4‘y”y�Ø�1Ô,Ð,Ð,Ý˜q™6œ6�Må ™FœF˜7�NàŒ;ð 	%ÝÔ$Ð$å�c�4Ñ Ô ð 	Ø”8˜A”;Ðå�c�4Ñ Ô ð 	Ø”˜”ˆAØ�Q‘3ˆJå�c�5Ñ!Ô!ð 	Ø”8‰DˆAˆqØ�Q‘3ˆJå�c�4Ñ Ô ð 	$Ø”˜”ˆAÝ˜˜A˜q™D™‘>”> !Ñ#Ð#å�c�4Ñ Ô ð 	$Ø”˜”ˆAØ•T˜!˜a ™d™(‘^”^Ñ#Ð#å�c�4Ñ Ô ð 	&Ø”˜”ˆAÝ˜˜A˜a ™d™F™
Ñ#Ô# AÑ%Ð%å�c�4Ñ Ô ð 	*Ø”˜”ˆAØ•d˜1˜q  A¡™v™:Ñ&Ô& qÑ(Ñ)Ð)ð	*ð 	*r7   c                 ó"  — | dk    rdt          |¦  «        z  S | dk     s	| dz  dk    rt          j        S t          |¦  «        }t          | dz   ¦  «        }t	          | dz   ¦  «        }t          j        | dz   dz  z  d| dz   z  z  |z  |z  || z  z  S ©Nr   r�   rƒ   )r   r   rV   r   r   rÇ   )rÝ   r›   rÞ   r¼  r½  s        r5   rß   zcot.taylor_term…  s›   € ð �Š6ˆ6Ø•W˜Q‘Z”Z‘<ÐØ�ŠUˆU�a˜!‘e˜q’j�jÝ”6ˆMå˜‘
”
ˆAå˜!˜a™%Ñ Ô ˆAÝ˜!˜a™%Ñ Ô ˆAå”= A¨¡E¨A¡:Ñ.¨q°1°q±5©zÑ9¸!Ñ;¸AÑ=¸aÀ¹dÑBÐBr7   r   c                 ó&  — | j         d                              |d¦  «        t          z  }|r7|j        r0|                      t
          ¦  «                             |||¬¦  «        S |                      t          ¦  «                             |||¬¦  «        S )Nr   r¿  )r=   rK  r   r>  rï   r«   rç   r  rÀ  s         r5   rç   zcot._eval_nseries”  sƒ   € ØŒI�aŒL×Ò˜q !Ñ$Ô$¥RÑ'ˆØð 	F�”ð 	FØ—<’<¥Ñ$Ô$×2Ò2°1¸ÀÐ2ÑEÔEÐEØ�|Š|�CÑ Ô ×.Ò.¨q°A¸DÐ.ÑAÔAÐAr7   c                 óf   — |                       | j        d                              ¦   «         ¦  «        S r+  r,  r.  s    r5   r/  zcot._eval_conjugateš  r0  r7   Tc                 ó  —  | j         dd|i|¤Ž\  }}|rPddlm}m} t	          d|z  ¦  «         |d|z  ¦  «        z
  }t          d|z  ¦  «         |z   |d|z  ¦  «        |z  fS |                      |¦  «        t          j        fS rÄ  rÅ  rÆ  s           r5   rM   zcot.as_real_imag�  s§   € Ø#�Ô#Ð7Ð7¨Ð7°Ð7Ð7‰ˆˆBØð 	+ØHÐHÐHÐHÐHÐHÐHÐHÝ˜˜"™‘I”I   Q r¡T¡
¤
Ñ*ˆEÝ˜˜2™‘Y”Y�J˜uÑ$ d d¨1¨R©4¡j¤j°Ñ&6Ð7Ð7à—I’I˜b‘M”M¥1¤6Ð*Ð*r7   c                 ó  — ddl m} t          j        }t	          |t
          |f¦  «        r1 |                     |j        d         ¦  «        j        t          fi |¤Ž}t          | |z  ¦  «        t          ||z  ¦  «        }}|||z   z  ||z
  z  S rÙ  rî   )rA   r    rð   rí   rñ   rÚ  rÛ  s          r5   rò   zcot._eval_rewrite_as_exp¦  s™   € ØLÐLÐLÐLÐLÐLÝŒOˆÝ�cÕ1Ð3EÐFÑGÔGð 	?Ø/�#—(’(˜3œ8 Aœ;Ñ'Ô'Ô/µÐ>Ð>°vÐ>Ð>ˆCÝ ˜t A™v™;œ;­¨C°©E©
¬
�ˆØ�'˜GÑ#Ñ$ g°Ñ&7Ñ8Ð8r7   c                 óœ   — t          |t          ¦  «        r6t          j        }|j        d         }| || z  ||z  z   z  || z  ||z  z
  z  S d S r+  rõ   rö   s        r5   r÷   zcot._eval_rewrite_as_Pow®  s^   € Ý�c�3ÑÔð 	4Ý”ˆAØ”˜”ˆAØ�2�q˜1˜"‘u˜q !™t‘|Ñ$ a¨!¨¡e¨a°©d¡lÑ3Ð3ð	4ð 	4r7   c                 óR   — t          d|z  ¦  «        dt          |¦  «        dz  z  z  S r¤   rÝ  rÞ  s      r5   r}  zcot._eval_rewrite_as_sin´  s%   € Ý�1�Q‘3‰xŒx˜�C ™FœF A™I™Ñ'Ð'r7   c                 óZ   — t          |¦  «        t          |t          dz  z
  d¬¦  «        z  S rù   rü   rÞ  s      r5   rþ   zcot._eval_rewrite_as_cos·  s(   € Ý�1‰vŒv•c˜!�b ™d™(¨UÐ3Ñ3Ô3Ñ3Ð3r7   c                 ó@   — t          |¦  «        t          |¦  «        z  S rj   ©r«   r¢   rý   s      r5   r	  zcot._eval_rewrite_as_sincosº  rá  r7   c                 ó&   — dt          |¦  «        z  S r  ©r  rý   s      r5   r  zcot._eval_rewrite_as_tan½  r  r7   c                 óŒ   —  t          |¦  «        j        t          fi |¤Ž} t          |¦  «        j        t          fi |¤Ž}||z  S rj   )r«   rï   r  r¢   )rA   r    rð   ræ  rå  s        r5   r  zcot._eval_rewrite_as_secÀ  rç  r7   c                 óŒ   —  t          |¦  «        j        t          fi |¤Ž} t          |¦  «        j        t          fi |¤Ž}||z  S rj   )r«   rï   r  r¢   )rA   r    rð   rê  ré  s        r5   r  zcot._eval_rewrite_as_cscÅ  rç  r7   c                 ó†   —   | j         t          fi |¤Žj         t          fi |¤Ž}|                     t          ¦  «        rd S |S rj   rì  rí  s       r5   r  zcot._eval_rewrite_as_powÊ  rî  r7   c                 ó†   —   | j         t          fi |¤Žj         t          fi |¤Ž}|                     t          ¦  «        rd S |S rj   rð  rí  s       r5   r  zcot._eval_rewrite_as_sqrtÐ  rñ  r7   c                 ój   — ddl m}  |t          j         |¦  «         |t          j        |¦  «        z  S ró  rô  r(  s       r5   r)  zcot._eval_rewrite_as_besseljÖ  s=   € Ø:Ð:Ð:Ð:Ð:Ð:Øˆw�œ�w Ñ$Ô$ W W­Q¬V°SÑ%9Ô%9Ñ9Ð9r7   c                 ó0  — ddl m} ddlm} | j        d         }|                     |d¦  «                             ¦   «         }d|z  t          z  }|j        r2||t          z  dz  z
   	                    |¦  «        }	|j
        rd|	z  n|	 S |t          j        u r*|                     |d ||¦  «        j        rdnd¬¦  «        }|t          j        t          j        fv r  |t          j        t          j        ¦  «        S |j        r|                      |¦  «        n| S )	Nr   r°   rö  rƒ   r�   rD  rE  rF  r÷  rù  s
             r5   rQ  zcot._eval_as_leading_termÚ  s  € ØAÐAÐAÐAÐAÐAØ;Ð;Ð;Ð;Ð;Ð;ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØˆb‰D•‰GˆØŒ<ð 	.Ø˜�"™˜Q™‘,×/Ò/°Ñ2Ô2ˆBØœ9Ð-�1�R‘4�4¨2¨#Ð-Ø•Ô"Ð"Ð"Ø—’˜1˜a¨B¨B¨t©H¬HÔ,@Ð%I S SÀc�ÑJÔJˆBØ•!”*�aÔ0Ð1Ð1Ð1Ø�;�qÔ1µ1´:Ñ>Ô>Ð>Ø "¤Ð6ˆt�yŠy˜‰}Œ}ˆ}°$Ð6r7   c                 ó&   — | j         d         j        S r+  rT  r.  s    r5   rU  zcot._eval_is_extended_realé  ó   € ØŒy˜Œ|Ô,Ð,r7   c                 ó´  ‡— | j         d         }d }|j        �rt          |j         ¦  «        }g }|j         D ]:}t          |d¬¦  «                             ¦   «         }|                     |¦  «         Œ;t          d¦  «        Šˆfd„t          |¦  «        D ¦   «         }ddg}t          |dd¦  «        D ]5}	|||	z
  dz  xx         t          |	|¦  «        d||	z
  dz  dz  z  z  z  cc<   Œ6|d         |d	         z   	                    t          t          ||¦  «        ¦  «        ¦  «        S |j        rŸ|                     d
¬¦  «        \  }
}|
j        r|
d	k    ryt          j        }t#          dd
¬¦  «        }||z   |
z                       ¦   «         }t'          |¦  «        t)          |¦  «        z   	                    |t          |¦  «        fg¦  «        S t          |¦  «        S )Nr   Frú   rÉ  c                 ó.   •— g | ]}t          ‰¦  «        ‘ŒS rL   rË  rÍ  s     €r5   r†  z)cot._eval_expand_trig.<locals>.<listcomp>÷  rÏ  r7   r´   rƒ   rt   r�   Tr9  rÐ  rÑ  )r=   r`   rÛ   r  r=  r†   r0   rÓ  r/   ræ   rÔ  rŽ  r]   r”   r>  r   r4   r   rU   r"   r!   )rA   rN   r    r›   rÝ   ÚCXr™   rÉ  rœ   rŸ   r…   r¢  rñ   r‹  r×  rÎ  s                  @r5   r=  zcot._eval_expand_trigì  s×  ø€ ØŒi˜ŒlˆØˆØŒ:ñ 	=Ý�C”H‘”ˆAØˆBØ”Xð ð �Ý˜ UÐ+Ñ+Ô+×=Ò=Ñ?Ô?�Ø—	’	˜"‘”��å! #Ñ&Ô&ˆBØ.Ð.Ð.Ð.¥E¨!¡H¤HÐ.Ñ.Ô.ˆAà�A�ˆAÝ˜1˜b "Ñ%Ô%ð Pð P�Ø�1�q‘5˜A‘+��”¥.°°AÑ"6Ô"6¸ÀÀAÁÈ¹{ÈQÑ>NÑ7OÑ"OÑO��‘�Ø�a”D˜˜1œ‘I×#Ò#¥D­¨Q°©¬Ñ$4Ô$4Ñ5Ô5Ð5ØŒZð 	=Ø×+Ò+°TÐ+Ñ:Ô:‰LˆE�5ØÔð = E¨A¢I IÝ”O�Ý˜7¨Ð.Ñ.Ô.�Ø˜!‘e˜e‘^×+Ò+Ñ-Ô-�Ý˜1™œ�b ™eœe™×)Ò)¨A­s°5©z¬z¨?Ð*;Ñ<Ô<Ð<Ý�3‰xŒxˆr7   c                 óf   — | j         d         }|j        r|t          z  j        du rdS |j        rdS d S rE   )r=   rý  r   rˆ   r   rX  s     r5   rY  zcot._eval_is_finite  sG   € ØŒi˜ŒlˆØŒ;ð 	˜C¥™FÔ.°%Ð7Ð7Ø�4ØÔð 	Ø�4ð	ð 	r7   c                 óX   — | j         d         }|j        r|t          z  j        du rdS d S d S rE   ©r=   rý  r   rˆ   rX  s     r5   rþ  zcot._eval_is_real  ó=   € ØŒi˜ŒlˆØŒ;ð 	˜C¥™FÔ.°%Ð7Ð7Ø�4ð	ð 	Ð7Ð7r7   c                 óX   — | j         d         }|j        r|t          z  j        du rdS d S d S rE   r%  rX  s     r5   rd  zcot._eval_is_complex  r&  r7   c                 ó~   — t          | j        d         ¦  «        \  }}|r|j        r|t          j        z
  j        S d S d S r+  r¨  )rA   r]  Úpimults      r5   r_  zcot._eval_is_zero  sM   € Ý" 4¤9¨Q¤<Ñ0Ô0‰ˆˆfØð 	0�d”lð 	0Ø�QœV‘OÔ/Ð/ð	0ð 	0ð 	0ð 	0r7   c                 ó¨   — | j         d         }|                     ||¦  «        }||k    r|t          z  j        rt          j        S t          |¦  «        S r+  )r=   ræ   r   rˆ   r   rp   r  )rA   ÚoldÚnewr    Úargnews        r5   Ú
_eval_subszcot._eval_subs  sI   € ØŒi˜ŒlˆØ—’˜#˜sÑ#Ô#ˆØ�&Š=ˆ=˜f¥R™iÔ3ˆ=ÝÔ$Ð$Ý�6‰{Œ{Ðr7   rj   re  rf  ri   r+  )"rk   rl   rm   rn   r§   r®   r±  rg  rÖ   rh  r   rß   rç   r/  rM   rò   r÷   r}  rþ   r	  r  r  r  r  r  r)  rQ  rU  r=  rY  rþ  rd  r_  r.  rL   r7   r5   r  r  ç  sÿ  € € € € € ð#ð #ðJ(ð (ð (ð (ð5ð 5ð 5ð 5ðð ð ð ð ðf*ð f*ñ „[ðf*ðP ØðCð Cñ „Wñ „\ðCðBð Bð Bð Bð3ð 3ð 3ð+ð +ð +ð +ð9ð 9ð 9ð4ð 4ð 4ð(ð (ð (ð4ð 4ð 4ð!ð !ð !ðð ð ð/ð /ð /ð
/ð /ð /ð
ð ð ðð ð ð:ð :ð :ð7ð 7ð 7ð 7ð-ð -ð -ðð ð ð4ð ð ðð ð ð
ð ð ð
0ð 0ð 0ð
ð ð ð ð r7   r  c                   óÔ   — e Zd ZU dZdZej        fZdZe	e
d<   dZe	e
d<   ed„ ¦   «         Zd„ Zd„ Zd„ Zd	„ Zdd„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zdd„Zd„ Zd„ Zdd„Zd„ Zdd„Z dS ) ÚReciprocalTrigonometricFunctionz@Base class for reciprocal functions of trigonometric functions. NÚ_is_evenÚ_is_oddc                 ó,  — |                      ¦   «         r'| j        r | | ¦  «        S | j        r | | ¦  «         S t          |¦  «        }|�d|z  j        su|j        rn|j        }|j        d|z  z  }||k    r|dz
  t          z  } | |¦  «         S d|z  |k    r2d|z
  t          z  }| j        r | |¦  «        S | j        r | |¦  «         S t          |d¦  «        r%| 
                    ¦   «         | k    r|j        d         S | j                             |¦  «        }|€|S t          d„ || fD ¦   «         ¦  «        rd|z                       t           ¦  «        S t          d„ || fD ¦   «         ¦  «        rd|z                       t"          ¦  «        S d|z  S )Nrƒ   r�   r±  r   c              3   ó@   K  — | ]}t          |t          ¦  «        V — Œd S rj   )r2   r«   ©r„  rŸ   s     r5   rˆ  z7ReciprocalTrigonometricFunction.eval.<locals>.<genexpr>P  ó,   è è € Ð5Ð5¨•˜A�sÑ#Ô#Ð5Ð5Ð5Ð5Ð5Ð5r7   c              3   ó@   K  — | ]}t          |t          ¦  «        V — Œd S rj   )r2   r¢   r5  s     r5   rˆ  z7ReciprocalTrigonometricFunction.eval.<locals>.<genexpr>R  r6  r7   )rÅ   r1  r2  rG   rˆ   rÈ   rn  rœ   r   Úhasattrr±  r=   Ú_reciprocal_ofrÖ   Úanyrï   r  r  )rÐ   r    rH   rn  rœ   rÓ   Úts          r5   rÖ   z$ReciprocalTrigonometricFunction.eval2  sÓ  € à×'Ò'Ñ)Ô)ð 	"ØŒ|ð !Ø�s˜C˜4‘y”yÐ ØŒ{ð "Ø˜˜S˜D™	œ	�zÐ!å˜S‘>”>ˆØÐ Ø�x‘ZÔ+ð !àÔ$ð !ð ”J�Ø”J ! A¡#Ñ&�Ø�q’5�5Ø$ q™L­"Ñ,�DØ˜C ™IœI˜:Ð%Ø�Q‘3˜’7�7Ø ™L­"Ñ,�DØ”{ð *Ø"˜s 4™yœyÐ(Øœð *Ø #  D¡	¤	˜zÐ)å�3˜	Ñ"Ô"ð 	 s§{¢{¡}¤}¸Ò';Ð';Ø”8˜A”;ÐàÔ×#Ò# CÑ(Ô(ˆØˆ9ØˆHÝÐ5Ð5¨a°!°¨WÐ5Ñ5Ô5Ñ5Ô5ð 	Ø�a‘C—=’=¥Ñ%Ô%Ð%ÝÐ5Ð5¨a°!°¨WÐ5Ñ5Ô5Ñ5Ô5ð 	Ø�a‘C—=’=¥Ñ%Ô%Ð%à�Q‘3ˆJr7   c                 ón   — |                       | j        d         ¦  «        } t          ||¦  «        |i |¤ŽS r+  )r9  r=   Úgetattr)rA   Úmethod_namer=   rð   Úos        r5   Ú_call_reciprocalz0ReciprocalTrigonometricFunction._call_reciprocalW  s:   € à×Ò ¤	¨!¤Ñ-Ô-ˆØ&�w�q˜+Ñ&Ô&¨Ð7°Ð7Ð7Ð7r7   c                 ó6   —  | j         |g|¢R i |¤Ž}|�d|z  n|S r  )r@  )rA   r>  r=   rð   r;  s        r5   Ú_calculate_reciprocalz5ReciprocalTrigonometricFunction._calculate_reciprocal\  s8   € ð "ˆDÔ! +Ð?°Ð?Ð?Ð?¸Ð?Ð?ˆØ�mˆq�‰sˆs¨Ð*r7   c                 óv   — |                       ||¦  «        }|�||                      |¦  «        k    rd|z  S d S d S r  )r@  r9  )rA   r>  r    r;  s       r5   Ú_rewrite_reciprocalz3ReciprocalTrigonometricFunction._rewrite_reciprocalb  sL   € ð ×!Ò! +¨sÑ3Ô3ˆØˆ=˜Q $×"5Ò"5°cÑ":Ô":Ò:Ð:Ø�Q‘3ˆJð ˆ=Ð:Ð:r7   c                 ó†   — t          | j        d         ¦  «        }|                      |¦  «                             |¦  «        S r+  )r   r=   r9  r§   )rA   rc   rd   s      r5   rh   z'ReciprocalTrigonometricFunction._periodi  s7   € Ý�t”y ”|Ñ$Ô$ˆØ×"Ò" 1Ñ%Ô%×,Ò,¨VÑ4Ô4Ð4r7   r�   c                 ó<   — |                       d|¦  «         | dz  z  S )Nr®   rƒ   ©rB  r¬   s     r5   r®   z%ReciprocalTrigonometricFunction.fdiffm  s$   € Ø×*Ò*¨7°HÑ=Ô=Ð=¸dÀA¹gÑEÐEr7   c                 ó.   — |                       d|¦  «        S )Nrò   ©rD  rý   s      r5   rò   z4ReciprocalTrigonometricFunction._eval_rewrite_as_expp  ó   € Ø×'Ò'Ð(>ÀÑDÔDÐDr7   c                 ó.   — |                       d|¦  «        S )Nr÷   rI  rý   s      r5   r÷   z4ReciprocalTrigonometricFunction._eval_rewrite_as_Pows  rJ  r7   c                 ó.   — |                       d|¦  «        S )Nr}  rI  rý   s      r5   r}  z4ReciprocalTrigonometricFunction._eval_rewrite_as_sinv  rJ  r7   c                 ó.   — |                       d|¦  «        S )Nrþ   rI  rý   s      r5   rþ   z4ReciprocalTrigonometricFunction._eval_rewrite_as_cosy  rJ  r7   c                 ó.   — |                       d|¦  «        S )Nr  rI  rý   s      r5   r  z4ReciprocalTrigonometricFunction._eval_rewrite_as_tan|  rJ  r7   c                 ó.   — |                       d|¦  «        S )Nr  rI  rý   s      r5   r  z4ReciprocalTrigonometricFunction._eval_rewrite_as_pow  rJ  r7   c                 ó.   — |                       d|¦  «        S )Nr  rI  rý   s      r5   r  z5ReciprocalTrigonometricFunction._eval_rewrite_as_sqrt‚  s   € Ø×'Ò'Ð(?ÀÑEÔEÐEr7   c                 óf   — |                       | j        d                              ¦   «         ¦  «        S r+  r,  r.  s    r5   r/  z/ReciprocalTrigonometricFunction._eval_conjugate…  r0  r7   Tc                 ó`   —  d|                       | j        d         ¦  «        z  j        |fi |¤ŽS rª   )r9  r=   rM   )rA   rK   rN   s      r5   rM   z,ReciprocalTrigonometricFunction.as_real_imagˆ  sF   € ØA��$×%Ò% d¤i°¤lÑ3Ô3Ñ3ÔAÀ$ð Kð KØDIðKð Kð 	Kr7   c                 ó   —  | j         di |¤ŽS )Nr=  )r=  rG  )rA   rN   s     r5   r=  z1ReciprocalTrigonometricFunction._eval_expand_trigŒ  s   € Ø)ˆtÔ)ÐGÐGÀÐGÐGÐGr7   c                 óf   — |                       | j        d         ¦  «                             ¦   «         S r+  )r9  r=   rU  r.  s    r5   rU  z6ReciprocalTrigonometricFunction._eval_is_extended_real�  s(   € Ø×"Ò" 4¤9¨Q¤<Ñ0Ô0×GÒGÑIÔIÐIr7   r   c                 ón   — d|                       | j        d         ¦  «        z                       |¦  «        S rª   )r9  r=   rQ  )rA   r›   rã   rä   s       r5   rQ  z5ReciprocalTrigonometricFunction._eval_as_leading_term’  s/   € Ø�$×%Ò% d¤i°¤lÑ3Ô3Ñ3×JÒJÈ1ÑMÔMÐMr7   c                 óR   — d|                       | j        d         ¦  «        z  j        S rª   )r9  r=   rM  r.  s    r5   rY  z/ReciprocalTrigonometricFunction._eval_is_finite•  s$   € Ø�$×%Ò% d¤i°¤lÑ3Ô3Ñ3Ô>Ð>r7   c                 ór   — d|                       | j        d         ¦  «        z                       |||¦  «        S rª   )r9  r=   rç   ©rA   r›   rÝ   rã   rä   s        r5   rç   z-ReciprocalTrigonometricFunction._eval_nseries˜  s3   € Ø�$×%Ò% d¤i°¤lÑ3Ô3Ñ3×BÒBÀ1ÀaÈÑNÔNÐNr7   re  ri   r+  rf  )!rk   rl   rm   rn   r9  r   rp   rq   r1  r   Ú__annotations__r2  rg  rÖ   r@  rB  rD  rh   r®   rò   r÷   r}  rþ   r  r  r  r/  rM   r=  rU  rQ  rY  rç   rL   r7   r5   r0  r0  $  sÆ  € € € € € € ØJÐJà€NØÔ'Ð)€Nð €HˆiÐÐÑØ€GˆYÐÐÑàð"ð "ñ „[ð"ðH8ð 8ð 8ð
+ð +ð +ðð ð ð5ð 5ð 5ðFð Fð Fð FðEð Eð EðEð Eð EðEð Eð EðEð Eð EðEð Eð EðEð Eð EðFð Fð Fð3ð 3ð 3ðKð Kð Kð KðHð Hð HðJð Jð JðNð Nð Nð Nð?ð ?ð ?ðOð Oð Oð Oð Oð Or7   r0  c                   óˆ   — e Zd ZdZeZdZdd„Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zdd„Zd„ Zd„ Zeed„ ¦   «         ¦   «         Zdd„ZdS )r  a‹  
    The secant function.

    Returns the secant of x (measured in radians).

    Explanation
    ===========

    See :class:`sin` for notes about automatic evaluation.

    Examples
    ========

    >>> from sympy import sec
    >>> from sympy.abc import x
    >>> sec(x**2).diff(x)
    2*x*tan(x**2)*sec(x**2)
    >>> sec(1).diff(x)
    0

    See Also
    ========

    sin, csc, cos, tan, cot
    asin, acsc, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.14
    .. [3] https://functions.wolfram.com/ElementaryFunctions/Sec

    TNc                 ó,   — |                       |¦  «        S rj   ©rh   r¦   s     r5   r§   z
sec.periodÃ  ó   € Ø�|Š|˜FÑ#Ô#Ð#r7   c                 óB   — t          |dz  ¦  «        dz  }|dz   |dz
  z  S r  rã  )rA   r    rð   Úcot_half_sqs       r5   r  zsec._eval_rewrite_as_cotÆ  s(   € Ý˜#˜a™%‘j”j !‘mˆØ˜a‘ +°¡/Ñ2Ð2r7   c                 ó&   — dt          |¦  «        z  S r  ©r«   rý   s      r5   rþ   zsec._eval_rewrite_as_cosÊ  ó   € Ø•#�c‘(”(‘
Ðr7   c                 ó`   — t          |¦  «        t          |¦  «        t          |¦  «        z  z  S rj   r  rý   s      r5   r	  zsec._eval_rewrite_as_sincosÍ  ó$   € Ý�3‰xŒx�˜S™œ¥# c¡(¤(Ñ*Ñ+Ð+r7   c                 óH   — d t          |¦  «        j        t          fi |¤Žz  S r  )r«   rï   r¢   rý   s      r5   r}  zsec._eval_rewrite_as_sinÐ  ó)   € ØÐ"•#�c‘(”(Ô"¥3Ð1Ð1¨&Ð1Ð1Ñ1Ð2r7   c                 óH   — d t          |¦  «        j        t          fi |¤Žz  S r  )r«   rï   r  rý   s      r5   r  zsec._eval_rewrite_as_tanÓ  rf  r7   c                 ó:   — t          t          dz  |z
  d¬¦  «        S rù   )r  r   rý   s      r5   r  zsec._eval_rewrite_as_cscÖ  ó   € Ý•2�a‘4˜#‘:¨Ð.Ñ.Ô.Ð.r7   r�   c                 ó˜   — |dk    r5t          | j        d         ¦  «        t          | j        d         ¦  «        z  S t          | |¦  «        ‚rª   )r  r=   r  r	   r¬   s     r5   r®   z	sec.fdiffÙ  sB   € Ø�qŠ=ˆ=Ý�t”y ”|Ñ$Ô$¥S¨¬°1¬Ñ%6Ô%6Ñ6Ð6å$ T¨8Ñ4Ô4Ð4r7   c                 óÎ   — ddl m} t          dt          t          |z  ¦  «        t          d¦  «        z   |t
          j         |¦  «        z  z  t          |d¦  «        fd¦  «        S )Nr   r$  r�   rƒ   r�  rž  r(  s       r5   r)  zsec._eval_rewrite_as_besseljß  sh   € Ø:Ð:Ð:Ð:Ð:Ð:ÝØ•D�˜C™‘L”L¥$ q¡'¤'Ñ*¨7¨7µA´F°7¸CÑ+@Ô+@Ñ@ÑAÅ2ÀcÈ1Á:Ä:ÐNØñô ð 	r7   c                 ór   — | j         d         }|j        r |t          z  t          j        z
  j        du rdS d S d S rE   )r=   rc  r   r   r‡   rˆ   rX  s     r5   rd  zsec._eval_is_complexæ  sC   € ØŒi˜ŒlˆàŒ>ð 	˜s¥2™v­¬™Ô:¸eÐCÐCØ�4ð	ð 	ÐCÐCr7   c                 óÜ   — | dk     s	| dz  dk    rt           j        S t          |¦  «        }| dz  }t           j        |z  t	          d|z  ¦  «        z  t          d|z  ¦  «        z  |d|z  z  z  S r»  )r   rV   r   rÇ   r   r   ©rÝ   r›   rÞ   Úks       r5   rß   zsec.taylor_termì  sl   € ð
 ˆqŠ5ˆ5�A˜‘E˜Q’J�JÝ”6ˆMå˜‘
”
ˆAØ�1‘ˆAÝ”= !Ñ#¥E¨!¨A©#¡J¤JÑ.­y¸¸1¹©~¬~Ñ=¸aÀ!ÀAÁ#¹hÑFÐFr7   r   c                 óV  — ddl m} ddlm} | j        d         }|                     |d¦  «                             ¦   «         }|t          dz  z   t          z  }|j        r=||t          z  z
  t          dz  z    	                    |¦  «        }	t          j        |z  |	z  S |t          j        u r*|                     |d ||¦  «        j        rdnd¬¦  «        }|t          j        t          j        fv r  |t          j        t          j        ¦  «        S |j        r|                      |¦  «        n| S )Nr   r°   rö  rƒ   rD  rE  rF  ©r¹   r±   rø  r"   r=   ræ   rI  r   rˆ   rJ  r   rÇ   rp   rK  rL  r½   r¾   rM  r<   rù  s
             r5   rQ  zsec._eval_as_leading_termø  s  € ØAÐAÐAÐAÐAÐAØ;Ð;Ð;Ð;Ð;Ð;ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•"�Q‘$‰Y�‰NˆØŒ<ð 	)Ø˜�"™‘*�r !™tÑ#×4Ò4°QÑ7Ô7ˆBÝ”M 1Ñ$ bÑ(Ð(Ø•Ô"Ð"Ð"Ø—’˜1˜a¨B¨B¨t©H¬HÔ,@Ð%I S SÀc�ÑJÔJˆBØ•!”*�aÔ0Ð1Ð1Ð1Ø�;�qÔ1µ1´:Ñ>Ô>Ð>Ø "¤Ð6ˆt�yŠy˜‰}Œ}ˆ}°$Ð6r7   rj   re  r+  )rk   rl   rm   rn   r«   r9  r1  r§   r  rþ   r	  r}  r  r  r®   r)  rd  rh  r   rß   rQ  rL   r7   r5   r  r  œ  s  € € € € € ð!ð !ðF €NØ€Hð$ð $ð $ð $ð3ð 3ð 3ðð ð ð,ð ,ð ,ð3ð 3ð 3ð3ð 3ð 3ð/ð /ð /ð5ð 5ð 5ð 5ðð ð ðð ð ð ØðGð Gñ „Wñ „\ðGð7ð 7ð 7ð 7ð 7ð 7r7   r  c                   óˆ   — e Zd ZdZeZdZdd„Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zdd„Zd„ Zeed„ ¦   «         ¦   «         Zdd„ZdS )r  a�  
    The cosecant function.

    Returns the cosecant of x (measured in radians).

    Explanation
    ===========

    See :func:`sin` for notes about automatic evaluation.

    Examples
    ========

    >>> from sympy import csc
    >>> from sympy.abc import x
    >>> csc(x**2).diff(x)
    -2*x*cot(x**2)*csc(x**2)
    >>> csc(1).diff(x)
    0

    See Also
    ========

    sin, cos, sec, tan, cot
    asin, acsc, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.14
    .. [3] https://functions.wolfram.com/ElementaryFunctions/Csc

    TNc                 ó,   — |                       |¦  «        S rj   r\  r¦   s     r5   r§   z
csc.period/  r]  r7   c                 ó&   — dt          |¦  «        z  S r  rÝ  rý   s      r5   r}  zcsc._eval_rewrite_as_sin2  rb  r7   c                 ó`   — t          |¦  «        t          |¦  «        t          |¦  «        z  z  S rj   r  rý   s      r5   r	  zcsc._eval_rewrite_as_sincos5  rd  r7   c                 óB   — t          |dz  ¦  «        }d|dz  z   d|z  z  S r  rã  r  s       r5   r  zcsc._eval_rewrite_as_cot8  s(   € Ý�s˜1‘u‘:”:ˆØ�H˜a‘K‘ ! H¡*Ñ-Ð-r7   c                 óH   — d t          |¦  «        j        t          fi |¤Žz  S r  )r¢   rï   r«   rý   s      r5   rþ   zcsc._eval_rewrite_as_cos<  r›  r7   c                 ó:   — t          t          dz  |z
  d¬¦  «        S rù   r  rý   s      r5   r  zcsc._eval_rewrite_as_sec?  ri  r7   c                 óH   — d t          |¦  «        j        t          fi |¤Žz  S r  )r¢   rï   r  rý   s      r5   r  zcsc._eval_rewrite_as_tanB  rf  r7   c                 ó�   — ddl m} t          dt          z  ¦  «        dt          |¦  «         |t          j        |¦  «        z  z  z  S )Nr   r$  rƒ   r�   r&  r(  s       r5   r)  zcsc._eval_rewrite_as_besseljE  sG   € Ø:Ð:Ð:Ð:Ð:Ð:Ý�A•b‘D‰zŒz˜1�d 3™iœi¨¨µ´¸Ñ(<Ô(<Ñ<Ñ=Ñ>Ð>r7   r�   c                 óš   — |dk    r6t          | j        d         ¦  «         t          | j        d         ¦  «        z  S t          | |¦  «        ‚rª   )r  r=   r  r	   r¬   s     r5   r®   z	csc.fdiffI  sE   € Ø�qŠ=ˆ=Ý˜œ	 !œÑ%Ô%Ð%¥c¨$¬)°A¬,Ñ&7Ô&7Ñ7Ð7å$ T¨8Ñ4Ô4Ð4r7   c                 óX   — | j         d         }|j        r|t          z  j        du rdS d S d S rE   r%  rX  s     r5   rd  zcsc._eval_is_complexO  r&  r7   c                 óB  — | dk    rdt          |¦  «        z  S | dk     s	| dz  dk    rt          j        S t          |¦  «        }| dz  dz   }t          j        |dz
  z  dz  dd|z  dz
  z  dz
  z  t	          d|z  ¦  «        z  |d|z  dz
  z  z  t          d|z  ¦  «        z  S r  )r   r   rV   rÇ   r   r   rn  s       r5   rß   zcsc.taylor_termT  s¸   € ð �Š6ˆ6Ø•W˜Q‘Z”Z‘<ÐØ�ŠUˆU�a˜!‘e˜q’j�jÝ”6ˆMå˜‘
”
ˆAØ�1‘�q‘ˆAÝ”M A¨¡EÑ*¨1Ñ,¨a°!°A±#¸±'©l¸QÑ.>Ñ?Ý˜a ™c‘N”Nñ#Ø#$ q¨¡s¨Q¡w¡<ñ0Ý09¸!¸A¹#±´ñ?ð @r7   r   c                 ó*  — ddl m} ddlm} | j        d         }|                     |d¦  «                             ¦   «         }|t          z  }|j        r2||t          z  z
   	                    |¦  «        }	t          j        |z  |	z  S |t          j        u r*|                     |d ||¦  «        j        rdnd¬¦  «        }|t          j        t          j        fv r  |t          j        t          j        ¦  «        S |j        r|                      |¦  «        n| S )Nr   r°   rö  rD  rE  rF  rq  rù  s
             r5   rQ  zcsc._eval_as_leading_terma  s  € ØAÐAÐAÐAÐAÐAØ;Ð;Ð;Ð;Ð;Ð;ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ�r‰EˆØŒ<ð 	)Ø˜�"™‘*×-Ò-¨aÑ0Ô0ˆBÝ”M 1Ñ$ bÑ(Ð(Ø•Ô"Ð"Ð"Ø—’˜1˜a¨B¨B¨t©H¬HÔ,@Ð%I S SÀc�ÑJÔJˆBØ•!”*�aÔ0Ð1Ð1Ð1Ø�;�qÔ1µ1´:Ñ>Ô>Ð>Ø "¤Ð6ˆt�yŠy˜‰}Œ}ˆ}°$Ð6r7   rj   re  r+  )rk   rl   rm   rn   r¢   r9  r2  r§   r}  r	  r  rþ   r  r  r)  r®   rd  rh  r   rß   rQ  rL   r7   r5   r  r    s  € € € € € ð!ð !ðF €NØ€Gð$ð $ð $ð $ðð ð ð,ð ,ð ,ð.ð .ð .ð1ð 1ð 1ð/ð /ð /ð3ð 3ð 3ð?ð ?ð ?ð5ð 5ð 5ð 5ðð ð ð
 Øð	@ð 	@ñ „Wñ „\ð	@ð7ð 7ð 7ð 7ð 7ð 7r7   r  c                   ód   — e Zd ZdZej        fZdd„Zed„ ¦   «         Z	dd„Z
d„ Zd„ Zd	„ Zd
„ ZeZdS )r!  a  
    Represents an unnormalized sinc function:

    .. math::

        \operatorname{sinc}(x) =
        \begin{cases}
          \frac{\sin x}{x} & \qquad x \neq 0 \\
          1 & \qquad x = 0
        \end{cases}

    Examples
    ========

    >>> from sympy import sinc, oo, jn
    >>> from sympy.abc import x
    >>> sinc(x)
    sinc(x)

    * Automated Evaluation

    >>> sinc(0)
    1
    >>> sinc(oo)
    0

    * Differentiation

    >>> sinc(x).diff()
    cos(x)/x - sin(x)/x**2

    * Series Expansion

    >>> sinc(x).series()
    1 - x**2/6 + x**4/120 + O(x**6)

    * As zero'th order spherical Bessel Function

    >>> sinc(x).rewrite(jn)
    jn(0, x)

    See also
    ========

    sin

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Sinc_function

    r�   c                 ó˜   — | j         d         }|dk    r(t          |¦  «        |z  t          |¦  «        |dz  z  z
  S t          | |¦  «        ‚r  )r=   r«   r¢   r	   )rA   r­   r›   s      r5   r®   z
sinc.fdiff¨  sK   € ØŒI�aŒLˆØ�qŠ=ˆ=õ �q‘6”6˜!‘8�c !™fœf Q¨¡T™kÑ)Ð)å$ T¨8Ñ4Ô4Ð4r7   c                 óø  — |j         rt          j        S |j        r@|t          j        t          j        fv rt          j        S |t          j        u rt          j        S |t          j        u rt          j        S | 	                    ¦   «         r | | ¦  «        S t          |¦  «        }|�R|j        r"t          |j         ¦  «        rt          j        S d S d|z  j        r!t          j        |t          j        z
  z  |z  S d S d S r¤   )r?   r   r“   r»   r½   r¾   rV   r¼   rp   rÅ   rG   rˆ   r   rÇ   r‡   )rÐ   r    rH   s      r5   rÖ   z	sinc.evalµ  sý   € àŒ;ð 	Ý”5ˆLØŒ=ð 	Ø•q”z¥1Ô#5Ð6Ð6Ð6Ý”v�Ø�œ��Ý”u�à•!Ô#Ð#Ð#Ý”5ˆLà×'Ò'Ñ)Ô)ð 	Ø�3˜�t‘9”9Ðå˜S‘>”>ˆØÐØÔ"ð >Ý˜Sœ[Ñ)Ô)ð "Ýœ6�Mð"ð "à�H‘*Ô(ð >Ý”} xµ!´&Ñ'8Ñ9¸#Ñ=Ð=ð  Ðð>ð >r7   r   c                 ój   — | j         d         }t          |¦  «        |z                       |||¦  «        S r+  )r=   r¢   rç   rX  s        r5   rç   zsinc._eval_nseriesÍ  s/   € ØŒI�aŒLˆÝ�A‘”�q‘×'Ò'¨¨1¨dÑ3Ô3Ð3r7   c                 ó&   — ddl m}  |d|¦  «        S )Nr   )Újn)r'  r„  )rA   r    rð   r„  s       r5   Ú_eval_rewrite_as_jnzsinc._eval_rewrite_as_jnÑ  s$   € Ø5Ð5Ð5Ð5Ð5Ð5Øˆr�!�S‰zŒzÐr7   c                 ó¢   — t          t          |¦  «        |z  t          |t          j        ¦  «        ft          j        t          j        f¦  «        S rj   )r)   r¢   r   r   rV   r“   Útruerý   s      r5   r}  zsinc._eval_rewrite_as_sinÕ  s3   € Ý�#˜c™(œ( 3™,­¨3µ´©¬Ð8½1¼5Å!Ä&¸/ÑJÔJÐJr7   c                 óÐ   — | j         d         j        rdS t          | j         d         ¦  «        \  }}|j        rt	          |j        |j        g¦  «        S |j        r	|j        rdS d S d S )Nr   TF)r=   Úis_infiniterŽ   r?   r   rˆ   Ú
is_nonzeror»   r\  s      r5   r_  zsinc._eval_is_zeroØ  s€   € ØŒ9�QŒ<Ô#ð 	Ø�4Ý# D¤I¨a¤LÑ1Ô1‰ˆˆgØŒ<ð 	GÝ˜gÔ0°'Ô2DÐEÑFÔFÐFØŒ>ð 	˜gÔ0ð 	Ø�5ð	ð 	ð 	ð 	r7   c                 óR   — | j         d         j        s| j         d         j        rdS d S rS  )r=   rT   r   r.  s    r5   rþ  zsinc._eval_is_realá  s2   € ØŒ9�QŒ<Ô(ð 	¨D¬I°a¬LÔ,Eð 	Ø�4ð	ð 	r7   Nre  rf  )rk   rl   rm   rn   r   rp   rq   r®   rg  rÖ   rç   r…  r}  r_  rþ  rY  rL   r7   r5   r!  r!  q  s¯   € € € € € ð3ð 3ðh Ô'Ð)€Nð5ð 5ð 5ð 5ð ð>ð >ñ „[ð>ð.4ð 4ð 4ð 4ðð ð ðKð Kð Kðð ð ðð ð ð $€O€O€Or7   r!  c                   ó¸   — e Zd ZdZej        ej        ej        ej        fZ	e
ed„ ¦   «         ¦   «         Ze
ed„ ¦   «         ¦   «         Ze
ed„ ¦   «         ¦   «         ZdS )ÚInverseTrigonometricFunctionz/Base class for inverse trigonometric functions.c                  ó|  — i t          d¦  «        dz  t          dz  “t          d¦  «        dz  t          dz  “dt          d¦  «        z  t          dz  “t          dt          d¦  «        z
  dz  ¦  «        t          dz  “t          d¦  «        t          dt          d¦  «        z
  ¦  «        z  dz  t          dz  “t          dt          d¦  «        z   dz  ¦  «        t          t          dd¦  «        z  “t          d¦  «        t          dt          d¦  «        z   ¦  «        z  dz  t          t          dd¦  «        z  “t          j        t          dz  “t          dt          d¦  «        z
  ¦  «        dz  t          dz  “t          t          j        t          d¦  «        dz  z
  ¦  «        t          dz  “t          dt          d¦  «        z   ¦  «        dz  t          t          dd¦  «        z  “t          t          j        t          d¦  «        dz  z   ¦  «        t          t          dd¦  «        z  “t          d¦  «        dz
  dz  t          dz  “dt          d¦  «        z
  dz  t           dz  “t          d¦  «        dz   dz  t          t          dd¦  «        z  “t          d¦  «        dz  t          d¦  «        dz  z
  t          d	z  “t          d¦  «         dz  t          d¦  «        dz  z   t           d	z  “t          d¦  «        dz
  t          d¦  «        z  t          d	z  dt          d¦  «        z
  t          d¦  «        z  t           d	z  t          d¦  «        dz  t          d¦  «        dz  z   t          t          dd	¦  «        z  dt          d¦  «        z   t          d¦  «        z  t          t          dd	¦  «        z  i¥S )
Nrs   rƒ   rt   r�   ru   rx   rv   rw   r}   )r&   r   r   r   r‡   rL   r7   r5   Ú_asin_tablez(InverseTrigonometricFunction._asin_tableñ  s3  € ð

Ý�‰GŒG�A‰I•r˜!‘tð
å�‰GŒG�A‰I•r˜!‘tð
ð �d�1‰gŒg‰I•r˜!‘tð
õ �!•d˜1‘g”g‘+˜q‘Ñ!Ô!¥2 a¡4ð	
õ
 �‰GŒG•D˜�T !™WœW™Ñ%Ô%Ñ% aÑ'­¨A©ð
õ �!•d˜1‘g”g‘+˜q‘Ñ!Ô!¥2¥h¨q°!¡n¤nÑ#4ð
õ �‰GŒG•D˜�T !™WœW™Ñ%Ô%Ñ% aÑ'­­H°Q¸©N¬NÑ):ð
õ ŒF•B�q‘Dð
õ �•T˜!‘W”W‘ÑÔ˜aÑ¥ A¡ð
õ •”�$˜q™'œ' !™)Ñ#Ñ$Ô$¥b¨¡dð
õ �•T˜!‘W”W‘ÑÔ˜aÑ¥¥H¨Q°¡N¤NÑ!2ð
õ •”�$˜q™'œ' !™)Ñ#Ñ$Ô$¥b­°!°Q©¬Ñ&7ð
õ �!‰WŒW�q‰[˜!‰O�R ™Uð
ð •�a‘”‰[˜!‰O�b˜S ™Vð
õ �!‰WŒW�q‰[˜!‰O�R¥¨¨B¡¤Ñ/ð
õ  �‰GŒG�A‰I�˜Q™œ ™	Ñ!¥2 b¡5ð!
õ" �!‰WŒWˆH�Q‰J�˜a™œ ™Ñ"¥R C¨¡Fð#
õ$ �!‰WŒW�q‰[�$˜q™'œ'Ñ!¥2 b¡5Ø•�a‘”‰[�$˜q™'œ'Ñ!¥B 3 r¡6Ý�‰GŒG�A‰I�˜Q™œ ™	Ñ!¥2¥h¨q°"¡o¤oÑ#5Ø•�a‘”‰[�$˜q™'œ'Ñ!¥2¥h¨q°"¡o¤oÑ#5ð+
ð 
ð 	
r7   c                  ó¤  — t          d¦  «        dz  t          dz  dt          d¦  «        z  t          dz  t          d¦  «        t          dz  t          d¦  «        dz
  t          dz  dt          d¦  «        z
  t           dz  dt          d¦  «        z   t          t          dd¦  «        z  t          ddt          d¦  «        z  z
  ¦  «        t          dz  t          ddt          d¦  «        z  z   ¦  «        t          t          dd¦  «        z  t          ddt          d¦  «        z  dz  z
  ¦  «        t          dz  t          ddt          d¦  «        z  dz  z   ¦  «        t          t          dd¦  «        z  dt          d¦  «        z
  t          dz  d	t          d¦  «        z   t           dz  dt          d¦  «        z   t          t          dd¦  «        z  iS )
Nrs   rv   r�   rƒ   rx   ru   rw   r}   rÙ   ©r&   r   r   rL   r7   r5   Ú_atan_tablez(InverseTrigonometricFunction._atan_table  sa  € õ �‰GŒG�A‰I•r˜!‘tØ�d�1‰gŒg‰I•r˜!‘tÝ�‰GŒG•R˜‘TÝ�‰GŒG�a‰K�˜A™Ø•�Q‘”‰K�"˜˜Q™Ø•�Q‘”‰K��H Q¨™NœNÑ*Ý��Q•t˜A‘w”w‘Y‘ÑÔ¥ A¡Ý��Q•t˜A‘w”w‘Y‘ÑÔ¥¥H¨Q°¡N¤NÑ!2Ý��Q•t˜A‘w”w‘Y˜q‘[‘Ñ!Ô!¥2 b¡5Ý��Q•t˜A‘w”w‘Y˜q‘[‘Ñ!Ô!¥2¥h¨q°"¡o¤oÑ#5Ø•�Q‘”‰K�˜B™Ø•�a‘”‰L�2˜#˜b™&Ø•�Q‘”‰K��H Q¨™OœOÑ+ð
ð 	
r7   c                  óþ  — i dt          d¦  «        z  dz  t          dz  “t          d¦  «        t          dz  “t          ddt          d¦  «        z  dz  z   ¦  «        t          dz  “dt          t          dd¦  «        t          d¦  «        dz  z
  ¦  «        z  t          dz  “t          ddt          d¦  «        z  dz  z
  ¦  «        t          t          dd¦  «        z  “dt          t          dd¦  «        t          d¦  «        dz  z   ¦  «        z  t          t          dd¦  «        z  “dt          dz  “t          ddt          d¦  «        z  z   ¦  «        t          dz  “dt          dt          d¦  «        z
  ¦  «        z  t          dz  “t          ddt          d¦  «        z  z
  ¦  «        t          t          dd¦  «        z  “dt          dt          d¦  «        z   ¦  «        z  t          t          dd¦  «        z  “dt          d¦  «        z   t          dz  “t          d¦  «        dz
  t          t          dd¦  «        z  “t          d¦  «        dz
   t          t          d	d¦  «        z  “t          d¦  «        t          d¦  «        z   t          d
z  “t          d¦  «        t          d¦  «        z
  t          t          dd
¦  «        z  “t          d¦  «        t          d¦  «        z
   t          t          dd
¦  «        z  “S )Nrƒ   rs   rt   ru   r�   rx   rv   rw   éýÿÿÿr}   éûÿÿÿr‘  rL   r7   r5   Ú_acsc_tablez(InverseTrigonometricFunction._acsc_table$  s¤  € ð

Ø�d�1‰gŒg‰I�a‰K�˜A™ð
å�‰GŒG•R˜‘Tð
õ ��Q•t˜A‘w”w‘Y˜q‘[‘Ñ!Ô!¥2 a¡4ð
ð �d•8˜A˜q‘>”>¥D¨¡G¤G¨A¡IÑ-Ñ.Ô.Ñ.µ°1±ð	
õ
 ��Q•t˜A‘w”w‘Y˜q‘[‘Ñ!Ô!¥2¥h¨q°!¡n¤nÑ#4ð
ð �d•8˜A˜q‘>”>¥D¨¡G¤G¨A¡IÑ-Ñ.Ô.Ñ.µµ8¸A¸q±>´>Ñ0Að
ð �r�!‰tð
õ ��Q•t˜A‘w”w‘Y‘ÑÔ¥ A¡ð
ð �d�1•t˜A‘w”w‘;ÑÔÑ¥ A¡ð
õ ��Q•t˜A‘w”w‘Y‘ÑÔ¥¥H¨Q°¡N¤NÑ!2ð
ð �d�1•t˜A‘w”w‘;ÑÔÑ¥¥H¨Q°¡N¤NÑ!2ð
ð •�Q‘”‰K�˜B™ð
õ �‰GŒG�a‰K��H Q¨™OœOÑ+ð
õ �1‰gŒg˜‰kˆN�B�x¨¨BÑ/Ô/Ñ/ð
õ �‰GŒG•d˜1‘g”gÑ�r "™uð
õ  �‰GŒG•d˜1‘g”gÑ�r¥(¨1¨b¡/¤/Ñ1ð!
õ" �1‰gŒg�˜Q™œÑÐ ¥"¥X¨b°"Ñ%5Ô%5Ñ"5ð#
ð 	
r7   N)rk   rl   rm   rn   r   r“   rÇ   rV   rp   rq   rh  r   r�  r’  r–  rL   r7   r5   r�  r�  í  sž   € € € € € Ø9Ð9Ø”e˜Qœ]¨A¬F°AÔ4EÐF€NàØð
ð 
ñ „Wñ „\ð
ð8 Øð
ð 
ñ „Wñ „\ð
ð& Øð
ð 
ñ „Wñ „\ð
ð 
ð 
r7   r�  c                   ó®   — e Zd ZdZdd„Zd„ Zd„ Zd„ Zed„ ¦   «         Z	e
ed„ ¦   «         ¦   «         Zdd„Zdd„Zd„ Zd„ Zd„ ZeZd„ Zd„ Zd„ Zd„ Zdd„Zd	S )rÉ   ad  
    The inverse sine function.

    Returns the arcsine of x in radians.

    Explanation
    ===========

    ``asin(x)`` will evaluate automatically in the cases
    $x \in \{\infty, -\infty, 0, 1, -1\}$ and for some instances when the
    result is a rational multiple of $\pi$ (see the ``eval`` class method).

    A purely imaginary argument will lead to an asinh expression.

    Examples
    ========

    >>> from sympy import asin, oo
    >>> asin(1)
    pi/2
    >>> asin(-1)
    -pi/2
    >>> asin(-oo)
    oo*I
    >>> asin(oo)
    -oo*I

    See Also
    ========

    sin, csc, cos, sec, tan, cot
    acsc, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Inverse_trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.23
    .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcSin

    r�   c                 ót   — |dk    r#dt          d| j        d         dz  z
  ¦  «        z  S t          | |¦  «        ‚©Nr�   r   rƒ   ©r&   r=   r	   r¬   s     r5   r®   z
asin.fdiffi  s=   € Ø�qŠ=ˆ=Ø•T˜!˜dœi¨œl¨A™oÑ-Ñ.Ô.Ñ.Ð.å$ T¨8Ñ4Ô4Ð4r7   c                 óz   —  | j         | j        Ž }|j         | j         k    r|j        d         j        rdS d S |j        S r;   ©r<   r=   r>   r@   s     r5   rC   zasin._eval_is_rationalo  óK   € ØˆDŒI�t”yÐ!ˆØŒ6�T”YÒÐØŒv�aŒyÔ$ð Ø�uðð ð ”=Ð r7   c                 óN   — |                       ¦   «         o| j        d         j        S r+  )rU  r=   Úis_positiver.  s    r5   Ú_eval_is_positivezasin._eval_is_positivew  ó"   € Ø×*Ò*Ñ,Ô,ÐI°´¸1´Ô1IÐIr7   c                 óN   — |                       ¦   «         o| j        d         j        S r+  )rU  r=   rL  r.  s    r5   Ú_eval_is_negativezasin._eval_is_negativez  r¡  r7   c                 ó<  — |j         r¬|t          j        u rt          j        S |t          j        u rt          j        t          j        z  S |t          j        u rt          j        t          j        z  S |j        rt          j        S |t          j        u r
t          dz  S |t          j
        u rt           dz  S |t          j        u rt          j        S |                     ¦   «         r | | ¦  «         S |j        r |                      ¦   «         }||v r||         S t          |¦  «        }|�ddlm} t          j         ||¦  «        z  S |j        rt          j        S t%          |t&          ¦  «        rj|j        d         }|j        rV|dt          z  z  }|t          k    r
t          |z
  }|t          dz  k    r
t          |z
  }|t           dz  k     rt           |z
  }|S t%          |t,          ¦  «        r.|j        d         }|j        rt          dz  t/          |¦  «        z
  S d S d S )Nrƒ   r   )Úasinh)r»   r   r¼   r½   r¾   r4   r?   rV   r“   r   rÇ   rp   rÅ   Ú	is_numberr�  r6   rÆ   r¥  r2   r¢   r=   Úis_comparabler«   rÌ   )rÐ   r    Ú
asin_tablerÒ   r¥  Úangs         r5   rÖ   z	asin.eval}  s  € àŒ=ð 	Ø•a”eˆ|ˆ|Ý”u�Ø�œ
Ð"Ð"ÝÔ)­!¬/Ñ9Ð9Ø�Ô*Ð*Ð*Ý”z¥!¤/Ñ1Ð1Ø”ð Ý”v�Ø�œ��Ý˜!‘t�Ø�œÐ%Ð%Ý�s˜1‘u�à•!Ô#Ð#Ð#ÝÔ$Ð$à×'Ò'Ñ)Ô)ð 	Ø�C˜˜‘I”I�:ÐàŒ=ð 	'ØŸšÑ*Ô*ˆJØ�jÐ Ð Ø! #”Ð&å0°Ñ5Ô5ˆØÐØCÐCÐCÐCÐCÐCÝ”? 5 5¨¡>¤>Ñ1Ð1àŒ;ð 	Ý”6ˆMå�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ø�q�‘t‘�Ø�’8�8Ý˜s™(�Cð �˜A™’:�:Ý˜s™(�CØ�"˜˜Q™’;�;Ý˜# ™)�Cà�
å�c�3ÑÔð 	(Ø”(˜1”+ˆCØÔ ð (Ý˜!‘t�d 3™iœiÑ'Ð'ð	(ð 	(ð(ð (r7   c                 óJ  — | dk     s	| dz  dk    rt           j        S t          |¦  «        }t          |¦  «        dk    r(| dk    r"|d         }|| dz
  dz  z  | | dz
  z  z  |dz  z  S | dz
  dz  }t	          t           j        |¦  «        }t          |¦  «        }||z  || z  z  | z  S rØ   )r   rV   r   rÛ   r   r‡   r   ©rÝ   r›   rÞ   rœ   ro  ÚRr½  s          r5   rß   zasin.taylor_term´  s·   € ð ˆqŠ5ˆ5�A˜‘E˜Q’J�JÝ”6ˆMå˜‘
”
ˆAÝ�>Ñ"Ô" aÒ'Ð'¨A°ªE¨EØ" 2Ô&�Ø˜!˜a™% !™‘| Q¨¨A©¡YÑ/°°1±Ñ4Ð4à˜‘U˜q‘L�Ý#¥A¤F¨AÑ.Ô.�Ý˜a‘L”L�Ø˜‘s˜1˜a™4‘x ‘zÐ!r7   Nr   c                 óÂ  — | j         d         }|                     |d¦  «                             ¦   «         }|t          j        u r(|                      |                     |¦  «        ¦  «        S |j        r|                     |¦  «        S |t          j         t          j        t          j	        fv rB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S d|dz  z
  j        rÏ|                     ||r|nd¦  «        }t!          |¦  «        j        r&|j        rt"           |                      |¦  «        z
  S n{t!          |¦  «        j        r%|j        rt"          |                      |¦  «        z
  S nB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S |                      |¦  «        S ©Nr   ©rã   rä   r�   rƒ   )r=   ræ   rI  r   r¼   r<   rJ  r?   r“   rp   rï   r#   rQ  rU   rL  rG  r!   r   rŸ  ©rA   r›   rã   rä   r    rO  Úndirs          r5   rQ  zasin._eval_as_leading_termÄ  s§  € ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•”ˆ;ˆ;Ø—9’9˜S×0Ò0°Ñ3Ô3Ñ4Ô4Ð4ØŒ:ð 	*Ø×&Ò& qÑ)Ô)Ð)ð •1”5�&�!œ%¥Ô!2Ð3Ð3Ð3Ø—<’<¥Ñ$Ô$×:Ò:¸1À4ÈdÐ:ÑSÔS×ZÒZÑ\Ô\Ð\à��A‘‰IÔ"ð 		aØ—7’7˜1 dÐ1˜d˜d°Ñ2Ô2ˆDÝ�$‰xŒxÔ#ð aØ”>ð /Ý˜3 §¢¨2¡¤Ñ.Ð.ð/å�D‘”Ô%ð aØ”>ð .Ý §	¢	¨"¡¤Ñ-Ð-ð.ð —|’|¥CÑ(Ô(×>Ò>¸qÀtÐRVÐ>ÑWÔW×^Ò^Ñ`Ô`Ð`Ø�yŠy˜‰}Œ}Ðr7   c                 óÖ  — ddl m} | j        d                              |d¦  «        }|t          j        u �r¥t          dd¬¦  «        }t          t          j        |dz  z
  ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z
  }	|	                     |¦  «        }
|	|
z
  |
z  }|                     |d¦  «        s4|dk    r |d¦  «        n"t          dz   |t          |¦  «        ¦  «        z   S t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S |t          j        u �r¦t          dd¬¦  «        }t          t          j        |dz  z   ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z   }	|	                     |¦  «        }
|	|
z
  |
z  }|                     |d¦  «        s5|dk    r |d¦  «        n#t           dz   |t          |¦  «        ¦  «        z   S t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S t)          j        | |||¬¦  «        }|t          j        u r|S d|dz  z
  j        r£| j        d                              ||r|nd¦  «        }t1          |¦  «        j        r|j        rt           |z
  S nWt1          |¦  «        j        r|j        r
t          |z
  S n1|                      t          ¦  «                             ||||¬	¦  «        S |S ©
Nr   ©ÚOr;  T©Úpositiverƒ   r�   r¿  r¯  )Úsympy.series.orderrµ  r=   ræ   r   r“   r   rÉ   rï   r#   ÚnseriesrJ  Úis_meromorphicr   r&   rç   ÚremoveOrU   ÚpowsimprÇ   r   rp   rL  rG  r!   rŸ  ©rA   r›   rÝ   rã   rä   rµ  Úarg0r;  ÚserÚarg1rd   re   Úres1Úresr±  s                  r5   rç   zasin._eval_nseriesÜ  sí  € Ø(Ð(Ð(Ð(Ð(Ð(ØŒy˜Œ|× Ò   AÑ&Ô&ˆà•1”5ˆ=‰=Ý�c DÐ)Ñ)Ô)ˆAÝ•q”u˜q !™t‘|Ñ$Ô$×,Ò,­SÑ1Ô1×9Ò9¸!¸QÀÀ!ÁÑDÔDˆCÝ”5˜4œ9 Qœ<Ñ'ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAØ×#Ò# A qÑ)Ô)ð =Ø  Ašv˜v�q�q˜‘t”t�t­2¨a©4°!°!µD¸±G´G±*´*Ñ+<Ð<Ý�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMà•1”=Ð Ñ Ý�c DÐ)Ñ)Ô)ˆAÝ•q”} q¨!¡tÑ+Ñ,Ô,×4Ò4µSÑ9Ô9×AÒAÀ!ÀQÈÈ!ÉÑLÔLˆCÝ”5˜4œ9 Qœ<Ñ'ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAØ×#Ò# A qÑ)Ô)ð >Ø  Ašv˜v�q�q˜‘t”t�t­B¨3¨q©5°1°1µT¸!±W´W±:´:Ñ+=Ð=Ý�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMåÔ$ T¨1°¸Ð=Ñ=Ô=ˆØ•1Ô$Ð$Ð$ØˆJà��a‘‰KÔ$ð 		SØ”9˜Q”<×#Ò# A¨tÐ': t t¸Ñ;Ô;ˆDÝ�$‰xŒxÔ#ð SØÔ#ð %Ý˜3 ™9Ð$ð%å�D‘”Ô%ð SØÔ#ð $Ý ™8�Oð$ð —|’|¥CÑ(Ô(×6Ò6°q¸!À$ÈTÐ6ÑRÔRÐRØˆ
r7   c                 ó6   — t           dz  t          |¦  «        z
  S r¤   ©r   rÌ   rÞ  s      r5   Ú_eval_rewrite_as_acoszasin._eval_rewrite_as_acos	  ó   € Ý�!‰t•d˜1‘g”g‰~Ðr7   c           
      óX   — dt          |dt          d|dz  z
  ¦  «        z   z  ¦  «        z  S r  )rÊ   r&   rÞ  s      r5   Ú_eval_rewrite_as_atanzasin._eval_rewrite_as_atan	  s-   € Ø•�a˜�T ! a¨¡d¡(™^œ^Ñ+Ñ,Ñ-Ô-Ñ-Ð-r7   c           	      ó‚   — t           j         t          t           j        |z  t          d|dz  z
  ¦  «        z   ¦  «        z  S r­  ©r   r4   r#   r&   rÞ  s      r5   Ú_eval_rewrite_as_logzasin._eval_rewrite_as_log	  s4   € Ý”Ð¥¥A¤O°AÑ$5½¸QÀÀAÁ¹X¹¼Ñ$FÑ GÔ GÑGÐGr7   c           	      óX   — dt          dt          d|dz  z
  ¦  «        z   |z  ¦  «        z  S r  )rÍ   r&   rý   s      r5   Ú_eval_rewrite_as_acotzasin._eval_rewrite_as_acot	  s/   € Ø•�q�4  C¨¡F¡
Ñ+Ô+Ñ+¨SÑ0Ñ1Ô1Ñ1Ð1r7   c                 ó<   — t           dz  t          d|z  ¦  «        z
  S r  ©r   rÏ   rý   s      r5   Ú_eval_rewrite_as_aseczasin._eval_rewrite_as_asec	  ó   € Ý�!‰t•d˜1˜S™5‘k”kÑ!Ð!r7   c                 ó&   — t          d|z  ¦  «        S r  )rÎ   rý   s      r5   Ú_eval_rewrite_as_acsczasin._eval_rewrite_as_acsc	  ó   € Ý�A�c‘E‰{Œ{Ðr7   c                 óX   — | j         d         }|j        odt          |¦  «        z
  j        S ©Nr   r�   ©r=   rT   r_   Úis_nonnegative©rA   r›   s     r5   rU  zasin._eval_is_extended_real	  ó(   € ØŒI�aŒLˆØÔ!ÐA q­3¨q©6¬6¡zÔ&AÐAr7   c                 ó   — t           S r¯  rÝ  r¬   s     r5   r±  zasin.inverse 	  ó	   € õ ˆ
r7   re  r+  rf  )rk   rl   rm   rn   r®   rC   r   r£  rg  rÖ   rh  r   rß   rQ  rç   rÅ  rÈ  rË  Ú_eval_rewrite_as_tractablerÍ  rÐ  rÓ  rU  r±  rL   r7   r5   rÉ   rÉ   >  s[  € € € € € ð(ð (ðT5ð 5ð 5ð 5ð!ð !ð !ðJð Jð JðJð Jð Jð ð4(ð 4(ñ „[ð4(ðl Øð"ð "ñ „Wñ „\ð"ðð ð ð ð0*ð *ð *ð *ðXð ð ð.ð .ð .ðHð Hð Hð "6Ðð2ð 2ð 2ð"ð "ð "ðð ð ðBð Bð Bðð ð ð ð ð r7   rÉ   c                   ó®   — e Zd ZdZdd„Zd„ Zed„ ¦   «         Zee	d„ ¦   «         ¦   «         Z
dd	„Zd
„ Zd„ Zdd„Zd„ ZeZd„ Zd„ Zdd„Zd„ Zd„ Zd„ Zd„ ZdS )rÌ   aº  
    The inverse cosine function.

    Explanation
    ===========

    Returns the arc cosine of x (measured in radians).

    ``acos(x)`` will evaluate automatically in the cases
    $x \in \{\infty, -\infty, 0, 1, -1\}$ and for some instances when
    the result is a rational multiple of $\pi$ (see the eval class method).

    ``acos(zoo)`` evaluates to ``zoo``
    (see note in :class:`sympy.functions.elementary.trigonometric.asec`)

    A purely imaginary argument will be rewritten to asinh.

    Examples
    ========

    >>> from sympy import acos, oo
    >>> acos(1)
    0
    >>> acos(0)
    pi/2
    >>> acos(oo)
    oo*I

    See Also
    ========

    sin, csc, cos, sec, tan, cot
    asin, acsc, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Inverse_trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.23
    .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcCos

    r�   c                 ót   — |dk    r#dt          d| j        d         dz  z
  ¦  «        z  S t          | |¦  «        ‚©Nr�   r´   r   rƒ   rš  r¬   s     r5   r®   z
acos.fdiffS	  s=   € Ø�qŠ=ˆ=Ø•d˜1˜tœy¨œ|¨Q™Ñ.Ñ/Ô/Ñ/Ð/å$ T¨8Ñ4Ô4Ð4r7   c                 óz   —  | j         | j        Ž }|j         | j         k    r|j        d         j        rdS d S |j        S r;   rœ  r@   s     r5   rC   zacos._eval_is_rationalY	  r�  r7   c                 ó®  — |j         r¨|t          j        u rt          j        S |t          j        u rt          j        t          j        z  S |t          j        u rt          j        t          j        z  S |j        r
t          dz  S |t          j        u rt          j	        S |t          j
        u rt          S |t          j        u rt          j        S |j        rD|                      ¦   «         }||v rt          dz  ||         z
  S | |v rt          dz  ||          z   S t          |¦  «        }|�t          dz  t          |¦  «        z
  S t!          |t"          ¦  «        r;|j        d         }|j        r'|dt          z  z  }|t          k    rdt          z  |z
  }|S t!          |t(          ¦  «        r.|j        d         }|j        rt          dz  t          |¦  «        z
  S d S d S ©Nrƒ   r   )r»   r   r¼   r½   r4   r¾   r?   r   r“   rV   rÇ   rp   r¦  r�  r6   rÉ   r2   r«   r=   r§  r¢   )rÐ   r    r¨  rÒ   r©  s        r5   rÖ   z	acos.evala	  sÉ  € àŒ=ð 	Ø•a”eˆ|ˆ|Ý”u�Ø�œ
Ð"Ð"Ý”z¥!¤/Ñ1Ð1Ø�Ô*Ð*Ð*ÝÔ)­!¬/Ñ9Ð9Ø”ð Ý˜!‘t�Ø�œ��Ý”v�Ø�œÐ%Ð%Ý�	à•!Ô#Ð#Ð#ÝÔ$Ð$àŒ=ð 	/ØŸšÑ*Ô*ˆJØ�jÐ Ð Ý˜!‘t˜j¨œoÑ-Ð-Ø�˜Ð#Ð#Ý˜!‘t˜j¨#¨Ô.Ñ.Ð.å0°Ñ5Ô5ˆØÐÝ�a‘4�$˜s™)œ)Ñ#Ð#å�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ø�q�‘t‘�Ø�’8�8Ø�B™$ ™*�Cà�
å�c�3ÑÔð 	(Ø”(˜1”+ˆCØÔ ð (Ý˜!‘t�d 3™iœiÑ'Ð'ð	(ð 	(ð(ð (r7   c                 ól  — | dk    r
t           dz  S | dk     s	| dz  dk    rt          j        S t          |¦  «        }t	          |¦  «        dk    r(| dk    r"|d         }|| dz
  dz  z  | | dz
  z  z  |dz  z  S | dz
  dz  }t          t          j        |¦  «        }t          |¦  «        }| |z  || z  z  | z  S rØ   )r   r   rV   r   rÛ   r   r‡   r   r«  s          r5   rß   zacos.taylor_term�	  sË   € ð �Š6ˆ6Ý�a‘4ˆKØ�ŠUˆU�a˜!‘e˜q’j�jÝ”6ˆMå˜‘
”
ˆAÝ�>Ñ"Ô" aÒ'Ð'¨A°ªE¨EØ" 2Ô&�Ø˜!˜a™% !™‘| Q¨¨A©¡YÑ/°°1±Ñ4Ð4à˜‘U˜q‘L�Ý#¥A¤F¨AÑ.Ô.�Ý˜a‘L”L�Ø�r˜!‘t˜A˜q™D‘y ‘{Ð"r7   Nr   c                 óÐ  — | j         d         }|                     |d¦  «                             ¦   «         }|t          j        u r(|                      |                     |¦  «        ¦  «        S |dk    r?t          d¦  «        t          t          j        |z
                       |¦  «        ¦  «        z  S |t          j         t          j	        fv r0|  
                    t          ¦  «                             |||¬¦  «        S d|dz  z
  j        rÊ|                     ||r|nd¦  «        }t          |¦  «        j        r(|j        r dt           z  |                      |¦  «        z
  S ntt          |¦  «        j        r|j        r|                      |¦  «         S nB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S |                      |¦  «        S ©Nr   r�   rƒ   r¯  )r=   ræ   rI  r   r¼   r<   rJ  r&   r“   rp   rï   r#   rQ  rL  rG  r!   r   rŸ  rU   r°  s          r5   rQ  zacos._eval_as_leading_termŸ	  s¬  € ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•”ˆ;ˆ;Ø—9’9˜S×0Ò0°Ñ3Ô3Ñ4Ô4Ð4à�Š7ˆ7Ý˜‘7”7�4¥¤¨¡× =Ò =¸aÑ @Ô @ÑAÔAÑAÐAØ•1”5�&�!Ô+Ð,Ð,Ð,Ø—<’<¥Ñ$Ô$×:Ò:¸1À4ÈdÐ:ÑSÔSÐSà��A‘‰IÔ"ð 		aØ—7’7˜1 dÐ1˜d˜d°Ñ2Ô2ˆDÝ�$‰xŒxÔ#ð aØ”>ð 0Ø�R™4 $§)¢)¨B¡-¤-Ñ/Ð/ð0å�D‘”Ô%ð aØ”>ð *Ø ŸIšI b™MœM˜>Ð)ð*ð —|’|¥CÑ(Ô(×>Ò>¸qÀtÐRVÐ>ÑWÔW×^Ò^Ñ`Ô`Ð`Ø�yŠy˜‰}Œ}Ðr7   c                 óX   — | j         d         }|j        odt          |¦  «        z
  j        S rÖ  r×  rÙ  s     r5   rU  zacos._eval_is_extended_real¶	  rÚ  r7   c                 ó*   — |                       ¦   «         S rj   )rU  r.  s    r5   Ú_eval_is_nonnegativezacos._eval_is_nonnegativeº	  s   € Ø×*Ò*Ñ,Ô,Ð,r7   c                 ó®  — ddl m} | j        d                              |d¦  «        }|t          j        u �ršt          dd¬¦  «        }t          t          j        |dz  z
  ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z
  }	|	                     |¦  «        }
|	|
z
  |
z  }|                     |d¦  «        s)|dk    r |d¦  «        n |t          |¦  «        ¦  «        S t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S |t          j        u �r¢t          dd¬¦  «        }t          t          j        |dz  z   ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z   }	|	                     |¦  «        }
|	|
z
  |
z  }|                     |d¦  «        s1|dk    r |d¦  «        nt&           |t          |¦  «        ¦  «        z   S t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S t)          j        | |||¬¦  «        }|t          j        u r|S d|dz  z
  j        rž| j        d                              ||r|nd¦  «        }t1          |¦  «        j        r|j        rdt&          z  |z
  S nPt1          |¦  «        j        r|j        r| S n1|                      t          ¦  «                             ||||¬	¦  «        S |S r³  )r¸  rµ  r=   ræ   r   r“   r   rÌ   rï   r#   r¹  rJ  rº  r&   rç   r»  rU   r¼  rÇ   r   r   rp   rL  rG  r!   rŸ  r½  s                  r5   rç   zacos._eval_nseries½	  sÝ  € Ø(Ð(Ð(Ð(Ð(Ð(ØŒy˜Œ|× Ò   AÑ&Ô&ˆà•1”5ˆ=‰=Ý�c DÐ)Ñ)Ô)ˆAÝ•q”u˜q !™t‘|Ñ$Ô$×,Ò,­SÑ1Ô1×9Ò9¸!¸QÀÀ!ÁÑDÔDˆCÝ”5˜4œ9 Qœ<Ñ'ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAØ×#Ò# A qÑ)Ô)ð 6Ø  Ašv˜v�q�q˜‘t”t�t¨1¨1­T°!©W¬W©:¬:Ð5Ý�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMà•1”=Ð Ñ Ý�c DÐ)Ñ)Ô)ˆAÝ•q”} q¨!¡tÑ+Ñ,Ô,×4Ò4µSÑ9Ô9×AÒAÀ!ÀQÈÈ!ÉÑLÔLˆCÝ”5˜4œ9 Qœ<Ñ'ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAØ×#Ò# A qÑ)Ô)ð ;Ø  Ašv˜v�q�q˜‘t”t�t­2°°µ$°q±'´'±
´
©?Ð:Ý�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMåÔ$ T¨1°¸Ð=Ñ=Ô=ˆØ•1Ô$Ð$Ð$ØˆJà��a‘‰KÔ$ð 		SØ”9˜Q”<×#Ò# A¨tÐ': t t¸Ñ;Ô;ˆDÝ�$‰xŒxÔ#ð SØÔ#ð &Ø�R™4 #™:Ð%ð&å�D‘”Ô%ð SØÔ#ð  Ø˜4�Kð ð —|’|¥CÑ(Ô(×6Ò6°q¸!À$ÈTÐ6ÑRÔRÐRØˆ
r7   c           
      ó–   — t           dz  t          j        t          t          j        |z  t	          d|dz  z
  ¦  «        z   ¦  «        z  z   S r  ©r   r   r4   r#   r&   rÞ  s      r5   rË  zacos._eval_rewrite_as_logé	  sA   € Ý�!‰t•a”oÝ•” Ñ!¥D¨¨Q°©T©¡N¤NÑ2Ñ3Ô3ñ4ñ 4ð 	4r7   c                 ó6   — t           dz  t          |¦  «        z
  S r¤   ©r   rÉ   rÞ  s      r5   Ú_eval_rewrite_as_asinzacos._eval_rewrite_as_asinï	  rÆ  r7   c           	      óš   — t          t          d|dz  z
  ¦  «        |z  ¦  «        t          dz  d|t          d|dz  z  ¦  «        z  z
  z  z   S r­  )rÊ   r&   r   rÞ  s      r5   rÈ  zacos._eval_rewrite_as_atanò	  sH   € Ý•D˜˜Q ™T™‘N”N 1Ñ$Ñ%Ô%­¨A©°°Aµd¸1¸QÀ¹T¹6±l´l±NÑ0BÑ(CÑCÐCr7   c                 ó   — t           S r¯  ra  r¬   s     r5   r±  zacos.inverseõ	  rÜ  r7   c           
      ón   — t           dz  dt          dt          d|dz  z
  ¦  «        z   |z  ¦  «        z  z
  S r  )r   rÍ   r&   rý   s      r5   rÍ  zacos._eval_rewrite_as_acotû	  s8   € Ý�!‰t�a�˜a¥$ q¨3°©6¡zÑ"2Ô"2Ñ2°CÑ7Ñ8Ô8Ñ8Ñ8Ð8r7   c                 ó&   — t          d|z  ¦  «        S r  )rÏ   rý   s      r5   rÐ  zacos._eval_rewrite_as_asecþ	  rÔ  r7   c                 ó<   — t           dz  t          d|z  ¦  «        z
  S r  ©r   rÎ   rý   s      r5   rÓ  zacos._eval_rewrite_as_acsc
  rÑ  r7   c                 óÜ   — | j         d         }|                      | j         d                              ¦   «         ¦  «        }|j        du r|S |j        r|dz   j        r|dz
  j        r|S d S d S d S ©Nr   Fr�   )r=   r<   r-  rT   rØ  Úis_nonpositive)rA   r‹  Úrs      r5   r/  zacos._eval_conjugate
  s�   € ØŒI�aŒLˆØ�IŠI�d”i ”l×,Ò,Ñ.Ô.Ñ/Ô/ˆØÔ Ð&Ð&ØˆHØÔð 	 Q¨¡UÔ$:ð 	ÀÀAÁÔ?Uð 	ØˆHð	ð 	ð 	ð 	ð 	ð 	r7   re  r+  rf  )rk   rl   rm   rn   r®   rC   rg  rÖ   rh  r   rß   rQ  rU  ré  rç   rË  rÝ  rï  rÈ  r±  rÍ  rÐ  rÓ  r/  rL   r7   r5   rÌ   rÌ   '	  sU  € € € € € ð)ð )ðV5ð 5ð 5ð 5ð!ð !ð !ð ð)(ð )(ñ „[ð)(ðV Øð#ð #ñ „Wñ „\ð#ð ð ð ð ð.Bð Bð Bð-ð -ð -ð*ð *ð *ð *ðX4ð 4ð 4ð "6Ððð ð ðDð Dð Dðð ð ð ð9ð 9ð 9ðð ð ð"ð "ð "ðð ð ð ð r7   rÌ   c                   óú   ‡ — e Zd ZU dZee         ed<   ej        ej         fZ	dd„Z
d„ Zd„ Zd„ Zd„ Zd	„ Zed
„ ¦   «         Zeed„ ¦   «         ¦   «         Zdd„Zdd„Zd„ ZeZˆ fd„Zdd„Zd„ Zd„ Zd„ Zd„ Zd„ Zˆ xZ S )rÊ   a  
    The inverse tangent function.

    Returns the arc tangent of x (measured in radians).

    Explanation
    ===========

    ``atan(x)`` will evaluate automatically in the cases
    $x \in \{\infty, -\infty, 0, 1, -1\}$ and for some instances when the
    result is a rational multiple of $\pi$ (see the eval class method).

    Examples
    ========

    >>> from sympy import atan, oo
    >>> atan(0)
    0
    >>> atan(1)
    pi/4
    >>> atan(oo)
    pi/2

    See Also
    ========

    sin, csc, cos, sec, tan, cot
    asin, acsc, acos, asec, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Inverse_trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.23
    .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcTan

    r=   r�   c                 óZ   — |dk    rdd| j         d         dz  z   z  S t          | |¦  «        ‚r™  ©r=   r	   r¬   s     r5   r®   z
atan.fdiff8
  s5   € Ø�qŠ=ˆ=Ø�a˜$œ) Aœ,¨™/Ñ)Ñ*Ð*å$ T¨8Ñ4Ô4Ð4r7   c                 óz   —  | j         | j        Ž }|j         | j         k    r|j        d         j        rdS d S |j        S r;   rœ  r@   s     r5   rC   zatan._eval_is_rational>
  r�  r7   c                 ó&   — | j         d         j        S r+  )r=   Úis_extended_positiver.  s    r5   r   zatan._eval_is_positiveF
  s   € ØŒy˜Œ|Ô0Ð0r7   c                 ó&   — | j         d         j        S r+  )r=   Úis_extended_nonnegativer.  s    r5   ré  zatan._eval_is_nonnegativeI
  s   € ØŒy˜Œ|Ô3Ð3r7   c                 ó&   — | j         d         j        S r+  )r=   r?   r.  s    r5   r_  zatan._eval_is_zeroL
  s   € ØŒy˜Œ|Ô#Ð#r7   c                 ó&   — | j         d         j        S r+  rT  r.  s    r5   rþ  zatan._eval_is_realO
  r  r7   c                 ó   — |j         r�|t          j        u rt          j        S |t          j        u r
t          dz  S |t          j        u rt           dz  S |j        rt          j        S |t          j        u r
t          dz  S |t          j	        u rt           dz  S |t          j
        u r#ddlm}  |t           dz  t          dz  ¦  «        S |                     ¦   «         r | | ¦  «         S |j        r |                      ¦   «         }||v r||         S t!          |¦  «        }|�ddlm} t          j         ||¦  «        z  S |j        rt          j        S t)          |t*          ¦  «        r8|j        d         }|j        r$|t          z  }|t          dz  k    r
|t          z  }|S t)          |t0          ¦  «        rH|j        d         }|j        r6t          dz  t3          |¦  «        z
  }|t          dz  k    r
|t          z  }|S d S d S )Nrƒ   rt   r   r°   )Úatanh)r»   r   r¼   r½   r   r¾   r?   rV   r“   rÇ   rp   r¹   r±   rÅ   r¦  r’  r6   rÆ   r  r4   r2   r  r=   r§  r  rÍ   )rÐ   r    r±   Ú
atan_tablerÒ   r  r©  s          r5   rÖ   z	atan.evalR
  s  € àŒ=ð 	Ø•a”eˆ|ˆ|Ý”u�Ø�œ
Ð"Ð"Ý˜!‘t�Ø�Ô*Ð*Ð*Ý�s˜1‘u�Ø”ð Ý”v�Ø�œ��Ý˜!‘t�Ø�œÐ%Ð%Ý�s˜1‘u�à•!Ô#Ð#Ð#ØEÐEÐEÐEÐEÐEØ�;¥˜s 1™u¥b¨¡dÑ+Ô+Ð+à×'Ò'Ñ)Ô)ð 	Ø�C˜˜‘I”I�:ÐàŒ=ð 	'ØŸšÑ*Ô*ˆJØ�jÐ Ð Ø! #”Ð&å0°Ñ5Ô5ˆØÐØCÐCÐCÐCÐCÐCÝ”? 5 5¨¡>¤>Ñ1Ð1àŒ;ð 	Ý”6ˆMå�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ø•r‘	�Ø�˜A™’:�:Ø�2‘I�Cà�
å�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ý˜‘d�T #™YœYÑ&�Ø�˜A™’:�:Ø�2‘I�CØ�
ð	ð 	ðð r7   c                 ó’   — | dk     s	| dz  dk    rt           j        S t          |¦  «        }t           j        | dz
  dz  z  || z  z  | z  S r»  )r   rV   r   rÇ   ©rÝ   r›   rÞ   s      r5   rß   zatan.taylor_term‡
  sN   € ð ˆqŠ5ˆ5�A˜‘E˜Q’J�JÝ”6ˆMå˜‘
”
ˆAÝ”= A¨¡E¨A¡:Ñ.¨q°!©tÑ3°AÑ5Ð5r7   Nr   c                 óô  — | j         d         }|                     |d¦  «                             ¦   «         }|t          j        u r(|                      |                     |¦  «        ¦  «        S |j        r|                     |¦  «        S |t          j         t          j        t          j	        fv rB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S d|dz  z   j        rè|                     ||r|nd¦  «        }t!          |¦  «        j        r2t#          |¦  «        j        r|                      |¦  «        t&          z
  S nˆt!          |¦  «        j        r2t#          |¦  «        j        r|                      |¦  «        t&          z   S nB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S |                      |¦  «        S r®  )r=   ræ   rI  r   r¼   r<   rJ  r?   r4   rp   rï   r#   rQ  rU   rL  rG  r"   r!   rŸ  r   r°  s          r5   rQ  zatan._eval_as_leading_term�
  s²  € ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•”ˆ;ˆ;Ø—9’9˜S×0Ò0°Ñ3Ô3Ñ4Ô4Ð4ØŒ:ð 	*Ø×&Ò& qÑ)Ô)Ð)à•1”?Ð"¥A¤OµQÔ5FÐGÐGÐGØ—<’<¥Ñ$Ô$×:Ò:¸1À4ÈdÐ:ÑSÔS×ZÒZÑ\Ô\Ð\à��A‘‰IÔ"ð 		aØ—7’7˜1 dÐ1˜d˜d°Ñ2Ô2ˆDÝ�$‰xŒxÔ#ð aÝ�b‘6”6Ô%ð .ØŸ9š9 R™=œ=­2Ñ-Ð-ð.å�D‘”Ô%ð aÝ�b‘6”6Ô%ð .ØŸ9š9 R™=œ=­2Ñ-Ð-ð.ð —|’|¥CÑ(Ô(×>Ò>¸qÀtÐRVÐ>ÑWÔW×^Ò^Ñ`Ô`Ð`Ø�yŠy˜‰}Œ}Ðr7   c                 ó  — | j         d                              |d¦  «        }|t          j        t          j        t          j        z  fv r1|                      t          ¦  «                             ||||¬¦  «        S t          j        | |||¬¦  «        }| j         d          	                    ||r|nd¦  «        }|t          j
        u rt          |¦  «        dk    r
|t          z
  S |S d|dz  z   j        r—t          |¦  «        j        rt          |¦  «        j        r
|t          z
  S ndt          |¦  «        j        rt          |¦  «        j        r
|t          z   S n1|                      t          ¦  «                             ||||¬¦  «        S |S ©Nr   r¯  r¿  r�   rƒ   )r=   ræ   r   r4   rÇ   rï   r#   rç   r   rG  rp   r"   r   rL  r!   rŸ  ©rA   r›   rÝ   rã   rä   r¾  rÂ  r±  s           r5   rç   zatan._eval_nseries§
  sq  € ØŒy˜Œ|× Ò   AÑ&Ô&ˆð •A”O¥Q¤]µ1´?Ñ%BÐCÐCÐCØ—<’<¥Ñ$Ô$×2Ò2°1°a¸dÈÐ2ÑNÔNÐNåÔ$ T¨1°¸Ð=Ñ=Ô=ˆØŒy˜Œ|×Ò ¨4Ð#6 4 4°QÑ7Ô7ˆØ•1Ô$Ð$Ð$Ý�$‰xŒx˜!Š|ˆ|Ø�R‘x�ØˆJà��a‘‰KÔ$ð 	SÝ�$‰xŒxÔ#ð SÝ�d‘8”8Ô'ð $Ø¥™8�Oð$å�D‘”Ô%ð SÝ�d‘8”8Ô'ð $Ø¥™8�Oð$ð —|’|¥CÑ(Ô(×6Ò6°q¸!À$ÈTÐ6ÑRÔRÐRØˆ
r7   c                 óÈ   — t           j        dz  t          t           j        t           j        |z  z
  ¦  «        t          t           j        t           j        |z  z   ¦  «        z
  z  S r¤   )r   r4   r#   r“   rÞ  s      r5   rË  zatan._eval_rewrite_as_logÀ
  sL   € ÝŒ˜qÑ ¥#¥a¤e­a¬o¸aÑ.?Ñ&?Ñ"@Ô"@Ý•!”%�!œ/¨!Ñ+Ñ+Ñ,Ô,ñ#-ñ .ð 	.r7   c                 ó  •— |d         t           j        t           j        fv r=t          dz  t	          d| j        d         z  ¦  «        z
                       |||¦  «        S t          ¦   «                              ||||¦  «        S r»  )	r   r½   r¾   r   rÊ   r=   rç   ÚsuperÚ_eval_aseries©rA   rÝ   Úargs0r›   rã   Ú	__class__s        €r5   r  zatan._eval_aseriesÆ
  sm   ø€ Ø�Œ8�œ
¥AÔ$6Ð7Ð7Ð7Ý�q‘D�4  $¤)¨A¤,¡Ñ/Ô/Ñ/×>Ò>¸qÀ!ÀTÑJÔJÐJå‘7”7×(Ò(¨¨E°1°dÑ;Ô;Ð;r7   c                 ó   — t           S r¯  r  r¬   s     r5   r±  zatan.inverseÌ
  rÜ  r7   c           
      óŽ   — t          |dz  ¦  «        |z  t          dz  t          dt          d|dz  z   ¦  «        z  ¦  «        z
  z  S r  ©r&   r   rÉ   rý   s      r5   rï  zatan._eval_rewrite_as_asinÒ
  sB   € Ý�C˜‘F‰|Œ|˜CÑ¥ A¡­¨Q­t°A¸¸Q¹±JÑ/?Ô/?Ñ-?Ñ(@Ô(@Ñ!@ÑAÐAr7   c           	      óx   — t          |dz  ¦  «        |z  t          dt          d|dz  z   ¦  «        z  ¦  «        z  S r  ©r&   rÌ   rý   s      r5   rÅ  zatan._eval_rewrite_as_acosÕ
  s9   € Ý�C˜‘F‰|Œ|˜CÑ¥ Q¥t¨A°°Q±©JÑ'7Ô'7Ñ%7Ñ 8Ô 8Ñ8Ð8r7   c                 ó&   — t          d|z  ¦  «        S r  r  rý   s      r5   rÍ  zatan._eval_rewrite_as_acotØ
  rÔ  r7   c                 ór   — t          |dz  ¦  «        |z  t          t          d|dz  z   ¦  «        ¦  «        z  S r  ©r&   rÏ   rý   s      r5   rÐ  zatan._eval_rewrite_as_asecÛ
  s4   € Ý�C˜‘F‰|Œ|˜CÑ¥¥T¨!¨c°1©f©*Ñ%5Ô%5Ñ 6Ô 6Ñ6Ð6r7   c           	      óˆ   — t          |dz  ¦  «        |z  t          dz  t          t          d|dz  z   ¦  «        ¦  «        z
  z  S r  ©r&   r   rÎ   rý   s      r5   rÓ  zatan._eval_rewrite_as_acscÞ
  s=   € Ý�C˜‘F‰|Œ|˜CÑ¥ A¡­­T°!°c¸1±f±*Ñ-=Ô-=Ñ(>Ô(>Ñ!>Ñ?Ð?r7   re  r+  rf  )!rk   rl   rm   rn   ÚtTupler   rY  r   r4   rq   r®   rC   r   ré  r_  rþ  rg  rÖ   rh  r   rß   rQ  rç   rË  rÝ  r  r±  rï  rÅ  rÍ  rÐ  rÓ  Ú__classcell__©r  s   @r5   rÊ   rÊ   
  s°  ø€ € € € € € ð$ð $ðL �Œ,ÐÐÑà”o¨¬Ð'7Ð8€Nð5ð 5ð 5ð 5ð!ð !ð !ð1ð 1ð 1ð4ð 4ð 4ð$ð $ð $ð-ð -ð -ð ð2ð 2ñ „[ð2ðh Øð6ð 6ñ „Wñ „\ð6ðð ð ð ð.ð ð ð ð2.ð .ð .ð "6Ðð<ð <ð <ð <ð <ðð ð ð ðBð Bð Bð9ð 9ð 9ðð ð ð7ð 7ð 7ð@ð @ð @ð @ð @ð @ð @r7   rÊ   c                   óÜ   ‡ — e Zd ZdZej        ej         fZdd„Zd„ Zd„ Z	d„ Z
d„ Zed„ ¦   «         Zeed	„ ¦   «         ¦   «         Zdd„Zdd„Zˆ fd„Zd„ ZeZdd„Zd„ Zd„ Zd„ Zd„ Zd„ Zˆ xZS )rÍ   aÊ  
    The inverse cotangent function.

    Returns the arc cotangent of x (measured in radians).

    Explanation
    ===========

    ``acot(x)`` will evaluate automatically in the cases
    $x \in \{\infty, -\infty, \tilde{\infty}, 0, 1, -1\}$
    and for some instances when the result is a rational multiple of $\pi$
    (see the eval class method).

    A purely imaginary argument will lead to an ``acoth`` expression.

    ``acot(x)`` has a branch cut along $(-i, i)$, hence it is discontinuous
    at 0. Its range for real $x$ is $(-\frac{\pi}{2}, \frac{\pi}{2}]$.

    Examples
    ========

    >>> from sympy import acot, sqrt
    >>> acot(0)
    pi/2
    >>> acot(1)
    pi/4
    >>> acot(sqrt(3) - 2)
    -5*pi/12

    See Also
    ========

    sin, csc, cos, sec, tan, cot
    asin, acsc, acos, asec, atan, atan2

    References
    ==========

    .. [1] https://dlmf.nist.gov/4.23
    .. [2] https://functions.wolfram.com/ElementaryFunctions/ArcCot

    r�   c                 óZ   — |dk    rdd| j         d         dz  z   z  S t          | |¦  «        ‚rà  rü  r¬   s     r5   r®   z
acot.fdiff  s5   € Ø�qŠ=ˆ=Ø�q˜4œ9 Qœ<¨™?Ñ*Ñ+Ð+å$ T¨8Ñ4Ô4Ð4r7   c                 óz   —  | j         | j        Ž }|j         | j         k    r|j        d         j        rdS d S |j        S r;   rœ  r@   s     r5   rC   zacot._eval_is_rational  r�  r7   c                 ó&   — | j         d         j        S r+  )r=   rØ  r.  s    r5   r   zacot._eval_is_positive  s   € ØŒy˜Œ|Ô*Ð*r7   c                 ó&   — | j         d         j        S r+  )r=   rL  r.  s    r5   r£  zacot._eval_is_negative   s   € ØŒy˜Œ|Ô'Ð'r7   c                 ó&   — | j         d         j        S r+  rT  r.  s    r5   rU  zacot._eval_is_extended_real#  r  r7   c                 ó0  — |j         r�|t          j        u rt          j        S |t          j        u rt          j        S |t          j        u rt          j        S |j        r
t          dz  S |t          j        u r
t          dz  S |t          j	        u rt           dz  S |t          j
        u rt          j        S |                     ¦   «         r | | ¦  «         S |j        rE|                      ¦   «         }||v r-t          dz  ||         z
  }|t          dz  k    r
|t          z  }|S t          |¦  «        }|�ddlm} t          j          ||¦  «        z  S |j        rt          t          j        z  S t'          |t(          ¦  «        r8|j        d         }|j        r$|t          z  }|t          dz  k    r
|t          z  }|S t'          |t.          ¦  «        rH|j        d         }|j        r6t          dz  t1          |¦  «        z
  }|t          dz  k    r
|t          z  }|S d S d S )Nrƒ   rt   r   )Úacoth)r»   r   r¼   r½   rV   r¾   r?   r   r“   rÇ   rp   rÅ   r¦  r’  r6   rÆ   r(  r4   r‡   r2   r  r=   r§  r  rÊ   )rÐ   r    r  r©  rÒ   r(  s         r5   rÖ   z	acot.eval&  s  € àŒ=ð 	Ø•a”eˆ|ˆ|Ý”u�Ø�œ
Ð"Ð"Ý”v�Ø�Ô*Ð*Ð*Ý”v�Ø”ð Ý˜1‘u�Ø�œ��Ý˜!‘t�Ø�œÐ%Ð%Ý�s˜1‘u�à•!Ô#Ð#Ð#Ý”6ˆMà×'Ò'Ñ)Ô)ð 	Ø�C˜˜‘I”I�:ÐàŒ=ð 	ØŸšÑ*Ô*ˆJØ�jÐ Ð Ý˜‘d˜Z¨œ_Ñ,�Ø�˜A™’:�:Ø�2‘I�CØ�
å0°Ñ5Ô5ˆØÐØCÐCÐCÐCÐCÐCÝ”OÐ# E E¨'¡N¤NÑ2Ð2àŒ;ð 	Ý•a”f‘9Ðå�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ø•r‘	�Ø�˜A™’:�:Ø�2‘I�CØ�
å�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ý˜‘d�T #™YœYÑ&�Ø�˜A™’:�:Ø�2‘I�CØ�
ð	ð 	ðð r7   c                 ó²   — | dk    r
t           dz  S | dk     s	| dz  dk    rt          j        S t          |¦  «        }t          j        | dz   dz  z  || z  z  | z  S r»  )r   r   rV   r   rÇ   r  s      r5   rß   zacot.taylor_term\  s`   € ð �Š6ˆ6Ý�a‘4ˆKØ�ŠUˆU�a˜!‘e˜q’j�jÝ”6ˆMå˜‘
”
ˆAÝ”= A¨¡E¨A¡:Ñ.¨q°!©tÑ3°AÑ5Ð5r7   Nr   c                 ó  — | j         d         }|                     |d¦  «                             ¦   «         }|t          j        u r(|                      |                     |¦  «        ¦  «        S |t          j        u rd|z                       |¦  «        S |t          j         t          j        t          j	        fv rB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S |j        rõd|dz  z   j        rè|                     ||r|nd¦  «        }t#          |¦  «        j        r2t%          |¦  «        j        r|                      |¦  «        t&          z   S nˆt#          |¦  «        j        r2t%          |¦  «        j        r|                      |¦  «        t&          z
  S nB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S |                      |¦  «        S )Nr   r�   r¯  rƒ   )r=   ræ   rI  r   r¼   r<   rJ  rp   r4   rV   rï   r#   rQ  rU   r   rŸ  rG  r"   r!   r   rL  r°  s          r5   rQ  zacot._eval_as_leading_termg  sÃ  € ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•”ˆ;ˆ;Ø—9’9˜S×0Ò0°Ñ3Ô3Ñ4Ô4Ð4Ø•Ô"Ð"Ð"Ø�c‘E×*Ò*¨1Ñ-Ô-Ð-à•1”?Ð"¥A¤OµQ´VÐ<Ð<Ð<Ø—<’<¥Ñ$Ô$×:Ò:¸1À4ÈdÐ:ÑSÔS×ZÒZÑ\Ô\Ð\àŒ?ð 		a  B¨¡E¡	Ô6ð 		aØ—7’7˜1 dÐ1˜d˜d°Ñ2Ô2ˆDÝ�$‰xŒxÔ#ð aÝ�b‘6”6Ô%ð .ØŸ9š9 R™=œ=­2Ñ-Ð-ð.å�D‘”Ô%ð aÝ�b‘6”6Ô%ð .ØŸ9š9 R™=œ=­2Ñ-Ð-ð.ð —|’|¥CÑ(Ô(×>Ò>¸qÀtÐRVÐ>ÑWÔW×^Ò^Ñ`Ô`Ð`Ø�yŠy˜‰}Œ}Ðr7   c                 ó4  — | j         d                              |d¦  «        }|t          j        t          j        t          j        z  fv r1|                      t          ¦  «                             ||||¬¦  «        S t          j        | |||¬¦  «        }|t          j	        u r|S | j         d          
                    ||r|nd¦  «        }|j        rt          |¦  «        dk     r
|t          z
  S |S |j        r¤d|dz  z   j        r—t          |¦  «        j        rt!          |¦  «        j        r
|t          z   S ndt          |¦  «        j        rt!          |¦  «        j        r
|t          z
  S n1|                      t          ¦  «                             ||||¬¦  «        S |S r  )r=   ræ   r   r4   rÇ   rï   r#   rç   r   rp   rG  r?   r"   r   r   rŸ  r!   rL  r  s           r5   rç   zacot._eval_nseries~  s‹  € ØŒy˜Œ|× Ò   AÑ&Ô&ˆð •A”O¥Q¤]µ1´?Ñ%BÐCÐCÐCØ—<’<¥Ñ$Ô$×2Ò2°1°a¸dÈÐ2ÑNÔNÐNåÔ$ T¨1°¸Ð=Ñ=Ô=ˆØ•1Ô$Ð$Ð$ØˆJØŒy˜Œ|×Ò ¨4Ð#6 4 4°QÑ7Ô7ˆØŒ<ð 	Ý�$‰xŒx˜!Š|ˆ|Ø�R‘x�ØˆJàÔð 	S ! d¨A¡g¡+Ô!:ð 	SÝ�$‰xŒxÔ#ð SÝ�d‘8”8Ô'ð $Ø¥™8�Oð$å�D‘”Ô%ð SÝ�d‘8”8Ô'ð $Ø¥™8�Oð$ð —|’|¥CÑ(Ô(×6Ò6°q¸!À$ÈTÐ6ÑRÔRÐRØˆ
r7   c                 óð   •— |d         t           j        t           j        fv r2t          d| j        d         z  ¦  «                             |||¦  «        S t          ¦   «                              ||||¦  «        S rÖ  )r   r½   r¾   rÊ   r=   rç   r  r  r  s        €r5   r  zacot._eval_aseries™  sd   ø€ Ø�Œ8�œ
¥AÔ$6Ð7Ð7Ð7Ý˜˜$œ) Aœ,™Ñ'Ô'×5Ò5°a¸¸DÑAÔAÐAå‘7”7×(Ò(¨¨E°1°dÑ;Ô;Ð;r7   c                 ó    — t           j        dz  t          dt           j        |z  z
  ¦  «        t          dt           j        |z  z   ¦  «        z
  z  S r  )r   r4   r#   rÞ  s      r5   rË  zacot._eval_rewrite_as_logŸ  sH   € ÝŒ˜qÑ ¥# a­!¬/¸!Ñ*;Ñ&;Ñ"<Ô"<Ý�!•a”o aÑ'Ñ'Ñ(Ô(ñ#)ñ *ð 	*r7   c                 ó   — t           S r¯  rã  r¬   s     r5   r±  zacot.inverse¥  rÜ  r7   c           	      ó¸   — |t          d|dz  z  ¦  «        z  t          dz  t          t          |dz   ¦  «        t          |dz   dz
  ¦  «        z  ¦  «        z
  z  S r­  r  rý   s      r5   rï  zacot._eval_rewrite_as_asin«  sZ   € Ø•D˜˜3 ™6™‘N”NÑ"Ý�A‘��T 3¨¡6 '™]œ]­4°°a±°¸!±Ñ+<Ô+<Ñ<Ñ=Ô=Ñ=ñ?ð 	@r7   c                 ó¢   — |t          d|dz  z  ¦  «        z  t          t          |dz   ¦  «        t          |dz   dz
  ¦  «        z  ¦  «        z  S r­  r  rý   s      r5   rÅ  zacot._eval_rewrite_as_acos¯  sK   € Ø•4˜˜#˜q™&™‘>”>Ñ!¥$¥t¨S°!©V¨G¡}¤}µT¸3À¹6¸'ÀA¹+Ñ5FÔ5FÑ'FÑ"GÔ"GÑGÐGr7   c                 ó&   — t          d|z  ¦  «        S r  r°  rý   s      r5   rÈ  zacot._eval_rewrite_as_atan²  rÔ  r7   c                 ó„   — |t          d|dz  z  ¦  «        z  t          t          d|dz  z   |dz  z  ¦  «        ¦  «        z  S r­  r  rý   s      r5   rÐ  zacot._eval_rewrite_as_asecµ  sA   € Ø•4˜˜#˜q™&™‘>”>Ñ!¥$¥t¨Q°°a±©Z¸¸a¹Ñ,?Ñ'@Ô'@Ñ"AÔ"AÑAÐAr7   c           	      óš   — |t          d|dz  z  ¦  «        z  t          dz  t          t          d|dz  z   |dz  z  ¦  «        ¦  «        z
  z  S r­  r  rý   s      r5   rÓ  zacot._eval_rewrite_as_acsc¸  sJ   € Ø•4˜˜#˜q™&™‘>”>Ñ!¥2 a¡4­$­t°Q¸¸a¹±ZÀÀaÁÑ4GÑ/HÔ/HÑ*IÔ*IÑ#IÑJÐJr7   re  r+  rf  )rk   rl   rm   rn   r   r4   rq   r®   rC   r   r£  rU  rg  rÖ   rh  r   rß   rQ  rç   r  rË  rÝ  r±  rï  rÅ  rÈ  rÐ  rÓ  r  r   s   @r5   rÍ   rÍ   â
  s•  ø€ € € € € ð)ð )ðT ”o¨¬Ð'7Ð8€Nð5ð 5ð 5ð 5ð!ð !ð !ð+ð +ð +ð(ð (ð (ð-ð -ð -ð ð3ð 3ñ „[ð3ðj Øð6ð 6ñ „Wñ „\ð6ðð ð ð ð.ð ð ð ð6<ð <ð <ð <ð <ð*ð *ð *ð "6Ððð ð ð ð@ð @ð @ðHð Hð Hðð ð ðBð Bð BðKð Kð Kð Kð Kð Kð Kr7   rÍ   c                   óœ   — e Zd ZdZed„ ¦   «         Zdd„Zdd„Zee	d„ ¦   «         ¦   «         Z
dd	„Zdd
„Zd„ Zd„ ZeZd„ Zd„ Zd„ Zd„ Zd„ ZdS )rÏ   aÊ  
    The inverse secant function.

    Returns the arc secant of x (measured in radians).

    Explanation
    ===========

    ``asec(x)`` will evaluate automatically in the cases
    $x \in \{\infty, -\infty, 0, 1, -1\}$ and for some instances when the
    result is a rational multiple of $\pi$ (see the eval class method).

    ``asec(x)`` has branch cut in the interval $[-1, 1]$. For complex arguments,
    it can be defined [4]_ as

    .. math::
        \operatorname{sec^{-1}}(z) = -i\frac{\log\left(\sqrt{1 - z^2} + 1\right)}{z}

    At ``x = 0``, for positive branch cut, the limit evaluates to ``zoo``. For
    negative branch cut, the limit

    .. math::
        \lim_{z \to 0}-i\frac{\log\left(-\sqrt{1 - z^2} + 1\right)}{z}

    simplifies to :math:`-i\log\left(z/2 + O\left(z^3\right)\right)` which
    ultimately evaluates to ``zoo``.

    As ``acos(x) = asec(1/x)``, a similar argument can be given for
    ``acos(x)``.

    Examples
    ========

    >>> from sympy import asec, oo
    >>> asec(1)
    0
    >>> asec(-1)
    pi
    >>> asec(0)
    zoo
    >>> asec(-oo)
    pi/2

    See Also
    ========

    sin, csc, cos, sec, tan, cot
    asin, acsc, acos, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Inverse_trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.23
    .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcSec
    .. [4] https://reference.wolfram.com/language/ref/ArcSec.html

    c                 ó  — |j         rt          j        S |j        rI|t          j        u rt          j        S |t          j        u rt          j        S |t          j        u rt          S |t          j	        t          j
        t          j        fv r
t          dz  S |j        rD|                      ¦   «         }||v rt          dz  ||         z
  S | |v rt          dz  ||          z   S |j        r
t          dz  S t          |t          ¦  «        r;|j        d         }|j        r'|dt          z  z  }|t          k    rdt          z  |z
  }|S t          |t$          ¦  «        r.|j        d         }|j        rt          dz  t'          |¦  «        z
  S d S d S rã  )r?   r   rp   r»   r¼   r“   rV   rÇ   r   r½   r¾   r¦  r–  r‰  r2   r  r=   r§  r  rÎ   ©rÐ   r    Ú
acsc_tabler©  s       r5   rÖ   z	asec.evalø  s†  € àŒ;ð 	%ÝÔ$Ð$ØŒ=ð 	Ø•a”eˆ|ˆ|Ý”u�Ø�œ��Ý”v�Ø�œÐ%Ð%Ý�	Ø•1”:�qÔ1µ1Ô3DÐEÐEÐEÝ�a‘4ˆKàŒ=ð 	/ØŸšÑ*Ô*ˆJØ�jÐ Ð Ý˜!‘t˜j¨œoÑ-Ð-Ø�˜Ð#Ð#Ý˜!‘t˜j¨#¨Ô.Ñ.Ð.àŒ?ð 	Ý�a‘4ˆKå�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ø�q�‘t‘�Ø�’8�8Ø�B™$ ™*�Cà�
å�c�3ÑÔð 	(Ø”(˜1”+ˆCØÔ ð (Ý˜!‘t�d 3™iœiÑ'Ð'ð	(ð 	(ð(ð (r7   r�   c                 óœ   — |dk    r7d| j         d         dz  t          dd| j         d         dz  z  z
  ¦  «        z  z  S t          | |¦  «        ‚r™  ©r=   r&   r	   r¬   s     r5   r®   z
asec.fdiff  sQ   € Ø�qŠ=ˆ=Ø�d”i ”l A‘o¥d¨1¨q°´¸1´¸q±Ñ/@Ñ+@Ñ&AÔ&AÑAÑBÐBå$ T¨8Ñ4Ô4Ð4r7   c                 ó   — t           S r¯  r™  r¬   s     r5   r±  zasec.inverse$  rÜ  r7   c                 óÔ  — | dk    rt           j        t          d|z  ¦  «        z  S | dk     s	| dz  dk    rt           j        S t	          |¦  «        }t          |¦  «        dk    r.| dk    r(|d         }|| dz
  | dz
  z  z  |dz  z  d| dz  dz  z  z  S | dz  }t          t           j        |¦  «        | z  }t          |¦  «        | z  dz  | z  dz  }t           j         |z  |z  || z  z  dz  S ©Nr   rƒ   r�   rÙ   rt   )	r   r4   r#   rV   r   rÛ   r   r‡   r   r«  s          r5   rß   zasec.taylor_term*  s  € ð �Š6ˆ6Ý”?¥3 q¨1¡u¡:¤:Ñ-Ð-Ø�ŠUˆU�a˜!‘e˜q’j�jÝ”6ˆMå˜‘
”
ˆAÝ�>Ñ"Ô" QÒ&Ð&¨1¨qª5¨5Ø" 2Ô&�Ø˜Q ™U Q q¡S™MÑ*¨Q°©TÑ1°1¸¸1¹¸q±y±=ÑAÐAà˜‘F�Ý#¥A¤F¨AÑ.Ô.°!Ñ3�Ý˜a‘L”L 1Ñ$¨Ñ)¨AÑ-°Ñ2�ÝœÐ'¨!Ñ+¨aÑ/°!°Q±$Ñ6¸Ñ:Ð:r7   Nr   c                 óÞ  — | j         d         }|                     |d¦  «                             ¦   «         }|t          j        u r(|                      |                     |¦  «        ¦  «        S |dk    r?t          d¦  «        t          |t          j        z
                       |¦  «        ¦  «        z  S |t          j         t          j	        fv r0|  
                    t          ¦  «                             |||¬¦  «        S |j        r×d|dz  z
  j        rÊ|                     ||r|nd¦  «        }t!          |¦  «        j        r|j        r|                      |¦  «         S n~t!          |¦  «        j        r(|j        r dt$          z  |                      |¦  «        z
  S nB|  
                    t          ¦  «                             |||¬¦  «                             ¦   «         S |                      |¦  «        S ræ  )r=   ræ   rI  r   r¼   r<   rJ  r&   r“   rV   rï   r#   rQ  rý  rŸ  rG  r!   rL  r   rU   r°  s          r5   rQ  zasec._eval_as_leading_term<  sµ  € ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•”ˆ;ˆ;Ø—9’9˜S×0Ò0°Ñ3Ô3Ñ4Ô4Ð4à�Š7ˆ7Ý˜‘7”7�4 ¥q¤u¡× =Ò =¸aÑ @Ô @ÑAÔAÑAÐAØ•1”5�&�!œ&Ð!Ð!Ð!Ø—<’<¥Ñ$Ô$×:Ò:¸1À4ÈdÐ:ÑSÔSÐSàŒ:ð 		a˜1˜r 1™u™9Ô1ð 		aØ—7’7˜1 dÐ1˜d˜d°Ñ2Ô2ˆDÝ�$‰xŒxÔ#ð aØ”>ð *Ø ŸIšI b™MœM˜>Ð)ð*å�D‘”Ô%ð aØ”>ð 0Ø�R™4 $§)¢)¨B¡-¤-Ñ/Ð/ð0ð —|’|¥CÑ(Ô(×>Ò>¸qÀtÐRVÐ>ÑWÔW×^Ò^Ñ`Ô`Ð`Ø�yŠy˜‰}Œ}Ðr7   c                 ó°  — ddl m} | j        d                              |d¦  «        }|t          j        u �r[t          dd¬¦  «        }t          t          j        |dz  z   ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z   }	|	                     |¦  «        }
|	|
z
  |
z  }t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S |t          j        u �r[t          dd¬¦  «        }t          t          j        |dz  z
  ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z
  }	|	                     |¦  «        }
|	|
z
  |
z  }t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S t%          j        | |||¬¦  «        }|t          j        u r|S |j        r«d|dz  z
  j        rž| j        d                              ||r|nd¦  «        }t/          |¦  «        j        r|j        r| S nZt/          |¦  «        j        r|j        rdt2          z  |z
  S n1|                      t          ¦  «                             ||||¬	¦  «        S |S ©
Nr   r´  r;  Tr¶  rƒ   r¿  r�   r¯  )r¸  rµ  r=   ræ   r   r“   r   rÏ   rï   r#   r¹  rÇ   rJ  r&   rç   r»  rU   r¼  r   rp   rý  rŸ  rG  r!   rL  r   r½  s                  r5   rç   zasec._eval_nseriesS  sc  € Ø(Ð(Ð(Ð(Ð(Ð(ØŒy˜Œ|× Ò   AÑ&Ô&ˆà•1”5ˆ=‰=Ý�c DÐ)Ñ)Ô)ˆAÝ•q”u˜q !™t‘|Ñ$Ô$×,Ò,­SÑ1Ô1×9Ò9¸!¸QÀÀ!ÁÑDÔDˆCÝ”= 4¤9¨Q¤<Ñ/ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAÝ�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMà•1”=Ð Ñ Ý�c DÐ)Ñ)Ô)ˆAÝ•q”} q¨!¡tÑ+Ñ,Ô,×4Ò4µSÑ9Ô9×AÒAÀ!ÀQÈÈ!ÉÑLÔLˆCÝ”= 4¤9¨Q¤<Ñ/ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAÝ�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMåÔ$ T¨1°¸Ð=Ñ=Ô=ˆØ•1Ô$Ð$Ð$ØˆJàŒ<ð 		S˜Q  q¡™[Ô5ð 		SØ”9˜Q”<×#Ò# A¨tÐ': t t¸Ñ;Ô;ˆDÝ�$‰xŒxÔ#ð SØÔ#ð  Ø˜4�Kð å�D‘”Ô%ð SØÔ#ð &Ø�R™4 #™:Ð%ð&ð —|’|¥CÑ(Ô(×6Ò6°q¸!À$ÈTÐ6ÑRÔRÐRØˆ
r7   c                 óv   — | j         d         }|j        du rdS t          |dz
  j        | dz
  j        f¦  «        S r÷  )r=   rT   r   rØ  rÙ  s     r5   rU  zasec._eval_is_extended_real{  sC   € ØŒI�aŒLˆØÔ Ð&Ð&Ø�5Ý˜!˜a™%Ô/°1°"°q±&Ô1HÐIÑJÔJÐJr7   c                 óœ   — t           dz  t          j        t          t          j        |z  t	          dd|dz  z  z
  ¦  «        z   ¦  «        z  z   S r  rì  rý   s      r5   rË  zasec._eval_rewrite_as_log�  sA   € Ý�!‰t•a”o¥c­!¬/¸#Ñ*=ÅÀQÈÈ3ÐPQÉ6ÉÁ\Ñ@RÔ@RÑ*RÑ&SÔ&SÑSÑSÐSr7   c                 ó<   — t           dz  t          d|z  ¦  «        z
  S r  rî  rý   s      r5   rï  zasec._eval_rewrite_as_asin†  rÑ  r7   c                 ó&   — t          d|z  ¦  «        S r  )rÌ   rý   s      r5   rÅ  zasec._eval_rewrite_as_acos‰  rÔ  r7   c                 ó˜   — t          |dz  ¦  «        |z  }t          dz  d|z
  z  |t          t          |dz  dz
  ¦  «        ¦  «        z  z   S r  ©r&   r   rÊ   ©rA   r›   rð   Úsx2xs       r5   rÈ  zasec._eval_rewrite_as_atanŒ  sG   € Ý�A�q‘D‰zŒz˜!‰|ˆÝ�!‰t�Q˜‘X‰ ¥d­4°°1±°q±©>¬>Ñ&:Ô&:Ñ!:Ñ:Ð:r7   c           	      óž   — t          |dz  ¦  «        |z  }t          dz  d|z
  z  |t          dt          |dz  dz
  ¦  «        z  ¦  «        z  z   S r  ©r&   r   rÍ   rF  s       r5   rÍ  zasec._eval_rewrite_as_acot�  sL   € Ý�A�q‘D‰zŒz˜!‰|ˆÝ�!‰t�Q˜‘X‰ ¥d¨1­T°!°Q±$¸±(©^¬^Ñ+;Ñ&<Ô&<Ñ!<Ñ<Ð<r7   c                 ó6   — t           dz  t          |¦  «        z
  S r¤   rõ  rý   s      r5   rÓ  zasec._eval_rewrite_as_acsc”  ó   € Ý�!‰t•d˜3‘i”iÑÐr7   re  r+  rf  )rk   rl   rm   rn   rg  rÖ   r®   r±  rh  r   rß   rQ  rç   rU  rË  rÝ  rï  rÅ  rÈ  rÍ  rÓ  rL   r7   r5   rÏ   rÏ   ¼  s(  € € € € € ð9ð 9ðv ð#(ð #(ñ „[ð#(ðJ5ð 5ð 5ð 5ðð ð ð ð Øð;ð ;ñ „Wñ „\ð;ð ð ð ð ð.&ð &ð &ð &ðPKð Kð KðTð Tð Tð "6Ðð"ð "ð "ðð ð ð;ð ;ð ;ð=ð =ð =ð ð  ð  ð  ð  r7   rÏ   c                   ó–   — e Zd ZdZed„ ¦   «         Zdd„Zdd„Zee	d„ ¦   «         ¦   «         Z
dd	„Zdd
„Zd„ ZeZd„ Zd„ Zd„ Zd„ Zd„ ZdS )rÎ   aV  
    The inverse cosecant function.

    Returns the arc cosecant of x (measured in radians).

    Explanation
    ===========

    ``acsc(x)`` will evaluate automatically in the cases
    $x \in \{\infty, -\infty, 0, 1, -1\}$` and for some instances when the
    result is a rational multiple of $\pi$ (see the ``eval`` class method).

    Examples
    ========

    >>> from sympy import acsc, oo
    >>> acsc(1)
    pi/2
    >>> acsc(-1)
    -pi/2
    >>> acsc(oo)
    0
    >>> acsc(-oo) == acsc(oo)
    True
    >>> acsc(0)
    zoo

    See Also
    ========

    sin, csc, cos, sec, tan, cot
    asin, acos, asec, atan, acot, atan2

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Inverse_trigonometric_functions
    .. [2] https://dlmf.nist.gov/4.23
    .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcCsc

    c                 óp  — |j         rt          j        S |j        rK|t          j        u rt          j        S |t          j        u r
t          dz  S |t          j        u rt           dz  S |t          j        t          j	        t          j        fv rt          j
        S |                     ¦   «         r | | ¦  «         S |j        rt          j
        S |j        r |                      ¦   «         }||v r||         S t          |t           ¦  «        rj|j        d         }|j        rV|dt          z  z  }|t          k    r
t          |z
  }|t          dz  k    r
t          |z
  }|t           dz  k     rt           |z
  }|S t          |t&          ¦  «        r.|j        d         }|j        rt          dz  t)          |¦  «        z
  S d S d S rã  )r?   r   rp   r»   r¼   r“   r   rÇ   r½   r¾   rV   rÅ   r‰  r¦  r–  r2   r  r=   r§  r  rÏ   r6  s       r5   rÖ   z	acsc.evalÃ  s²  € àŒ;ð 	%ÝÔ$Ð$ØŒ=ð 	Ø•a”eˆ|ˆ|Ý”u�Ø�œ��Ý˜!‘t�Ø�œÐ%Ð%Ý�s˜1‘u�Ø•1”:�qÔ1µ1Ô3DÐEÐEÐEÝ”6ˆMà×'Ò'Ñ)Ô)ð 	Ø�C˜˜‘I”I�:ÐàŒ?ð 	Ý”6ˆMàŒ=ð 	'ØŸšÑ*Ô*ˆJØ�jÐ Ð Ø! #”Ð&å�c�3ÑÔð 	Ø”(˜1”+ˆCØÔ ð Ø�q�‘t‘�Ø�’8�8Ý˜s™(�Cð �˜A™’:�:Ý˜s™(�CØ�"˜˜Q™’;�;Ý˜# ™)�Cà�
å�c�3ÑÔð 	(Ø”(˜1”+ˆCØÔ ð (Ý˜!‘t�d 3™iœiÑ'Ð'ð	(ð 	(ð(ð (r7   r�   c                 óœ   — |dk    r7d| j         d         dz  t          dd| j         d         dz  z  z
  ¦  «        z  z  S t          | |¦  «        ‚rà  r9  r¬   s     r5   r®   z
acsc.fdiffð  sQ   € Ø�qŠ=ˆ=Ø�t”y ”| Q‘¥t¨A°°$´)¸A´,À±/Ñ0AÑ,AÑ'BÔ'BÑBÑCÐCå$ T¨8Ñ4Ô4Ð4r7   c                 ó   — t           S r¯  r  r¬   s     r5   r±  zacsc.inverseö  rÜ  r7   c                 ó  — | dk    rDt           dz  t          j        t          d¦  «        z  z
  t          j        t          |¦  «        z  z   S | dk     s	| dz  dk    rt          j        S t          |¦  «        }t          |¦  «        dk    r.| dk    r(|d         }|| dz
  | dz
  z  z  |dz  z  d| dz  dz  z  z  S | dz  }t          t          j        |¦  «        | z  }t          |¦  «        | z  dz  | z  dz  }t          j        |z  |z  || z  z  dz  S r<  )
r   r   r4   r#   rV   r   rÛ   r   r‡   r   r«  s          r5   rß   zacsc.taylor_termü  s  € ð �Š6ˆ6Ý�a‘4�!œ/­#¨a©&¬&Ñ0Ñ0µ1´?Å3ÀqÁ6Ä6Ñ3IÑIÐIØ�ŠUˆU�a˜!‘e˜q’j�jÝ”6ˆMå˜‘
”
ˆAÝ�>Ñ"Ô" QÒ&Ð&¨1¨qª5¨5Ø" 2Ô&�Ø˜Q ™U Q q¡S™MÑ*¨Q°©TÑ1°1¸¸1¹¸q±y±=ÑAÐAà˜‘F�Ý#¥A¤F¨AÑ.Ô.°!Ñ3�Ý˜a‘L”L 1Ñ$¨Ñ)¨AÑ-°Ñ2�Ý”¨Ñ*¨QÑ.°°A±Ñ5¸Ñ9Ð9r7   Nr   c                 óä  — | j         d         }|                     |d¦  «                             ¦   «         }|t          j        u r(|                      |                     |¦  «        ¦  «        S |t          j         t          j        t          j        fv rB|  	                    t          ¦  «                             |||¬¦  «                             ¦   «         S |t          j        u rd|z                       |¦  «        S |j        rÜd|dz  z
  j        rÏ|                     ||r|nd¦  «        }t#          |¦  «        j        r%|j        rt&          |                      |¦  «        z
  S n|t#          |¦  «        j        r&|j        rt&           |                      |¦  «        z
  S nB|  	                    t          ¦  «                             |||¬¦  «                             ¦   «         S |                      |¦  «        S r®  )r=   ræ   rI  r   r¼   r<   rJ  r“   rV   rï   r#   rQ  rU   rp   rý  rŸ  rG  r!   rL  r   r°  s          r5   rQ  zacsc._eval_as_leading_term  s¶  € ØŒi˜ŒlˆØ�XŠX�a˜‰^Œ^×"Ò"Ñ$Ô$ˆØ•”ˆ;ˆ;Ø—9’9˜S×0Ò0°Ñ3Ô3Ñ4Ô4Ð4à•1”5�&�!œ%¥¤Ð(Ð(Ð(Ø—<’<¥Ñ$Ô$×:Ò:¸1À4ÈdÐ:ÑSÔS×ZÒZÑ\Ô\Ð\Ø•Ô"Ð"Ð"Ø�c‘E×*Ò*¨1Ñ-Ô-Ð-àŒ:ð 		a˜1˜r 1™u™9Ô1ð 		aØ—7’7˜1 dÐ1˜d˜d°Ñ2Ô2ˆDÝ�$‰xŒxÔ#ð aØ”>ð .Ý §	¢	¨"¡¤Ñ-Ð-ð.å�D‘”Ô%ð aØ”>ð /Ý˜3 §¢¨2¡¤Ñ.Ð.ð/ð —|’|¥CÑ(Ô(×>Ò>¸qÀtÐRVÐ>ÑWÔW×^Ò^Ñ`Ô`Ð`Ø�yŠy˜‰}Œ}Ðr7   c                 óº  — ddl m} | j        d                              |d¦  «        }|t          j        u �r[t          dd¬¦  «        }t          t          j        |dz  z   ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z   }	|	                     |¦  «        }
|	|
z
  |
z  }t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S |t          j        u �r[t          dd¬¦  «        }t          t          j        |dz  z
  ¦  «                             t          ¦  «         
                    |dd|z  ¦  «        }t          j        | j        d         z
  }	|	                     |¦  «        }
|	|
z
  |
z  }t          t          j        |z   ¦  «                             |||¬¦  «        }|                     ¦   «         t          |
¦  «        z                       ¦   «         }|                     ¦   «                              ||¦  «                             ¦   «                              ¦   «          |||z  |¦  «        z   S t%          j        | |||¬¦  «        }|t          j        u r|S |j        r°d|dz  z
  j        r£| j        d                              ||r|nd¦  «        }t/          |¦  «        j        r|j        r
t2          |z
  S nXt/          |¦  «        j        r|j        rt2           |z
  S n1|                      t          ¦  «                             ||||¬	¦  «        S |S r?  )r¸  rµ  r=   ræ   r   r“   r   rÎ   rï   r#   r¹  rÇ   rJ  r&   rç   r»  rU   r¼  r   rp   rý  rŸ  rG  r!   rL  r   r½  s                  r5   rç   zacsc._eval_nseries%  sc  € Ø(Ð(Ð(Ð(Ð(Ð(ØŒy˜Œ|× Ò   AÑ&Ô&ˆà•1”5ˆ=‰=Ý�c DÐ)Ñ)Ô)ˆAÝ•q”u˜q !™t‘|Ñ$Ô$×,Ò,­SÑ1Ô1×9Ò9¸!¸QÀÀ!ÁÑDÔDˆCÝ”= 4¤9¨Q¤<Ñ/ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAÝ�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMà•1”=Ð Ñ Ý�c DÐ)Ñ)Ô)ˆAÝ•q”} q¨!¡tÑ+Ñ,Ô,×4Ò4µSÑ9Ô9×AÒAÀ!ÀQÈÈ!ÉÑLÔLˆCÝ”= 4¤9¨Q¤<Ñ/ˆDØ×$Ò$ QÑ'Ô'ˆAØ˜‘˜A‘ˆAÝ�œ ™	‘?”?×0Ò0°°a¸dÐ0ÑCÔCˆDØ—<’<‘>”>¥$ q¡'¤'Ñ)×1Ò1Ñ3Ô3ˆCØ—;’;‘=”=×%Ò% a¨Ñ-Ô-×4Ò4Ñ6Ô6×>Ò>Ñ@Ô@À1À1ÀQÈÁTÈ1Á:Ä:ÑMÐMåÔ$ T¨1°¸Ð=Ñ=Ô=ˆØ•1Ô$Ð$Ð$ØˆJàŒ<ð 		S˜Q  q¡™[Ô5ð 		SØ”9˜Q”<×#Ò# A¨tÐ': t t¸Ñ;Ô;ˆDÝ�$‰xŒxÔ#ð SØÔ#ð $Ý ™8�Oð$å�D‘”Ô%ð SØÔ#ð %Ý˜3 ™9Ð$ð%ð —|’|¥CÑ(Ô(×6Ò6°q¸!À$ÈTÐ6ÑRÔRÐRØˆ
r7   c           
      óˆ   — t           j         t          t           j        |z  t          dd|dz  z  z
  ¦  «        z   ¦  «        z  S r­  rÊ  rý   s      r5   rË  zacsc._eval_rewrite_as_logM  s:   € Ý”Ð¥¥A¤O°CÑ$7½$¸qÀ1ÀSÈ!ÁVÁ8¹|Ñ:LÔ:LÑ$LÑ MÔ MÑMÐMr7   c                 ó&   — t          d|z  ¦  «        S r  )rÉ   rý   s      r5   rï  zacsc._eval_rewrite_as_asinR  rÔ  r7   c                 ó<   — t           dz  t          d|z  ¦  «        z
  S r  rÄ  rý   s      r5   rÅ  zacsc._eval_rewrite_as_acosU  rÑ  r7   c                 óˆ   — t          |dz  ¦  «        |z  t          dz  t          t          |dz  dz
  ¦  «        ¦  «        z
  z  S r  rE  rÞ  s      r5   rÈ  zacsc._eval_rewrite_as_atanX  s:   € Ý�A�q‘D‰zŒz˜!‰|�R ™T¥D­¨a°©d°Q©h©¬Ñ$8Ô$8Ñ8Ñ9Ð9r7   c           	      óŽ   — t          |dz  ¦  «        |z  t          dz  t          dt          |dz  dz
  ¦  «        z  ¦  «        z
  z  S r  rI  rý   s      r5   rÍ  zacsc._eval_rewrite_as_acot[  sB   € Ý�C˜‘F‰|Œ|˜CÑ¥ A¡­¨Q­t°C¸±F¸Q±JÑ/?Ô/?Ñ-?Ñ(@Ô(@Ñ!@ÑAÐAr7   c                 ó6   — t           dz  t          |¦  «        z
  S r¤   rÏ  rý   s      r5   rÐ  zacsc._eval_rewrite_as_asec^  rK  r7   re  r+  rf  )rk   rl   rm   rn   rg  rÖ   r®   r±  rh  r   rß   rQ  rç   rË  rÝ  rï  rÅ  rÈ  rÍ  rÐ  rL   r7   r5   rÎ   rÎ   ˜  s  € € € € € ð(ð (ðT ð*(ð *(ñ „[ð*(ðX5ð 5ð 5ð 5ðð ð ð ð Øð:ð :ñ „Wñ „\ð:ð ð ð ð ð.&ð &ð &ð &ðPNð Nð Nð "6Ððð ð ð"ð "ð "ð:ð :ð :ðBð Bð Bð ð  ð  ð  ð  r7   rÎ   c                   ó\   ‡ — e Zd ZdZed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zˆ fd	„Zˆ xZS )
rË   aÕ
  
    The function ``atan2(y, x)`` computes `\operatorname{atan}(y/x)` taking
    two arguments `y` and `x`.  Signs of both `y` and `x` are considered to
    determine the appropriate quadrant of `\operatorname{atan}(y/x)`.
    The range is `(-\pi, \pi]`. The complete definition reads as follows:

    .. math::

        \operatorname{atan2}(y, x) =
        \begin{cases}
          \arctan\left(\frac y x\right) & \qquad x > 0 \\
          \arctan\left(\frac y x\right) + \pi& \qquad y \ge 0, x < 0 \\
          \arctan\left(\frac y x\right) - \pi& \qquad y < 0, x < 0 \\
          +\frac{\pi}{2} & \qquad y > 0, x = 0 \\
          -\frac{\pi}{2} & \qquad y < 0, x = 0 \\
          \text{undefined} & \qquad y = 0, x = 0
        \end{cases}

    Attention: Note the role reversal of both arguments. The `y`-coordinate
    is the first argument and the `x`-coordinate the second.

    If either `x` or `y` is complex:

    .. math::

        \operatorname{atan2}(y, x) =
            -i\log\left(\frac{x + iy}{\sqrt{x^2 + y^2}}\right)

    Examples
    ========

    Going counter-clock wise around the origin we find the
    following angles:

    >>> from sympy import atan2
    >>> atan2(0, 1)
    0
    >>> atan2(1, 1)
    pi/4
    >>> atan2(1, 0)
    pi/2
    >>> atan2(1, -1)
    3*pi/4
    >>> atan2(0, -1)
    pi
    >>> atan2(-1, -1)
    -3*pi/4
    >>> atan2(-1, 0)
    -pi/2
    >>> atan2(-1, 1)
    -pi/4

    which are all correct. Compare this to the results of the ordinary
    `\operatorname{atan}` function for the point `(x, y) = (-1, 1)`

    >>> from sympy import atan, S
    >>> atan(S(1)/-1)
    -pi/4
    >>> atan2(1, -1)
    3*pi/4

    where only the `\operatorname{atan2}` function reurns what we expect.
    We can differentiate the function with respect to both arguments:

    >>> from sympy import diff
    >>> from sympy.abc import x, y
    >>> diff(atan2(y, x), x)
    -y/(x**2 + y**2)

    >>> diff(atan2(y, x), y)
    x/(x**2 + y**2)

    We can express the `\operatorname{atan2}` function in terms of
    complex logarithms:

    >>> from sympy import log
    >>> atan2(y, x).rewrite(log)
    -I*log((x + I*y)/sqrt(x**2 + y**2))

    and in terms of `\operatorname(atan)`:

    >>> from sympy import atan
    >>> atan2(y, x).rewrite(atan)
    Piecewise((2*atan(y/(x + sqrt(x**2 + y**2))), Ne(y, 0)), (pi, re(x) < 0), (0, Ne(x, 0)), (nan, True))

    but note that this form is undefined on the negative real axis.

    See Also
    ========

    sin, csc, cos, sec, tan, cot
    asin, acsc, acos, asec, atan, acot

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Inverse_trigonometric_functions
    .. [2] https://en.wikipedia.org/wiki/Atan2
    .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcTan2

    c           	      óD  — ddl m} |t          j        u r9|j        rt
          S dt
          z   |t          |¦  «        ¦  «        z  t
          z
  S |t          j        u rt          j        S |j	        r3|j	        r,|j
        r%|j
        rt          |¦  «        }t          |¦  «        }|j        r§|j        r |j        rt          ||z  ¦  «        S |j        rC|j        rt          ||z  ¦  «        t
          z
  S |j        rt          ||z  ¦  «        t
          z   S n=|j        r6|j        r
t
          dz  S |j        rt
           dz  S |j        rt          j        S |j        rs|j        r t
          t          j         ||¦  «        z
  z  S |j
        rEt)          t
          t          |¦  «        dk     fdt+          |d¦  «        ft          j        df¦  «        S |j
        rM|j
        rHt          j         t/          |t          j        |z  z   t1          |dz  |dz  z   ¦  «        z  ¦  «        z  S d S d S )Nr   )Ú	Heavisiderƒ   T)Ú'sympy.functions.special.delta_functionsr[  r   r¾   r?   r   r"   r½   rV   r   r¦  r!   rT   rŸ  rÊ   rL  rØ  r¼   Úis_extended_nonzeror“   r)   r   r4   r#   r&   )rÐ   rÕ   r›   r[  s       r5   rÖ   z
atan2.evalÉ  sB  € àEÐEÐEÐEÐEÐEØ•Ô"Ð"Ð"ØŒyð å�	Ø•R‘4˜˜¥2 a¡5¤5Ñ)Ô)Ñ*­RÑ/Ð/Ø•!”*ˆ_ˆ_Ý”6ˆMØŒ^ð 	 ¤ð 	°1´;ð 	À1Ä;ð 	Ý�1‘”ˆAÝ�1‘”ˆAàÔð 	! !Ô"4ð 	!ØŒ}ð !Ý˜A˜a™C‘y”yÐ Ø”ð !Ø”=ð *Ý  !¡™9œ9¥r™>Ð)ØÔ%ð *Ý  !¡™9œ9¥r™>Ð)ð*à”ð !Ø”=ð !Ý˜a™4�KØ”]ð !Ý˜3˜q™5�LØ”Yð !Ýœ5�LØŒ9ð 	0ØÔ$ð 1Ý�1œ5 9 9¨Q¡<¤<Ñ/Ñ0Ð0ØŒ{ð 0Ý ¥"¥b¨¡e¤e¨a¢i Ø"#¥R¨¨1¡X¤X Ý"#¤%¨ ñ0ô 0ð 0ð Œ;ð 	;˜1œ;ð 	;Ý”OÐ#¥CØ•Q”_ QÑ&Ñ&­¨Q°©T°A°q±D©[Ñ(9Ô(9Ñ9ñ%;ô %;ñ ;ð ;ð	;ð 	;ð 	;ð 	;r7   c           	      óŽ   — t           j         t          |t           j        |z  z   t          |dz  |dz  z   ¦  «        z  ¦  «        z  S r¤   rÊ  ©rA   rÕ   r›   rð   s       r5   rË  zatan2._eval_rewrite_as_logñ  s?   € Ý”Ð¥ Q­¬¸Ñ):Ñ%:½DÀÀAÁÈÈ1ÉÁÑ<MÔ<MÑ$MÑ NÔ NÑNÐNr7   c                 ó  — t          dt          ||t          |dz  |dz  z   ¦  «        z   z  ¦  «        z  t          |d¦  «        ft          t          |¦  «        dk     fdt          |d¦  «        ft          j        df¦  «        S )Nrƒ   r   T)r)   rÊ   r&   r   r   r"   r   r¼   r_  s       r5   rÈ  zatan2._eval_rewrite_as_atanô  sw   € Ý˜!�D  A­¨Q°©T°A°q±D©[Ñ(9Ô(9Ñ$9Ñ!:Ñ;Ô;Ñ;½RÀÀ1¹X¼XÐFÝ�b ™eœe aši˜Ø�R  1™XœX˜Ýœ% ˜ñ(ô (ð 	(r7   c           
      ób  — |j         r&|j         rt          ||t          j        z  z   ¦  «        S |t          j        |z  z   }|dz  |dz  z   }t          |t	          |¦  «        z  ¦  «        t          j        t          t          |¦  «        t	          t          |¦  «        ¦  «        z  ¦  «        z  z
  S r¤   )rT   Úarg_fr   r4   r&   r#   r_   )rA   rÕ   r›   rð   rÝ   rÑ   s         r5   Ú_eval_rewrite_as_argzatan2._eval_rewrite_as_argú  s–   € ØÔð 	0 !Ô"4ð 	0Ý˜˜Q�qœÑ.Ñ.Ñ/Ô/Ð/Ø•” Ñ!Ñ!ˆØˆq‰D�1�a‘4‰KˆÝ�Q•t˜A‘w”w‘YÑÔ¥!¤/µ#µc¸!±f´f½TÅ#ÀaÁ&Ä&¹\¼\Ñ6IÑ2JÔ2JÑ"JÑJÐJr7   c                 óJ   — | j         d         j        o| j         d         j        S rÖ  rT  r.  s    r5   rU  zatan2._eval_is_extended_real  s   € ØŒy˜Œ|Ô,ÐN°´¸1´Ô1NÐNr7   c                 ó¢   — |                       | j        d                              ¦   «         | j        d                              ¦   «         ¦  «        S rÖ  r,  r.  s    r5   r/  zatan2._eval_conjugate  s:   € Ø�yŠy˜œ 1œ×/Ò/Ñ1Ô1°4´9¸Q´<×3IÒ3IÑ3KÔ3KÑLÔLÐLr7   c                 óˆ   — | j         \  }}|dk    r||dz  |dz  z   z  S |dk    r| |dz  |dz  z   z  S t          | |¦  «        ‚r­  rü  )rA   r­   rÕ   r›   s       r5   r®   zatan2.fdiff  s^   € ØŒy‰ˆˆ1Ø�qŠ=ˆ=à�a˜‘d˜Q ™T‘k‘?Ð"Ø˜Š]ˆ]à�2�q˜!‘t˜a ™d‘{Ñ#Ð#å$ T¨8Ñ4Ô4Ð4r7   c                 ó~   •— | j         \  }}|j        r(|j        r#t          ¦   «                              |¦  «        S d S d S rj   )r=   rT   r  Ú_eval_evalf)rA   ÚprecrÕ   r›   r  s       €r5   rh  zatan2._eval_evalf  sO   ø€ ØŒy‰ˆˆ1ØÔð 	- !Ô"4ð 	-Ý‘7”7×&Ò& tÑ,Ô,Ð,ð	-ð 	-ð 	-ð 	-r7   )rk   rl   rm   rn   rg  rÖ   rË  rÈ  rc  rU  r/  r®   rh  r  r   s   @r5   rË   rË   b  sÇ   ø€ € € € € ðdð dðL ð%;ð %;ñ „[ð%;ðNOð Oð Oð(ð (ð (ðKð Kð KðOð Oð OðMð Mð Mð	5ð 	5ð 	5ð-ð -ð -ð -ð -ð -ð -ð -ð -r7   rË   re  )_Útypingr   r  r   ÚtUnionÚsympy.core.addr   Úsympy.core.cacher   Úsympy.core.exprr   Úsympy.core.functionr   r	   r
   r   Úsympy.core.logicr   r   r   r   Úsympy.core.modr   Úsympy.core.numbersr   r   r   r   r   Úsympy.core.relationalr   r   Úsympy.core.singletonr   Úsympy.core.symbolr   r   Úsympy.core.sympifyr   Ú(sympy.functions.combinatorial.factorialsr   r   Ú%sympy.functions.combinatorial.numbersr   r   rø  r    rb  r!   r"   Ú&sympy.functions.elementary.exponentialr#   r$   Ú#sympy.functions.elementary.integersr%   Ú(sympy.functions.elementary.miscellaneousr&   r'   r(   Ú$sympy.functions.elementary.piecewiser)   Ú1sympy.functions.elementary._trigonometric_specialr*   r+   r,   Úsympy.logic.boolalgr-   Úsympy.ntheoryr.   Úsympy.polys.specialpolysr/   Úsympy.utilities.iterablesr0   r6   r9   r�   rŽ   r–   rG   r¢   r«   r  r  r0  r  r  r!  r�  rÉ   rÌ   rÊ   rÍ   rÏ   rÎ   rË   rL   r7   r5   ú<module>r‚     sc  ðØ 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø Ð Ð Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $Ø  Ð  Ð  Ð  Ð  Ð  Ø SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SØ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FØ Ð Ð Ð Ð Ð Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IØ (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ø "Ð "Ð "Ð "Ð "Ð "Ø +Ð +Ð +Ð +Ð +Ð +Ð +Ð +Ø &Ð &Ð &Ð &Ð &Ð &Ø OÐ OÐ OÐ OÐ OÐ OÐ OÐ OØ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EØ ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 5Ð 5Ð 5Ð 5Ð 5Ð 5Ø CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CØ :Ð :Ð :Ð :Ð :Ð :ð)ð )ð )ð )ð )ð )ð )ð )ð )ð )à #Ð #Ð #Ð #Ð #Ð #Ø #Ð #Ð #Ð #Ð #Ð #Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6ð3ð 3ð 3ðAKð AKð AKð AKð AK˜Hñ AKô AKð AKðH 	ðð ñ 	„ðð""ð "ð "ðJHð H�4ð H ð H¨V°D¸$°JÔ-?ð Hð Hð Hð HðVsð sð sð sð sÐ
ñ sô sð sðl	g1ð g1ð g1ð g1ð g1Ð
ñ g1ô g1ð g1ðTQð Qð Qð Qð QÐ
ñ Qô Qð Qðh
zð zð zð zð zÐ
ñ zô zð zðz	uOð uOð uOð uOð uOÐ&;ñ uOô uOð uOðpi7ð i7ð i7ð i7ð i7Ð
)ñ i7ô i7ð i7ðXf7ð f7ð f7ð f7ð f7Ð
)ñ f7ô f7ð f7ðRt$ð t$ð t$ð t$ð t$ˆ8ñ t$ô t$ð t$ðxN
ð N
ð N
ð N
ð N
 8ñ N
ô N
ð N
ðbfð fð fð fð fÐ'ñ fô fð fðRcð cð cð cð cÐ'ñ cô cð cðLR@ð R@ð R@ð R@ð R@Ð'ñ R@ô R@ð R@ðjWKð WKð WKð WKð WKÐ'ñ WKô WKð WKðtY ð Y ð Y ð Y ð Y Ð'ñ Y ô Y ð Y ðxG ð G ð G ð G ð G Ð'ñ G ô G ð G ðTs-ð s-ð s-ð s-ð s-Ð(ñ s-ô s-ð s-ð s-ð s-r7   