§
    ƒÛgÚÃ  ã                   ó@  — d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dl	m
Z
mZmZmZmZmZmZ d dlmZmZmZmZmZmZ d dlmZmZ d dlmZ d„ Zd	„ Zd
„ Zd„ Z d„ Z!d„ Z"d„ Z# e
e$ej%        ej%        ¦  «        d„ ¦   «         Z& e
ej'        ej%        ej%        ¦  «         e
ej(        ej%        ej%        ¦  «        d„ ¦   «         ¦   «         Z) e
ej*        ej%        ej%        ¦  «         e
ej+        ej%        ej%        ¦  «        d„ ¦   «         ¦   «         Z, e
ej-        ej%        ej%        ¦  «         e
ej.        ej%        ej%        ¦  «        d„ ¦   «         ¦   «         Z/d„ Z0d„ Z1 e
ej2        ej%        ej3        ¦  «         e
ej4        ej%        ej3        ¦  «         e
ej2        ej5        ej3        ¦  «         e
ej4        ej5        ej3        ¦  «        d„ ¦   «         ¦   «         ¦   «         ¦   «         Z6d„ Z7d„ Z8d„ Z9d„ Z:d„ Z;d„ Z<d„ Z=d„ Z>d„ Z?d„ Z@d „ ZAd!„ ZBd"„ ZCd#„ ZDd$„ ZEd%„ ZFd&„ ZGd'„ ZHd(„ ZId)„ ZJd*„ ZKd+„ ZLd,„ ZMd-„ ZNd.„ ZO  e
ejP        ejQ        ejQ        ¦  «        e?¦  «           e
ejR        ejQ        ejQ        ¦  «        e@¦  «           e
ejS        ejQ        ejQ        ¦  «        e;¦  «           e
ejT        ejQ        ejQ        ¦  «        e<¦  «           e
ejU        ejQ        ejQ        ¦  «        e=¦  «           e
ejV        ejQ        ejQ        ¦  «        e>¦  «           e
ejW        ejQ        ¦  «        eN¦  «           e
ejX        ejQ        ¦  «        eO¦  «         d/„ ZYd0„ ZZ eY¦   «           eZ¦   «          d1„ Z[d2„ Z\d3„ Z]d4„ Z^d5„ Z_d6„ Z` e
e$ej5        ej5        ¦  «        dod7„¦   «         Zadod8„Zbdod9„Zcd:„ Zdd;„ Zed<„ Zfd=„ Zgd>„ Zhd?„ Zid@„ ZjdA„ ZkdB„ ZldC„ ZmdD„ Znej5        Zo  e
ejp        eoeo¦  «        e[¦  «           e
ejq        eoeo¦  «        e[¦  «           e
ejr        eoeo¦  «        e\¦  «           e
ejs        eoeo¦  «        e\¦  «           e
ejt        eoeo¦  «        e]¦  «           e
eju        eoeo¦  «        e]¦  «           e
ej'        eoeo¦  «        ec¦  «           e
ej(        eoeo¦  «        ec¦  «           e
ej*        eoeo¦  «        e^¦  «           e
ej+        eoeo¦  «        e^¦  «           e
ej-        eoeo¦  «        eb¦  «           e
ej.        eoeo¦  «        eb¦  «           e
ej2        eoeo¦  «        ed¦  «           e
ej4        eoeo¦  «        ed¦  «           e
e2eoeo¦  «        ed¦  «           e
ejP        eoeo¦  «        ei¦  «           e
ejR        eoeo¦  «        ej¦  «           e
ejS        eoeo¦  «        ee¦  «           e
ejT        eoeo¦  «        ef¦  «           e
ejU        eoeo¦  «        eg¦  «           e
ejV        eoeo¦  «        eh¦  «           e
eveo¦  «        ek¦  «           e
ejW        eo¦  «        el¦  «           e
ejX        eo¦  «        em¦  «         [o eejw        dE¦  «        dF„ ¦   «         Zx eejw        dG¦  «        dH„ ¦   «         Zy e
dIejw        ¦  «        dJ„ ¦   «         ZzdK„ Z{dL„ Z|dM„ Z}ej5        ej%        fD ]AZ~  ee~dE¦  «        e{¦  «           ee~dG¦  «        e|¦  «           e
dIe~¦  «        e}¦  «         ŒB e
ej2        ejw        ejw        ¦  «         e
ej4        ejw        ejw        ¦  «         e
e2ejw        ejw        ¦  «        dN„ ¦   «         ¦   «         ¦   «         ZdO„ Z€dP„ Z�dQ„ Z‚ eƒdR¦  «        Z„dS„ Z…dT„ Z†dU„ Z‡dV„ ZˆdW„ Z‰dX„ ZŠejw        Zo  e
ejp        eoeo¦  «        e€¦  «           e
ejq        eoeo¦  «        e€¦  «           e
ejr        eoeo¦  «        e�¦  «           e
ejs        eoeo¦  «        e�¦  «           e
ejt        eoeo¦  «        e‚¦  «           e
eju        eoeo¦  «        e‚¦  «           e
ej*        eoeo¦  «        e…¦  «           e
ej+        eoeo¦  «        e…¦  «           e
ejW        eo¦  «        e†¦  «           e
ejX        eo¦  «        e‡¦  «           e
ejP        eoeo¦  «        eˆ¦  «           e
ejR        eoeo¦  «        e‰¦  «           e
eveo¦  «        eŠ¦  «         [o e
dYej‹        ¦  «         e
dYejŒ        ¦  «        dZ„ ¦   «         ¦   «         Z�d[„ ZŽ e
e�ej‹        ¦  «        d\„ ¦   «         Z� e
e�ej%        ¦  «        d]„ ¦   «         Z‘ e
e�ej5        ¦  «        d^„ ¦   «         Z’ e
e�ejw        ¦  «        d_„ ¦   «         Z“ej%        ej5        ejw        fD ]Zo  e
ej”        eo¦  «        eŽ¦  «         Œ  e
ej”        ejQ        ¦  «        eŽ¦  «          eej3        ej%        ¦  «         eej3        ej5        ¦  «         eej3        ejw        ¦  «        d`„ ¦   «         ¦   «         ¦   «         Z• eej%        ej%        ¦  «        da„ ¦   «         Z– eej%        ej—        ¦  «        db„ ¦   «         Z˜ eej5        ej5        ¦  «        dc„ ¦   «         Z™ eej%        ej5        ¦  «        dd„ ¦   «         Zš eej5        ej%        ¦  «        de„ ¦   «         Z› eej5        ejw        ¦  «         eej%        ejw        ¦  «        df„ ¦   «         ¦   «         Zœ eejw        ejw        ¦  «        dg„ ¦   «         Z� eejž        ej‹        ¦  «        dh„ ¦   «         ZŸ eej‹        ejŒ        ¦  «        di„ ¦   «         Z  eej3        ej‹        ¦  «         eej¡        ej‹        ¦  «        dj„ ¦   «         ¦   «         Z¢ eejw        ¦  «        dk„ ¦   «         Z£ eej%        ¦  «         eej5        ¦  «         eej‹        ¦  «        dl„ ¦   «         ¦   «         ¦   «         Z¤dm„ Z¥  eej5        dn¦  «        e¥¦  «           eej%        dn¦  «        e¥¦  «         dS )pé    N)Úir)ÚConstant)Úlower_builtinÚlower_getattrÚlower_getattr_genericÚ
lower_castÚlower_constantÚimpl_ret_borrowedÚimpl_ret_untracked)ÚtypingÚtypesÚutilsÚerrorsÚcgutilsÚoptional)Ú	intrinsicÚoverload_method©Úviewerc                 ó   — | j         rdgS g S )z;
    Return the modifier flags for integer arithmetic.
    Únsw)Úsigned)Úrettypes    úK/granary/edev/quantum/lib/python3.11/site-packages/numba/cpython/numbers.pyÚ_int_arith_flagsr      s   € ð „~ð 
ð ˆwˆàˆ	ó    c                 ó  — |\  }}|j         \  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }	|                     ||	t	          |j        ¦  «        ¬¦  «        }
t          | ||j        |
¦  «        S ©N)Úflags)ÚargsÚcastÚreturn_typeÚaddr   r   ©ÚcontextÚbuilderÚsigr    ÚvaÚvbÚtaÚtbÚaÚbÚress              r   Úint_add_implr/   #   ó€   € Ø�H€RˆØŒx�H€RˆØ�Š�W˜b " c¤oÑ6Ô6€AØ�Š�W˜b " c¤oÑ6Ô6€AØ
�+Š+�a˜Õ"2°3´?Ñ"CÔ"Cˆ+Ñ
DÔ
D€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó  — |\  }}|j         \  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }	|                     ||	t	          |j        ¦  «        ¬¦  «        }
t          | ||j        |
¦  «        S r   )r    r!   r"   Úsubr   r   r$   s              r   Úint_sub_implr3   ,   r0   r   c                 ó  — |\  }}|j         \  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }	|                     ||	t	          |j        ¦  «        ¬¦  «        }
t          | ||j        |
¦  «        S r   )r    r!   r"   Úmulr   r   r$   s              r   Úint_mul_implr6   5   r0   r   c           
      óL  — |j         |j         k    sJ ‚|                      d¦  «        }|                      d¦  «        }t          j        ||¦  «        }t          j        ||¦  «        }|                     |                     d||                      |j        ¦  «        ¦  «        |                     d||                      d¦  «        ¦  «        ¦  «        }	|                     |                     |	¦  «        d¬¦  «        5  |                     ||¦  «        }
| 	                    ||¦  «        }|                     d| 
                    ||¦  «        |¦  «        }|                     d||¦  «        }|                     ||¦  «        }|                     |¦  «        5 \  }}|5  |                     |
|¦  «         |                     ||¦  «         d	d	d	¦  «         n# 1 swxY w Y   |5  |                     |                     |
|¦  «        |¦  «         |                     |                     ||¦  «        |¦  «         d	d	d	¦  «         n# 1 swxY w Y   d	d	d	¦  «         n# 1 swxY w Y   d	d	d	¦  «         n# 1 swxY w Y   |                     |¦  «        |                     |¦  «        fS )
a@  
    Reference Objects/intobject.c
    xdivy = x / y;
    xmody = (long)(x - (unsigned long)xdivy * y);
    /* If the signs of x and y differ, and the remainder is non-0,
     * C89 doesn't define whether xdivy is now the floor or the
     * ceiling of the infinitely precise quotient.  We want the floor,
     * and we have it iff the remainder's sign matches y's.
     */
    if (xmody && ((y ^ xmody) < 0) /* i.e. and signs differ */) {
        xmody += y;
        --xdivy;
        assert(xmody && ((y ^ xmody) >= 0));
    }
    *p_xdivy = xdivy;
    *p_xmody = xmody;
    r   é   ú==éÿÿÿÿT©Úlikelyú<ú!=N)Útyper   Úalloca_once_valueÚand_Úicmp_signedÚminvalÚif_thenÚnot_ÚsdivÚsremÚxorÚif_elseÚstorer2   r#   Úload)r%   r&   ÚtyÚxÚyÚZEROÚONEÚresdivÚresmodÚis_overflowÚxdivyÚxmodyÚy_xor_xmody_ltzÚxmody_istrueÚcondÚif_different_signsÚif_same_signss                    r   Úint_divmod_signedr[   >   sU  € ð$ Œ6�Q”VÒÐÐÐà�6Š6�!‰9Œ9€DØ
