Ë
    [^(h‰,  ã                   ó°   — d dl mZ d dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZmZ  G d„ d	e
e¬
«      Zej                   Z G d„ de
e¬
«      Zy)é    N)ÚExpr)Ú
_sympifyit)Ú
AtomicExpr)ÚNumber)Úglobal_parameters)ÚSÚ	Singletonc                   ób  ‡ — e 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„ Z	  ed	e«      d
„ «       ZeZ ed	e«      d„ «       Z ed	e«      d„ «       Z ed	e«      d„ «       ZeZ ed	e«      d„ «       Zd„ Zd„ Zd„ Zd„ Zˆ fd„Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z# ed	e«      d„ «       Z$e$Z%d„ Z&d„ Z'ˆ xZ(S )ÚIntInfinityah  Positive integer infinite quantity.

    Integer infinity is a value in an extended integers which
    is greater than all other integers.  We distinguish it from
    sympy's existing notion of infinity in that it reports that
    it is_integer.

    Infinity is a singleton, and can be accessed by ``S.IntInfinity``,
    or can be imported as ``int_oo``.
    TFç      Y@© c                 ó,   — t        j                  | «      S ©N©r   Ú__new__©Úclss    úX/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/utils/_sympy/numbers.pyr   zIntInfinity.__new__)   ó   € Ü×!Ñ! #Ó&Ð&ó    c                  ó   — y)NÚint_oor   ©ÚselfÚprinters     r   Ú	_sympystrzIntInfinity._sympystr,   s   € Ør   c                 ó   — | |k(  r|S y r   r   ©r   ÚoldÚnews      r   Ú
_eval_subszIntInfinity._eval_subs/   ó   € Ø�3Š;ØˆJð r   Úotherc                 ó  — t        |t        «      rht        j                  rX|t        j
                  t        j                  fv r|S |t        j                  t        j                  fv rt        j                  S | S t        j                  | |«      S r   )
Ú
isinstancer   r   Úevaluater   ÚInfinityÚNegativeInfinityÚNegativeIntInfinityÚNaNÚ__add__©r   r#   s     r   r+   zIntInfinity.__add__<   sg   € ä�eœVÔ$Ô):×)CÒ)CØœŸ™¤Q×%7Ñ%7Ð8Ñ8Ø�Øœ×.Ñ.´·±Ð6Ñ6Ü—u‘u�ØˆKÜ�~‰~˜d EÓ*Ð*r   c                 ó^  — t        |t        «      rˆt        j                  rx|t        j
                  u rt        j                  S |t        j                  u rt        j
                  S |t        j                  t        j                  fv rt        j                  S | S t        j                  | |«      S r   )
r%   r   r   r&   r   r'   r(   r   r*   Ú__sub__r,   s     r   r.   zIntInfinity.__sub__H   sy   € ä�eœVÔ$Ô):×)CÒ)CØœŸ
™
Ñ"Ü×)Ñ)Ð)Øœ×*Ñ*Ñ*Ü—z‘zÐ!ØœŸ™¬¯©Ð.Ñ.Ü—u‘u�ØˆKÜ�~‰~˜d EÓ*Ð*r   c                 ó&   — |  j                  |«      S r   ©r+   r,   s     r   Ú__rsub__zIntInfinity.__rsub__T   ó   € à��‰˜uÓ%Ð%r   c                 ó  — t        |t        «      r\t        j                  rL|j                  s|t
        j                  u rt
        j                  S |j                  r| S t
        j                  S t        j                  | |«      S r   )
