§
    2@ÄjúF  ã                   óD  — d Z ddlZddlZddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Z ed¦  «        Z ed¦  «        Zed„ ¦   «         Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d„ Z$d„ Z%d „ Z&d!„ Z'd"„ Z(d#„ Z)d$„ Z*dS )%z'
Implement the cmath module functions.
é    N)Úimpl_ret_untracked)Útypes)Ú	signature)Úmathimpl)Úoverloadc                 óD   — |                       d|j        |j        ¦  «        S )NÚuno)Úfcmp_unorderedÚrealÚimag©ÚbuilderÚzs     úHC:\Projects\Historical\venv\Lib\site-packages\numba/np/math/cmathimpl.pyÚis_nanr      s   € Ø×!Ò! %¨¬°´Ñ8Ô8Ð8ó    c                 óŽ   — |                       t          j        | |j        ¦  «        t          j        | |j        ¦  «        ¦  «        S ©N)Úor_r   Úis_infr   r   r   s     r   r   r      s9   € Ø�;Š;•x” w°´Ñ7Ô7Ý” w°´Ñ7Ô7ñ9ô 9ð 9r   c                 óŽ   — |                       t          j        | |j        ¦  «        t          j        | |j        ¦  «        ¦  «        S r   )Úand_r   Ú	is_finiter   r   r   s     r   r   r      s;   € Ø�<Š<�Ô*¨7°A´FÑ;Ô;Ý Ô*¨7°A´FÑ;Ô;ñ=ô =ð =r   c                 óš   — |j         \  }|\  }|                      |||¬¦  «        }t          ||¦  «        }t          | ||j        |¦  «        S ©N©Úvalue)ÚargsÚmake_complexr   r   Úreturn_type©Úcontextr   Úsigr   Útypr   r   Úress           r   Úisnan_float_implr&       óQ   € ØŒH�E€SØ�G€UØ×Ò˜W c°ÐÑ7Ô7€AÝ
�˜!Ñ
Ô
€CÝ˜g w°´ÀÑEÔEÐEr   c                 óš   — |j         \  }|\  }|                      |||¬¦  «        }t          ||¦  «        }t          | ||j        |¦  «        S r   )r   r   r   r   r    r!   s           r   Úisinf_float_implr)   (   r'   r   c                 óš   — |j         \  }|\  }|                      |||¬¦  «        }t          ||¦  «        }t          | ||j        |¦  «        S r   )r   r   r   r   r    r!   s           r   Úisfinite_float_implr+   1   sQ   € ØŒH�E€SØ�G€UØ×Ò˜W c°ÐÑ7Ô7€AÝ
�G˜QÑ
Ô
€CÝ˜g w°´ÀÑEÔEÐEr   c                 óF   — t          d„ | |fD ¦   «         ¦  «        rd„ }|S d S )Nc                 óB   — g | ]}t          |t          j        ¦  «        ‘ŒS © )Ú
isinstancer   ÚFloat)Ú.0r$   s     r   ú
<listcomp>z#impl_cmath_rect.<locals>.<listcomp>;   s$   € Ð=Ð=Ð=¨S�J�s�EœKÑ(Ô(Ð=Ð=Ð=r   c                 ó˜  — t          j        |¦  «        s5| st          | ¦  «        S t          j        | ¦  «        rt	          | |¦  «        S t          j        |¦  «        }t          j        |¦  «        }|dk    rt          j        | ¦  «        r|| z  }n|| z  }|dk    rt          j        | ¦  «        r|| z  }n|| z  }t	          ||¦  «        S )Nç        )ÚmathÚisfiniteÚabsÚisinfÚcomplexÚcosÚsin)ÚrÚphir   r   s       r   Úimplzimpl_cmath_rect.<locals>.impl<   sÁ   € Ý”= Ñ%Ô%ð +Øð "å˜q™6œ6�MÝ”:˜a‘=”=ð +å" 1 c™?œ?Ð*Ý”8˜C‘=”=ˆDÝ”8˜C‘=”=ˆDØ�rŠzˆz�dœj¨™mœmˆzà˜‘	��à˜‘	�Ø�rŠzˆz�dœj¨™mœmˆzà˜‘	��à˜‘	�Ý˜4 Ñ&Ô&Ð&r   )Úall)r<   r=   r>   s      r   Úimpl_cmath_rectr@   :   sE   € Ý
Ð=Ð=°Q¸°HÐ=Ñ=Ô=Ñ>Ô>ð ð	'ð 	'ð 	'ð* ˆð-ð r   c                 ó   ‡ — ˆ fd„}|S )Nc           	      ór  •— |j         \  }|\  }|                      |||¬¦  «        }|j        }|j        }t	          j        ||¦  «        }	t	          j        ||¦  «        }
t          |j        g|j        fdz  t          j
        fdz  z   ¢R Ž }|                      |‰||||	|