�&Š&�‰)Œ)€Cõ Ô& w°Ñ5Ô5€FÝÔ& w°Ñ5Ô5€Fà—,’,Ø×Ò˜D ! Q§V¢V¨B¬IÑ%6Ô%6Ñ7Ô7Ø×Ò˜D ! Q§V¢V¨B¡Z¤ZÑ0Ô0ñ2ô 2€Kð 
�Š˜Ÿš kÑ2Ô2¸4ˆÑ	@Ô	@ð =ð =ð —’˜Q Ñ"Ô"ˆØ—’˜Q Ñ"Ô"ˆà!×-Ò-¨c°7·;²;¸qÀ%Ñ3HÔ3HÈ$ÑOÔOˆØ×*Ò*¨4°¸Ñ=Ô=ˆØ�|Š|˜L¨/Ñ:Ô:ˆà�_Š_˜TÑ"Ô"ð 	=Ñ&IÐ'9¸=Øð -ð -Ø—’˜e VÑ,Ô,Ð,Ø—’˜e VÑ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð $ð =ð =Ø—’˜gŸkšk¨%°Ñ5Ô5°vÑ>Ô>Ð>Ø—’˜gŸkšk¨%°Ñ3Ô3°VÑ<Ô<Ð<ð=ð =ð =ñ =ô =ð =ð =ð =ð =ð =ð =øøøð =ð =ð =ð =ð	=ð 	=ð 	=ñ 	=ô 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=øøøð 	=ð 	=ð 	=ð 	=ð=ð =ð =ñ =ô =ð =ð =ð =ð =ð =ð =øøøð =ð =ð =ð =ð& �<Š<˜ÑÔ §¢¨fÑ!5Ô!5Ð5Ð5s€   Ã<BI1ÆIÆ-GÇ	IÇGÇIÇGÇIÇ"AIÈ7IÉIÉIÉ
IÉIÉI1ÉI	ÉI1É!I	É"I1É1I5É8I5c                 óŽ   — |j         rt          | ||||¦  «        S |                     ||¦  «        |                     ||¦  «        fS )zD
    Integer divmod(x, y).  The caller must ensure that y != 0.
    )r   r[   ÚudivÚurem)r%   r&   rL   rM   rN   s        r   Ú
int_divmodr_   w   sK   € ð 
„yð 6Ý  ¨'°2°q¸!Ñ<Ô<Ð<à�|Š|˜A˜qÑ!Ô! 7§<¢<°°1Ñ#5Ô#5Ð5Ð5r   c           	      óN  — |\  }}|j         \  }}|j        }	t          |	t          j        ¦  «        r|	j        }	|                      ||||	¦  «        }
|                      ||||	¦  «        }t          j        ||
j	        d¬¦  «        }t          j        ||
j	        d¬¦  «        }| 
                    t          j        ||¦  «        d¬¦  «        5 \  }}|5  | j                             ||f¦  «        s,|                     ||¦  «         |                     ||¦  «         d d d ¦  «         n# 1 swxY w Y   |5  t          | ||	|
|¦  «        \  }}|                     ||¦  «         |                     ||¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   ||fS )NÚquot©ÚnameÚremFr;   )r    r"   Ú
isinstancer   ÚUniTupleÚdtyper!   r   Úalloca_oncer?   rI   Úis_scalar_zeroÚerror_modelÚfp_zero_divisionrJ   r_   )r%   r&   r'   r    Úzerodiv_messager(   r)   r*   r+   rL   r,   r-   ra   rd   Úif_zeroÚif_non_zeroÚqÚrs                     r   Ú_int_divmod_implrq   �   sh  € Ø�F€BˆØŒX�F€Bˆà	Œ€BÝ�"•e”nÑ%Ô%ð ØŒXˆØ�Š�W˜b " bÑ)Ô)€AØ�Š�W˜b " bÑ)Ô)€AÝÔ˜w¨¬°VÐ<Ñ<Ô<€DÝ
Ô
˜g q¤v°EÐ
:Ñ
:Ô
:€Cà	�Š�Ô/°¸Ñ;Ô;ÀEˆñ 
ô 
ð "Ù4˜w¨Øð 	&ð 	&ØÔ&×7Ò7Ø˜/Ð+ñ-ô -ð &ð
 —’˜a Ñ&Ô&Ð&Ø—’˜a Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð ð 	"ð 	"Ý˜g w°°A°qÑ9Ô9‰DˆAˆqØ�MŠM˜!˜TÑ"Ô"Ð"Ø�MŠM˜!˜SÑ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð"ð "ð "ñ "ô "ð "ð "ð "ð "ð "ð "øøøð "ð "ð "ð "ð �ˆ9Ðs\   Ã
FÃA	D%ÄFÄ%D)	Ä)FÄ,D)	Ä-FÄ2AFÅ5FÆF	ÆFÆF	Æ	FÆFÆFc                 ó¨   — t          | |||d¦  «        \  }}t          j        ||                     |¦  «        |                     |¦  «        f¦  «        S )Nzinteger divmod by zero)rq   r   Ú
pack_arrayrK   ©r%   r&   r'   r    ra   rd   s         r   Úint_divmod_implru   Ÿ   s\   € å  ¨'°3¸Ø!9ñ;ô ;�I€Dˆ#õ Ô˜gØ&Ÿ|š|¨DÑ1Ô1°7·<²<ÀÑ3DÔ3DÐEñGô Gð Gr   c                 óX   — t          | |||d¦  «        \  }}|                     |¦  «        S )Nzinteger division by zero©rq   rK   rt   s         r   Úint_floordiv_implrx   ¨   s4   € õ ! ¨'°3¸Ø!;ñ=ô =�I€Dˆ#à�<Š<˜ÑÔÐr   c                 ó~  — |\  }}|j         \  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }	t          j        ||	¦  «        5  | j                             |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                     ||	¦  «        }
t          | ||j        |
¦  «        S )N©zdivision by zero)	r    r!   r"   r   rm   rj   rk   Úfdivr   r$   s              r   Úint_truediv_implr|   °   s  € ð �H€RˆØŒx�H€RˆØ�Š�W˜b " c¤oÑ6Ô6€AØ�Š�W˜b " c¤oÑ6Ô6€AÝ	Œ˜ !Ñ	$Ô	$ð Mð MØÔ×,Ò,¨WÐ6KÑLÔLÐLðMð Mð Mñ Mô Mð Mð Mð Mð Mð Mð Møøøð Mð Mð Mð Mà
�,Š,�q˜!Ñ
Ô
€CÝ˜g w°´ÀÑEÔEÐEs   ÁBÂBÂBc                 óX   — t          | |||d¦  «        \  }}|                     |¦  «        S )Nzinteger modulo by zerorw   rt   s         r   Úint_rem_implr~   ½   s4   € õ ! ¨'°3¸Ø!9ñ;ô ;�I€Dˆ#à�<Š<˜ÑÔÐr   c                 ól   — t          |t          j        ¦  «        r| j        j        sd|j        dz
  z  S dS )Nr:   r8   F)re   r   ÚIntegerrj   Úraise_on_fp_zero_divisionÚbitwidth)r%   r"   s     r   Ú_get_power_zerodiv_returnrƒ   Å   s>   € Ý�;¥¤Ñ.Ô.ð ØÔ#Ô=ðð �kÔ*¨QÑ.Ñ/Ð/àˆur   c                 óì   ‡‡‡— t          |j        d         t          j        ¦  «        Š|j        Št          | ‰¦  «        Šˆˆˆfd„}|                      ||||¦  «        }t          | ||j        |¦  «        S )z@
    a ^ b, where a is an integer or real, and b an integer
    r   c                 ó^  •—  ‰d¦  «        } ‰| ¦  «        } |dk     r<d}| }|dk     rt           ‚‰r'| dk    r‰r‰S t          d¦  «        ‚| dk    r| dk    rdS nd}|}|dk    r"t          j        | t	          |¦  «        ¦  «        S |dk    r|dz  r|| z  }|dz  }| | z  } |dk    °|rd|z  n|S )	Nr8   r   Tú&0 cannot be raised to a negative powerr:   Fé   ç      ð?)ÚOverflowErrorÚZeroDivisionErrorÚmathÚpowÚfloat)r,   r-   rp   ÚinvertÚexpÚ
is_integerÚtpÚzerodiv_returns        €€€r   Ú	int_powerz!int_power_impl.<locals>.int_powerÖ   s  ø€ àˆBˆq‰EŒEˆØˆBˆq‰EŒEˆØˆqŠ5ˆ5ØˆFØ�"ˆCØ�QŠwˆwÝ#Ð#Øð Ø˜’6�6Ø%ð ZØ-Ð-å/Ð0XÑYÔYÐYØ˜’6�6˜a 2šg˜gØ˜1øàˆFØˆCØ�Š=ˆ=å”8˜A�u Q™xœxÑ(Ô(Ð(Ø�QŠhˆhØ�Q‰wð Ø�Q‘�Ø�A‰IˆCØ�‰FˆAð	 �QŠhˆhð !Ð'ˆs�Q‰wˆw aÐ'r   )re   r    r   r€   r"   rƒ   Úcompile_internalr   )	r%   r&   r'   r    r“   r.   r�   r‘   r’   s	         @@@r   Úint_power_implr•   Î   sˆ   øøø€ õ ˜CœH QœK­¬Ñ7Ô7€JØ	Œ€BÝ.¨w¸Ñ;Ô;€Nð(ð (ð (ð (ð (ð (ð (ð> ×
"Ò
" 7¨I°s¸DÑ
AÔ
A€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó†  ‡‡‡— |j         d         j        }t          |t          j        ¦  «        st
          ‚t          |¦  «        dk    rt
          ‚|dk     }t          |¦  «        }|j        }t          |t          j	        ¦  «        Št          | |¦  «        Š|                      ‰|d         |j         d         |¦  «        }|j        }ˆˆfd„}	 |d¦  «        }