r%   r   r   r&   Úis_zeror   r*   Úis_extended_positiver)   Ú__mul__r,   s     r   r6   zIntInfinity.__mul__X   sZ   € ä�eœVÔ$Ô):×)CÒ)CØ�}Š} ¬¯©¡Ü—u‘u�Ø×)Ò)Ø�Ü×(Ñ(Ð(Ü�~‰~˜d EÓ*Ð*r   c                 ó„  — t        |t        «      r›t        j                  r‹|t        j
                  t        j                  t        j                  t        j                  t        j                  fv rt        j                  S |j                  rt        j
                  S t        j                  S t        j                  | |«      S r   ©r%   r   r   r&   r   r'   r   r(   r)   r*   Úis_extended_nonnegativeÚ__truediv__r,   s     r   r:   zIntInfinity.__truediv__d   s†   € ä�eœVÔ$Ô):×)CÒ)CØÜ—
‘
Ü—‘Ü×"Ñ"Ü×%Ñ%Ü—‘ðñ ô —u‘u�Ø×,Ò,Ü—z‘zÐ!Ü×%Ñ%Ð%Ü×!Ñ! $¨Ó.Ð.r   c                 ó"   — t         j                  S r   ©r   r   ©r   s    r   Ú__abs__zIntInfinity.__abs__t   ó   € Ü�}‰}Ðr   c                 ó"   — t         j                  S r   ©r   r)   r=   s    r   Ú__neg__zIntInfinity.__neg__w   s   € Ü×$Ñ$Ð$r   c                 ó  — |j                   rt        j                  S |j                  rt        j                  S |t        j
                  u rt        j
                  S |t        j                  u rt        j
                  S |j                  du r‚|j                  ruddl	m
}  ||«      }|j                  rt        j                  S |j                  rt        j                  S |j                  rt        j
                  S | |j                  «       z  S y y )NFr   )Úre)r5   r   r   Úis_extended_negativeÚZeror*   ÚComplexInfinityÚis_extended_realÚ	is_numberÚ$sympy.functions.elementary.complexesrD   Úis_positiveÚis_negativer4   Úevalf)r   ÚexptrD   Ú	expt_reals       r   Ú_eval_powerzIntInfinity._eval_powerz   sÄ   € Ø×$Ò$Ü—=‘=Ð Ø×$Ò$Ü—6‘6ˆMØ”1—5‘5‰=Ü—5‘5ˆLØ”1×$Ñ$Ñ$Ü—5‘5ˆLØ× Ñ  EÑ)¨d¯nªnÝ?á˜4›ˆIØ×$Ò$Ü×(Ñ(Ð(Ø×$Ò$Ü—v‘v�Ø× Ò Ü—u‘u�à˜4Ÿ:™:›<Ñ'Ð'ð /=Ð)r   c                 ó"   — t         j                  S r   )ÚmlibÚfinf©r   Úprecs     r   Ú_as_mpf_valzIntInfinity._as_mpf_val�   s   € Ü�y‰yÐr   c                 ó    •— t         ‰| �  «       S r   ©ÚsuperÚ__hash__©r   Ú	__class__s    €r   rZ   zIntInfinity.__hash__“   ó   ø€ Ü‰wÑÓ!Ð!r   c                 ó&   — |t         j                  u S r   r<   r,   s     r   Ú__eq__zIntInfinity.__eq__–   s   € ØœŸ™Ð%Ð%r   c                 ó&   — |t         j                  uS r   r<   r,   s     r   Ú__ne__zIntInfinity.__ne__™   s   € ØœAŸM™MÐ)Ð)r   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j                  S t        j
                  S r   ©r   r'   ÚsympyÚfalser   Útruer,   s     r   Ú__gt__zIntInfinity.__gt__œ   s8   € Ø”A—J‘JÑÜ—;‘;ÐØ”a—m‘mÑ#Ü—;‘;Ðä—:‘:Ðr   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j
                  S t        j
                  S r   rc   r,   s     r   Ú__ge__zIntInfinity.__ge__¤   s8   € Ø”A—J‘JÑÜ—;‘;ÐØ”a—m‘mÑ#Ü—:‘:Ðä—:‘:Ðr   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j
                  S t        j
                  S r   ©r   r'   rd   rf   r   re   r,   s     r   Ú__lt__zIntInfinity.__lt__¬   s8   € Ø”A—J‘JÑÜ—:‘:ÐØ”a—m‘mÑ#Ü—;‘;Ðä—;‘;Ðr   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j                  S t        j
                  S r   rk   r,   s     r   Ú__le__zIntInfinity.__le__´   s8   € Ø”A—J‘JÑÜ—:‘:ÐØ”a—m‘mÑ#Ü—:‘:Ðä—;‘;Ðr   c                 óN   — t        |t        «      st        S t        j                  S r   ©r%   r   ÚNotImplementedr   r*   r,   s     r   Ú__mod__zIntInfinity.__mod__¼   ó   € ä˜%¤Ô&Ü!Ð!Ü�u‰uˆr   c                 ó   — | S r   r   r=   s    r   ÚfloorzIntInfinity.floorÄ   ó   € Øˆr   c                 ó   — | S r   r   r=   s    r   ÚceilingzIntInfinity.ceilingÇ   rv   r   ))Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú
is_integerÚis_commutativerI   rH   Úis_comparabler5   Úis_primeÚ_op_priorityÚ	__slots__r   r   r!   r   rq   r+   Ú__radd__r.   r1   r6   Ú__rmul__r:   r>   rB   rP   rV   rZ   r_   ra   rg   ri   rl   rn   rr   Ú__rmod__ru   rx   Ú__classcell__©r\   s   @r   r   r      sC  ø„ ñ	ð €JØ€NØ€IØÐØ€MØÐØ€Hð €Là€Iò'òòð
ñ �˜Ó(ñ+ó )ð+ð €Há�˜Ó(ñ	+ó )ð	+ñ �˜Ó(ñ&ó )ð&ñ �˜Ó(ñ+ó )ð+ð €Há�˜Ó(ñ/ó )ð/òò%ò(ò,ô"ò&ò*òòòòñ �˜Ó(ñó )ðð
 €Hòör   r   )Ú	metaclassc                   óh  ‡ — e 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„ Z	  ed	e«      d
„ «       ZeZ ed	e«      d„ «       Z ed	e«      d„ «       Z ed	e«      d„ «       ZeZ ed	e«      d„ «       Zd„ Zd„ Zd„ Zd„ Zˆ fd„Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z# ed	e«      d„ «       Z$e$Z%d„ Z&d„ Z'd„ Z(ˆ xZ)S )r)   z­Negative integer infinite quantity.

    NegativeInfinity is a singleton, and can be accessed
    by ``S.NegativeInfinity``.

    See Also
    ========

    IntInfinity
    r   TFr   c                 ó,   — t        j                  | «      S r   r   r   s    r   r   zNegativeIntInfinity.__new__ç   r   r   c                 ó   — | |k(  r|S y r   r   r   s      r   r!   zNegativeIntInfinity._eval_subsê   r"   r   c                  ó   — y)Nz-int_oor   r   s     r   r   zNegativeIntInfinity._sympystrî   s   € Ør   r#   c                 ó  — t        |t        «      rft        j                  rV|t        j
                  u rt        j
                  S |t        j                  t        j                  fv rt        j                  S | S t        j                  | |«      S r   )	r%   r   r   r&   r   r'   r   r*   r+   r,   s     r   r+   zNegativeIntInfinity.__add__ù   s_   € ä�eœVÔ$Ô):×)CÒ)CØœŸ
™
Ñ"Ü—z‘zÐ!ØœŸ™¬¯©Ð.Ñ.Ü—u‘u�ØˆKÜ�~‰~˜d EÓ*Ð*r   c                 ó  — t        |t        «      rft        j                  rV|t        j
                  u rt        j                  S |t        j                  t        j                  fv rt        j                  S | S t        j                  | |«      S r   )
r%   r   r   r&   r   r(   r'   r)   r*   r.   r,   s     r   r.   zNegativeIntInfinity.__sub__  sc   € ä�eœVÔ$Ô):×)CÒ)CØœ×*Ñ*Ñ*Ü—z‘zÐ!Øœ×.Ñ.´·±Ð6Ñ6Ü—u‘u�ØˆKÜ�~‰~˜d EÓ*Ð*r   c                 ó&   — |  j                  |«      S r   r0   r,   s     r   r1   zNegativeIntInfinity.__rsub__  r2   r   c                 ó  — t        |t        «      r\t        j                  rL|j                  s|t
        j                  u rt
        j                  S |j                  r| S t
        j                  S t        j                  | |«      S r   )
r%   r   r   r&   r4   r   r*   r5   r   r6   r,   s     r   r6   zNegativeIntInfinity.__mul__  sX   € ä�eœVÔ$Ô):×)CÒ)CØ�}Š} ¬¯©¡Ü—u‘u�Ø×)Ò)Ø�Ü—=‘=Ð Ü�~‰~˜d EÓ*Ð*r   c                 óh  — t        |t        «      r�t        j                  r}|t        j
                  t        j                  t        j                  t        j                  t        j                  fv rt        j                  S |j                  r| S t        j
                  S t        j                  | |«      S r   r8   r,   s     r   r:   zNegativeIntInfinity.__truediv__  s   € ä�eœVÔ$Ô):×)CÒ)CØÜ—