f¦  «        }t          | |||¦  «        S )Nr   é   )r   r   r   r   r   r   r   r    Úunderlying_floatr   ÚbooleanÚcompile_internalr   )r"   r   r#   r   r$   r   r   ÚxÚyÚx_is_finiteÚy_is_finiteÚ	inner_sigr%   Ú
inner_funcs                €r   Úwrapperz(intrinsic_complex_unary.<locals>.wrapperU   sÝ   ø€ Ø”‰ˆØ‰ˆØ× Ò  ¨#°UÐ Ñ;Ô;ˆØŒFˆØŒFˆõ Ô(¨°!Ñ4Ô4ˆÝÔ(¨°!Ñ4Ô4ˆÝ˜cœoð SØ #Ô 4Ð6¸Ñ:½e¼mÐ=MÐPQÑ=QÑQðSð Sð Sˆ	à×&Ò& w°
¸IØ)*¨A¨{¸KÐ(HñJô Jˆå! '¨7°C¸Ñ=Ô=Ð=r   r.   )rL   rM   s   ` r   Úintrinsic_complex_unaryrN   T   s#   ø€ ð>ð >ð >ð >ð >ð €Nr   ÚnanÚinfc                 óð  — |rn|rRt          j        |¦  «        }t          j        |¦  «        }t          j        | ¦  «        }t	          ||z  ||z  ¦  «        S t	          t
          t
          ¦  «        S t          j        | ¦  «        r"|rt	          | | ¦  «        S t	          | |¦  «        S | dk    re|rNt          j        |¦  «        }t          j        |¦  «        }|dk    r|| z  }|dk    r|| z  }t	          ||¦  «        S t	          | t
          ¦  «        S |rRt          j        | ¦  «        }t          j        |¦  «        }t          j        |¦  «        }t	          ||z  ||z  ¦  «        S d}t	          ||¦  «        S )zcmath.exp(x + y j)r4   r   )r5   r:   r;   Úexpr9   ÚNANÚisnan)	rG   rH   rI   rJ   ÚcÚsr<   r   r   s	            r   Úexp_implrW   k   sb  € ð ð $!Øð 	%Ý”˜‘”ˆAÝ”˜‘”ˆAÝ”˜‘”ˆAÝ˜1˜q™5 ! a¡%Ñ(Ô(Ð(å�3¥Ñ$Ô$Ð$Ý	Œ�A‰Œð !Øð 	!Ý˜1˜a‘=”=Ð å˜1˜a‘=”=Ð Ø	
ˆSŠˆàð 	#Ý”8˜A‘;”;ˆDÝ”8˜A‘;”;ˆDð �qŠyˆyØ˜‘	�Ø�qŠyˆyØ˜‘	�Ý˜4 Ñ&Ô&Ð&å˜1�c‘?”?Ð"ð ð 	!Ý”˜‘”ˆAÝ”˜‘”ˆAÝ”˜‘”ˆAÝ˜1˜q™5 ! a¡%Ñ(Ô(Ð(àˆAÝ˜1˜a‘=”=Ð r   c                 óš   — t          j        t          j        | |¦  «        ¦  «        }t          j        || ¦  «        }t	          ||¦  «        S )zcmath.log(x + y j))r5   ÚlogÚhypotÚatan2r9   )rG   rH   rI   rJ   ÚaÚbs         r   Úlog_implr^   •   s>   € õ 	Œ•”˜A˜qÑ!Ô!Ñ"Ô"€AÝŒ
�1�aÑÔ€AÝ�1�a‰=Œ=Ðr   c                 óf   — |\  }}d„ }|                       ||||¦  «        }t          | |||¦  «        S )zcmath.log(z, base)c                 óT   — t          j        | ¦  «        t          j        |¦  «        z  S r   )ÚcmathrY   )r   Úbases     r   Úlog_basezlog_base_impl.<locals>.log_base¢   s   € ÝŒy˜‰|Œ|�eœi¨™oœoÑ-Ð-r   ©rF   r   )r"   r   r#   r   r   rb   rc   r%   s           r   Úlog_base_implre   ž   sI   € à�I€Qˆð.ð .ð .ð ×
"Ò
" 7¨H°c¸4Ñ
@Ô
@€CÝ˜g w°°SÑ9Ô9Ð9r   c                 óN   ‡— t          | t          j        ¦  «        sd S dŠˆfd„}|S )NgUµ»±k@c                 ól   •— t          j        | ¦  «        } t          | j        ‰z  | j        ‰z  ¦  «        S )zcmath.log10(z))ra   rY   r9   r   r   )r   ÚLN_10s    €r   Ú
log10_implz$impl_cmath_log10.<locals>.log10_impl°   s.   ø€ åŒI�a‰LŒLˆõ �q”v ‘~ q¤v°¡~Ñ6Ô6Ð6r   ©r/   r   ÚComplex)r   ri   rh   s     @r   Úimpl_cmath_log10rl   ª   sB   ø€ Ý�a�œÑ'Ô'ð Øˆà €Eð7ð 7ð 7ð 7ð 7ð Ðr   c                 óD   — t          | t          j        ¦  «        sdS d„ }|S )zcmath.phase(x + y j)Nc                 ó@   — t          j        | j        | j        ¦  «        S r   )r5   r[   r   r   )rG   s    r   r>   zphase_impl.<locals>.implÁ   s   € ÝŒz˜!œ& !¤&Ñ)Ô)Ð)r   rj   ©rG   r>   s     r   Ú
phase_implrp   »   s1   € õ �a�œÑ'Ô'ð Øˆð*ð *ð *à€Kr   c                 óD   — t          | t          j        ¦  «        sd S d„ }|S )Nc                 ór   — | j         | j        }}t          j        ||¦  «        t          j        ||¦  «        fS r   )r   r   r5   rZ   r[   )rG   r<   Úis      r   r>   zpolar_impl.<locals>.implË   s2   € ØŒv�q”vˆ1ˆÝŒz˜!˜QÑÔ¥¤¨A¨qÑ!1Ô!1Ð1Ð1r   rj   ro   s     r   Ú
polar_implrt   Ç   s1   € Ý�a�œÑ'Ô'ð Øˆð2ð 2ð 2ð €Kr   c                 óä   ‡
— d}d|z   }|j         d         j        }|j        dk    rt          j        nt          j        }||z  Š
ˆ
fd„}|                      ||||¦  «        }	t          | |||	¦  «        S )NgÍ;fž ö?ç      ð?r   é@   c                 óâ  •— | j         }| j        }|dk    r#|dk    rt          t          |¦  «        |¦  «        S t	          j        |¦  «        rt          t          |¦  «        |¦  «        S t	          j        |¦  «        rt          ||¦  «        S t	          j        |¦  «        r_|dk     r3t          t          ||z
  ¦  «        t	          j        ||¦  «        ¦  «        S t          |t	          j        ||z
  |¦  «        ¦  «        S t          |¦  «        ‰k    st          |¦  «        ‰k    r|dz  }|dz  }d}nd}|dk    r8t	          j        |t	          j	        ||¦  «        z   dz  ¦  «        }|}|d|z  z  }nXt	          j        | t	          j	        ||¦  «        z   dz  ¦  «        }t          |¦  «        d|z  z  }t	          j        ||¦  «        }|rt          |dz  |¦  «        S t          ||¦  «        S )zcmath.sqrt(z)r4   ç      Ð?TFr   ç      à?rC   )