|}|dk    r(|dz  r |	|
|¦  «        }
|dz  } |	||¦  «        }|dk    °(|r7‰rˆfd„}nd„ }|                      ‰|t          j        ||¦  «        |
f¦  «        }
|
S )zH
    a ^ b, where a is an integer or real, and b a constant integer
    r8   r‡   r   c                 ó`   •— ‰r‰                      | |¦  «        S ‰                     | |¦  «        S ©N)r5   Úfmul)r,   r-   r&   r�   s     €€r   r5   zstatic_power_impl.<locals>.mul  s3   ø€ Øð 	&Ø—;’;˜q !Ñ$Ô$Ð$à—<’<  1Ñ%Ô%Ð%r   c                 óV   •— | dk    r‰r‰S t          d¦  «        ‚| dk    r| dk    rdS | S )Nr   r†   r8   r:   )rŠ   )r,   r’   s    €r   Úinvert_implz&static_power_impl.<locals>.invert_impl$  sE   ø€ Ø˜’6�6Ø%ð ZØ-Ð-å/Ð0XÑYÔYÐYØ˜’6�6˜a 2šg˜gØ˜1à�Hr   c                 ó   — d| z  S )Nrˆ   © )r,   s    r   r›   z&static_power_impl.<locals>.invert_impl1  s   € Ø˜Q‘w�r   )r    Úvaluere   ÚnumbersÚIntegralÚNotImplementedErrorÚabsr"   r   r€   rƒ   r!   r?   r”   r   Ú	signature)r%   r&   r'   r    r�   rŽ   r‘   ÚvalÚltyr5   r.   r,   r›   r�   r’   s    `           @@r   Ústatic_power_implr¦   ù   s›  øøø€ ð Œ(�1Œ+Ô
€CÝ�c�7Ô+Ñ,Ô,ð "Ý!Ð!Ý
ˆ3�x„x�'ÒÐå!Ð!Ø�1ŠW€FÝ
ˆc‰(Œ(€Cà	Œ€BÝ˜B¥¤Ñ.Ô.€JÝ.¨w¸Ñ;Ô;€Nà
�,Š,�w  Q¤¨¬°!¬°bÑ
9Ô
9€CØ
Œ(€Cð&ð &ð &ð &ð &ð &ð ˆ#ˆa‰&Œ&€CØ€AØ
�Š(ˆ(Ø�‰7ð 	 Ø�#�c˜3‘-”-ˆCØ�‰	ˆØˆc�#�s‰mŒmˆð	 �Š(ˆ(ð ð Iàð 	ð	ð 	ð 	ð 	ð 	ð 	ðð ð ð ×&Ò& w°Ý'-Ô'7¸¸BÑ'?Ô'?À#ÀñIô Iˆð €Jr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S ©Nr=   ©rB   r   r"   ©r%   r&   r'   r    r.   s        r   Úint_slt_implr«   :  ó2   € Ø
ˆ'Ô
˜cÐ
) DÐ
)Ð
)Ð
)€CÝ˜g w°´ÀÑEÔEÐEr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S ©Nz<=r©   rª   s        r   Úint_sle_implr¯   ?  ó2   € Ø
ˆ'Ô
˜dÐ
* TÐ
*Ð
*Ð
*€CÝ˜g w°´ÀÑEÔEÐEr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S ©Nú>r©   rª   s        r   Úint_sgt_implr´   D  r¬   r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S ©Nz>=r©   rª   s        r   Úint_sge_implr·   I  r°   r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r¨   ©Úicmp_unsignedr   r"   rª   s        r   Úint_ult_implr»   N  ó2   € Ø
ˆ'Ô
 Ð
+ dÐ
+Ð
+Ð
+€CÝ˜g w°´ÀÑEÔEÐEr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r®   r¹   rª   s        r   Úint_ule_implr¾   S  ó2   € Ø
ˆ'Ô
 Ð
, tÐ
,Ð
,Ð
,€CÝ˜g w°´ÀÑEÔEÐEr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r²   r¹   rª   s        r   Úint_ugt_implrÁ   X  r¼   r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r¶   r¹   rª   s        r   Úint_uge_implrÃ   ]  r¿   r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S ©Nr9   r¹   rª   s        r   Úint_eq_implrÆ   b  r¿   r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S ©Nr>   r¹   rª   s        r   Úint_ne_implrÉ   g  r¿   r   c                 ó   ‡ — ˆ fd„}|S )Nc                 ó@  •— |\  }}|                      d|t          |j        d¦  «        ¦  «        }|                      ‰
|t          |j        d¦  «        ¦  «        }|                     ‰
||¦  «        }|                     |||¦  «        }	t          | ||j        |	¦  «        S ©Nr=   r   ©rB   r   r?   rº   Úselectr   r"   ©r%   r&   r'   r    ÚleftÚrightÚcmp_zeroÚlt_zeroÚge_zeror.   Úops             €r   Úimplz%int_signed_unsigned_cmp.<locals>.implm  s–   ø€ Ø‰ˆˆuð ×&Ò& s¨Dµ(¸4¼9ÀaÑ2HÔ2HÑIÔIˆØ×%Ò% b¨$µ¸¼ÀAÑ0FÔ0FÑGÔGˆØ×'Ò'¨¨D°%Ñ8Ô8ˆØ�nŠn˜X w°Ñ8Ô8ˆÝ! '¨7°C´OÀSÑIÔIÐIr   r�   ©rÕ   rÖ   s   ` r   Úint_signed_unsigned_cmprØ   l  s(   ø€ ðJð Jð Jð Jð Jð  €Kr   c                 ó   ‡ — ˆ fd„}|S )Nc                 ó@  •— |\  }}|                      d|t          |j        d¦  «        ¦  «        }|                      ‰
t          |j        d¦  «        |¦  «        }|                     ‰
||¦  «        }|                     |||¦  «        }	t          | ||j        |	¦  «        S rÌ   rÍ   rÏ   s             €r   rÖ   z%int_unsigned_signed_cmp.<locals>.impl�  s”   ø€ Ø‰ˆˆuà×&Ò& s¨Eµ8¸E¼JÈÑ3JÔ3JÑKÔKˆØ×%Ò% b­(°5´:¸qÑ*AÔ*AÀ5ÑIÔIˆØ×'Ò'¨¨D°%Ñ8Ô8ˆØ�nŠn˜X w°Ñ8Ô8ˆÝ! '¨7°C´OÀSÑIÔIÐIr   r�   r×   s   ` r   Úint_unsigned_signed_cmprÛ   €  s(   ø€ ðJð Jð Jð Jð Jð €Kr   c                 óè   — |\  }t          |j        d ¦  «        }|                     d||¦  «        }|                     |¦  «        }|                     |||¦  «        }t          | ||j        |¦  «        S r¨   )r   r?   rB   ÚnegrÎ   r   r"   )	r%   r&   r'   r    rM   rO   ÚltzÚnegatedr.   s	            r   Úint_abs_implrà   Œ  sk   € Ø
�C€QÝ�A”F˜DÑ!Ô!€DØ
×
Ò
˜c 1 dÑ
+Ô
+€CØ�kŠk˜!‰nŒn€GØ
�.Š.˜˜g qÑ
)Ô
)€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó8   — |\  }t          | ||j        |¦  «        S r˜   ©r   r"   )r%   r&   r'   r    rM   s        r   Úuint_abs_implrã   •  s   € Ø
�C€QÝ˜g w°´ÀÑCÔCÐCr   c                 óî   — |j         \  }}|\  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }|                     ||¦  «        }t	          | ||j        |¦  «        S r˜   )r    r!   r"   Úshlr   ©	r%   r&   r'   r    ÚvaltyÚamttyr¤   Úamtr.   s	            r   Úint_shl_implrê   š  sq   € Ø”X�N€UˆEØ�J€Sˆ#Ø
�,Š,�w  U¨C¬OÑ
<Ô
<€CØ
�,Š,�w  U¨C¬OÑ
<Ô
<€CØ
�+Š+�c˜3Ñ
Ô
€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó4  — |j         \  }}|\  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }|j        j        r|                     ||¦  «        }n|                     ||¦  «        }t          | ||j        |¦  «        S r˜   )r    r!   r"   r   ÚashrÚlshrr   ræ   s	            r   Úint_shr_implrî   £  s“   € Ø”X�N€UˆEØ�J€Sˆ#Ø
�,Š,�w  U¨C¬OÑ
<Ô
<€CØ
�,Š,�w  U¨C¬OÑ
<Ô
<€CØ
„Ôð %Ø�lŠl˜3 Ñ$Ô$ˆˆà�lŠl˜3 Ñ$Ô$ˆÝ˜g w°´ÀÑEÔEÐEr   c                 óî   — |j         \  }}|\  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }	|                     ||	¦  «        }
t	          | ||j        |
¦  «        S r˜   )r    r!   r"   rA   r   ©r%   r&   r'   r    ÚatÚbtÚavÚbvÚcavÚcbcr.   s              r   Úint_and_implr÷   ¯  sq   € ØŒx�H€RˆØ�H€RˆØ
�,Š,�w  B¨¬Ñ
8Ô
8€CØ
�,Š,�w  B¨¬Ñ
8Ô
8€CØ
�,Š,�s˜CÑ
 Ô
 €CÝ˜g w°´ÀÑEÔEÐEr   c                 óî   — |j         \  }}|\  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }	|                     ||	¦  «        }
t	          | ||j        |
¦  «        S r˜   )r    r!   r"   Úor_r   rð   s              r   Úint_or_implrú   ¸  óq   € ØŒx�H€RˆØ�H€RˆØ
�,Š,�w  B¨¬Ñ
8Ô
8€CØ
�,Š,�w  B¨¬Ñ
8Ô
8€CØ
�+Š+�c˜3Ñ
Ô
€CÝ˜g w°´ÀÑEÔEÐEr   c                 óî   — |j         \  }}|\  }}|                      ||||j        ¦  «        }|                      ||||j        ¦  «        }	|                     ||	¦  «        }
t	          | ||j        |
¦  «        S r˜   )r    r!   r"   rH   r   rð   s              r   Úint_xor_implrý   Á  rû   r   c                 ó®   — |j         \  }|\  }|                     |¦  «        }|                      ||||j        ¦  «        }t	          | ||j        |¦  «        S r˜   )r    rÝ   r!   r"   r   ©r%   r&   r'   r    Útypr¤   r.   s          r   Úint_negate_implr  Ê  sR   € ØŒH�E€SØ�E€Sà
�+Š+�cÑ
Ô
€CØ
�,Š,�w  S¨#¬/Ñ
:Ô
:€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó„   — |j         \  }|\  }|                      ||||j        ¦  «        }t          | ||j        |¦  «        S r˜   ©r    r!   r"   r   rÿ   s          r   Úint_positive_implr  Ó  óA   € ØŒH�E€SØ�E€SØ
�,Š,�w  S¨#¬/Ñ
:Ô
:€CÝ˜g w°´ÀÑEÔEÐEr   c           
      ó  — |j         \  }|\  }|                     |t          |j        t	          d|j        j        z  d¦  «        ¦  «        ¦  «        }|                      ||||j        ¦  «        }t          | ||j        |¦  «        S )NÚ1é   )	r    rH   r   r?   ÚintÚwidthr!   r"   r   rÿ   s          r   Úint_invert_implr  Ú  ss   € ØŒH�E€SØ�E€Sà
�+Š+�c�8 C¤H­c°#¸¼¼Ñ2FÈÑ.JÔ.JÑKÔKÑ
LÔ
L€CØ
�,Š,�w  S¨#¬/Ñ
:Ô
:€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó2  — |\  }t          |j        d¦  «        }t          |j        d¦  «        }t          |j        d¦  «        }|                     d||¦  «        }|                     d||¦  «        }	t	          j        ||j        ¦  «        }
|                     d¦  «        }|                     d¦  «        }|                     d¦  «        }|                     d	¦  «        }|                     d
¦  «        }|                     |||¦  «         |                     |¦  «        5  | 	                    ||
¦  «         | 
                    |¦  «         ddd¦  «         n# 1 swxY w Y   |                     |¦  «        5  |                     |	||¦  «         ddd¦  «         n# 1 swxY w Y   |                     |¦  «        5  | 	                    ||
¦  «         | 
                    |¦  «         ddd¦  «         n# 1 swxY w Y   |                     |¦  «        5  | 	                    ||
¦  «         | 
                    |¦  «         ddd¦  «         n# 1 swxY w Y   |                     |¦  «         |                     |
¦  «        }t          | ||j        |¦  «        S )z
    np.sign(int)
    r8   r:   r   r9   r³   z.zeroz.postestz.posz.negz.exitN)r   r?   rº   rB   r   rh   Úappend_basic_blockÚcbranchÚ
