ó
    „ñ:iÚÃ  ã                   óä  • S SK r S SKrS SKrS SKrS SKJr  S SKJr  S SK	J
r
JrJrJrJrJrJr  S SKJrJrJrJrJrJr  S SKJrJr  S SKJr  S rS	 rS
 rS r S r!S r"S r#\
" \$\RJ                  \RJ                  5      S 5       r&\
" \RN                  \RJ                  \RJ                  5      \
" \RP                  \RJ                  \RJ                  5      S 5       5       r)\
" \RT                  \RJ                  \RJ                  5      \
" \RV                  \RJ                  \RJ                  5      S 5       5       r,\
" \RZ                  \RJ                  \RJ                  5      \
" \R\                  \RJ                  \RJ                  5      S 5       5       r/S r0S r1\
" \Rd                  \RJ                  \Rf                  5      \
" \Rh                  \RJ                  \Rf                  5      \
" \Rd                  \Rj                  \Rf                  5      \
" \Rh                  \Rj                  \Rf                  5      S 5       5       5       5       r6S r7S r8S r9S r:S r;S r<S r=S r>S r?S r@S  rAS! rBS" rCS# rDS$ rES% rFS& rGS' rHS( rIS) rJS* rKS+ rLS, rMS- rNS. rO\
" \R                   \R¢                  \R¢                  5      " \?5        \
" \R¤                  \R¢                  \R¢                  5      " \@5        \
" \R¦                  \R¢                  \R¢                  5      " \;5        \
" \R¨                  \R¢                  \R¢                  5      " \<5        \
" \Rª                  \R¢                  \R¢                  5      " \=5        \
" \R¬                  \R¢                  \R¢                  5      " \>5        \
" \R®                  \R¢                  5      " \N5        \
" \R°                  \R¢                  5      " \O5        S/ rYS0 rZ\Y" 5         \Z" 5         S1 r[S2 r\S3 r]S4 r^S5 r_S6 r`\
" \$\Rj                  \Rj                  5      SoS7 j5       raSoS8 jrbSoS9 jrcS: rdS; reS< rfS= rgS> rhS? riS@ rjSA rkSB rlSC rmSD rn\Rj                  ro\
" \Rà                  \o\o5      " \[5        \
" \Râ                  \o\o5      " \[5        \
" \Rä                  \o\o5      " \\5        \
" \Ræ                  \o\o5      " \\5        \
" \Rè                  \o\o5      " \]5        \
" \Rê                  \o\o5      " \]5        \
" \RN                  \o\o5      " \c5        \
" \RP                  \o\o5      " \c5        \
" \RT                  \o\o5      " \^5        \
" \RV                  \o\o5      " \^5        \
" \RZ                  \o\o5      " \b5        \
" \R\                  \o\o5      " \b5        \
" \Rd                  \o\o5      " \d5        \
" \Rh                  \o\o5      " \d5        \
" \2\o\o5      " \d5        \
" \R                   \o\o5      " \i5        \
" \R¤                  \o\o5      " \j5        \
" \R¦                  \o\o5      " \e5        \
" \R¨                  \o\o5      " \f5        \
" \Rª                  \o\o5      " \g5        \
" \R¬                  \o\o5      " \h5        \
" \v\o5      " \k5        \
" \R®                  \o5      " \l5        \
" \R°                  \o5      " \m5        Co\" \Rî                  SE5      SF 5       rx\" \Rî                  SG5      SH 5       ry\
" SI\Rî                  5      SJ 5       rzSK r{SL r|SM r}\Rj                  \RJ                  4 H0  r~\" \~SE5      " \{5        \" \~SG5      " \|5        \
" SI\~5      " \}5        M2     \
" \Rd                  \Rî                  \Rî                  5      \
" \Rh                  \Rî                  \Rî                  5      \
" \2\Rî                  \Rî                  5      SN 5       5       5       rSO r€SP r�SQ r‚\ƒ" SR5      r„SS r…ST r†SU r‡SV rˆSW r‰SX rŠ\Rî                  ro\
" \Rà                  \o\o5      " \€5        \
" \Râ                  \o\o5      " \€5        \
" \Rä                  \o\o5      " \�5        \
" \Ræ                  \o\o5      " \�5        \
" \Rè                  \o\o5      " \‚5        \
" \Rê                  \o\o5      " \‚5        \
" \RT                  \o\o5      " \…5        \
" \RV                  \o\o5      " \…5        \
" \R®                  \o5      " \†5        \
" \R°                  \o5      " \‡5        \
" \R                   \o\o5      " \ˆ5        \
" \R¤                  \o\o5      " \‰5        \
" \v\o5      " \Š5        Co\
" SY\GR                  5      \
" SY\GR                  5      SZ 5       5       r�S[ rŽ\
" \�\GR                  5      S\ 5       r�\
" \�\RJ                  5      S] 5       r‘\
" \�\Rj                  5      S^ 5       r’\
" \�\Rî                  5      S_ 5       r“\RJ                  \Rj                  \Rî                  4 H  ro\
" \GR(                  \o5      " \Ž5        M     \
" \GR(                  \R¢                  5      " \Ž5        \" \Rf                  \RJ                  5      \" \Rf                  \Rj                  5      \" \Rf                  \Rî                  5      S` 5       5       5       r•\" \RJ                  \RJ                  5      Sa 5       r–\" \RJ                  \GR.                  5      Sb 5       r˜\" \Rj                  \Rj                  5      Sc 5       r™\" \RJ                  \Rj                  5      Sd 5       rš\" \Rj                  \RJ                  5      Se 5       r›\" \Rj                  \Rî                  5      \" \RJ                  \Rî                  5      Sf 5       5       rœ\" \Rî                  \Rî                  5      Sg 5       r�\" \GR<                  \GR                  5      Sh 5       rŸ\" \GR                  \GR                  5      Si 5       r \" \Rf                  \GR                  5      \" \GRB                  \GR                  5      Sj 5       5       r¢\" \Rî                  5      Sk 5       r£\" \RJ                  5      \" \Rj                  5      \" \GR                  5      Sl 5       5       5       r¤Sm r¥\" \Rj                  Sn5      " \¥5        \" \RJ                  Sn5      " \¥5        g)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                 ó.   • U R                   (       a  S/$ / $ )z3
Return the modifier flags for integer arithmetic.
Únsw)Úsigned)Úrettypes    ÚX/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/numba/cpython/numbers.pyÚ_int_arith_flagsr      s   € ð ‡~‡~ð ˆwˆàˆ	ó    c                 ó
  • Uu  pEUR                   u  pgU R                  XXbR                  5      nU R                  XXrR                  5      n	UR                  X‰[	        UR                  5      S9n
[        XUR                  U
5      $ ©N)Úflags)ÚargsÚcastÚreturn_typeÚaddr   r   ©ÚcontextÚbuilderÚsigr    ÚvaÚvbÚtaÚtbÚaÚbÚress              r   Úint_add_implr/   #   ók   € Ø�H€RØ�x‰x�H€RØ�‰�W "§o¡oÓ6€AØ�‰�W "§o¡oÓ6€AØ
�+‰+�aÔ"2°3·?±?Ó"Cˆ+Ð
D€CÜ˜g°·±ÀÓEÐEr   c                 ó
  • Uu  pEUR                   u  pgU R                  XXbR                  5      nU R                  XXrR                  5      n	UR                  X‰[	        UR                  5      S9n
[        XUR                  U
5      $ r   )r    r!   r"   Úsubr   r   r$   s              r   Úint_sub_implr3   ,   r0   r   c                 ó
  • Uu  pEUR                   u  pgU R                  XXbR                  5      nU R                  XXrR                  5      n	UR                  X‰[	        UR                  5      S9n
[        XUR                  U
5      $ r   )r    r!   r"   Úmulr   r   r$   s              r   Úint_mul_implr6   5   r0   r   c           
      ó¢  • UR                   UR                   :X  d   eUR                  S5      nUR                  S5      n[        R                  " X5      n[        R                  " X5      nUR                  UR	                  SX3R                  UR
                  5      5      UR	                  SXDR                  S5      5      5      n	UR                  UR                  U	5      SS9   UR                  X45      n
UR                  X45      nUR	                  SUR                  XK5      U5      nUR	                  SXµ5      nUR                  XÜ5      nUR                  U5       u  nnU   UR                  X§5        UR                  X¸5        S	S	S	5        U   UR                  UR                  X¦5      U5        UR                  UR                  X´5      U5        S	S	S	5        S	S	S	5        S	S	S	5        UR                  U5      UR                  U5      4$ ! , (       d  f       N�= f! , (       d  f       NQ= f! , (       d  f       NZ= f! , (       d  f       Nc= f)
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[   >   sÉ  € ð$ �6‰6�Q—V‘VÓÐÐà�6‰6�!‹9€DØ
�&‰&�‹)€Cô ×&Ò& wÓ5€FÜ×&Ò& wÓ5€Fà—,‘,Ø×Ñ˜D !§V¡V¨B¯I©IÓ%6Ó7Ø×Ñ˜D !§V¡V¨B£ZÓ0ó2€Kð 
�‰˜Ÿ™ kÓ2¸4ˆÒ	@ð —‘˜QÓ"ˆØ—‘˜QÓ"ˆà!×-Ñ-¨c°7·;±;¸qÓ3HÈ$ÓOˆØ×*Ñ*¨4°Ó=ˆØ�|‰|˜LÓ:ˆà�_‰_˜TÔ"Ñ&IÐ'9¸=ÚØ—‘˜eÔ,Ø—‘˜eÔ,÷ ò $Ø—‘˜gŸk™k¨%Ó5°vÔ>Ø—‘˜gŸk™k¨%Ó3°VÔ<÷ $÷ #÷ 
Að& �<‰<˜Ó §¡¨fÓ!5Ð5Ð5÷ •ú÷ $Õ#ú÷ #Õ"ú÷ 
AÕ	@úsV   Ã$A9I ÅH/Å##HÆ
H/ÆAHÇH/ÇI È
HÈH/È
H,È(H/È/
H=	È9I É 
Ic                 ó‚   • UR                   (       a  [        XX#U5      $ UR                  X45      UR                  X45      4$ )z<
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   s7   € ð 
‡y‡yÜ  °2¸!Ó<Ð<à�|‰|˜AÓ! 7§<¡<°Ó#5Ð5Ð5r   c           	      ó@  • Uu  pVUR                   u  pxUR                  n	[        U	[        R                  5      (       a  U	R
                  n	U R                  XXy5      n
U R                  XX‰5      n[        R                  " XR                  SS9n[        R                  " XR                  SS9nUR                  [        R                  " X5      SS9 u  pïU   U R                  R                  X45      (       d"  UR                  X¼5        UR                  X½5        S S S 5        U   [        XXšU5      u  nnUR                  UU5        UR                  UU5        S S S 5        S S S 5        XÍ4$ ! , (       d  f       NX= f! , (       d  f       N*= f! , (       d  f       XÍ4$ = f)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   �   sR  € Ø�F€BØ�X‰X�F€Bà	�‰€BÜ�"”e—n‘n×%Ñ%Ø�X‰XˆØ�‰�W "Ó)€AØ�‰�W "Ó)€AÜ×Ò˜w¯©°VÑ<€DÜ
×
Ò
˜g§v¡v°EÑ
:€Cà	�‰œ×/Ò/°Ó;ÀEˆñ 
Ù4˜wÚØ×&Ñ&×7Ñ7ØÐ+÷-ñ -ð
 —‘˜aÔ&Ø—‘˜aÔ%÷ ò Ü˜g°°qÓ9‰DˆAˆqØ�M‰M˜!˜TÔ"Ø�M‰M˜!˜SÔ!÷ ÷
ð ˆ9Ð÷ �Wú÷ �[ú÷
ô 
ð ˆ9Ðús=   ÃFÃAE+Ä
FÄ#5E<ÅFÅ+
E9	Å5FÅ<
F
	ÆFÆ
Fc                 óŽ   • [        XX#S5      u  pE[        R                  " UUR                  U5      UR                  U5      45      $ )Nzinteger divmod by zero)rq   r   Ú
pack_arrayrK   ©r%   r&   r'   r    ra   rd   s         r   Úint_divmod_implru   Ÿ   sH   € ä  °3Ø!9ó;�I€Dô ×Ò˜gØ&Ÿ|™|¨DÓ1°7·<±<ÀÓ3DÐEóGð Gr   c                 óB   • [        XX#S5      u  pEUR                  U5      $ )Nzinteger division by zero©rq   rK   rt   s         r   Úint_floordiv_implrx   ¨   s&   € ô ! °3Ø!;ó=�I€Dà�<‰<˜ÓÐr   c                 ó~  • Uu  pEUR                   u  pgU R                  XXbR                  5      nU R                  XXrR                  5      n	[        R                  " X5         U R
                  R                  US5        S S S 5        UR                  X‰5      n
[        XUR                  U
5      $ ! , (       d  f       N6= f)N©zdivision by zero)	r    r!   r"   r   rm   rj   rk   Úfdivr   r$   s              r   Úint_truediv_implr|   °   s�   € ð �H€RØ�x‰x�H€RØ�‰�W "§o¡oÓ6€AØ�‰�W "§o¡oÓ6€AÜ	�Š˜Õ	$Ø×Ñ×,Ñ,¨WÐ6KÔL÷ 
%à
�,‰,�qÓ
€CÜ˜g°·±ÀÓEÐE÷ 
%Õ	$ús   Á!B.Â.
B<c                 óB   • [        XX#S5      u  pEUR                  U5      $ )Nzinteger modulo by zerorw   rt   s         r   Úint_rem_implr~   ½   s&   € ô ! °3Ø!9ó;�I€Dà�<‰<˜ÓÐr   c                 óœ   • [        U[        R                  5      (       a-  U R                  R                  (       d  SUR
                  S-
  -  $ g)Nr:   r8   F)re   r   ÚIntegerrj   Úraise_on_fp_zero_divisionÚbitwidth)r%   r"   s     r   Ú_get_power_zerodiv_returnrƒ   Å   s;   € Ü�;¤§¡×.Ñ.Ø×#Ñ#×=×=à�k×*Ñ*¨QÑ.Ñ/Ð/àr   c                 óè   ^^^• [        UR                  S   [        R                  5      mUR                  m[        U T5      mUUU4S jnU R                  XX#5      n[        XUR                  U5      $ )z8
a ^ b, where a is an integer or real, and b an integer
r   c                 ój  >• T" S5      nT" U 5      n US:  a@  SnU* nUS:  a  [         eT(       a'  U S:X  a  T(       a  T$ [        S5      eU S:w  a  U S:w  a  gOSnUnUS:”  a   [        R                  " U [	        U5      5      $ US:w  a  US-  (       a  X -  nUS-  nX -  n US:w  a  M  U(       a  SU-  $ U$ )	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_powerÚ!int_power_impl.<locals>.int_powerÖ   sÌ   ø€ áˆq‹EˆÙˆq‹EˆØˆq‹5ØˆFØ�"ˆCØ�Q‹wÜ#Ð#ÞØ˜“6Þ%Ø-Ð-ä/Ð0XÓYÐYØ˜“6˜a 2›gØøàˆFØˆCØ�‹=ä—8’8˜Aœu Q›xÓ(Ð(Ø�Q‹hØ�Q�wØ‘�Ø�A‰IˆCØ‰FˆAð	 �Q�hö !ˆs�Q‰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™H Q™K¬¯©Ó7€JØ	�‰€BÜ.¨w¸Ó;€N÷(ð> ×
"Ñ
" 7°sÓ
A€CÜ˜g°·±ÀÓEÐEr   c                 ó’  ^^^• UR                   S   R                  n[        U[        R                  5      (       d  [
        e[        U5      S:”  a  [
        eUS:  n[        U5      nUR                  n[        U[        R                  5      m[        X5      mU R                  TUS   UR                   S   U5      nUR                  nUU4S jn	U" S5      n
UnUS:w  a'  US-  (       a  U	" X§5      n
US-  nU	" Xw5      nUS:w  a  M'  U(       a:  T(       a  U4S jnOS nU R                  TU[        R                  " Xf5      U
45      n
U
$ )z@
a ^ b, where a is an integer or real, and b a constant integer
r8   r‡   r   c                 óV   >• T(       a  TR                  X5      $ TR                  X5      $ ©N)r5   Úfmul)r,   r-   r&   r�   s     €€r   r5   Ústatic_power_impl.<locals>.mul  s$   ø€ ÞØ—;‘;˜qÓ$Ð$à—<‘< Ó%Ð%r   c                 óV   >• U S:X  a  T(       a  T$ [        S5      eU S:w  a  U S:w  a  gU $ )Nr   r†   r8   r:   )rŠ   )r,   r’   s    €r   Úinvert_implÚ&static_power_impl.<locals>.invert_impl$  s4   ø€ Ø˜“6Þ%Ø-Ð-ä/Ð0XÓYÐYØ˜“6˜a 2›gØà�Hr   c                 ó   • SU -  $ )Nrˆ   © )r,   s    r   r�   rž   1  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�'Óä!Ð!Ø�1‰W€FÜ
ˆc‹(€Cà	�‰€BÜ˜B¤§¡Ó.€JÜ.¨wÓ;€Nà
�,‰,�w  Q¡¨¯©°!©°bÓ
9€CØ
�(‰(€Cö&ñ ˆa‹&€CØ€AØ
�‹(Ø��7Ù�c“-ˆCØ�‰	ˆÙ�#‹mˆð	 ��(ö æö	òð ×&Ñ& w°Ü'-×'7Ò'7¸Ó'?À#ÀóIˆð €Jr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ ©Nr=   ©rB   r   r"   ©r%   r&   r'   r    r.   s        r   Úint_slt_implr®   :  ó*   € Ø
×
Ò
˜cÐ
) DÒ
)€CÜ˜g°·±ÀÓEÐEr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ ©Nz<=r¬   r­   s        r   Úint_sle_implr²   ?  ó*   € Ø
×
Ò
˜dÐ
* TÒ
*€CÜ˜g°·±ÀÓEÐEr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ ©NÚ>r¬   r­   s        r   Úint_sgt_implr·   D  r¯   r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ ©Nz>=r¬   r­   s        r   Úint_sge_implrº   I  r³   r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ r«   ©Úicmp_unsignedr   r"   r­   s        r   Úint_ult_implr¾   N  ó*   € Ø
×
Ò
 Ð
+ dÒ
+€CÜ˜g°·±ÀÓEÐEr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ r±   r¼   r­   s        r   Úint_ule_implrÁ   S  ó*   € Ø
×
Ò
 Ð
, tÒ
,€CÜ˜g°·±ÀÓEÐEr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ rµ   r¼   r­   s        r   Úint_ugt_implrÄ   X  r¿   r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ r¹   r¼   r­   s        r   Úint_uge_implrÆ   ]  rÂ   r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ ©Nr9   r¼   r­   s        r   Úint_eq_implrÉ   b  rÂ   r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ ©Nr>   r¼   r­   s        r   Úint_ne_implrÌ   g  rÂ   r   c                 ó   ^ • U 4S jnU$ )Nc                 ó  >• Uu  pEUR                  SU[        UR                  S5      5      nUR                  T
U[        UR                  S5      5      nUR                  T
XE5      nUR	                  XgU5      n	[        XUR                  U	5      $ ©Nr=   r   ©rB   r   r?   r½   Úselectr   r"   ©r%   r&   r'   r    ÚleftÚrightÚcmp_zeroÚlt_zeroÚge_zeror.   Úops             €r   ÚimplÚ%int_signed_unsigned_cmp.<locals>.implm  s   ø€ Ø‰ˆð ×&Ñ& s¨D´(¸4¿9¹9ÀaÓ2HÓIˆØ×%Ñ% b¨$´¸¿¹ÀAÓ0FÓGˆØ×'Ñ'¨¨DÓ8ˆØ�n‰n˜X°Ó8ˆÜ! '°C·O±OÀSÓIÐIr   r    ©rØ   rÙ   s   ` r   Úint_signed_unsigned_cmprÜ   l  s   ø€ õJð  €Kr   c                 ó   ^ • U 4S jnU$ )Nc                 ó  >• Uu  pEUR                  SU[        UR                  S5      5      nUR                  T
[        UR                  S5      U5      nUR                  T
XE5      nUR	                  XgU5      n	[        XUR                  U	5      $ rÏ   rÐ   rÒ   s             €r   rÙ   Ú%int_unsigned_signed_cmp.<locals>.impl�  s}   ø€ Ø‰ˆà×&Ñ& s¨E´8¸E¿J¹JÈÓ3JÓKˆØ×%Ñ% b¬(°5·:±:¸qÓ*AÀ5ÓIˆØ×'Ñ'¨¨DÓ8ˆØ�n‰n˜X°Ó8ˆÜ! '°C·O±OÀSÓIÐIr   r    rÛ   s   ` r   Úint_unsigned_signed_cmprà   €  s   ø€ õJð €Kr   c                 óÎ   • Uu  n[        UR                  S 5      nUR                  SXE5      nUR                  U5      nUR	                  XgU5      n[        XUR                  U5      $ r«   )r   r?   rB   ÚnegrÑ   r   r"   )	r%   r&   r'   r    rM   rO   ÚltzÚnegatedr.   s	            r   Úint_abs_implrå   Œ  s[   € Ø
�C€QÜ�A—F‘F˜DÓ!€DØ
×
Ñ
˜c 1Ó
+€CØ�k‰k˜!‹n€GØ
�.‰.˜ qÓ
)€CÜ˜g°·±ÀÓEÐEr   c                 ó8   • Uu  n[        XUR                  U5      $ r™   ©r   r"   )r%   r&   r'   r    rM   s        r   Úuint_abs_implrè   •  s   € Ø
�C€QÜ˜g°·±ÀÓCÐCr   c                 óæ   • UR                   u  pEUu  pgU R                  XXBR                  5      nU R                  XXRR                  5      nUR                  Xg5      n[	        XUR                  U5      $ r™   )r    r!   r"   Úshlr   ©	r%   r&   r'   r    ÚvaltyÚamttyr§   Úamtr.   s	            r   Úint_shl_implrï   š  s]   € Ø—X‘X�N€UØ�J€SØ
�,‰,�w U¯O©OÓ
<€CØ
�,‰,�w U¯O©OÓ
<€CØ
�+‰+�cÓ
€CÜ˜g°·±ÀÓEÐEr   c                 ó@  • UR                   u  pEUu  pgU R                  XXBR                  5      nU R                  XXRR                  5      nUR                  R                  (       a  UR	                  Xg5      nOUR                  Xg5      n[        XUR                  U5      $ r™   )r    r!   r"   r   ÚashrÚlshrr   rë   s	            r   Úint_shr_implró   £  sx   € Ø—X‘X�N€UØ�J€SØ
�,‰,�w U¯O©OÓ
<€CØ
�,‰,�w U¯O©OÓ
<€CØ
‡�××Ø�l‰l˜3Ó$‰à�l‰l˜3Ó$ˆÜ˜g°·±ÀÓEÐEr   c                 óæ   • UR                   u  pEUu  pgU R                  XXBR                  5      nU R                  XXRR                  5      n	UR                  X‰5      n
[	        XUR                  U
5      $ r™   )r    r!   r"   rA   r   ©r%   r&   r'   r    ÚatÚbtÚavÚbvÚcavÚcbcr.   s              r   Úint_and_implrü   ¯  s]   € Ø�x‰x�H€RØ�H€RØ
�,‰,�w B¯©Ó
8€CØ
�,‰,�w B¯©Ó
8€CØ
�,‰,�sÓ
 €CÜ˜g°·±ÀÓEÐEr   c                 óæ   • UR                   u  pEUu  pgU R                  XXBR                  5      nU R                  XXRR                  5      n	UR                  X‰5      n
[	        XUR                  U
5      $ r™   )r    r!   r"   Úor_r   rõ   s              r   Úint_or_implrÿ   ¸  ó]   € Ø�x‰x�H€RØ�H€RØ
�,‰,�w B¯©Ó
8€CØ
�,‰,�w B¯©Ó
8€CØ
�+‰+�cÓ
€CÜ˜g°·±ÀÓEÐEr   c                 óæ   • UR                   u  pEUu  pgU R                  XXBR                  5      nU R                  XXRR                  5      n	UR                  X‰5      n
[	        XUR                  U
5      $ r™   )r    r!   r"   rH   r   rõ   s              r   Úint_xor_implr  Á  r   r   c                 ó®   • UR                   u  nUu  nUR                  U5      nU R                  XXBR                  5      n[	        XUR                  U5      $ r™   )r    râ   r!   r"   r   ©r%   r&   r'   r    Útypr§   r.   s          r   Úint_negate_implr  Ê  sI   € Ø�H‰H�E€SØ�E€Sà
�+‰+�cÓ
€CØ
�,‰,�w S¯/©/Ó
:€CÜ˜g°·±ÀÓEÐEr   c                 óŒ   • UR                   u  nUu  nU R                  XXBR                  5      n[        XUR                  U5      $ r™   ©r    r!   r"   r   r  s          r   Úint_positive_implr	  Ó  ó;   € Ø�H‰H�E€SØ�E€SØ
�,‰,�w S¯/©/Ó
:€CÜ˜g°·±ÀÓEÐEr   c           
      ó  • UR                   u  nUu  nUR                  U[        UR                  [	        SUR                  R
                  -  S5      5      5      nU R                  XXBR                  5      n[        XUR                  U5      $ )NÚ1é   )	r    rH   r   r?   ÚintÚwidthr!   r"   r   r  s          r   Úint_invert_implr  Ú  sj   € Ø�H‰H�E€SØ�E€Sà
�+‰+�cœ8 C§H¡H¬c°#¸¿¹¿¹Ñ2FÈÓ.JÓKÓ
L€CØ
�,‰,�w S¯/©/Ó
:€CÜ˜g°·±ÀÓEÐEr   c                 óž  • Uu  n[        UR                  S5      n[        UR                  S5      n[        UR                  S5      nUR                  SXG5      nUR                  SXG5      n	[        R
                  " XR                  5      n
UR                  S5      nUR                  S5      nUR                  S5      nUR                  S	5      nUR                  S
5      nUR                  X‹U5        UR                  U5         UR                  Xz5        UR                  U5        SSS5        UR                  U5         UR                  X�U5        SSS5        UR                  U5         UR                  XZ5        UR                  U5        SSS5        UR                  U5         UR                  Xj5        UR                  U5        SSS5        UR                  U5        UR                  U
5      n[        XUR                  U5      $ ! , (       d  f       Në= f! , (       d  f       NÐ= f! , (       d  f       N¥= f! , (       d  f       Nz= f)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   ã  sÎ  € ð �C€QÜ
�1—6‘6˜1Ó
€CÜ
�1—6‘6˜2Ó
€CÜ�A—F‘F˜AÓ€Dà×$Ñ$ T¨1Ó3€HØ×!Ñ! # qÓ/€Gä×!Ò! '¯6©6Ó2€Gà×(Ñ(¨Ó1€GØ×+Ñ+¨JÓ7€JØ×'Ñ'¨Ó/€FØ×'Ñ'¨Ó/€FØ×(Ñ(¨Ó1€Gà‡O�O�H zÔ2à	×	Ñ	˜GÕ	$Ø�‰�dÔ$Ø�‰�wÔ÷ 
%ð 
×	Ñ	˜JÕ	'Ø�‰˜¨Ô0÷ 
(ð 
×	Ñ	˜FÕ	#Ø�‰�cÔ#Ø�‰�wÔ÷ 
$ð 
×	Ñ	˜FÕ	#Ø�‰�cÔ#Ø�‰�wÔ÷ 
$ð ×Ñ˜GÔ$Ø
�,‰,�wÓ
€CÜ˜g°·±ÀÓEÐE÷# 
%Õ	$ú÷ 
(Õ	'ú÷ 
$Õ	#ú÷ 
$Õ	#ús0   Ä#HÄ?HÅ+#H-Æ'#H>È
HÈ
H*È-
H;È>
Ic                 ó®   • UR                   u  nUu  nU R                  XXBR                  5      nUR                  U5      n[	        XUR                  U5      $ r™   )r    r!   r"   râ   r   r  s          r   Úbool_negate_implr"    sI   € Ø�H‰H�E€SØ�E€SØ
�,‰,�w S¯/©/Ó
:€CØ
�+‰+�cÓ
€CÜ˜g°·±ÀÓEÐEr   c                 óŒ   • UR                   u  nUu  nU R                  XXBR                  5      n[        XUR                  U5      $ r™   r  r  s          r   Úbool_unary_positive_implr$    r
  r   c                  ó(  • [         R                  n [        [        R                  X 5      " [
        5        [        [        R                  X 5      " [
        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [         5        [        [        R"                  X 5      " [$        5        [        [        R&                  X 5      " [$        5        [        [        R(                  X 5      " [*        5        [        [        R,                  X 5      " [*        5        [        [        R.                  U 5      " [0        5        [        [        R2                  U 5      " [4        5        [        [        R6                  X 5      " [8        5        [        [        R:                  X 5      " [8        5        [        [6        X 5      " [8        5        [         R<                   GH=  n [        [        R>                  X 5      " [@        5        [        [        RB                  X 5      " [D        5        [        [        RF                  X 5      " [H        5        [        [        RJ                  X 5      " [L        5        [        [        R6                  [         RN                  U 5      " [8        5        [        [        R:                  [         RN                  U 5      " [8        5        [        [6        [         RN                  U 5      " [8        5        [        [P        U 5      " [R        5        GM@     [        [        R>                  [         RT                  [         RT                  5      " [V        5        [        [        RF                  [         RT                  [         RT                  5      " [V        5        [        [        RB                  [         RT                  [         RT                  5      " [V        5        [        [        RJ                  [         RT                  [         RT                  5      " [V        5        [         RX                   GH=  n [        [        R>                  X 5      " [V        5        [        [        RB                  X 5      " [Z        5        [        [        RF                  X 5      " [\        5        [        [        RJ                  X 5      " [^        5        [        [        R6                  [         RN                  U 5      " [8        5        [        [        R:                  [         RN                  U 5      " [8        5        [        [6        [         RN                  U 5      " [8        5        [        [P        U 5      " [`        5        GM@     g 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_operatorsr;  &  s9  € Ü	�‰€Bä”(—,‘, Ô'¬Ô5Ü”(—-‘- Ô(¬Ô6Ü”(—,‘, Ô'¬Ô5Ü”(—-‘- Ô(¬Ô6Ü”(—,‘, Ô'¬Ô5Ü”(—-‘- Ô(¬Ô6Ü”(—+‘+˜rÔ&¤{Ô3Ü”(—+‘+˜rÔ&¤{Ô3ä”(—/‘/ 2Ô*¬<Ô8Ü”(×"Ñ" BÔ+¬LÔ9Ü”(—/‘/ 2Ô*¬<Ô8Ü”(×"Ñ" BÔ+¬LÔ9ä”(—,‘, Ô#¤OÔ4Ü”(—,‘, Ô#Ô$5Ô6ä”(—,‘, Ô'¬Ô7Ü”(—-‘- Ô(¬Ô8Ü”#�rÔœ~Ô.ä×#Õ#ˆÜ”h—k‘k 2Ô*¬<Ô8Ü”h—k‘k 2Ô*¬<Ô8Ü”h—k‘k 2Ô*¬<Ô8Ü”h—k‘k 2Ô*¬<Ô8Ü”h—l‘l¤E§K¡K°Ô4´^ÔDÜ”h—m‘m¤U§[¡[°"Ô5´nÔEÜ”cœ5Ÿ;™;¨Ô+¬NÔ;Ü”c˜2Ôœ}×-ñ $ô ”(—+‘+œu×3Ñ3´U×5IÑ5IÔJÌ<ÔXÜ”(—+‘+œu×3Ñ3´U×5IÑ5IÔJÌ<ÔXÜ”(—+‘+œu×3Ñ3´U×5IÑ5IÔJÌ<ÔXÜ”(—+‘+œu×3Ñ3´U×5IÑ5IÔJÌ<ÔXÜ×!Õ!ˆÜ”h—k‘k 2Ô*¬<Ô8Ü”h—k‘k 2Ô*¬<Ô8Ü”h—k‘k 2Ô*¬<Ô8Ü”h—k‘k 2Ô*¬<Ô8Ü”h—l‘l¤E§K¡K°Ô4´^ÔDÜ”h—m‘m¤U§[¡[°"Ô5´nÔEÜ”cœ5Ÿ;™;¨Ô+¬NÔ;Ü”c˜2Ôœ|×,ò "r   c                  óN  • [         R                  [         R                  4 GH   n [        [        R
                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  X 5      " [        5        [        [        R                  U 5      " [        5        GM     g r™   )r   ÚBooleanr€   r   r&  rA   rü   Úiandrþ   rÿ   ÚiorrH   r  ÚixorrŽ   r  r:  s    r   Ú_implement_bitwise_operatorsrA  V  sž   € Ü�}‰}œeŸm™mÔ,ˆÜ”h—m‘m RÔ,¬\Ô:Ü”h—m‘m RÔ,¬\Ô:Ü”h—l‘l BÔ+¬KÔ8Ü”h—l‘l BÔ+¬KÔ8Ü”h—l‘l BÔ+¬LÔ9Ü”h—m‘m RÔ,¬\Ô:ä”h—o‘o rÔ*¬?×;ò -r   c                 óN   • UR                   " U6 n[        XUR                  U5      $ r™   )Úfaddr   r"   r­   s        r   Úreal_add_implrD  f  ó#   € Ø
�,Š,˜Ð
€CÜ˜g°·±ÀÓEÐEr   c                 óN   • UR                   " U6 n[        XUR                  U5      $ r™   )Úfsubr   r"   r­   s        r   Úreal_sub_implrH  k  rE  r   c                 óN   • UR                   " U6 n[        XUR                  U5      $ r™   )rš   r   r"   r­   s        r   Úreal_mul_implrJ  p  rE  r   c                 óì   • [         R                  " XS   5         U R                  R                  US5        S S S 5        UR                  " U6 n[        XUR                  U5      $ ! , (       d  f       N4= f)Nr8   rz   )r   rm   rj   rk   r{   r   r"   r­   s        r   Úreal_div_implrL  u  sX   € Ü	�Š˜ q¡'Õ	*Ø×Ñ×,Ñ,¨WÐ6KÔL÷ 
+à
�,Š,˜Ð
€CÜ˜g°·±ÀÓEÐE÷ 
+Õ	*ús   šA%Á%
A3c                 óš  • UR                   UR                   :X  d   eUR                   nUR                  nU R                  SUR                   /5      n[        R                  " XDU[        R
                  " U5      45      n[        R                  " XWU5      nUR                  (       ak  SUl	        [        R                  " UR                  S5      5      n	UR                  u  p«n[        X	X«5      u  pÞU	R                  Xì5        U	R                  U5        [        R                   " X5      nUR#                  X‚X<45      nXñR%                  U5      4$ )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   ÚfloattyrP  ÚfnameÚfntyÚfnÚ	fnbuilderÚfxÚfyÚpmodÚdivÚmodÚquotients                   r   Úreal_divmodrf  |  s  € Ø�6‰6�Q—V‘VÓÐÐØ�f‰f€Gà�^‰^€FØ�O‰OÐ/°!·&±&°Ó:€EÜ�?Š?˜7¨g´r·~²~ÀgÓ7NÐ$OÓP€DÜ	×	'Ò	'¨°eÓ	<€Bà	××Ø#ˆŒ
Ü—L’L ×!6Ñ!6°wÓ!?Ó@ˆ	Ø—w‘w‰ˆ�Ü(¨¸RÓD‰ˆØ�‰˜Ô"Ø�‰�cÔä×Ò˜wÓ0€DØ�|‰|˜B A Ó-€HØ—\‘\ $Ó'Ð'Ð'r   c           	      ó  • [         R                  " XR                  5      n[         R                  " XR                  5      n[         R                  " XR                  5      nUR                  X#5      nUR	                  UR                  X'5      U5      nUR                  Xt5        UR                  X…5        UR                  S5      n	UR                  S5      n
UR                  S5      nUR                  SXy5      nUR                  SX95      nUR                  SXy5      nUR                  USS9 u  nnU   UR                  SXÞ5      nUR                  U5         UR                  UR                  X‹5      U5        UR                  UR                  Xs5      U5        S S S 5        S S S 5        U   UR                  XÚU	5      nUR                  Xt5        S S S 5        S S S 5        AAUR                  U5      nUR                  SX‰5      nUR                  U5         [        R                   [        R"                  S.nU[%        UR                  5         nU R'                  [(        R*                  [,        R.                  " UU5      5      nU" X/5      nUR                  UU5      nUR                  UU5      n[1        UR                  S	5      nUR                  S
UU5      nUR                  UUU5      nUR                  UU5        S S S 5        [         R2                  " UU5         UR5                  Xˆ5      nUR                  X…5        UR	                  UR5                  X‚5      U5      nUR                  UU5        S S S 5        UR                  U5      UR                  U5      4$ ! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GNú= f! , (       d  f       GN= f! , (       d  f       Ní= f! , (       d  f       N‰= f)Nç        g       €rˆ   r>   r=   Tr;   )r�   Údoubleg      à?r¶   )r   rh   r?   Úfremr{   rG  rJ   Úfcmp_unorderedÚfcmp_orderedrI   r½   rD   rC  rÑ   rK   r   Úfloat32Úfloat64ÚstrÚget_functionr‹   Úfloorr   r¦   r   Úifnotrš   )r%   r&   ÚvxÚwxrb  ÚpdivÚ	pfloordivrd  rc  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   rX  rX  ’  s   € ô\ ×Ò˜w¯©Ó0€DÜ×Ò˜w¯©Ó0€DÜ×#Ò# G¯W©WÓ5€Ià
�,‰,�rÓ
€CØ
�,‰,�w—|‘| BÓ,¨bÓ
1€Cà‡M�M�#ÔØ‡M�M�#Ôð �7‰7�3‹<€DØ�G‰G�D‹M€EØ
�'‰'�#‹,€CØ×'Ñ'¨¨cÓ8€JØ×!Ñ! # rÓ0€FØ×"Ñ" 3¨Ó2€Gà	�‰˜¨DˆÑ	1Ñ5R°nÀkÚð !(× 5Ñ 5°d¸FÓ LÐà—‘Ð!2Õ3Ø—‘˜gŸl™l¨3Ó4°dÔ;Ø—‘˜gŸl™l¨3Ó3°TÔ:÷ 4÷ ò ð —.‘. °Ó5ˆCØ�M‰M˜#Ô$÷	 ÷ 
2ð  	ˆSà
�,‰,�tÓ
€CØ×%Ñ% d¨CÓ6€Jà	�‰˜Õ	$Ü %§¡Ü!&§¡ñ0ˆàœs 2§7¡7›|Ñ,ˆØ×&Ñ&¤t§z¡zÜ'-×'7Ò'7¸À(Ó'KóMˆá˜7 EÓ*ˆØ—|‘| C¨Ó2ˆØ—|‘| H¨cÓ2ˆÜ˜Ÿ™ Ó%ˆØ×#Ñ# C¨°tÓ<ˆØ—>‘> $¨°hÓ?ˆØ�‰�h 	Ô*÷ 
%ô 
�Š�w 
Õ	+Ø�l‰l˜3Ó$ˆØ�‰�cÔ Ø—<‘< §¡¨SÓ 5°rÓ:ˆØ�‰�h 	Ô*÷	 
,ð �<‰<˜	Ó" G§L¡L°Ó$6Ð6Ð6÷G 4Ö3ú÷ Ž^ú÷ Ž[ú÷ 
2Ö	1ú÷* 
%Õ	$ú÷ 
,Õ	+úso   Ä.OÄ4$N2ÅAN ÆN2Æ#
OÆ-$OÇOÈC*O(Ì AO9Î 
N/Î*N2Î2
O	Î<OÏ
O	ÏOÏ
O%Ï(
O6Ï9
Pc                 ó  • Uu  pV[         R                  " XR                  SS9n[         R                  " XR                  SS9nUR                  [         R                  " X5      SS9 u  pšU	   U R
                  R                  USU5      (       dD  UR                  XV5      nUR                  XV5      nUR                  X·5        UR                  XÈ5        S S S 5        U
   [        XXV5      u  p¼UR                  X·5        UR                  XÈ5        S S S 5        S S S 5        [         R                  " UUR                  U5      UR                  U5      45      $ ! , (       d  f       Nˆ= f! , (       d  f       N^= f! , (       d  f       Ng= f)Nra   rb   rd   Fr;   ©zmodulo by zero)r   rh   r?   rI   ri   rj   rk   r{   rj  rJ   rf  rs   rK   )r%   r&   r'   r    ÚlocrM   rN   ra   rd   rm   rn   ro   rp   s                r   Úreal_divmod_implrŠ  þ  s9  € à�D€AÜ×Ò˜w¯©°VÑ<€DÜ
×
Ò
˜g§v¡v°EÑ
:€Cà	�‰œ×/Ò/°Ó;ÀEˆñ 
Ù4˜wÚØ×&Ñ&×7Ñ7ØÐ,¨c÷3ñ 3ð —L‘L Ó&�Ø—L‘L Ó&�Ø—‘˜aÔ&Ø—‘˜aÔ%÷ ò Ü˜w°Ó6‰DˆAØ�M‰M˜!Ô"Ø�M‰M˜!Ô!÷ ÷
ô  ×Ò˜gØ&Ÿ|™|¨DÓ1°7·<±<ÀÓ3DÐEóGð G÷ �Wú÷ �[ú÷
õ 
ús=   Á'E7Á,A'EÃ
E7Ã1E&ÄE7Å
E#	ÅE7Å&
E4	Å0E7Å7
Fc                 óL  • Uu  pV[         R                  " XR                  5      nUR                  [         R                  " X5      SS9 u  p‰U   U R
                  R                  USU5      (       d"  UR                  XV5      n
UR                  X§5        S S S 5        U	   [        XXV5      u  pºUR                  X§5        S S S 5        S S S 5        [        XUR                  UR                  U5      5      $ ! , (       d  f       Nf= f! , (       d  f       NM= f! , (       d  f       NV= f)NFr;   rˆ  )r   rh   r?   rI   ri   rj   rk   rj  rJ   rf  r   r"   rK   )r%   r&   r'   r    r‰  rM   rN   r.   rm   rn   rd   Ú_s               r   Úreal_mod_implr�    së   € Ø�D€AÜ
×
Ò
˜g§v¡vÓ
.€CØ	�‰œ×/Ò/°Ó;ÀEˆñ 
Ù4˜wÚØ×&Ñ&×7Ñ7ØÐ,¨c÷3ñ 3ð —l‘l 1Ó(�Ø—‘˜cÔ'÷ ò Ü  °1Ó8‰FˆAØ�M‰M˜#Ô#÷ ÷
ô ˜g°·±Ø%Ÿl™l¨3Ó/ó1ð 1÷ �Wú÷ �[ú÷
õ 
úó=   Á	DÁAC3Â
DÂ DÂ=DÃ3
D	Ã=DÄ
D	ÄDÄ
D#c                 óL  • Uu  pV[         R                  " XR                  5      nUR                  [         R                  " X5      SS9 u  p‰U   U R
                  R                  USU5      (       d"  UR                  XV5      n
UR                  X§5        S S S 5        U	   [        XXV5      u  p«UR                  X§5        S S S 5        S S S 5        [        XUR                  UR                  U5      5      $ ! , (       d  f       Nf= f! , (       d  f       NM= f! , (       d  f       NV= f)NFr;   rz   )r   rh   r?   rI   ri   rj   rk   r{   rJ   rf  r   r"   rK   )r%   r&   r'   r    r‰  rM   rN   r.   rm   rn   ra   rŒ  s               r   Úreal_floordiv_implr�  +  së   € Ø�D€AÜ
×
Ò
˜g§v¡vÓ
.€CØ	�‰œ×/Ò/°Ó;ÀEˆñ 
Ù4˜wÚØ×&Ñ&×7Ñ7ØÐ.°÷5ñ 5ð —|‘| AÓ)�Ø—‘˜dÔ(÷ ò Ü! '°AÓ9‰GˆDØ�M‰M˜$Ô$÷ ÷
ô ˜g°·±Ø%Ÿl™l¨3Ó/ó1ð 1÷ �Wú÷ �[ú÷
õ 
úrŽ  c                 ó$  • Uu  pEUR                   nU R                  (       a)  U R                  [        R                  U5      nU" X5      nO0UR                  SUR                  /5      n	UR                  X”U45      n[        XUR                  U5      $ )Nzllvm.pow)
rP  Úimplement_powi_as_math_callrp  r‹   rŒ   Údeclare_intrinsicr?   rZ  r   r"   )
r%   r&   r'   r    rM   rN   rP  Úimpr.   r^  s
             r   Úreal_power_implr•  >  sx   € Ø�D€AØ�^‰^€FØ×*×*Ø×"Ñ"¤4§8¡8¨SÓ1ˆÙ�'Ó ‰à×%Ñ% j°1·6±6°(Ó;ˆØ�l‰l˜2 1˜vÓ&ˆÜ˜g°·±ÀÓEÐEr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ r«   ©rl  r   r"   r­   s        r   Úreal_lt_implr˜  J  ó*   € Ø
×
Ò
˜sÐ
* TÒ
*€CÜ˜g°·±ÀÓEÐEr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ r±   r—  r­   s        r   Úreal_le_implr›  O  ó*   € Ø
×
Ò
˜tÐ
+ dÒ
+€CÜ˜g°·±ÀÓEÐEr   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ rµ   r—  r­   s        r   Úreal_gt_implrž  T  r™  r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ r¹   r—  r­   s        r   Úreal_ge_implr   Y  rœ  r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ rÈ   r—  r­   s        r   Úreal_eq_implr¢  ^  rœ  r   c                 óV   • UR                   " S/UQ76 n[        XUR                  U5      $ rË   )rk  r   r"   r­   s        r   Úreal_ne_implr¤  c  s*   € Ø
×
 Ò
  Ð
-¨Ò
-€CÜ˜g°·±ÀÓEÐEr   c                 óš   • UR                   u  n[        R                  " XD5      nU R                  [        R
                  U5      nU" X5      $ r™   )r    r   r¦   rp  r‹   Úfabs)r%   r&   r'   r    rL   rÙ   s         r   Úreal_abs_implr§  h  s>   € Ø�8‰8�D€RÜ
×
Ò
˜2Ó
"€CØ×Ñ¤§	¡	¨3Ó/€DÙ�ÓÐr   c                 ód   • SSK Jn  UR                  XS   5      n[        XUR                  U5      $ ©Nr   ©Úmathimpl)Únumba.cpythonr«  Únegate_realr   r"   )r%   r&   r'   r    r«  r.   s         r   Úreal_negate_implr®  o  s,   € Ý&Ø
×
Ñ
˜w¨Q©Ó
0€CÜ˜g°·±ÀÓEÐEr   c                 óŒ   • UR                   u  nUu  nU R                  XXBR                  5      n[        XUR                  U5      $ r™   r  r  s          r   Úreal_positive_implr°  u  r
  r   c           	      ó`  • Uu  n[        UR                  S5      n[        UR                  S5      n[        UR                  S5      n[        R                  " XR                  5      nUR	                  SXG5      n	UR	                  SXG5      n
UR                  U	5       u  p¼U   UR                  XX5        SSS5        U   UR                  U
5       u  pÞU   UR                  Xh5        SSS5        U   UR                  XH5        SSS5        SSS5        SSS5        SSS5        UR                  U5      n[        XUR                  U5      $ ! , (       d  f       N�= f! , (       d  f       N{= f! , (       d  f       Np= f! , (       d  f       Ny= f! , (       d  f       N‚= f! , (       d  f       N‹= f)z
np.sign(float)
r8   r:   r   r¶   r=   N)
r   r?   r   rh   rl  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·  |  s8  € ð �C€QÜ
�1—6‘6˜1Ó
€CÜ
�1—6‘6˜2Ó
€CÜ�A—F‘F˜AÓ€Dä×!Ò! '¯6©6Ó2€Gà×!Ñ! # qÓ/€FØ×!Ñ! # qÓ/€Fà	�‰˜Ô	 Ñ$: WÚØ�M‰M˜#Ô'÷ âØ—‘ Ô(Ñ,B¨WÚØ—M‘M #Ô/÷ â ð —M‘M !Ô-÷ !÷ )÷ ÷ 
!ð �,‰,�wÓ
€CÜ˜g°·±ÀÓEÐE÷ �Wú÷ •Wúç •[ú÷ )Õ(ú÷ �[ú÷ 
!Õ	 ús„   ÂFÂ!E
Â3
FÂ=FÃE=ÃE	Ã&
E=Ã0E,	ÄE=Ä
FÄFÅ

E	ÅFÅ
E)Å%E=Å,
E:Å6E=Å=
FÆFÆ
F	ÆFÆ
F-Úrealc                 óR   • U R                  XUS9nUR                  n[        XX%5      $ ©N©r¡   )Úmake_complexr¸  r   ©r%   r&   r  r¡   Úcplxr.   s         r   Úcomplex_real_implr¿  »  ó-   € à×Ñ °EÐÐ:€DØ
�)‰)€CÜ˜g°Ó9Ð9r   Úimagc                 óR   • U R                  XUS9nUR                  n[        XX%5      $ rº  )r¼  rÁ  r   r½  s         r   Úcomplex_imag_implrÃ  Á  rÀ  r   zcomplex.conjugatec                 óà   • SSK Jn  U R                  XR                  S   US   5      nUR	                  XR
                  5      Ul        UR                  5       n[        XUR                  U5      $ r©  )	r¬  r«  r¼  r    r­  rÁ  Ú	_getvaluer   r"   )r%   r&   r'   r    r«  Úzr.   s          r   Úcomplex_conjugate_implrÇ  Ç  sW   € å&Ø×Ñ˜W§h¡h¨q¡k°4¸±7Ó;€AØ×!Ñ! '¯6©6Ó2€A„FØ
�+‰+‹-€CÜ˜g°·±ÀÓEÐEr   c                 ó   • [        XX#5      $ r™   )r   )r%   r&   r  r¡   s       r   Úreal_real_implrÉ  Ï  s   € Ü˜g°Ó;Ð;r   c                 óZ   • [         R                  " UR                  5      n[        XX$5      $ r™   )r   Úget_null_valuer?   r   )r%   r&   r  r¡   r.   s        r   Úreal_imag_implrÌ  Ò  s#   € Ü
×
 Ò
  §¡Ó
,€CÜ˜g°Ó9Ð9r   c                 ó6   • [        XUR                  US   5      $ ©Nr   rç   ©r%   r&   r'   r    s       r   Úreal_conjugate_implrÐ  Ö  s   € Ü˜g°·±ÀÀaÁÓIÐIr   c           	      ó¨  • Uu  pEUR                   S   nUR                  nU R                  XUS9nU R                  XUS9n	U R                  X5      n
UR                  nUR	                  5       nU	R	                  5       nU
R	                  5       nU R                  US5      nU R                  US5      nUR                  SU	R                  U5      nUR                  SU	R                  U5      nUR                  UU5      nUR                  U5       u  nnU   [        XX$U45      nU R                  XUS9nUR                  U
l        UR                  U
l        S S S 5        U   [        R                  S[        R                  S0U   n[        R                   " [        R"                  " 5       UR$                  /S-  5      n[&        R(                  " UUU5      nUR+                  UXÍU45        S S S 5        S S S 5        UR-                  U5      n[/        XUR0                  U5      $ ! , (       d  f       NÒ= f! , (       d  f       NO= f! , (       d  f       NX= f)Nr   r»  r  r9   Únumba_cpowfÚ
numba_cpowé   )r    Úunderlying_floatÚmake_helperrP  Ú_getpointerÚget_constantrl  r¸  rÁ  rA   rI   Úcomplex_mul_implr   Ú	complex64Ú
complex128r   rR  ÚVoidTyper?   r   rT  rZ  rK   r   r"   )r%   r&   r'   r    ÚcaÚcbrL   Úftyr,   r-   ÚcrP  ÚpaÚpbÚpcÚTWOrO   Úb_real_is_twoÚb_imag_is_zeroÚb_is_twoÚthenÚ	otherwiser.   ÚcresÚ	func_namer]  Úcpows                              r   Úcomplex_power_implrí  ß  sý  € ð �H€RØ	�‰�!‰€BØ
×
Ñ
€CØ×Ñ˜G¨rÐÐ2€AØ×Ñ˜G¨rÐÐ2€AØ×Ñ˜GÓ(€AØ�^‰^€FØ	
�‰‹€BØ	
�‰‹€BØ	
�‰‹€Bð ×
Ñ
˜s AÓ
&€CØ×Ñ  QÓ'€Dà×(Ñ(¨¨q¯v©v°sÓ;€MØ×)Ñ)¨$°·±¸Ó=€NØ�|‰|˜M¨>Ó:€Hà	�‰˜Ô	"Ñ&7 t¨YÚä" 7°S¸r¸(ÓCˆCØ×&Ñ& w¸#Ð&Ð>ˆDØ—Y‘YˆAŒFØ—Y‘YˆAŒF÷ ò ô —‘ Ü× Ñ  ,ðð ñˆIô —?’?¤2§;¢;£=°2·7±7°)¸a±-Ó@ˆDÜ×1Ò1°&¸$À	ÓJˆDØ�L‰L˜ ¨˜|Ô,÷ ÷ 
#ð$ �,‰,�rÓ
€CÜ˜g°·±ÀÓEÐE÷% �Tú÷ �Yú÷ 
#Õ	"ús>   ÄIÄAH!Å
IÅB
H2Ç)IÈ!
H/	È+IÈ2
I 	È<IÉ
Ic                 ó�  • Uu  pEUR                   S   nU R                  XUS9nU R                  XUS9nU R                  X5      n	UR                  n
UR                  nUR                  nUR                  nUR	                  X¬5      U	l        UR	                  X½5      U	l        U	R                  5       n[        XUR                  U5      $ ©Nr   r»  )r    r¼  r¸  rÁ  rC  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°ÐÐ3€AØ×Ñ˜W°ÐÐ3€AØ×Ñ˜WÓ)€AØ	�‰€AØ	�‰€AØ	�‰€AØ	�‰€AØ�\‰\˜!Ó€A„FØ�\‰\˜!Ó€A„FØ
�+‰+‹-€CÜ˜g°·±ÀÓEÐEr   c                 ó�  • Uu  pEUR                   S   nU R                  XUS9nU R                  XUS9nU R                  X5      n	UR                  n
UR                  nUR                  nUR                  nUR	                  X¬5      U	l        UR	                  X½5      U	l        U	R                  5       n[        XUR                  U5      $ rï  )r    r¼  r¸  rÁ  rG  rÅ  r   r"   rð  s                  r   Úcomplex_sub_implr÷    rõ  r   c                 ó  • Uu  pEUR                   S   nU R                  XUS9nU R                  XUS9nU R                  X5      n	UR                  n
UR                  nUR                  nUR                  nUR	                  X¬5      nUR	                  X½5      nUR	                  X­5      nUR	                  X¼5      nUR                  Xï5      U	l        UR                  UU5      U	l        U	R                  5       n[        XUR                  U5      $ )z
(a+bi)(c+di)=(ac-bd)+i(ad+bc)
r   r»  )
r    r¼  r¸  rÁ  rš   rG  rC  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°ÐÐ3€AØ×Ñ˜W°ÐÐ3€AØ×Ñ˜WÓ)€AØ	�‰€AØ	�‰€AØ	�‰€AØ	�‰€AØ	�‰�aÓ	€BØ	�‰�aÓ	€BØ	�‰�aÓ	€BØ	�‰�aÓ	€BØ�\‰\˜"Ó!€A„FØ�\‰\˜"˜bÓ!€A„FØ
�+‰+‹-€CÜ˜g°·±ÀÓEÐEr   Únanc                 óZ   • S nU R                  XX#5      n[        XUR                  U5      $ )Nc                 ó   • U R                   nU R                  nUR                   nUR                  nU(       d  U(       d  [        S5      e[        U5      [        U5      :¼  aB  U(       d  [	        [
        [
        5      $ XT-  nXEU-  -   n[	        X#U-  -   U-  X2U-  -
  U-  5      $ U(       d  [	        [
        [
        5      $ XE-  nXF-  U-   n[	        U R                   U-  U R                  -   U-  U R                  U-  U R                   -
  U-  5      $ )Nzcomplex division by zero)r¸  rÁ  rŠ   r¥   ÚcomplexÚNAN)r,   r-   ÚarealÚaimagÚbrealÚbimagÚratioÚdenoms           r   Úcomplex_divÚ%complex_div_impl.<locals>.complex_divE  sù   € à—‘ˆØ—‘ˆØ—‘ˆØ—‘ˆÞžUÜ#Ð$>Ó?Ð?Üˆu‹:œ˜U›Ó#æÜœs¤CÓ(Ð(Ø‘MˆEØ E™MÑ)ˆEÜØ ™Ñ&¨%Ñ/Ø ™Ñ&¨%Ñ/ó1ð 1ö
 Üœs¤CÓ(Ð(Ø‘MˆEØ‘M EÑ)ˆEÜØ—‘˜%‘ !§&¡&Ñ(¨EÑ1Ø—‘˜%‘ !§&¡&Ñ(¨EÑ1ó3ð 3r   ©r•   r   r"   )r%   r&   r'   r    r  r.   s         r   Úcomplex_div_implr  D  s.   € ò3ð6 ×
"Ñ
" 7¸Ó
C€CÜ˜g°·±ÀÓEÐEr   c                 óB  • SSK Jn  UR                  u  nUu  nU R                  XUS9nU R                  X5      nUR	                  XR
                  5      Ul        UR	                  XR                  5      Ul        UR                  5       n[        XUR                  U5      $ )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‰H�E€SØ�E€SØ× Ñ  °SÐ Ð9€EØ
×
Ñ
˜wÓ
,€CØ×#Ñ# G¯Z©ZÓ8€C„HØ×#Ñ# G¯Z©ZÓ8€C„HØ
�-‰-‹/€CÜ˜g°·±ÀÓEÐEr   c                 ó8   • Uu  n[        XUR                  U5      $ r™   rç   ©r%   r&   r'   r    r§   s        r   Úcomplex_positive_implr  p  s   € Ø�E€SÜ˜g°·±ÀÓEÐEr   c                 óT  • Uu  pEUR                   S   nU R                  XUS9nU R                  XUS9nUR                  SUR                  UR                  5      n	UR                  SUR                  UR                  5      n
UR                  Xš5      n[        XUR                  U5      $ )Nr   r»  r9   )r    r¼  rl  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°ÐÐ4€AØ×Ñ˜W°ÐÐ4€Aà×'Ñ'¨¨a¯f©f°a·f±fÓ=€LØ×'Ñ'¨¨a¯f©f°a·f±fÓ=€LØ
�,‰,�|Ó
2€CÜ˜g°·±ÀÓEÐEr   c                 óT  • Uu  pEUR                   S   nU R                  XUS9nU R                  XUS9nUR                  SUR                  UR                  5      n	UR                  SUR                  UR                  5      n
UR                  Xš5      n[        XUR                  U5      $ )Nr   r»  r>   )r    r¼  rk  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°ÐÐ4€AØ×Ñ˜W°ÐÐ4€Aà×)Ñ)¨$°·±¸¿¹Ó?€LØ×)Ñ)¨$°·±¸¿¹Ó?€LØ
�+‰+�lÓ
1€CÜ˜g°·±ÀÓEÐEr   c                 óZ   • S nU R                  XX#5      n[        XUR                  U5      $ )z!
abs(z) := hypot(z.real, z.imag)
c                 óX   • [         R                  " U R                  U R                  5      $ r™   )r‹   Úhypotr¸  rÁ  )rÆ  s    r   Úcomplex_absÚ%complex_abs_impl.<locals>.complex_abs‘  s   € Ü�zŠz˜!Ÿ&™& !§&¡&Ó)Ð)r   r
  )r%   r&   r'   r    r  r.   s         r   Úcomplex_abs_implr  �  s.   € ò*ð ×
"Ñ
" 7¸Ó
C€CÜ˜g°·±ÀÓEÐEr   znumber.itemc                 ó   • US   $ )z3
The no-op .item() method on booleans and numbers.
r   r    rÏ  s       r   Únumber_item_implr!  ®  s   € ð �‰7€Nr   c                 ó®   • UR                   u  nUu  nU R                  XXBR                  5      nUR                  U5      n[	        XUR                  U5      $ r™   )r    r!   r"   rE   r   )r%   r&   r'   r    r  r§   Úistruer.   s           r   Únumber_not_implr$  º  sI   € Ø�H‰H�E€SØ�E€SØ�\‰\˜'¨¯_©_Ó=€FØ
�,‰,�vÓ
€CÜ˜g°·±ÀÓEÐEr   c                 ó   • Uu  nU$ r™   r    r  s        r   Úbool_as_boolr&  Á  s   € à�E€SØ€Jr   c                 óX   • Uu  nUR                  SU[        UR                  S5      5      $ )Nr>   r   )r½   r   r?   r  s        r   Úint_as_boolr(  Æ  s)   € à�E€SØ× Ñ   s¬H°S·X±X¸qÓ,AÓBÐBr   c                 óX   • Uu  nUR                  SU[        UR                  S5      5      $ )Nr>   rh  )rk  r   r?   r  s        r   Úfloat_as_boolr*  Ë  s)   € à�E€SØ×!Ñ! $¨¬X°c·h±hÀÓ-DÓEÐEr   c                 ó  • UR                   u  nUu  nU R                  XU5      nUR                  UR                  p‡[	        UR
                  S5      n	UR                  SXy5      n
UR                  SX‰5      nUR                  X«5      $ )Nrh  r>   )r    r¼  r¸  rÁ  r   r?   rk  rþ   )r%   r&   r'   r    r  r§   r  r¸  rÁ  ÚzeroÚreal_istrueÚimag_istrues               r   Úcomplex_as_boolr/  Ð  sx   € à�H‰H�E€SØ�E€SØ× Ñ  ¨sÓ3€EØ—‘˜UŸZ™Zˆ$Ü�D—I‘I˜sÓ#€DØ×(Ñ(¨¨tÓ:€KØ×(Ñ(¨¨tÓ:€KØ�;‰;�{Ó0Ð0r   c                 óŠ   • U R                  UUR                  UR                  5      nU R                  XUR                  U5      $ r™   )Úget_constant_genericÚliteral_typeÚliteral_valuer!   ©r%   r&   ÚfromtyÚtotyr§   Úlits         r   Úliteral_int_to_numberr8  è  sD   € ð ×
&Ñ
&ØØ×ÑØ×Ñó
€Cð
 �<‰<˜ f×&9Ñ&9¸4Ó@Ð@r   c                 óP  • UR                   UR                   :X  a  U$ UR                   UR                   :  a   UR                  X@R                  U5      5      $ UR                  (       a   UR	                  X@R                  U5      5      $ UR                  X@R                  U5      5      $ r™   )r‚   ÚtruncÚget_value_typer   ÚsextÚzext©r%   r&   r5  r6  r§   s        r   Úinteger_to_integerr?  ô  s~   € à‡}�}˜Ÿ™Ó'àˆ
Ø	�‰˜Ÿ™Ó	(à�}‰}˜S×"8Ñ"8¸Ó">Ó?Ð?Ø	��à�|‰|˜C×!7Ñ!7¸Ó!=Ó>Ð>ð �|‰|˜C×!7Ñ!7¸Ó!=Ó>Ð>r   c                 óB   • UR                  X@R                  U5      5      $ r™   )Úinttoptrr;  r>  s        r   Úinteger_to_voidptrrB    s   € à×Ñ˜C×!7Ñ!7¸Ó!=Ó>Ð>r   c                 óœ   • U R                  U5      nUR                  UR                  :  a  UR                  XE5      $ UR                  XE5      $ r™   )r;  r‚   ÚfpextÚfptrunc©r%   r&   r5  r6  r§   r¨   s         r   Úfloat_to_floatrG    s@   € à
×
 Ñ
  Ó
&€CØ‡�˜Ÿ™Ó&Ø�}‰}˜SÓ&Ð&à�‰˜sÓ(Ð(r   c                 óŠ   • U R                  U5      nUR                  (       a  UR                  XE5      $ UR                  XE5      $ r™   )r;  r   ÚsitofpÚuitofprF  s         r   Úinteger_to_floatrK    s7   € à
×
 Ñ
  Ó
&€CØ‡}‡}Ø�~‰~˜cÓ'Ð'à�~‰~˜cÓ'Ð'r   c                 óŠ   • U R                  U5      nUR                  (       a  UR                  XE5      $ UR                  XE5      $ r™   )r;  r   ÚfptosiÚfptouirF  s         r   Úfloat_to_integerrO    s7   € à
×
 Ñ
  Ó
&€CØ‡{‡{Ø�~‰~˜cÓ'Ð'à�~‰~˜cÓ'Ð'r   c                 óÌ   • U R                  XX#R                  5      nU R                  UR                  S5      nU R                  X5      nXWl        Xgl        UR                  5       $ rÎ  )r!   rÕ  rØ  r¼  r¸  rÁ  rÅ  )r%   r&   r5  r6  r§   r¸  rÁ  r  s           r   Únon_complex_to_complexrQ    sY   € ð �<‰<˜ f×.CÑ.CÓD€DØ×Ñ × 5Ñ 5°qÓ9€Dà× Ñ  Ó/€EØ„JØ„JØ�?‰?ÓÐr   c                 ó  • UR                   nUR                   nU R                  XUS9nU R                  X5      nU R                  XR                  XV5      Ul        U R                  XR                  XV5      Ul        UR                  5       $ rº  )rÕ  r¼  r!   r¸  rÁ  rÅ  )	r%   r&   r5  r6  r§   ÚsrctyÚdsttyÚsrcÚdsts	            r   Úcomplex_to_complexrW  *  su   € à×#Ñ#€EØ×!Ñ!€Eà
×
Ñ
˜w°cÐ
Ð
:€CØ
×
Ñ
˜wÓ
-€CØ�|‰|˜G§X¡X¨uÓ<€C„HØ�|‰|˜G§X¡X¨uÓ<€C„HØ�=‰=‹?Ðr   c                 ó&   • U R                  XU5      $ r™   )Úis_truer>  s        r   Úany_to_booleanrZ  5  s   € à�?‰?˜7¨CÓ0Ð0r   c                 ó�   • UR                  U[        R                  " S5      5      nU R                  X[        R
                  U5      $ )Né    )r=  r   ÚIntTyper!   r   Úint32)r%   r&   r5  r6  r§   Úasints         r   Úboolean_to_anyr`  9  s3   € ð �L‰L˜œbŸjšj¨›nÓ-€EØ�<‰<˜¬¯©°TÓ:Ð:r   c                 óˆ   • U R                  UUR                  UR                  5      nU R                  XR                  U5      $ r™   )r1  r2  r3  rY  r4  s         r   Úliteral_int_to_booleanrb  ?  sB   € ð ×
&Ñ
&ØØ×ÑØ×Ñó
€Cð
 �?‰?˜7×$7Ñ$7¸Ó=Ð=r   c                 ó¸   • UR                   nU R                  XUR                  5      nU R                  XUR                  5      n[        R
                  " XV45      $ r™   )rÕ  r1  r¸  rÁ  r   Úliteral_struct)r%   r&   rL   Úpyvalrß  r¸  rÁ  s          r   Úconstant_complexrf  L  sL   € à
×
Ñ
€CØ×'Ñ'¨°e·j±jÓA€DØ×'Ñ'¨°e·j±jÓA€DÜ×"Ò" D <Ó0Ð0r   c                 óˆ   • [        U[        R                  5      (       a  [        U5      nU R	                  U5      nU" U5      $ r™   )re   ÚnpÚbool_Úboolr;  )r%   r&   rL   re  r¨   s        r   Úconstant_integerrk  S  s8   € ô �%œŸ™×"Ñ"Ü�U“ˆØ
×
 Ñ
  Ó
$€CÙˆu‹:Ðr   c                 ó4  • [        U [        R                  [        R                  45      (       ai  [        U[        R                  R
                  5      (       a?  U R                  UR                  R                  :w  a  [        R                  " S5      eS nU$ gg)z(Typing for the np scalar 'view' method. zOChanging the dtype of a 0d array is only supported if the itemsize is unchangedc                 ó   • [        X5      $ r™   r   )ÚscalarÚviewtys     r   rÙ   Úscalar_view.<locals>.implm  s   € Ü˜&Ó)Ð)r   N)
re   r   r7  r€   ÚabstractÚ	DTypeSpecr‚   rg   r   ÚTypingError)rn  ro  rÙ   s      r   Úscalar_viewrt  d  su   € ä�6œEŸK™K¬¯©Ð7×8Ñ8Ü˜6¤5§>¡>×#;Ñ#;×<Ñ<Ø�?‰?˜fŸl™l×3Ñ3Ó3Ü×$Ò$ð(ó)ð )ò	*àˆð =ð 	9r   Úviewr™   )¦r‹   r¢   Únumpyrh  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|   rd  Úimodr~   rƒ   r–   rŒ   r8  r1  r7  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+  r3  r4  r5  r6  râ   r0  r;  rA  rD  rH  rJ  rL  rf  rX  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  r=  ÚNumberr!  r$  rj  r&  r(  r*  r/  rE   r8  r?  ÚvoidptrrB  rG  rK  rO  rQ  rW  ÚAnyrZ  r`  ÚBooleanLiteralrb  rf  rk  rt  r    r   r   Ú<module>r‰     s  ðÛ Û ã Û å Ý  ÷8÷ 8ñ 8÷ G× Fß ;Ý /òò"FòFòFò66òr6òñ< ˆv�u—}‘} e§m¡mÓ4ñGó 5ðGñ ˆx× Ñ  %§-¡-°·±Ó?Ùˆx×!Ñ! 5§=¡=°%·-±-Ó@ñó Aó @ðñ ˆx×Ñ §¡°·±Ó>Ùˆx× Ñ  %§-¡-°·±Ó?ñFó @ó ?ðFñ ˆx�|‰|˜UŸ]™]¨E¯M©MÓ:Ùˆx�}‰}˜eŸm™m¨U¯]©]Ó;ñó <ó ;ðòò(FñV ˆx�|‰|˜UŸ]™]¨E×,@Ñ,@ÓAÙˆx�}‰}˜eŸm™m¨U×-AÑ-AÓBÙˆx�|‰|˜UŸ[™[¨%×*>Ñ*>Ó?Ùˆx�}‰}˜eŸk™k¨5×+?Ñ+?Ó@ñ:ó Aó @ó Có Bð:òzFò
Fò
Fò
Fò
Fò
Fò
Fò
Fò
Fò
Fò
ò(	òFòDò
Fò	FòFòFòFòFòFòFò'FòTFòFñ ˆh�k‰k˜5Ÿ=™=¨%¯-©-Ô 8¸Ô EÙ ˆh�k‰k˜5Ÿ=™=¨%¯-©-Ô 8¸Ô EÙ ˆh�k‰k˜5Ÿ=™=¨%¯-©-Ô 8¸Ô FÙ ˆh�k‰k˜5Ÿ=™=¨%¯-©-Ô 8¸Ô FÙ ˆh�k‰k˜5Ÿ=™=¨%¯-©-Ô 8¸Ô FÙ ˆh�k‰k˜5Ÿ=™=¨%¯-©-Ô 8¸Ô FÙ ˆh�l‰l˜EŸM™MÔ *Ð+;Ô <Ù ˆh�l‰l˜EŸM™MÔ *Ð+CÔ Dò.-ò`	<ñ Ô á Ô òFò
Fò
Fò
Fò(ò,i7ñX ˆv�u—{‘{ E§K¡KÓ0óGó 1ðGô21ô&1ò&	FòFò
Fò
Fò
Fò
Fò
Fò
òFòFòFð< ‡[�[€á ˆh�l‰l˜B Ô # MÔ 2Ù ˆh�m‰m˜R Ô $ ]Ô 3Ù ˆh�l‰l˜B Ô # MÔ 2Ù ˆh�m‰m˜R Ô $ ]Ô 3Ù ˆh�l‰l˜B Ô # MÔ 2Ù ˆh�m‰m˜R Ô $ ]Ô 3Ù ˆh×Ñ  RÔ (Ð);Ô <Ù ˆh× Ñ  " bÔ )Ð*<Ô =Ù ˆh×Ñ  BÔ '¨Ô 6Ù ˆh×Ñ  RÔ (¨Ô 7Ù ˆh�l‰l˜B Ô # MÔ 2Ù ˆh�m‰m˜R Ô $ ]Ô 3Ù ˆh�l‰l˜B Ô # OÔ 4Ù ˆh�m‰m˜R Ô $ _Ô 5Ù ˆc�2�rÔ ˜?Ô +á ˆh�k‰k˜2˜rÔ " <Ô 0Ù ˆh�k‰k˜2˜rÔ " <Ô 0Ù ˆh�k‰k˜2˜rÔ " <Ô 0Ù ˆh�k‰k˜2˜rÔ " <Ô 0Ù ˆh�k‰k˜2˜rÔ " <Ô 0Ù ˆh�k‰k˜2˜rÔ " <Ô 0á ˆc�2Ô �}Ô %á ˆh�l‰l˜BÔ Ð 0Ô 1Ù ˆh�l‰l˜BÔ Ð 2Ô 3àñ ˆu�}‰}˜fÓ%ñ:ó &ð:ñ
 ˆu�}‰}˜fÓ%ñ:ó &ð:ñ
 Ð" E§M¡MÓ2ñFó 3ðFò<ò:òJð �K‰K˜Ÿ™Ó'€CÙ�#�vÔ˜~Ô.Ù�#�vÔ˜~Ô.ÙÐ% sÔ+Ð,?Ö@ñ (ñ ˆx�|‰|˜UŸ]™]¨E¯M©MÓ:Ùˆx�}‰}˜eŸm™m¨U¯]©]Ó;Ùˆs�E—M‘M 5§=¡=Ó1ñ'Fó 2ó <ó ;ð'FòRFò Fò Fñ. ˆEƒl€òFò@	FòFò
	Fò	FòFð ‡]�]€á ˆh�l‰l˜B Ô #Ð$4Ô 5Ù ˆh�m‰m˜R Ô $Ð%5Ô 6Ù ˆh�l‰l˜B Ô #Ð$4Ô 5Ù ˆh�m‰m˜R Ô $Ð%5Ô 6Ù ˆh�l‰l˜B Ô #Ð$4Ô 5Ù ˆh�m‰m˜R Ô $Ð%5Ô 6Ù ˆh×Ñ  BÔ 'Ð(8Ô 9Ù ˆh×Ñ  RÔ (Ð)9Ô :Ù ˆh�l‰l˜BÔ Ð 3Ô 4Ù ˆh�l‰l˜BÔ Ð 5Ô 6ñ ˆh�k‰k˜2˜rÔ " ?Ô 3Ù ˆh�k‰k˜2˜rÔ " ?Ô 3á ˆc�2Ô Ð'Ô (àñ ˆ}˜eŸmšmÓ,Ùˆ}˜eŸlšlÓ+ñó ,ó -ðòFñ ˆt�U—]’]Ó#ñó $ðñ ˆt�U—]‘]Ó#ñCó $ðCñ ˆt�U—[‘[Ó!ñFó "ðFñ ˆt�U—]‘]Ó#ñ1ó $ð1ð �=‰=˜%Ÿ+™+ u§}¡}Ó
5€BÙ�(—-’- Ô$ _Ö5ñ 6ñ ˆh�mŠm˜UŸ]™]Ô +¨OÔ <ñ ˆE× Ñ  %§-¡-Ó0ÙˆE× Ñ  %§+¡+Ó.ÙˆE× Ñ  %§-¡-Ó0ñAó 1ó /ó 1ðAñ ˆE�M‰M˜5Ÿ=™=Ó)ñ?ó *ð?ñ ˆE�M‰M˜5Ÿ=š=Ó)ñ?ó *ð?ñ ˆE�K‰K˜Ÿ™Ó%ñ)ó &ð)ñ ˆE�M‰M˜5Ÿ;™;Ó'ñ(ó (ð(ñ ˆE�K‰K˜Ÿ™Ó'ñ(ó (ð(ñ ˆE�K‰K˜Ÿ™Ó'ÙˆE�M‰M˜5Ÿ=™=Ó)ñó *ó (ðñ ˆE�M‰M˜5Ÿ=™=Ó)ñó *ðñ ˆE�IŠI�u—}’}Ó%ñ1ó &ð1ñ ˆE�MŠM˜5Ÿ<š<Ó(ñ;ó )ð;ñ
 ˆE× Ñ  %§-¢-Ó0ÙˆE× Ò  %§-¢-Ó0ñ>ó 1ó 1ð>ñ �—‘Óñ1ó ð1ñ �—‘ÓÙ�—‘ÓÙ�—’Óñó ó ó ðòñ �—‘˜VÔ $ [Ô 1Ù �—‘˜vÔ & {Õ 3r   