r   r   r9   r7   r5   r8   rT   ÚcopysignÚsqrtrZ   )r   r\   r]   ÚscaleÚtr   r   ÚTHRESs          €r   Ú	sqrt_implzsqrt_impl.<locals>.sqrt_implà   sÔ  ø€ ð ŒFˆØŒFˆØ�Š8ˆ8˜˜Sš˜Ý�3˜q™6œ6 1Ñ%Ô%Ð%ÝŒ:�a‰=Œ=ð 	&Ý�3˜q™6œ6 1Ñ%Ô%Ð%ÝŒ:�a‰=Œ=ð 	!Ý˜1˜a‘=”=Ð ÝŒ:�a‰=Œ=ð 	;Ø�3ŠwˆwÝ�s 1 q¡5™zœz­4¬=¸¸AÑ+>Ô+>Ñ?Ô?Ð?å˜q¥$¤-°°A±°qÑ"9Ô"9Ñ:Ô:Ð:õ ˆq‰6Œ6�UŠ?ˆ?�c !™fœf¨šo˜oØ�‰IˆAØ�‰IˆAØˆEˆEàˆEà�Š6ˆ6Ý”	˜1�tœz¨!¨QÑ/Ô/Ñ/°3Ñ6Ñ7Ô7ˆAØˆDØ˜˜A™‘;ˆDˆDå”	˜A˜2¥¤
¨1¨aÑ 0Ô 0Ñ0°CÑ7Ñ8Ô8ˆAÝ�q‘6”6˜Q ™UÑ#ˆDÝ”=  AÑ&Ô&ˆDàð 	'Ý˜4 !™8 TÑ*Ô*Ð*å˜4 Ñ&Ô&Ð&r   )r   rD   Úbitwidthr   ÚDBL_MAXÚFLT_MAXrF   r   )r"   r   r#   r   ÚSQRT2ÚONE_PLUS_SQRT2Ú	theargfltÚMAXr€   r%   r   s             @r   r€   r€   Ò   s“   ø€ ð 5€EØ˜5‘j€NØ”˜”Ô,€Ià'Ô0°BÒ6Ð6�(Ô
Ð
½HÔ<L€Cð
 �.Ñ €Eð('ð ('ð ('ð ('ð ('ðT ×
"Ò
" 7¨I°s¸DÑ
AÔ
A€CÝ˜g w°°SÑ9Ô9Ð9r   c                 ó\   — d„ }|                       ||||¦  «        }t          | |||¦  «        S )Nc                 ó\   — t          j        t          | j         | j        ¦  «        ¦  «        S )zcmath.cos(z) = cmath.cosh(z j))ra   Úcoshr9   r   r   )r   s    r   Úcos_implzcos_impl.<locals>.cos_impl  s"   € åŒz�' 1¤6 '¨1¬6Ñ2Ô2Ñ3Ô3Ð3r   rd   )r"   r   r#   r   r‹   r%   s         r   r‹   r‹     s@   € ð4ð 4ð 4ð ×
"Ò
" 7¨H°c¸4Ñ
@Ô
@€CÝ˜g w°°SÑ9Ô9Ð9r   c                 óD   — t          | t          j        ¦  «        sd S d„ }|S )Nc                 óL  — | j         }| j        }t          j        |¦  «        r¥t          j        |¦  «        rt          |¦  «        }|}nf|dk    rt          |¦  «        }|}nNt          j        |t          j        |¦  «        ¦  «        }t          j        |t          j        |¦  «        ¦  «        }|dk     r| }t          ||¦  «        S t          t          j        |¦  «        t          j
        |¦  «        z  t          j        |¦  «        t          j        |¦  «        z  ¦  «        S )zcmath.cosh(z)r4   )r   r   r5   r8   rT   r7   r{   r:   r;   r9   rŠ   Úsinh©r   rG   rH   r   r   s        r   Ú	cosh_implz"impl_cmath_cosh.<locals>.cosh_impl  sð   € àŒFˆØŒFˆÝŒ:�a‰=Œ=ð 	'ÝŒz˜!‰}Œ}ð 
5å˜1‘v”v�Ø��Ø�c’�å˜1‘v”v�Ø��å”} Q­¬°©¬Ñ4Ô4�Ý”} Q­¬°©¬Ñ4Ô4�Ø�3Šwˆwà�u�Ý˜4 Ñ&Ô&Ð&Ý•t”x ‘{”{¥T¤Y¨q¡\¤\Ñ1Ý”H˜Q‘K”K¥$¤)¨A¡,¤,Ñ.ñ0ô 0ð 	0r   rj   )r   r�   s     r   Úimpl_cmath_coshr‘     s2   € Ý�a�œÑ'Ô'ð Øˆð0ð 0ð 0ð, Ðr   c                 ó\   — d„ }|                       ||||¦  «        }t          | |||¦  «        S )Nc                 ó’   — t          j        t          | j         | j        ¦  «        ¦  «        }t          |j        |j         ¦  «        S )z#cmath.sin(z) = -j * cmath.sinh(z j))ra   rŽ   r9   r   r   ©r   r<   s     r   Úsin_implzsin_impl.<locals>.sin_impl7  ó7   € åŒJ•w ¤˜w¨¬Ñ/Ô/Ñ0Ô0ˆÝ�q”v ¤˜wÑ'Ô'Ð'r   rd   )r"   r   r#   r   r•   r%   s         r   r•   r•   6  ó@   € ð(ð (ð (ð
 ×