goto_blockrJ   ÚbranchÚposition_at_endrK   r   r"   )r%   r&   r'   r    rM   ÚPOSÚNEGrO   rÒ   Úcmp_posÚpresultÚbb_zeroÚ
bb_postestÚbb_posÚbb_negÚbb_exitr.   s                    r   Úint_sign_implr  ã  sd  € ð �C€QÝ
�1”6˜1Ñ
Ô
€CÝ
�1”6˜2Ñ
Ô
€CÝ�A”F˜AÑÔ€Dà×$Ò$ T¨1¨dÑ3Ô3€HØ×!Ò! # q¨$Ñ/Ô/€GåÔ! '¨1¬6Ñ2Ô2€Gà×(Ò(¨Ñ1Ô1€GØ×+Ò+¨JÑ7Ô7€JØ×'Ò'¨Ñ/Ô/€FØ×'Ò'¨Ñ/Ô/€FØ×(Ò(¨Ñ1Ô1€Gà‡O‚O�H˜g zÑ2Ô2Ð2à	×	Ò	˜GÑ	$Ô	$ð  ð  Ø�Š�d˜GÑ$Ô$Ð$Ø�Š�wÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð 
×	Ò	˜JÑ	'Ô	'ð 1ð 1Ø�Š˜ ¨Ñ0Ô0Ð0ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1ð 
×	Ò	˜FÑ	#Ô	#ð  ð  Ø�Š�c˜7Ñ#Ô#Ð#Ø�Š�wÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð 
×	Ò	˜FÑ	#Ô	#ð  ð  Ø�Š�c˜7Ñ#Ô#Ð#Ø�Š�wÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð ×Ò˜GÑ$Ô$Ð$Ø
�,Š,�wÑ
Ô
€CÝ˜g w°´ÀÑEÔEÐEsH   Ä!,EÅEÅ EÅ9FÆF!Æ$F!Æ=,G5Ç5G9Ç<G9È,IÉIÉIc                 ó®   — |j         \  }|\  }|                      ||||j        ¦  «        }|                     |¦  «        }t	          | ||j        |¦  «        S r˜   )r    r!   r"   rÝ   r   rÿ   s          r   Úbool_negate_implr    sR   € ØŒH�E€SØ�E€SØ
�,Š,�w  S¨#¬/Ñ
:Ô
:€CØ
�+Š+�cÑ
Ô
€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó„   — |j         \  }|\  }|                      ||||j        ¦  «        }t          | ||j        |¦  «        S r˜   r  rÿ   s          r   Úbool_unary_positive_implr    r  r   c                  ó  — t           j        }  t          t          j        | | ¦  «        t
          ¦  «          t          t          j        | | ¦  «        t
          ¦  «          t          t          j        | | ¦  «        t          ¦  «          t          t          j	        | | ¦  «        t          ¦  «          t          t          j
        | | ¦  «        t          ¦  «          t          t          j        | | ¦  «        t          ¦  «          t          t          j        | | ¦  «        t          ¦  «          t          t          j        | | ¦  «        t           ¦  «          t          t          j        | | ¦  «        t$          ¦  «          t          t          j        | | ¦  «        t$          ¦  «          t          t          j        | | ¦  «        t*          ¦  «          t          t          j        | | ¦  «        t*          ¦  «          t          t          j        | ¦  «        t0          ¦  «          t          t          j        | ¦  «        t4          ¦  «          t          t          j        | | ¦  «        t8          ¦  «          t          t          j        | | ¦  «        t8          ¦  «          t          t6          | | ¦  «        t8          ¦  «         t           j        D �]^}  t          t          j        | | ¦  «        t@          ¦  «          t          t          j!        | | ¦  «        tD          ¦  «          t          t          j#        | | ¦  «        tH          ¦  «          t          t          j%        | | ¦  «        tL          ¦  «          t          t          j        t           j'        | ¦  «        t8          ¦  «          t          t          j        t           j'        | ¦  «        t8          ¦  «          t          t6          t           j'        | ¦  «        t8          ¦  «          t          tP          | ¦  «        tR          ¦  «         �Œ` t          t          j        t           j*        t           j*        ¦  «        tV          ¦  «          t          t          j#        t           j*        t           j*        ¦  «        tV          ¦  «          t          t          j!        t           j*        t           j*        ¦  «        tV          ¦  «          t          t          j%        t           j*        t           j*        ¦  «        tV          ¦  «         t           j,        D �]^}  t          t          j        | | ¦  «        tV          ¦  «          t          t          j!        | | ¦  «        tZ          ¦  «          t          t          j#        | | ¦  «        t\          ¦  «          t          t          j%        | | ¦  «        t^          ¦  «          t          t          j        t           j'        | ¦  «        t8          ¦  «          t          t          j        t           j'        | ¦  «        t8          ¦  «          t          t6          t           j'        | ¦  «        t8          ¦  «          t          tP          | ¦  «        t`          ¦  «         �Œ`d S r˜   )1r   r€   r   Úoperatorr#   r/   Úiaddr2   r3   Úisubr5   r6   ÚimulÚeqrÆ   ÚnerÉ   Úlshiftrê   ÚilshiftÚrshiftrî   ÚirshiftrÝ   r  Úposr  rŒ   r•   ÚipowÚunsigned_domainÚltr»   Úler¾   ÚgtrÁ   ÚgerÃ   ÚFloatr¢   rã   ÚIntegerLiteralr«   Úsigned_domainr¯   r´   r·   rà   ©rL   s    r   Ú_implement_integer_operatorsr6  &  s¨  € Ý	Œ€Bà'…M•(”,  BÑ'Ô'­Ñ5Ô5Ð5Ø(…M•(”-  RÑ(Ô(­Ñ6Ô6Ð6Ø'…M•(”,  BÑ'Ô'­Ñ5Ô5Ð5Ø(…M•(”-  RÑ(Ô(­Ñ6Ô6Ð6Ø'…M•(”,  BÑ'Ô'­Ñ5Ô5Ð5Ø(…M•(”-  RÑ(Ô(­Ñ6Ô6Ð6Ø&…M•(”+˜r 2Ñ&Ô&¥{Ñ3Ô3Ð3Ø&…M•(”+˜r 2Ñ&Ô&¥{Ñ3Ô3Ð3à*…M•(”/ 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø+…M•(Ô" B¨Ñ+Ô+­LÑ9Ô9Ð9Ø*…M•(”/ 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø+…M•(Ô" B¨Ñ+Ô+­LÑ9Ô9Ð9à#…M•(”, Ñ#Ô#¥OÑ4Ô4Ð4Ø#…M•(”, Ñ#Ô#Õ$5Ñ6Ô6Ð6à'…M•(”,  BÑ'Ô'­Ñ7Ô7Ð7Ø(…M•(”-  RÑ(Ô(­Ñ8Ô8Ð8Ø…M•#�r˜2ÑÔ�~Ñ.Ô.Ð.åÔ#ð .ñ .ˆØ*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø4�•h”l¥E¤K°Ñ4Ô4µ^ÑDÔDÐDØ5�•h”m¥U¤[°"Ñ5Ô5µnÑEÔEÐEØ+�•c�5œ;¨Ñ+Ô+­NÑ;Ô;Ð;Ø�•c˜2ÑÔ�}Ñ-Ô-Ð-Ñ-àJ…M•(”+�uÔ3µUÔ5IÑJÔJÍ<ÑXÔXÐXØJ…M•(”+�uÔ3µUÔ5IÑJÔJÍ<ÑXÔXÐXØJ…M•(”+�uÔ3µUÔ5IÑJÔJÍ<ÑXÔXÐXØJ…M•(”+�uÔ3µUÔ5IÑJÔJÍ<ÑXÔXÐXÝÔ!ð -ñ -ˆØ*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø*�•h”k 2 rÑ*Ô*­<Ñ8Ô8Ð8Ø4�•h”l¥E¤K°Ñ4Ô4µ^ÑDÔDÐDØ5�•h”m¥U¤[°"Ñ5Ô5µnÑEÔEÐEØ+�•c�5œ;¨Ñ+Ô+­NÑ;Ô;Ð;Ø�•c˜2ÑÔ�|Ñ,Ô,Ð,Ñ,ð-ð -r   c                  ó|  — t           j        t           j        fD �]!}  t          t          j        | | ¦  «        t          ¦  «          t          t          j        | | ¦  «        t          ¦  «          t          t          j        | | ¦  «        t          ¦  «          t          t          j
        | | ¦  «        t          ¦  «          t          t          j        | | ¦  «        t          ¦  «          t          t          j        | | ¦  «        t          ¦  «          t          t          j        | ¦  «        t          ¦  «         �Œ#d S r˜   )r   ÚBooleanr€   r   r!  rA   r÷   Úiandrù   rú   ÚiorrH   rý   ÚixorrŽ   r  r5  s    r   Ú_implement_bitwise_operatorsr<  V  s÷   € ÝŒ}�eœmÐ,ð <ñ <ˆØ,�•h”m R¨Ñ,Ô,­\Ñ:Ô:Ð:Ø,�•h”m R¨Ñ,Ô,­\Ñ:Ô:Ð:Ø+�•h”l B¨Ñ+Ô+­KÑ8Ô8Ð8Ø+�•h”l B¨Ñ+Ô+­KÑ8Ô8Ð8Ø+�•h”l B¨Ñ+Ô+­LÑ9Ô9Ð9Ø,�•h”m R¨Ñ,Ô,­\Ñ:Ô:Ð:à*�•h”o rÑ*Ô*­?Ñ;Ô;Ð;Ñ;ð<ð <r   c                 óD   —  |j         |Ž }t          | ||j        |¦  «        S r˜   )Úfaddr   r"   rª   s        r   Úreal_add_implr?  f  ó&   € Ø
ˆ'Œ,˜Ð
€CÝ˜g w°´ÀÑEÔEÐEr   c                 óD   —  |j         |Ž }t          | ||j        |¦  «        S r˜   )Úfsubr   r"   rª   s        r   Úreal_sub_implrC  k  r@  r   c                 óD   —  |j         |Ž }t          | ||j        |¦  «        S r˜   )r™   r   r"   rª   s        r   Úreal_mul_implrE  p  r@  r   c                 óà   — t          j        ||d         ¦  «        5  | j                             |d¦  «         d d d ¦  «         n# 1 swxY w Y    |j        |Ž }t          | ||j        |¦  «        S )Nr8   rz   )r   rm   rj   rk   r{   r   r"   rª   s        r   Úreal_div_implrG  u  s¼   € Ý	Œ˜ $ q¤'Ñ	*Ô	*ð Mð MØÔ×,Ò,¨WÐ6KÑLÔLÐLðMð Mð Mñ Mô Mð Mð Mð Mð Mð Mð Møøøð Mð Mð Mð Mà
ˆ'Œ,˜Ð
€CÝ˜g w°´ÀÑEÔEÐEs   œAÁAÁAc                 ó„  — |j         |j         k    sJ ‚|j         }|j        }|                      d|j         g¦  «        }t          j        |||t          j        |¦  «        f¦  «        }t          j        |||¦  «        }|j        ryd|_	        t          j
        |                     d¦  «        ¦  «        }	|j        \  }
}}t          | |	|
|¦  «        \  }}|	                     ||¦  «         |	                     |¦  «         t          j        ||¦  «        }|                     ||||f¦  «        }||                     |¦  «        fS )Nz.numba.python.remÚlinkonce_odrÚentry)r?   ÚmoduleÚmanglerr   ÚFunctionTypeÚPointerTyper   Úget_or_insert_functionÚis_declarationÚlinkageÚ	IRBuilderr  r    Úreal_divmod_func_bodyrJ   Úretrh   ÚcallrK   )r%   r&   rM   rN   ÚfloattyrK  ÚfnameÚfntyÚfnÚ	fnbuilderÚfxÚfyÚpmodÚdivÚmodÚquotients                   r   Úreal_divmodra  |  s.  € ØŒ6�Q”VÒÐÐÐØŒf€GàŒ^€FØ�OŠOÐ/°!´&°Ñ:Ô:€EÝŒ?˜7 W¨gµr´~ÀgÑ7NÔ7NÐ$OÑPÔP€DÝ	Ô	'¨°°eÑ	<Ô	<€Bà	Ôð Ø#ˆŒ
Ý”L ×!6Ò!6°wÑ!?Ô!?Ñ@Ô@ˆ	Ø”w‰ˆˆB�Ý(¨°)¸RÀÑDÔD‰ˆˆSØ�Š˜˜TÑ"Ô"Ð"Ø�Š�cÑÔÐåÔ˜w¨Ñ0Ô0€DØ�|Š|˜B  A t Ñ-Ô-€HØ�W—\’\ $Ñ'Ô'Ð'Ð'r   c           	      ó 	  — t          j        ||j        ¦  «        }t          j        ||j        ¦  «        }t          j        ||j        ¦  «        }|                     ||¦  «        }|                     |                     ||¦  «        |¦  «        }|                     ||¦  «         |                     ||¦  «         |                     d¦  «        }	|                     d¦  «        }
|                     d¦  «        }|                     d||	¦  «        }|                     d||	¦  «        }|                     d||	¦  «        }| 	                    |d¬¦  «        5 \  }}|5  | 
                    d||¦  «        }|                     |¦  «        5  |                     |                     ||¦  «        |¦  «         |                     |                     ||¦  «        |¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   |5  |                     ||