‘
Ü—‘Ü×"Ñ"Ü×%Ñ%Ü—‘ðñ ô —u‘u�Ø×,Ò,Ø�Ü—:‘:ÐÜ×!Ñ! $¨Ó.Ð.r   c                 ó"   — t         j                  S r   r<   r=   s    r   r>   zNegativeIntInfinity.__abs__/  r?   r   c                 ó"   — t         j                  S r   r<   r=   s    r   rB   zNegativeIntInfinity.__neg__2  r?   r   c                 óp  — |j                   �r)|t        j                  t        j                  t        j                  t        j
                  t        j                  fv rt        j                  S t        |t        j                  «      r8|j                  r,|j                  rt        j                  S t        j
                  S t        j
                  |z  }t        j                  |z  }|dk(  r|j                  r|S |t        j                  u r(|j                  r|j                  st        j                  S ||z  S y )Nr   )rI   r   r*   r'   r(   r   r)   r%   rd   ÚIntegerr5   Úis_oddÚNegativeOneÚ	is_finiterG   r4   )r   rN   Úinf_partÚs_parts       r   rP   zNegativeIntInfinity._eval_power5  så   € Ø�>‹>ØÜ—‘Ü—
‘
Ü×"Ñ"Ü—‘Ü×%Ñ%ðñ ô —u‘u�ä˜$¤§¡Ô.°4×3LÒ3LØ—;’;Ü×0Ñ0Ð0äŸ=™=Ð(ä—}‘} dÑ*ˆHÜ—]‘] DÑ(ˆFØ˜1Š} ×!1Ò!1Ø�àœA×-Ñ-Ñ-Ø×$Ò$ØŸšä×(Ñ(Ð(Ø˜HÑ$Ð$ð5 r   c                 ó"   — t         j                  S r   )rR   ÚfninfrT   s     r   rV   zNegativeIntInfinity._as_mpf_valR  s   € Ü�z‰zÐr   c                 ó    •— t         ‰| �  «       S r   rX   r[   s    €r   rZ   zNegativeIntInfinity.__hash__U  r]   r   c                 ó&   — |t         j                  u S r   rA   r,   s     r   r_   zNegativeIntInfinity.__eq__X  s   € Øœ×-Ñ-Ð-Ð-r   c                 ó&   — |t         j                  uS r   rA   r,   s     r   ra   zNegativeIntInfinity.__ne__[  s   € ØœA×1Ñ1Ð1Ð1r   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j
                  S t        j
                  S r   ©r   r(   rd   rf   r)   re   r,   s     r   rg   zNegativeIntInfinity.__gt__^  s<   € Ø”A×&Ñ&Ñ&Ü—:‘:ÐØ”a×+Ñ+Ñ+Ü—;‘;Ðä—;‘;Ðr   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j                  S t        j
                  S r   r¡   r,   s     r   ri   zNegativeIntInfinity.__ge__f  s<   € Ø”A×&Ñ&Ñ&Ü—:‘:ÐØ”a×+Ñ+Ñ+Ü—:‘:Ðä—;‘;Ðr   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j                  S t        j
                  S r   ©r   r(   rd   re   r)   rf   r,   s     r   rl   zNegativeIntInfinity.__lt__n  s<   € Ø”A×&Ñ&Ñ&Ü—;‘;ÐØ”a×+Ñ+Ñ+Ü—;‘;Ðä—:‘:Ðr   c                 óª   — |t         j                  u rt        j                  S |t         j                  u rt        j
                  S t        j
                  S r   r¤   r,   s     r   rn   zNegativeIntInfinity.__le__v  s<   € Ø”A×&Ñ&Ñ&Ü—;‘;ÐØ”a×+Ñ+Ñ+Ü—:‘:Ðä—:‘:Ðr   c                 óN   — t        |t        «      st        S t        j                  S r   rp   r,   s     r   rr   zNegativeIntInfinity.__mod__~  rs   r   c                 ó   — | S r   r   r=   s    r   ru   zNegativeIntInfinity.floor†  rv   r   c                 ó   — | S r   r   r=   s    r   rx   zNegativeIntInfinity.ceiling‰  rv   r   c                 óF   — t         j                  dt         j                  diS )Né   )r   r—   r   r=   s    r   Úas_powers_dictz"NegativeIntInfinity.as_powers_dictŒ  s   € Ü—‘˜q¤!§-¡-°Ð3Ð3r   )*ry   rz   r{   r|   r�   r}   rH   r~   r   rE   rI   r€   r‚   r   r!   r   r   rq   r+   rƒ   r.   r1   r6   r„   r:   r>   rB   rP   rV   rZ   r_   ra   rg   ri   rl   rn   rr   r…   ru   rx   r«   r†   r‡   s   @r   r)   r)   Î   sF  ø„ ñ	ð €Là€JØÐØ€NØ€MØÐØ€IØ€Hà€Iò'òòðñ �˜Ó(ñ+ó )ð+ð €Há�˜Ó(ñ+ó )ð+ñ �˜Ó(ñ&ó )ð&ñ �˜Ó(ñ+ó )ð+ð €Há�˜Ó(ñ/ó )ð/òòò%ò:ô"ò.ò2òòòòñ �˜Ó(ñó )ðð
 €Hòòö4r   r)   )Úmpmath.libmpÚlibmprR   rd   r   Úsympy.core.decoratorsr   Úsympy.core.exprr   Úsympy.core.numbersr   Úsympy.core.parametersr   Úsympy.core.singletonr   r	   r   r   r)   r   r   r   ú<module>r³      sI   ðå Û Ý Ý ,Ý &Ý %Ý 3ß -ô|�& Iõ |ð~ 
�‰€ô4˜&¨Iö 4r   