"Ò
" 7¨H°c¸4Ñ
@Ô
@€CÝ˜g w°°SÑ9Ô9Ð9r   c                 óD   — t          | t          j        ¦  «        sd S d„ }|S )Nc                 óê  — | j         }| j        }t          j        |¦  «        rtt          j        |¦  «        r|}|}nKt          j        |¦  «        }t          j        |¦  «        }|dk    r||z  }|dk    r|t          |¦  «        z  }t          ||¦  «        S t          t          j        |¦  «        t          j	        |¦  «        z  t          j        |¦  «        t          j
        |¦  «        z  ¦  «        S )zcmath.sinh(z)r4   )r   r   r5   r8   rT   r:   r;   r7   r9   rŽ   rŠ   r�   s        r   Ú	sinh_implz"impl_cmath_sinh.<locals>.sinh_implD  sÑ   € àŒFˆØŒFˆÝŒ:�a‰=Œ=ð 	'ÝŒz˜!‰}Œ}ð 
#à�Ø��å”x ‘{”{�Ý”x ‘{”{�Ø˜2’:�:Ø˜A‘I�DØ˜2’:�:Ø�C ™FœF‘N�DÝ˜4 Ñ&Ô&Ð&Ý•t”x ‘{”{¥T¤Y¨q¡\¤\Ñ1Ý”x ‘{”{¥T¤Y¨q¡\¤\Ñ1ñ3ô 3ð 	3r   rj   )r   rš   s     r   Úimpl_cmath_sinhr›   @  s2   € Ý�a�œÑ'Ô'ð Øˆð3ð 3ð 3ð& Ðr   c                 ó\   — d„ }|                       ||||¦  «        }t          | |||¦  «        S )Nc                 ó’   — t          j        t          | j         | j        ¦  «        ¦  «        }t          |j        |j         ¦  «        S )z#cmath.tan(z) = -j * cmath.tanh(z j))ra   Útanhr9   r   r   r”   s     r   Útan_implztan_impl.<locals>.tan_impl\  r–   r   rd   )r"   r   r#   r   rŸ   r%   s         r   rŸ   rŸ   [  r—   r   c                 óD   — t          | t          j        ¦  «        sd S d„ }|S )Nc                 óô  — | j         }| j        }t          j        |¦  «        rft          j        d|¦  «        }t          j        |¦  «        rd}n*t          j        dt          j        d|z  ¦  «        ¦  «        }t          ||¦  «        S t          j        |¦  «        }t          j        |¦  «        }dt          j	        |¦  «        z  }||z  }d||z  z   }	t          |d||z  z   z  |	z  ||	z  |z  |z  ¦  «        S )zcmath.tanh(z)rv   r4   ç       @)
r   r   r5   r8   r{   r;   r9   rž   ÚtanrŠ   )
r   rG   rH   r   r   ÚtxÚtyÚcxÚtxtyÚdenoms
             r   Ú	tanh_implz"impl_cmath_tanh.<locals>.tanh_implj  sô   € àŒFˆØŒFˆÝŒ:�a‰=Œ=ð 	'Ý”=  QÑ'Ô'ˆDÝŒz˜!‰}Œ}ð ;Ø��å”} R­¬°"°q±&Ñ)9Ô)9Ñ:Ô:�Ý˜4 Ñ&Ô&Ð&õ ŒY�q‰\Œ\ˆÝŒX�a‰[Œ[ˆØ•$”)˜A‘,”,ÑˆØ�B‰wˆØ�T˜D‘[Ñ ˆÝØ�"�r˜B‘w‘,Ñ %Ñ'Ø�5‰j˜BÑ "Ñ$ñ&ô &ð 	&r   rj   )r   r©   s     r   Úimpl_cmath_tanhrª   f  s2   € Ý�a�œÑ'Ô'ð Øˆð&ð &ð &ð, Ðr   c                 ó¬   ‡‡— t          j        d¦  «        Št          j        dz  Šˆˆfd„}|                      ||||¦  «        }t          | |||¦  «        S )Né   c           	      ó  •— t          | j        ¦  «        ‰k    st          | j        ¦  «        ‰k    r�t          j        t          | j        ¦  «        | j        ¦  «        }t          j        t          j        t          j        | j        dz  | j        dz  ¦  «        ¦  «        ‰z   | j         ¦  «        }t          ||¦  «        S t          j
        t          d| j        z
  | j         ¦  «        ¦  «        }t          j
        t          d| j        z   | j        ¦  «        ¦  «        }dt          j        |j        |j        ¦  «        z  }t          j        |j        |j        z  |j        |j        z  z
  ¦  «        }t          ||¦  «        S )zcmath.acos(z)rz   rv   r¢   )r7   r   r   r5   r[   r{   rY   rZ   r9   ra   r|   Úasinh©r   r   r   Ús1Ús2ÚLN_4r   s        €€r   Ú	acos_implzacos_impl.<locals>.acos_implˆ  s/  ø€ õ ˆqŒv‰;Œ;˜ÒÐ¥# a¤f¡+¤+°Ò"5Ð"5õ ”:�c !¤&™kœk¨1¬6Ñ2Ô2ˆDÝ”=Ý”�œ A¤F¨S¡L°!´&¸3±,Ñ?Ô?Ñ@Ô@À4ÑGØ”�ñô ˆDõ ˜4 Ñ&Ô&Ð&å”�G B¨¬¡K°!´&°Ñ9Ô9Ñ:Ô:ˆBÝ”�G B¨¬¡K°´Ñ8Ô8Ñ9Ô9ˆBØ�œ
 2¤7¨B¬GÑ4Ô4Ñ4ˆDÝ”:˜bœg¨¬Ñ/°"´'¸B¼GÑ2CÑCÑDÔDˆDÝ˜4 Ñ&Ô&Ð&r   ©r5   rY   r   rƒ   rF   r   )r"   r   r#   r   r³   r%   r²   r   s         @@r   r³   r³   „  sk   øø€ ÝŒ8�A‰;Œ;€DÝÔ˜qÑ €Eð'ð 'ð 'ð 'ð 'ð 'ð$ ×
"Ò
" 7¨I°s¸DÑ
AÔ
A€CÝ˜g w°°SÑ9Ô9Ð9r   c                 ó”   ‡‡— t          | t          j        ¦  «        sd S t          j        d¦  «        Št
          j        dz  Šˆˆfd„}|S )Nr¬   c                 ó¸  •— t          | j        ¦  «        ‰k    st          | j        ¦  «        ‰k    rit          j        t          j        | j        dz  | j        dz  ¦  «        ¦  «        ‰z   }t          j        | j        | j        ¦  «        }t          ||¦  «        S t          j	        t          | j        dz
  | j        ¦  «        ¦  «        }t          j	        t          | j        dz   | j        ¦  «        ¦  «        }t          j
        |j        |j        z  |j        |j        z  z   ¦  «        }dt          j        |j        |j        ¦  «        z  }t          ||¦  «        S )zcmath.acosh(z)rz   rv   r¢   )r7   r   r   r5   rY   rZ   r[   r9   ra   r|   r®   r¯   s        €€r   Ú
acosh_implz$impl_cmath_acosh.<locals>.acosh_impl¥  s  ø€ õ ˆqŒv‰;Œ;˜ÒÐ¥# a¤f¡+¤+°Ò"5Ð"5õ ”8�DœJ q¤v°¡|°Q´V¸c±\ÑBÔBÑCÔCÀdÑJˆDÝ”:˜aœf a¤fÑ-Ô-ˆDÝ˜4 Ñ&Ô&Ð&å”�G A¤F¨R¡K°´Ñ8Ô8Ñ9Ô9ˆBÝ”�G A¤F¨R¡K°´Ñ8Ô8Ñ9Ô9ˆBÝ”:˜bœg¨¬Ñ/°"´'¸B¼GÑ2CÑCÑDÔDˆDØ�œ
 2¤7¨B¬GÑ4Ô4Ñ4ˆDÝ˜4 Ñ&Ô&Ð&r   )r/   r   rk   r5   rY   r   rƒ   )r   r·   r²   r   s     @@r   Úimpl_cmath_acoshr¸   ž  s]   øø€ Ý�a�œÑ'Ô'ð ØˆåŒ8�A‰;Œ;€DÝÔ˜qÑ €Eð'ð 'ð 'ð 'ð 'ð 'ð$ Ðr   c                 ó¬   ‡‡— t          j        d¦  «        Št          j        dz  Šˆˆfd„}|                      ||||¦  «        }t          | |||¦  «        S )Nr¬   c           	      ó.  •— t          | j        ¦  «        ‰k    st          | j        ¦  «        ‰k    rŽt          j        t          j        t          j        | j        dz  | j        dz  ¦  «        ¦  «        ‰z   | j        ¦  «        }t          j        | j        t          | j        ¦  «        ¦  «        }t          ||¦  «        S t          j
        t          d| j        z   | j         ¦  «        ¦  «        }t          j
        t          d| j        z
  | j        ¦  «        ¦  «        }t          j        |j        |j        z  |j        |j        z  z
  ¦  «        }t          j        | j        |j        |j        z  |j        |j        z  z
  ¦  «        }t          ||¦  «        S )zcmath.asinh(z)rz   rv   )r7   r   r   r5   r{   rY   rZ   r[   r9   ra   r|   r®   r¯   s        €€r   Ú
asinh_implzasinh_impl.<locals>.asinh_impl¿  s;  ø€ õ ˆqŒv‰;Œ;˜ÒÐ¥# a¤f¡+¤+°Ò"5Ð"5Ý”=Ý”�œ A¤F¨S¡L°!´&¸3±,Ñ?Ô?Ñ@Ô@À4ÑGØ”ñô ˆDõ ”:˜aœf¥c¨!¬&¡k¤kÑ2Ô2ˆDÝ˜4 Ñ&Ô&Ð&å”�G B¨¬¡K°!´&°Ñ9Ô9Ñ:Ô:ˆBÝ”�G B¨¬¡K°´Ñ8Ô8Ñ9Ô9ˆBÝ”:˜bœg¨¬Ñ/°"´'¸B¼GÑ2CÑCÑDÔDˆDÝ”:˜aœf b¤g°´Ñ&7¸"¼'ÀBÄGÑ:KÑ&KÑLÔLˆDÝ˜4 Ñ&Ô&Ð&r   r´   )r"   r   r#   r   r»   r%   r²   r   s         @@r   r»   r»   »  sk   øø€ ÝŒ8�A‰;Œ;€DÝÔ˜qÑ €Eð'ð 'ð 'ð 'ð 'ð 'ð  ×
"Ò
" 7¨J¸¸TÑ
BÔ
B€CÝ˜g w°°SÑ9Ô9Ð9r   c                 ó\   — d„ }|                       ||||¦  «        }t          | |||¦  «        S )Nc                 ó’   — t          j        t          | j         | j        ¦  «        ¦  «        }t          |j        |j         ¦  «        S )z%cmath.asin(z) = -j * cmath.asinh(z j))ra   r®   r9   r   r   r”   s     r   Ú	asin_implzasin_impl.<locals>.asin_implÔ  s7   € åŒK� ¤ ¨¬Ñ0Ô0Ñ1Ô1ˆÝ�q”v ¤˜wÑ'Ô'Ð'r   rd   )r"   r   r#   r   r¾   r%   s         r   r¾   r¾   Ó  s@   € ð(ð (ð (ð
 ×