|	¦  «        }|                     ||¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   ~~|                     |¦  «        }|                     d||	¦  «        }|                     |¦  «        5  t          j        t          j        dœ}|t%          |j        ¦  «                 }|                      t(          j        t-          j        ||¦  «        ¦  «        } |||g¦  «        }|                     ||¦  «        }|                     ||¦  «        }t1          |j        d	¦  «        }|                     d
||¦  «        }|                     |||¦  «        }|                     ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «        5  |                     ||¦  «        }|                     ||¦  «         |                     |                     ||¦  «        |¦  «        }|                     ||¦  «         d d d ¦  «         n# 1 swxY w Y   |                     |¦  «        |                     |¦  «        fS )Nç        g       €rˆ   r>   r=   Tr;   )r�   Údoubleg      à?r³   )r   rh   r?   Úfremr{   rB  rJ   Úfcmp_unorderedÚfcmp_orderedrI   rº   rD   r>  rÎ   rK   r   Úfloat32Úfloat64ÚstrÚget_functionr‹   Úfloorr   r£   r   Úifnotr™   )r%   r&   ÚvxÚwxr]  ÚpdivÚ	pfloordivr_  r^  rO   ÚNZEROrP   Ú
mod_istrueÚwx_ltzÚmod_ltzÚif_nonzero_modÚif_zero_modÚwx_ltz_ne_mod_ltzÚ
div_istrueÚrealtypemapÚrealtypeÚfloorfnÚfloordivÚfloordivdiffÚfloordivincrÚHALFÚpreds                              r   rS  rS  ’  s„  € õ\ Ô˜w¨¬Ñ0Ô0€DÝÔ˜w¨¬Ñ0Ô0€DÝÔ# G¨R¬WÑ5Ô5€Ià
�,Š,�r˜2Ñ
Ô
€CØ
�,Š,�w—|’| B¨Ñ,Ô,¨bÑ
1Ô
1€Cà‡M‚M�#�tÑÔÐØ‡M‚M�#�tÑÔÐð �7Š7�3‰<Œ<€DØ�GŠG�D‰MŒM€EØ
�'Š'�#‰,Œ,€CØ×'Ò'¨¨c°4Ñ8Ô8€JØ×!Ò! # r¨4Ñ0Ô0€FØ×"Ò" 3¨¨TÑ2Ô2€Gà	�Š˜¨DˆÑ	1Ô	1ð %Ñ5R°nÀkØð 	;ð 	;ð !(× 5Ò 5°d¸FÀGÑ LÔ LÐà—’Ð!2Ñ3Ô3ð ;ð ;Ø—’˜gŸlšl¨3°Ñ4Ô4°dÑ;Ô;Ð;Ø—’˜gŸlšl¨3°Ñ3Ô3°TÑ:Ô:Ð:ð;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;ð ð 	%ð 	%ð —.’. ¨°Ñ5Ô5ˆCØ�MŠM˜#˜tÑ$Ô$Ð$ð		%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð  	ˆSà
�,Š,�tÑ
Ô
€CØ×%Ò% d¨C°Ñ6Ô6€Jà	�Š˜Ñ	$Ô	$ð +ð +Ý %¤Ý!&¤ð0ð 0ˆà�s 2¤7™|œ|Ô,ˆØ×&Ò&¥t¤zÝ'-Ô'7¸À(Ñ'KÔ'KñMô Mˆà�7˜7 S EÑ*Ô*ˆØ—|’| C¨Ñ2Ô2ˆØ—|’| H¨cÑ2Ô2ˆÝ˜œ Ñ%Ô%ˆØ×#Ò# C¨°tÑ<Ô<ˆØ—>’> $¨°hÑ?Ô?ˆØ�Š�h 	Ñ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +õ 
Œ�w 
Ñ	+Ô	+ð +ð +Ø�lŠl˜3 Ñ$Ô$ˆØ�Š�c˜4Ñ Ô Ð Ø—<’< §¢¨S°"Ñ 5Ô 5°rÑ:Ô:ˆØ�Š�h 	Ñ*Ô*Ð*ð	+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð �<Š<˜	Ñ"Ô" G§L¢L°Ñ$6Ô$6Ð6Ð6s¥   ÅIÅ-HÆ	AG*ÇHÇ*G.Ç.HÇ1G.Ç2HÇ5IÈH	ÈIÈH	È	IÈ.IÈ<IÉI	ÉIÉI	ÉIÉI#É&I#Ê-C9N2Î2N6Î9N6ÏA-QÑQÑQc                 óR  — |\  }}t          j        ||j        d¬¦  «        }t          j        ||j        d¬¦  «        }|                     t          j        ||¦  «        d¬¦  «        5 \  }	}
|	5  | j                             |d|¦  «        sX|                     ||¦  «        }|                     ||¦  «        }| 	                    ||¦  «         | 	                    ||¦  «         d d d ¦  «         n# 1 swxY w Y   |
5  t          | |||¦  «        \  }}| 	                    ||¦  «         | 	                    ||¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          j        ||                     |¦  «        |                     |¦  «        f¦  «        S )Nra   rb   rd   Fr;   ©zmodulo by zero)r   rh   r?   rI   ri   rj   rk   r{   re  rJ   ra  rs   rK   )r%   r&   r'   r    ÚlocrM   rN   ra   rd   rm   rn   ro   rp   s                r   Úreal_divmod_implr…  þ  sa  € à�D€A€qÝÔ˜w¨¬°VÐ<Ñ<Ô<€DÝ
Ô
˜g q¤v°EÐ
:Ñ
:Ô
:€Cà	�Š�Ô/°¸Ñ;Ô;ÀEˆñ 
ô 
ð "Ù4˜w¨Øð 	&ð 	&ØÔ&×7Ò7ØÐ,¨cñ3ô 3ð &ð —L’L  AÑ&Ô&�Ø—L’L  AÑ&Ô&�Ø—’˜a Ñ&Ô&Ð&Ø—’˜a Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð ð 	"ð 	"Ý˜w¨°°AÑ6Ô6‰DˆAˆqØ�MŠM˜!˜TÑ"Ô"Ð"Ø�MŠM˜!˜SÑ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð"ð "ð "ñ "ô "ð "ð "ð "ð "ð "ð "øøøð "ð "ð "ð "õ  Ô˜gØ&Ÿ|š|¨DÑ1Ô1°7·<²<ÀÑ3DÔ3DÐEñGô Gð Gs\   Á(E!Á.A5C/Ã#E!Ã/C3	Ã3E!Ã6C3	Ã7E!Ã<AE
Ä>E!Å
E	ÅE!ÅE	ÅE!Å!E%Å(E%c                 ól  — |\  }}t          j        ||j        ¦  «        }|                     t          j        ||¦  «        d¬¦  «        5 \  }}	|5  | j                             |d|¦  «        s,|                     ||¦  «        }
|                     |
|¦  «         d d d ¦  «         n# 1 swxY w Y   |	5  t          | |||¦  «        \  }}
|                     |
|¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          | ||j        |                     |¦  «        ¦  «        S )NFr;   rƒ  )r   rh   r?   rI   ri   rj   rk   re  rJ   ra  r   r"   rK   )r%   r&   r'   r    r„  rM   rN   r.   rm   rn   rd   Ú_s               r   Úreal_mod_implrˆ    s÷  € Ø�D€A€qÝ
Ô
˜g q¤vÑ
.Ô
.€CØ	�Š�Ô/°¸Ñ;Ô;ÀEˆñ 
ô 
ð $Ù4˜w¨Øð 	(ð 	(ØÔ&×7Ò7ØÐ,¨cñ3ô 3ð (ð —l’l 1 aÑ(Ô(�Ø—’˜c 3Ñ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð ð 	$ð 	$Ý  ¨'°1°aÑ8Ô8‰FˆAˆsØ�MŠM˜#˜sÑ#Ô#Ð#ð	$ð 	$ð 	$ñ 	$ô 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$øøøð 	$ð 	$ð 	$ð 	$ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $õ ˜g w°´Ø%Ÿlšl¨3Ñ/Ô/ñ1ô 1ð 1ó[   Á
DÁA	B%ÂDÂ%B)	Â)DÂ,B)	Â-DÂ2,C*ÃDÃ*C.	Ã.DÃ1C.	Ã2DÄDÄDc                 ól  — |\  }}t          j        ||j        ¦  «        }|                     t          j        ||¦  «        d¬¦  «        5 \  }}	|5  | j                             |d|¦  «        s,|                     ||¦  «        }
|                     |
|¦  «         d d d ¦  «         n# 1 swxY w Y   |	5  t          | |||¦  «        \  }
}|                     |
|¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   t          | ||j        |                     |¦  «        ¦  «        S )NFr;   rz   )r   rh   r?   rI   ri   rj   rk   r{   rJ   ra  r   r"   rK   )r%   r&   r'   r    r„  rM   rN   r.   rm   rn   ra   r‡  s               r   Úreal_floordiv_implr‹  +  s÷  € Ø�D€A€qÝ
Ô
˜g q¤vÑ
.Ô
.€CØ	�Š�Ô/°¸Ñ;Ô;ÀEˆñ 
ô 
ð %Ù4˜w¨Øð 	)ð 	)ØÔ&×7Ò7ØÐ.°ñ5ô 5ð )ð —|’| A qÑ)Ô)�Ø—’˜d CÑ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð ð 	%ð 	%Ý! '¨7°A°qÑ9Ô9‰GˆD�!Ø�MŠM˜$ Ñ$Ô$Ð$ð	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ ˜g w°´Ø%Ÿlšl¨3Ñ/Ô/ñ1ô 1ð 1r‰  c                 ó  — |\  }}|j         }| j        r-|                      t          j        |¦  «        } |||¦  «        }n4|                     d|j        g¦  «        }	|                     |	||f¦  «        }t          | ||j	        |¦  «        S )Nzllvm.pow)
rK  Úimplement_powi_as_math_callrk  r‹   rŒ   Údeclare_intrinsicr?   rU  r   r"   )
r%   r&   r'   r    rM   rN   rK  Úimpr.   rY  s
             r   Úreal_power_implr�  >  s�   € Ø�D€A€qØŒ^€FØÔ*ð 'Ø×"Ò"¥4¤8¨SÑ1Ô1ˆØˆc�'˜4Ñ Ô ˆˆà×%Ò% j°1´6°(Ñ;Ô;ˆØ�lŠl˜2  1˜vÑ&Ô&ˆÝ˜g w°´ÀÑEÔEÐEr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r¨   ©rg  r   r"   rª   s        r   Úreal_lt_implr“  J  ó2   € Ø
ˆ'Ô
˜sÐ
* TÐ
*Ð
*Ð
*€CÝ˜g w°´ÀÑEÔEÐEr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r®   r’  rª   s        r   Úreal_le_implr–  O  ó2   € Ø
ˆ'Ô
˜tÐ
+ dÐ
+Ð
+Ð
+€CÝ˜g w°´ÀÑEÔEÐEr   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r²   r’  rª   s        r   Úreal_gt_implr™  T  r”  r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S r¶   r’  rª   s        r   Úreal_ge_implr›  Y  r—  r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S rÅ   r’  rª   s        r   Úreal_eq_implr�  ^  r—  r   c                 óL   —  |j         dg|¢R Ž }t          | ||j        |¦  «        S rÈ   )rf  r   r"   rª   s        r   Úreal_ne_implrŸ  c  s2   € Ø
 ˆ'Ô
  Ð
-¨Ð
-Ð
-Ð
-€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó–   — |j         \  }t          j        ||¦  «        }|                      t          j        |¦  «        } |||¦  «        S r˜   )r    r   r£   rk  r‹   Úfabs)r%   r&   r'   r    rL   rÖ   s         r   Úreal_abs_implr¢  h  sF   € ØŒ8�D€RÝ
Ô
˜2˜rÑ
"Ô
"€CØ×Ò¥¤	¨3Ñ/Ô/€DØˆ4�˜ÑÔÐr   c                 ót   — ddl m} |                     ||d         ¦  «        }t          | ||j        |¦  «        S ©Nr   ©Úmathimpl)Únumba.cpythonr¦  Únegate_realr   r"   )r%   r&   r'   r    r¦  r.   s         r   Úreal_negate_implr©  o  sC   € Ø&Ð&Ð&Ð&Ð&Ð&Ø
×
Ò
˜w¨¨Q¬Ñ
0Ô
0€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó„   — |j         \  }|\  }|                      ||||j        ¦  «        }t          | ||j        |¦  «        S r˜   r  rÿ   s          r   Úreal_positive_implr«  u  r  r   c           	      ó„  — |\  }t          |j        d¦  «        }t          |j        d¦  «        }t          |j        d¦  «        }t          j        ||j        ¦  «        }|                     d||¦  «        }	|                     d||¦  «        }
|                     |	¦  «        5 \  }}|5  |                     ||¦  «         ddd¦  «         n# 1 swxY w Y   |5  |                     |
¦  «        5 \  }}|5  |                     ||¦  «         ddd¦  «         n# 1 swxY w Y   |5  |                     ||¦  «         ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   |                     |¦  «        }t          | ||j	        |¦  «        S )z
    np.sign(float)
    r8   r:   r   r³   r=   N)
r   r?   r   rh   rg  rI   rJ   rK   r   r"   )r%   r&   r'   r    rM   r  r  rO   r  Úis_posÚis_negÚgt_zeroÚnot_gt_zerorÓ   Únot_lt_zeror.   s                   r   Úreal_sign_implr²  |  s%  € ð �C€QÝ
�1”6˜1Ñ
Ô
€CÝ
�1”6˜2Ñ
Ô
€CÝ�A”F˜AÑÔ€DåÔ! '¨1¬6Ñ2Ô2€Gà×!Ò! # q¨$Ñ/Ô/€FØ×!Ò! # q¨$Ñ/Ô/€Fà	�Š˜Ñ	 Ô	 ð 
.Ñ$: W¨kØð 	(ð 	(Ø�MŠM˜#˜wÑ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(àð 	.ð 	.Ø—’ Ñ(Ô(ð .Ñ,B¨W°kØð 0ð 0Ø—M’M # wÑ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0à ð .ð .ð —M’M ! WÑ-Ô-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .ð	.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.ð
.ð 
.ð 
.ñ 
.ô 
.ð 
.ð 
.ð 
.ð 
.ð 
.ð 
.øøøð 
.ð 
.ð 
.ð 
.ð �,Š,�wÑ
Ô
€CÝ˜g w°´ÀÑEÔEÐEsÆ   Â!FÂ'C
Â>FÃ
C	ÃFÃC	ÃFÃE4Ã-EÃ3D	Ä
EÄDÄEÄDÄEÄ#E	Ä:EÅE
Å
EÅE
ÅEÅE4ÅE!Å!E4Å$E!Å%E4Å(FÅ4E8	Å8FÅ;E8	Å<FÆFÆFÚrealc                 ód   — |                       |||¬¦  «        }|j        }t          | |||¦  «        S ©N©rž   )Úmake_complexr³  r   ©r%   r&   r   rž   Úcplxr.   s         r   Úcomplex_real_implrº  »  ó7   € à×Ò ¨°EÐÑ:Ô:€DØ
Œ)€CÝ˜g w°°SÑ9Ô9Ð9r   Úimagc                 ód   — |                       |||¬¦  «        }|j        }t          | |||¦  «        S rµ  )r·  r¼  r   r¸  s         r   Úcomplex_imag_implr¾  Á  r»  r   zcomplex.conjugatec                 óô   — ddl m} |                      ||j        d         |d         ¦  «        }|                     ||j        ¦  «        |_        |                     ¦   «         }t          | ||j        |¦  «        S r¤  )	r§  r¦  r·  r    r¨  r¼  Ú	_getvaluer   r"   )r%   r&   r'   r    r¦  Úzr.   s          r   Úcomplex_conjugate_implrÂ  Ç  sq   € à&Ð&Ð&Ð&Ð&Ð&Ø×Ò˜W c¤h¨q¤k°4¸´7Ñ;Ô;€AØ×!Ò! '¨1¬6Ñ2Ô2€A„FØ
�+Š+‰-Œ-€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó&   — t          | |||¦  «        S r˜   )r   )r%   r&   r   rž   s       r   Úreal_real_implrÄ  Ï  s   € Ý˜g w°°UÑ;Ô;Ð;r   c                 óX   — t          j        |j        ¦  «        }t          | |||¦  «        S r˜   )r   Úget_null_valuer?   r   )r%   r&   r   rž   r.   s        r   Úreal_imag_implrÇ  Ò  s(   € Ý
Ô
  ¤Ñ
,Ô
,€CÝ˜g w°°SÑ9Ô9Ð9r   c                 ó<   — t          | ||j        |d         ¦  «        S ©Nr   râ   ©r%   r&   r'   r    s       r   Úreal_conjugate_implrË  Ö  s   € Ý˜g w°´ÀÀaÄÑIÔIÐIr   c           	      óÞ  — |\  }}|j         d         }|j        }|                      |||¬¦  «        }|                      |||¬¦  «        }	|                      ||¦  «        }
|j        }|                     ¦   «         }|	                     ¦   «         }|
                     ¦   «         }|                      |d¦  «        }|                      |d¦  «        }|                     d|	j        |¦  «        }|                     d|	j        |¦  «        }| 	                    ||¦  «        }| 
                    |¦  «        5 \  }}|5  t          | ||||f¦  «        }|                      |||¬¦  «        }|j        |
_        |j        |
_        d d d ¦  «         n# 1 swxY w Y   |5  t          j        dt          j        di|         }t          j        t          j        ¦   «         |j        gdz  ¦  «        }t'          j        |||¦  «        }|                     ||||f¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   |                     |¦  «        }t/          | ||j        |¦  «        S )Nr   r¶  r  r9   Únumba_cpowfÚ
numba_cpowé   )r    Úunderlying_floatÚmake_helperrK  Ú_getpointerÚget_constantrg  r³  r¼  rA   rI   Úcomplex_mul_implr   Ú	complex64Ú
complex128r   rM  ÚVoidTyper?   r   rO  rU  rK   r   r"   )r%   r&   r'   r    ÚcaÚcbrL   Úftyr,   r-   ÚcrK  ÚpaÚpbÚpcÚTWOrO   Úb_real_is_twoÚb_imag_is_zeroÚb_is_twoÚthenÚ	otherwiser.   ÚcresÚ	func_namerX  Úcpows                              r   Úcomplex_power_implrè  ß  s  € ð �H€RˆØ	Œ�!Œ€BØ
Ô
€CØ×Ò˜G R¨rÐÑ2Ô2€AØ×Ò˜G R¨rÐÑ2Ô2€AØ×Ò˜G RÑ(Ô(€AØŒ^€FØ	
�Š‰Œ€BØ	
�Š‰Œ€BØ	
�Š‰Œ€Bð ×
Ò
˜s AÑ
&Ô
&€CØ×Ò  QÑ'Ô'€Dà×(Ò(¨¨q¬v°sÑ;Ô;€MØ×)Ò)¨$°´¸Ñ=Ô=€NØ�|Š|˜M¨>Ñ:Ô:€Hà	�Š˜Ñ	"Ô	"ð -Ñ&7 t¨YØð 	ð 	å" 7¨G°S¸2¸r¸(ÑCÔCˆCØ×&Ò& w°¸#Ð&Ñ>Ô>ˆDØ”YˆAŒFØ”YˆAŒFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ð 	-ð 	-õ ” ÝÔ  ,ðð ôˆIõ ”?¥2¤;¡=¤=°2´7°)¸a±-Ñ@Ô@ˆDÝÔ1°&¸$À	ÑJÔJˆDØ�LŠL˜  B¨˜|Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð$ �,Š,�rÑ
Ô
€CÝ˜g w°´ÀÑEÔEÐEs\   Ä2H8Ä8AF	Å=H8Æ	F	ÆH8ÆF	ÆH8ÆA?H!ÈH8È!H%	È%H8È(H%	È)H8È8H<È?H<c                 ó¬  — |\  }}|j         d         }|                      |||¬¦  «        }|                      |||¬¦  «        }|                      ||¦  «        }	|j        }
|j        }|j        }|j        }|                     |
|¦  «        |	_        |                     ||¦  «        |	_        |	                     ¦   «         }t          | ||j        |¦  «        S ©Nr   r¶  )r    r·  r³  r¼  r>  rÀ  r   r"   ©r%   r&   r'   r    ÚcxÚcyrL   rM   rN   rÁ  r,   r-   rÛ  Údr.   s                  r   Úcomplex_add_implrï    óÈ   € Ø�H€RˆØ	Œ�!Œ€BØ×Ò˜W b°ÐÑ3Ô3€AØ×Ò˜W b°ÐÑ3Ô3€AØ×Ò˜W bÑ)Ô)€AØ	Œ€AØ	Œ€AØ	Œ€AØ	Œ€AØ�\Š\˜!˜QÑÔ€A„FØ�\Š\˜!˜QÑÔ€A„FØ
�+Š+‰-Œ-€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó¬  — |\  }}|j         d         }|                      |||¬¦  «        }|                      |||¬¦  «        }|                      ||¦  «        }	|j        }
|j        }|j        }|j        }|                     |
|¦  «        |	_        |                     ||¦  «        |	_        |	                     ¦   «         }t          | ||j        |¦  «        S rê  )r    r·  r³  r¼  rB  rÀ  r   r"   rë  s                  r   Úcomplex_sub_implrò    rð  r   c                 ó\  — |\  }}|j         d         }|                      |||¬¦  «        }|                      |||¬¦  «        }|                      ||¦  «        }	|j        }
|j        }|j        }|j        }|                     |
|¦  «        }|                     ||¦  «        }|                     |
|¦  «        }|                     ||¦  «        }|                     ||¦  «        |	_        |                     ||¦  «        |	_        |	                     ¦   «         }t          | ||j	        |¦  «        S )z'
    (a+bi)(c+di)=(ac-bd)+i(ad+bc)
    r   r¶  )
r    r·  r³  r¼  r™   rB  r>  rÀ  r   r"   )r%   r&   r'   r    rì  rí  rL   rM   rN   rÁ  r,   r-   rÛ  rî  ÚacÚbdÚadÚbcr.   s                      r   rÔ  rÔ  +  s  € ð �H€RˆØ	Œ�!Œ€BØ×Ò˜W b°ÐÑ3Ô3€AØ×Ò˜W b°ÐÑ3Ô3€AØ×Ò˜W bÑ)Ô)€AØ	Œ€AØ	Œ€AØ	Œ€AØ	Œ€AØ	�Š�a˜Ñ	Ô	€BØ	�Š�a˜Ñ	Ô	€BØ	�Š�a˜Ñ	Ô	€BØ	�Š�a˜Ñ	Ô	€BØ�\Š\˜"˜bÑ!Ô!€A„FØ�\Š\˜"˜bÑ!Ô!€A„FØ
�+Š+‰-Œ-€CÝ˜g w°´ÀÑEÔEÐEr   Únanc                 óf   — d„ }|                       ||||¦  «        }t          | ||j        |¦  «        S )Nc                 óô  — | j         }| j        }|j         }|j        }|s|st          d¦  «        ‚t          |¦  «        t          |¦  «        k    rK|st	          t
          t
          ¦  «        S ||z  }|||z  z   }t	          |||z  z   |z  |||z  z
  |z  ¦  «        S |st	          t
          t
          ¦  «        S ||z  }||z  |z   }t	          | j         |z  | j        z   |z  | j        |z  | j         z
  |z  ¦  «        S )Nzcomplex division by zero)r³  r¼  rŠ   r¢   ÚcomplexÚNAN)r,   r-   ÚarealÚaimagÚbrealÚbimagÚratioÚdenoms           r   Úcomplex_divz%complex_div_impl.<locals>.complex_divE  s%  € à”ˆØ”ˆØ”ˆØ”ˆØð 	@˜Uð 	@Ý#Ð$>Ñ?Ô?Ð?Ýˆu‰:Œ:�˜U™œÒ#Ð#àð )Ý�s¥CÑ(Ô(Ð(Ø˜E‘MˆEØ˜E E™MÑ)ˆEÝØ˜ ™Ñ&¨%Ñ/Ø˜ ™Ñ&¨%Ñ/ñ1ô 1ð 1ð
 ð )Ý�s¥CÑ(Ô(Ð(Ø˜E‘MˆEØ˜E‘M EÑ)ˆEÝØ”˜%‘ !¤&Ñ(¨EÑ1Ø”˜%‘ !¤&Ñ(¨EÑ1ñ3ô 3ð 3r   ©r”   r   r"   )r%   r&   r'   r    r  r.   s         r   Úcomplex_div_implr  D  sB   € ð3ð 3ð 3ð6 ×
"Ò
" 7¨K¸¸dÑ
CÔ
C€CÝ˜g w°´ÀÑEÔEÐEr   c                 óZ  — ddl m} |j        \  }|\  }|                      |||¬¦  «        }|                      ||¦  «        }|                     ||j        ¦  «        |_        |                     ||j        ¦  «        |_        |                     ¦   «         }t          | ||j	        |¦  «        S )Nr   r¥  r¶  )
r§  r¦  r    r·  r¨  r³  r¼  rÀ  r   r"   )	r%   r&   r'   r    r¦  r   r¤   Úcmplxr.   s	            r   Úcomplex_negate_implr  d  s¨   € Ø&Ð&Ð&Ð&Ð&Ð&ØŒH�E€SØ�E€SØ× Ò  ¨#°SÐ Ñ9Ô9€EØ
×
Ò
˜w¨Ñ
,Ô
,€CØ×#Ò# G¨U¬ZÑ8Ô8€C„HØ×#Ò# G¨U¬ZÑ8Ô8€C„HØ
�-Š-‰/Œ/€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó8   — |\  }t          | ||j        |¦  «        S r˜   râ   ©r%   r&   r'   r    r¤   s        r   Úcomplex_positive_implr  p  s   € Ø�E€SÝ˜g w°´ÀÑEÔEÐEr   c                 ód  — |\  }}|j         d         }|                      |||¬¦  «        }|                      |||¬¦  «        }|                     d|j        |j        ¦  «        }	|                     d|j        |j        ¦  «        }
|                     |	|
¦  «        }t          | ||j        |¦  «        S )Nr   r¶  r9   )r    r·  rg  r³  r¼  rA   r   r"   )r%   r&   r'   r    rì  rí  r   rM   rN   Úreals_are_eqÚimags_are_eqr.   s               r   Úcomplex_eq_implr  u  s©   € Ø�H€RˆØ
Œ(�1Œ+€CØ×Ò˜W c°ÐÑ4Ô4€AØ×Ò˜W c°ÐÑ4Ô4€Aà×'Ò'¨¨a¬f°a´fÑ=Ô=€LØ×'Ò'¨¨a¬f°a´fÑ=Ô=€LØ
�,Š,�| \Ñ
2Ô
2€CÝ˜g w°´ÀÑEÔEÐEr   c                 ód  — |\  }}|j         d         }|                      |||¬¦  «        }|                      |||¬¦  «        }|                     d|j        |j        ¦  «        }	|                     d|j        |j        ¦  «        }
|                     |	|
¦  «        }t          | ||j        |¦  «        S )Nr   r¶  r>   )r    r·  rf  r³  r¼  rù   r   r"   )r%   r&   r'   r    rì  rí  r   rM   rN   Úreals_are_neÚimags_are_ner.   s               r   Úcomplex_ne_implr  �  s©   € Ø�H€RˆØ
Œ(�1Œ+€CØ×Ò˜W c°ÐÑ4Ô4€AØ×Ò˜W c°ÐÑ4Ô4€Aà×)Ò)¨$°´¸¼Ñ?Ô?€LØ×)Ò)¨$°´¸¼Ñ?Ô?€LØ
�+Š+�l LÑ
1Ô
1€CÝ˜g w°´ÀÑEÔEÐEr   c                 óf   — d„ }|                       ||||¦  «        }t          | ||j        |¦  «        S )z)
    abs(z) := hypot(z.real, z.imag)
    c                 ó@   — t          j        | j        | j        ¦  «        S r˜   )r‹   Úhypotr³  r¼  )rÁ  s    r   Úcomplex_absz%complex_abs_impl.<locals>.complex_abs‘  s   € ÝŒz˜!œ& !¤&Ñ)Ô)Ð)r   r  )r%   r&   r'   r    r  r.   s         r   Úcomplex_abs_implr  �  sB   € ð*ð *ð *ð ×