"Ò
" 7¨I°s¸DÑ
AÔ
A€CÝ˜g w°°SÑ9Ô9Ð9r   c                 ó\   — d„ }|                       ||||¦  «        }t          | |||¦  «        S )Nc                 ó*  — t          j        t          | j         | j        ¦  «        ¦  «        }t          j        | j        ¦  «        r3t          j        | j        ¦  «        rt          |j        |j        ¦  «        S t          |j        |j         ¦  «        S )z%cmath.atan(z) = -j * cmath.atanh(z j))ra   Úatanhr9   r   r   r5   r8   rT   r”   s     r   Ú	atan_implzatan_impl.<locals>.atan_implÞ  sr   € åŒK� ¤ ¨¬Ñ0Ô0Ñ1Ô1ˆÝŒ:�a”fÑÔð 	,¥$¤*¨Q¬VÑ"4Ô"4ð 	,å˜1œ6 1¤6Ñ*Ô*Ð*å˜1œ6 A¤F 7Ñ+Ô+Ð+r   rd   )r"   r   r#   r   rÂ   r%   s         r   rÂ   rÂ   Ý  s@   € ð,ð ,ð ,ð ×
"Ò
" 7¨I°s¸DÑ
AÔ
A€CÝ˜g w°°SÑ9Ô9Ð9r   c                 ó.  ‡‡‡	— t          j        d¦  «        }t          j        t          j        dz  ¦  «        Št          j        t          j        ¦  «        Š	t           j        dz  Šˆˆˆ	fd„}|                      ||||¦  «        }t          | |||¦  «        S )Nr¬   rC   c           	      óŽ  •— | j         dk     rd}|  } nd}t          | j        ¦  «        }t          j        | j         ¦  «        s| j         ‰	k    s|‰	k    r£t          j        | j        ¦  «        rt          j        d| j         ¦  «        }nQt          j        | j         ¦  «        rd}n5t          j        | j         dz  | j        dz  ¦  «        }| j         dz  |z  |z  }t          j        ‰| j         ¦  «         }�n| j         dk    rœ|‰
k     r–|dk    rt          }| j        }nçt          j	        t          j
        |¦  «        t          j
        t          j        |d¦  «        ¦  «        z  ¦  «         }t          j        t          j        d| ¦  «        dz  | j        ¦  «        }nf||z  }d	| j         z
  }t          j        d| j         z  ||z  |z   z  ¦  «        d