"Ò
" 7¨K¸¸dÑ
CÔ
C€CÝ˜g w°´ÀÑEÔEÐEr   znumber.itemc                 ó   — |d         S )z;
    The no-op .item() method on booleans and numbers.
    r   r�   rÊ  s       r   Únumber_item_implr  ®  s   € ð �Œ7€Nr   c                 ó®   — |j         \  }|\  }|                      ||||j        ¦  «        }|                     |¦  «        }t	          | ||j        |¦  «        S r˜   )r    r!   r"   rE   r   )r%   r&   r'   r    r   r¤   Úistruer.   s           r   Únumber_not_implr  º  sR   € ØŒH�E€SØ�E€SØ�\Š\˜' 3¨¨S¬_Ñ=Ô=€FØ
�,Š,�vÑ
Ô
€CÝ˜g w°´ÀÑEÔEÐEr   c                 ó   — |\  }|S r˜   r�   r
  s        r   Úbool_as_boolr  Á  s   € à�E€SØ€Jr   c                 ó^   — |\  }|                      d|t          |j        d¦  «        ¦  «        S )Nr>   r   )rº   r   r?   r
  s        r   Úint_as_boolr!  Æ  s-   € à�E€SØ× Ò   s­H°S´X¸qÑ,AÔ,AÑBÔBÐBr   c                 ó^   — |\  }|                      d|t          |j        d¦  «        ¦  «        S )Nr>   rc  )rf  r   r?   r
  s        r   Úfloat_as_boolr#  Ë  s-   € à�E€SØ×!Ò! $¨­X°c´hÀÑ-DÔ-DÑEÔEÐEr   c                 ó  — |j         \  }|\  }|                      |||¦  «        }|j        |j        }}t	          |j        d¦  «        }	|                     d||	¦  «        }
|                     d||	¦  «        }|                     |
|¦  «        S )Nrc  r>   )r    r·  r³  r¼  r   r?   rf  rù   )r%   r&   r'   r    r   r¤   r  r³  r¼  ÚzeroÚreal_istrueÚimag_istrues               r   Úcomplex_as_boolr(  Ð  s‰   € àŒH�E€SØ�E€SØ× Ò  ¨#¨sÑ3Ô3€EØ”˜UœZˆ$€DÝ�D”I˜sÑ#Ô#€DØ×(Ò(¨¨t°TÑ:Ô:€KØ×(Ò(¨¨t°TÑ:Ô:€KØ�;Š;�{ KÑ0Ô0Ð0r   c                 ó~   — |                       ||j        |j        ¦  «        }|                      |||j        |¦  «        S r˜   )Úget_constant_genericÚliteral_typeÚliteral_valuer!   ©r%   r&   ÚfromtyÚtotyr¤   Úlits         r   Úliteral_int_to_numberr1  è  sE   € ð ×
&Ò
&ØØÔØÔñ
ô 
€Cð
 �<Š<˜  fÔ&9¸4Ñ@Ô@Ð@r   c                 óJ  — |j         |j         k    r|S |j         |j         k     r)|                     ||                      |¦  «        ¦  «        S |j        r)|                     ||                      |¦  «        ¦  «        S |                     ||                      |¦  «        ¦  «        S r˜   )r‚   ÚtruncÚget_value_typer   ÚsextÚzext©r%   r&   r.  r/  r¤   s        r   Úinteger_to_integerr8  ô  s—   € à„}˜œÒ'Ð'àˆ
Ø	Œ˜œÒ	(Ð	(à�}Š}˜S '×"8Ò"8¸Ñ">Ô">Ñ?Ô?Ð?Ø	Œð ?à�|Š|˜C ×!7Ò!7¸Ñ!=Ô!=Ñ>Ô>Ð>ð �|Š|˜C ×!7Ò!7¸Ñ!=Ô!=Ñ>Ô>Ð>r   c                 óT   — |                      ||                      |¦  «        ¦  «        S r˜   )Úinttoptrr4  r7  s        r   Úinteger_to_voidptrr;    s&   € à×Ò˜C ×!7Ò!7¸Ñ!=Ô!=Ñ>Ô>Ð>r   c                 ó¤   — |                       |¦  «        }|j        |j        k     r|                     ||¦  «        S |                     ||¦  «        S r˜   )r4  r‚   ÚfpextÚfptrunc©r%   r&   r.  r/  r¤   r¥   s         r   Úfloat_to_floatr@    sL   € à
×
 Ò
  Ñ
&Ô
&€CØ„˜œÒ&Ð&Ø�}Š}˜S #Ñ&Ô&Ð&à�Š˜s CÑ(Ô(Ð(r   c                 ó’   — |                       |¦  «        }|j        r|                     ||¦  «        S |                     ||¦  «        S r˜   )r4  r   ÚsitofpÚuitofpr?  s         r   Úinteger_to_floatrD    sG   € à
×
 Ò
  Ñ
&Ô
&€CØ„}ð (Ø�~Š~˜c 3Ñ'Ô'Ð'à�~Š~˜c 3Ñ'Ô'Ð'r   c                 ó’   — |                       |¦  «        }|j        r|                     ||¦  «        S |                     ||¦  «        S r˜   )r4  r   ÚfptosiÚfptouir?  s         r   Úfloat_to_integerrH    sG   € à
×
 Ò
  Ñ
&Ô
&€CØ„{ð (Ø�~Š~˜c 3Ñ'Ô'Ð'à�~Š~˜c 3Ñ'Ô'Ð'r   c                 óâ   — |                       ||||j        ¦  «        }|                      |j        d¦  «        }|                      ||¦  «        }||_        ||_        |                     ¦   «         S rÉ  )r!   rÐ  rÓ  r·  r³  r¼  rÀ  )r%   r&   r.  r/  r¤   r³  r¼  r  s           r   Únon_complex_to_complexrJ    si   € ð �<Š<˜  f¨dÔ.CÑDÔD€DØ×Ò Ô 5°qÑ9Ô9€Dà× Ò  ¨$Ñ/Ô/€EØ€E„JØ€E„JØ�?Š?ÑÔÐr   c                 ó*  — |j         }|j         }|                      |||¬¦  «        }|                      ||¦  «        }|                      ||j        ||¦  «        |_        |                      ||j        ||¦  «        |_        |                     ¦   «         S rµ  )rÐ  r·  r!   r³  r¼  rÀ  )	r%   r&   r.  r/  r¤   ÚsrctyÚdsttyÚsrcÚdsts	            r   Úcomplex_to_complexrP  *  s…   € àÔ#€EØÔ!€Eà
×
Ò
˜w¨°cÐ
Ñ
:Ô
:€CØ
×
Ò
˜w¨Ñ
-Ô
-€CØ�|Š|˜G S¤X¨u°eÑ<Ô<€C„HØ�|Š|˜G S¤X¨u°eÑ<Ô<€C„HØ�=Š=‰?Œ?Ðr   c                 ó0   — |                       |||¦  «        S r˜   )Úis_truer7  s        r   Úany_to_booleanrS  5  s   € à�?Š?˜7 F¨CÑ0Ô0Ð0r   c                 ó–   — |                      |t          j        d¦  «        ¦  «        }|                      ||t          j        |¦  «        S )Né    )r6  r   ÚIntTyper!   r   Úint32)r%   r&   r.  r/  r¤   Úasints         r   Úboolean_to_anyrY  9  s9   € ð �LŠL˜�bœj¨™nœnÑ-Ô-€EØ�<Š<˜ ­¬°TÑ:Ô:Ð:r   c                 ó|   — |                       ||j        |j        ¦  «        }|                      ||j        |¦  «        S r˜   )r*  r+  r,  rR  r-  s         r   Úliteral_int_to_booleanr[  ?  sC   € ð ×
&Ò
&ØØÔØÔñ
ô 
€Cð
 �?Š?˜7 FÔ$7¸Ñ=Ô=Ð=r   c                 ó¬   — |j         }|                      |||j        ¦  «        }|                      |||j        ¦  «        }t	          j        ||f¦  «        S r˜   )rÐ  r*  r³  r¼  r   Úliteral_struct)r%   r&   rL   ÚpyvalrÚ  r³  r¼  s          r   Úconstant_complexr_  L  sQ   € à
Ô
€CØ×'Ò'¨°°e´jÑAÔA€DØ×'Ò'¨°°e´jÑAÔA€DÝÔ" D¨$ <Ñ0Ô0Ð0r   c                 ó”   — t          |t          j        ¦  «        rt          |¦  «        }|                      |¦  «        } ||¦  «        S r˜   )re   ÚnpÚbool_Úboolr4  )r%   r&   rL   r^  r¥   s        r   Úconstant_integerrd  S  sD   € õ �%�œÑ"Ô"ð Ý�U‘”ˆØ
×
 Ò
  Ñ
$Ô
$€CØˆ3ˆu‰:Œ:Ðr   c                 óð   — t          | t          j        t          j        f¦  «        rMt          |t          j        j        ¦  «        r0| j        |j        j        k    rt          j	        d¦  «        ‚d„ }|S dS dS )z) Typing for the np scalar 'view' method. zOChanging the dtype of a 0d array is only supported if the itemsize is unchangedc                 ó"   — t          | |¦  «        S r˜   r   )ÚscalarÚviewtys     r   rÖ   zscalar_view.<locals>.implm  s   € Ý˜& &Ñ)Ô)Ð)r   N)
re   r   r2  r€   ÚabstractÚ	DTypeSpecr‚   rg   r   ÚTypingError)rg  rh  rÖ   s      r   Úscalar_viewrl  d  sˆ   € å�6�EœK­¬Ð7Ñ8Ô8ð 	Ý˜6¥5¤>Ô#;Ñ<Ô<ð	àŒ?˜fœlÔ3Ò3Ð3ÝÔ$ð(ñ)ô )ð )ð	*ð 	*ð 	*àˆð	ð 	ð 	ð 	r   Úviewr˜   )¦r‹   rŸ   Únumpyra  r!  Úllvmliter   Úllvmlite.irr   Únumba.core.imputilsr   r   r   r   r	   r
   r   Ú
numba.corer   r   r   r   r   r   Únumba.core.extendingr   r   Únumba.cpython.unsafe.numbersr   r   r/   r3   r6   r[   r_   rq   Údivmodr€   ru   r}  Ú	ifloordivrx   ÚtruedivÚitruedivr|   r_  Úimodr~   rƒ   r•   rŒ   r3  r,  r2  r¦   r«   r¯   r´   r·   r»   r¾   rÁ   rÃ   rÆ   rÉ   rØ   rÛ   rà   rã   rê   rî   r÷   rú   rý   r  r  r  r  r  r  r%  Úbooleanr&  r.  r/  r0  r1  rÝ   r+  r6  r<  r?  rC  rE  rG  ra  rS  r…  rˆ  r‹  r�  r“  r–  r™  r›  r�  rŸ  r¢  r©  r«  r²  rL   r#   r"  r2   r#  r5   r$  r¢   ÚComplexrº  r¾  rÂ  rÄ  rÇ  rË  Úclsrè  rï  rò  rÔ  r�   rü  r  r  r  r  r  r  r8  ÚNumberr  r  rc  r  r!  r#  r(  rE   r1  r8  Úvoidptrr;  r@  rD  rH  rJ  rP  ÚAnyrS  rY  ÚBooleanLiteralr[  r_  rd  rl  r�   r   r   ú<module>r�     s�  ðØ €€€Ø €€€à Ð Ð Ð Ø €€€à Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  ð8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8ð GÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FÐ FØ ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø /Ð /Ð /Ð /Ð /Ð /ðð ð ð"Fð Fð FðFð Fð FðFð Fð Fð66ð 66ð 66ðr6ð 6ð 6ðð ð ð< €ˆv�u”} e¤mÑ4Ô4ðGð Gñ 5Ô4ðGð €ˆxÔ  %¤-°´Ñ?Ô?Ø€ˆxÔ! 5¤=°%´-Ñ@Ô@ðð ñ AÔ@ñ @Ô?ðð €ˆxÔ ¤°´Ñ>Ô>Ø€ˆxÔ  %¤-°´Ñ?Ô?ðFð Fñ @Ô?ñ ?Ô>ðFð €ˆxŒ|˜Uœ]¨E¬MÑ:Ô:Ø€ˆxŒ}˜eœm¨U¬]Ñ;Ô;ðð ñ <Ô;ñ ;Ô:ððð ð ð(Fð (Fð (FðV €ˆxŒ|˜Uœ]¨EÔ,@ÑAÔAØ€ˆxŒ}˜eœm¨UÔ-AÑBÔBØ€ˆxŒ|˜Uœ[¨%Ô*>Ñ?Ô?Ø€ˆxŒ}˜eœk¨5Ô+?Ñ@Ô@ð:ð :ñ AÔ@ñ @Ô?ñ CÔBñ BÔAð:ðzFð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
ð ð ð(	ð 	ð 	ðFð Fð FðDð Dð Dð
Fð Fð Fð	Fð 	Fð 	FðFð Fð FðFð Fð FðFð Fð FðFð Fð FðFð Fð FðFð Fð Fð'Fð 'Fð 'FðTFð Fð FðFð Fð Fð 9€€ˆhŒk˜5œ=¨%¬-Ñ 8Ô 8¸Ñ EÔ EÐ EØ 8€€ˆhŒk˜5œ=¨%¬-Ñ 8Ô 8¸Ñ EÔ EÐ EØ 8€€ˆhŒk˜5œ=¨%¬-Ñ 8Ô 8¸Ñ FÔ FÐ FØ 8€€ˆhŒk˜5œ=¨%¬-Ñ 8Ô 8¸Ñ FÔ FÐ FØ 8€€ˆhŒk˜5œ=¨%¬-Ñ 8Ô 8¸Ñ FÔ FÐ FØ 8€€ˆhŒk˜5œ=¨%¬-Ñ 8Ô 8¸Ñ FÔ FÐ FØ *€€ˆhŒl˜EœMÑ *Ô *Ð+;Ñ <Ô <Ð <Ø *€€ˆhŒl˜EœMÑ *Ô *Ð+CÑ DÔ DÐ Dð.-ð .-ð .-ð`	<ð 	<ð 	<ð Ð Ñ Ô Ð à Ð Ñ Ô Ð ðFð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð(ð (ð (ð,i7ð i7ð i7ðX €ˆv�u”{ E¤KÑ0Ô0ðGð Gð Gñ 1Ô0ðGð21ð 1ð 1ð 1ð&1ð 1ð 1ð 1ð&	Fð 	Fð 	FðFð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
Fð Fð Fð
ð ð ðFð Fð FðFð Fð FðFð Fð Fð< „[€à #€€ˆhŒl˜B Ñ #Ô # MÑ 2Ô 2Ð 2Ø $€€ˆhŒm˜R Ñ $Ô $ ]Ñ 3Ô 3Ð 3Ø #€€ˆhŒl˜B Ñ #Ô # MÑ 2Ô 2Ð 2Ø $€€ˆhŒm˜R Ñ $Ô $ ]Ñ 3Ô 3Ð 3Ø #€€ˆhŒl˜B Ñ #Ô # MÑ 2Ô 2Ð 2Ø $€€ˆhŒm˜R Ñ $Ô $ ]Ñ 3Ô 3Ð 3Ø (€€ˆhÔ  RÑ (Ô (Ð);Ñ <Ô <Ð <Ø )€€ˆhÔ  " bÑ )Ô )Ð*<Ñ =Ô =Ð =Ø '€€ˆhÔ  BÑ 'Ô '¨Ñ 6Ô 6Ð 6Ø (€€ˆhÔ  RÑ (Ô (¨Ñ 7Ô 7Ð 7Ø #€€ˆhŒl˜B Ñ #Ô # MÑ 2Ô 2Ð 2Ø $€€ˆhŒm˜R Ñ $Ô $ ]Ñ 3Ô 3Ð 3Ø #€€ˆhŒl˜B Ñ #Ô # OÑ 4Ô 4Ð 4Ø $€€ˆhŒm˜R Ñ $Ô $ _Ñ 5Ô 5Ð 5Ø €€ˆc�2�rÑ Ô ˜?Ñ +Ô +Ð +à "€€ˆhŒk˜2˜rÑ "Ô " <Ñ 0Ô 0Ð 0Ø "€€ˆhŒk˜2˜rÑ "Ô " <Ñ 0Ô 0Ð 0Ø "€€ˆhŒk˜2˜rÑ "Ô " <Ñ 0Ô 0Ð 0Ø "€€ˆhŒk˜2˜rÑ "Ô " <Ñ 0Ô 0Ð 0Ø "€€ˆhŒk˜2˜rÑ "Ô " <Ñ 0Ô 0Ð 0Ø "€€ˆhŒk˜2˜rÑ "Ô " <Ñ 0Ô 0Ð 0à €€ˆc�2Ñ Ô �}Ñ %Ô %Ð %à €€ˆhŒl˜BÑ Ô Ð 0Ñ 1Ô 1Ð 1Ø €€ˆhŒl˜BÑ Ô Ð 2Ñ 3Ô 3Ð 3àð €ˆuŒ}˜fÑ%Ô%ð:ð :ñ &Ô%ð:ð
 €ˆuŒ}˜fÑ%Ô%ð:ð :ñ &Ô%ð:ð
 €Ð" E¤MÑ2Ô2ðFð Fñ 3Ô2ðFð<ð <ð <ð:ð :ð :ðJð Jð Jð ŒK˜œÐ'ð Að A€CØ€M€M�#�vÑÔ˜~Ñ.Ô.Ð.Ø€M€M�#�vÑÔ˜~Ñ.Ô.Ð.Ø+€M€MÐ% sÑ+Ô+Ð,?Ñ@Ô@Ð@Ð@ð €ˆxŒ|˜Uœ]¨E¬MÑ:Ô:Ø€ˆxŒ}˜eœm¨U¬]Ñ;Ô;Ø€ˆs�E”M 5¤=Ñ1Ô1ð'Fð 'Fñ 2Ô1ñ <Ô;ñ ;Ô:ð'FðRFð Fð Fð Fð Fð Fð Fð Fð Fð. €eˆE�l„l€ðFð Fð Fð@	Fð 	Fð 	FðFð Fð Fð
	Fð 	Fð 	Fð	Fð 	Fð 	FðFð Fð Fð „]€à #€€ˆhŒl˜B Ñ #Ô #Ð$4Ñ 5Ô 5Ð 5Ø $€€ˆhŒm˜R Ñ $Ô $Ð%5Ñ 6Ô 6Ð 6Ø #€€ˆhŒl˜B Ñ #Ô #Ð$4Ñ 5Ô 5Ð 5Ø $€€ˆhŒm˜R Ñ $Ô $Ð%5Ñ 6Ô 6Ð 6Ø #€€ˆhŒl˜B Ñ #Ô #Ð$4Ñ 5Ô 5Ð 5Ø $€€ˆhŒm˜R Ñ $Ô $Ð%5Ñ 6Ô 6Ð 6Ø '€€ˆhÔ  BÑ 'Ô 'Ð(8Ñ 9Ô 9Ð 9Ø (€€ˆhÔ  RÑ (Ô (Ð)9Ñ :Ô :Ð :Ø €€ˆhŒl˜BÑ Ô Ð 3Ñ 4Ô 4Ð 4Ø €€ˆhŒl˜BÑ Ô Ð 5Ñ 6Ô 6Ð 6ð #€€ˆhŒk˜2˜rÑ "Ô " ?Ñ 3Ô 3Ð 3Ø "€€ˆhŒk˜2˜rÑ "Ô " ?Ñ 3Ô 3Ð 3à €€ˆc�2Ñ Ô Ð'Ñ (Ô (Ð (àð €ˆ}˜eœmÑ,Ô,Ø€ˆ}˜eœlÑ+Ô+ðð ñ ,Ô+ñ -Ô,ððFð Fð Fð €ˆt�U”]Ñ#Ô#ðð ñ $Ô#ðð €ˆt�U”]Ñ#Ô#ðCð Cñ $Ô#ðCð €ˆt�U”[Ñ!Ô!ðFð Fñ "Ô!ðFð €ˆt�U”]Ñ#Ô#ð1ð 1ñ $Ô#ð1ð Œ=˜%œ+ u¤}Ð
5ð 6ð 6€BØ$€M€M�(”- Ñ$Ô$ _Ñ5Ô5Ð5Ð5à +€€ˆhŒm˜Uœ]Ñ +Ô +¨OÑ <Ô <Ð <ð €ˆEÔ  %¤-Ñ0Ô0Ø€ˆEÔ  %¤+Ñ.Ô.Ø€ˆEÔ  %¤-Ñ0Ô0ðAð Añ 1Ô0ñ /Ô.ñ 1Ô0ðAð €ˆEŒM˜5œ=Ñ)Ô)ð?ð ?ñ *Ô)ð?ð €ˆEŒM˜5œ=Ñ)Ô)ð?ð ?ñ *Ô)ð?ð €ˆEŒK˜œÑ%Ô%ð)ð )ñ &Ô%ð)ð €ˆEŒM˜5œ;Ñ'Ô'ð(ð (ñ (Ô'ð(ð €ˆEŒK˜œÑ'Ô'ð(ð (ñ (Ô'ð(ð €ˆEŒK˜œÑ'Ô'Ø€ˆEŒM˜5œ=Ñ)Ô)ðð ñ *Ô)ñ (Ô'ðð €ˆEŒM˜5œ=Ñ)Ô)ðð ñ *Ô)ðð €ˆEŒI�u”}Ñ%Ô%ð1ð 1ñ &Ô%ð1ð €ˆEŒM˜5œ<Ñ(Ô(ð;ð ;ñ )Ô(ð;ð
 €ˆEÔ  %¤-Ñ0Ô0Ø€ˆEÔ  %¤-Ñ0Ô0ð>ð >ñ 1Ô0ñ 1Ô0ð>ð €�”ÑÔð1ð 1ñ Ôð1ð €�”ÑÔØ€�”ÑÔØ€�”ÑÔðð ñ Ôñ Ôñ Ôððð ð ð %€€�”˜VÑ $Ô $ [Ñ 1Ô 1Ð 1Ø &€€�”˜vÑ &Ô & {Ñ 3Ô 3Ð 3Ð 3Ð 3r   