z  }t          j        d| j        z  |d	| j         z   z  |z
  ¦  «         dz  }t          j        | j        ¦  «        rt          }|rt          | | ¦  «        S t          ||¦  «        S )zcmath.atanh(z)r4   TFrz   g      @rv   r¢   rC   é   ry   g       À)r   r7   r   r5   rT   r8   r{   rZ   ÚINFrY   r|   r[   Úlog1prS   r9   )r   ÚnegateÚayr   Úhr   ÚsqayÚzr1ÚPI_12ÚTHRES_LARGEÚTHRES_SMALLs           €€€r   Ú
atanh_implzatanh_impl.<locals>.atanh_implñ  s=  ø€ ð Œ6�BŠ;ˆ;àˆFØ�ˆAˆAàˆFå�”‰[Œ[ˆÝŒ:�a”fÑÔð 	@ ¤¨+Ò!5Ð!5¸¸kÒ9IÐ9IÝŒz˜!œ&Ñ!Ô!ð %Ý”} R¨¬Ñ0Ô0��Ý”˜AœFÑ#Ô#ð %Ø��õ ”J˜qœv¨™|¨Q¬V°c©\Ñ:Ô:�Ø”v˜b‘y ‘{ 1‘}�Ý”M %¨!¬&¨Ñ1Ô1Ð1ˆD‰DØŒV�rŠ\ˆ\˜b ;Ò.Ð.à�RŠxˆxÝ�Ø”v��åœ¥¤¨2¡¤Ý!%¤­4¬:°b¸"Ñ+=Ô+=Ñ!>Ô!>ñ"?ñ @ô @ð @�å”}¥T¤Z°°R°CÑ%8Ô%8¸1Ñ%<¸a¼fÑEÔE��à˜‘7ˆDØ�a”f‘*ˆCÝ”:˜b 1¤6™k¨S°3©Y¸Ñ-=Ñ>Ñ?Ô?À$ÑFˆDÝ”J˜s Q¤V™|Ø" a¨!¬&¡jÑ1°DÑ8ñ:ô :ð :Ø<?ñ@ˆDõ Œ:�a”fÑÔð 	ÝˆDØð 	'Ý˜D˜5 4 %Ñ(Ô(Ð(å˜4 Ñ&Ô&Ð&r   )	r5   rY   r|   r   rƒ   ÚFLT_MINÚpirF   r   )
r"   r   r#   r   r²   rÐ   r%   rÍ   rÎ   rÏ   s
          @@@r   rÐ   rÐ   ë  s™   øøø€ ÝŒ8�A‰;Œ;€DÝ”)�HÔ,¨qÑ0Ñ1Ô1€KÝ”)�HÔ,Ñ-Ô-€KÝŒG�a‰K€Eð*'ð *'ð *'ð *'ð *'ð *'ð *'ðX ×
"Ò
" 7¨J¸¸TÑ
BÔ
B€CÝ˜g w°°SÑ9Ô9Ð9r   )+Ú__doc__ra   r5   Únumba.core.imputilsr   Ú
numba.corer   Únumba.core.typingr   Únumba.cpythonr   Únumba.core.extendingr   r   r   r   r&   r)   r+   r@   rN   ÚfloatrS   rÆ   rW   r^   re   rl   rp   rt   r€   r‹   r‘   r•   r›   rŸ   rª   r³   r¸   r»   r¾   rÂ   rÐ   r.   r   r   ú<module>rÚ      s]  ððð ð
 €€€Ø €€€à 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø Ð Ð Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø "Ð "Ð "Ð "Ð "Ð "Ø )Ð )Ð )Ð )Ð )Ð )ð9ð 9ð 9ð9ð 9ð 9ð=ð =ð =ðFð Fð FðFð Fð FðFð Fð Fðð ð ð4ð ð ð& €eˆE�l„l€Ø€eˆE�l„l€ð ð&!ð &!ñ Ôð&!ðR ðð ñ Ôðð:ð :ð :ðð ð ð"ð ð ðð ð ð9:ð 9:ð 9:ðz:ð :ð :ðð ð ð<:ð :ð :ðð ð ð6:ð :ð :ðð ð ð<:ð :ð :ð4ð ð ð::ð :ð :ð0:ð :ð :ð:ð :ð :ð3:ð 3:ð 3:ð 3:ð 3:r   