o
    iK                     @   s  d dl mZ d dlZd dlmZ d dlZd dlZd dlZd dl	m
Z
 d dlmZmZmZmZmZmZmZmZmZmZmZ d dlmZmZmZmZ d dlmZmZ d dlm Z  d d	l!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z' d d
l(m)Z) d dl*m+Z+ eej,dd Z-eej.ej/ej/dd Z0eej1ej/ej/dd Z2eej1ej3ej3dd Z4eej1ej5ej5dd Z6eej7ej8ej8eej7ej9ej9dd Z:eej;ej8ej8eej;ej9ej9dd Z<dd Z=eej7e=d eej;e=d eej>dd Z?eej/ej>eej@ej>eej5ej>d d! ZAeej>ej/eej>ej5eej>ej@d"d# ZBeejCejDejEd$d% ZFeejGejDejEej/d&d' ZHd(d) ZIeeJejKd*d+ ZLeeJeMej/d,d- ZNeeOejKd.d/ ZPeeOeMej/d0d1 ZQd2d3 ZReeSejTd4d5 ZUeeSejTejEd6d7 ZVeeWej/eeXej/d8d9 ZYeeZeMej/d:d; Z[eej\ej/d<d= Z]eej^d>d? Z_eej`d@dA Zaeej@dBdC Zbeecej/dDdE ZdeeeejfdFdG ZgeehejidHdI ZjedJej/ej/dKdL ZkeelejmdMdN ZneeoejpdOdP ZqeerdQdR ZseerejKdSdT ZteeodUdV ZueeodWdXdYdZ Zvd[d\ Zwd]d^ Zxeexej\eexejyd_d` Zzeewej\eewejydadb Z{d dcl|m}Z}m~Z~ d ddlmZmZ ee}ejejee}ejejdedf ZeeOdgdh ZeeOdidj ZeeJdkdl ZeeJdmdn Zedodp Zedqdp Zedrds ZeeOdtdu ZeeJdvdw ZeejeMej/dxdy Zeeddzd{Zeed|d} Zeed~d Zeedd Zdd Zeedd Zedd ZeddZe Zeedddd Zeedd Zedd Zeedd Zeedd ZeedddZdS )    )
namedtupleN)reduce)ir)lower_builtinlower_getattrlower_getattr_generic
lower_castlower_constantiternext_implcall_getitercall_iternextimpl_ret_borrowedimpl_ret_untrackednumba_typeref_ctor)typingtypesutilscgutils)overload	intrinsic)
Conversion)TypingErrorLoweringErrorNumbaExperimentalFeatureWarningNumbaTypeErrorRequireLiteralValueNumbaPerformanceWarning)literal_unroll)as_numba_typec                 C   s   t | tjrdd }|S d S )Nc                 S   s   | S N valr    r    e/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/numba/cpython/builtins.pyimpl      zol_truth.<locals>.impl
isinstancer   Boolean)r"   r$   r    r    r#   ol_truth   s   r)   c                 C   s   |  tj|}||||S )z3
    Implement `x is not y` as `not (x is y)`.
    )get_functionoperatoris_not_)contextbuildersigargsZis_implr    r    r#   generic_is_not#   s   r2   c                 C   s`   |j \}}||kr-|jrd}t|z	| tj|}W n ty'   tj Y S w |||S tjS )z-
    Default implementation for `x is y`
    zno default `is` implementation)	r1   Zmutabler   r*   r+   eqNotImplementedErrorr   	false_bit)r.   r/   r0   r1   lhs_typerhs_typemsgeq_implr    r    r#   
generic_is,   s   


r:   c                 C   sJ   |j \}}||kr"||d tj}||d tj}|d||S tjS )z7
    Implementation for `x is y` for Opaque types.
    r      z==)r1   Zptrtointr   Zintp_tZicmp_unsignedr5   )r.   r/   r0   r1   r6   r7   Zlhs_ptrZrhs_ptrr    r    r#   	opaque_isF   s   
r<   c                 C   sb   |\}}|j \}}| |||tj}| |||tj}	| tjttjtjtj}
|
|||	fS )z
    Implementation for `x is y` for types derived from types.Boolean
    (e.g. BooleanLiteral), and cross-checks between literal and non-literal
    booleans, to satisfy Python's behavior preserving identity for bools.
    )	r1   castr   booleanr*   r+   r3   r   	signature)r.   r/   r0   r1   arg1arg2Z	arg1_typeZ	arg2_typeZ_arg1Z_arg2r9   r    r    r#   bool_is_implV   s   
rB   c                 C   s@   |j \}}d}|j|jkrd}ttd|}t| ||j|S Nr   r;   r1   literal_valuer   ConstantIntTyper   return_typer.   r/   r0   r1   r@   rA   r"   resr    r    r#   const_eq_impli      
rK   c                 C   s@   |j \}}d}|j|jkrd}ttd|}t| ||j|S rC   rD   rI   r    r    r#   const_ne_implu   rL   rM   c                    s    fdd}|S )Nc                    sL   t | tj}t |tj}|r|r fdd}|S ||A r$ fdd}|S d S )Nc                    s    S r   r    abr!   r    r#   r$      r%   z/gen_non_eq.<locals>.none_equality.<locals>.implc                    s     S r   r    rN   r!   r    r#   r$      s   r'   r   NoneType)rO   rP   Za_noneZb_noner$   r!   r    r#   none_equality   s   z!gen_non_eq.<locals>.none_equalityr    )r"   rS   r    r!   r#   
gen_non_eq   s   rT   TFc                 C   s4   |  }| ||||}| ||}|| ||||S )z>
    Deferred.__getattr__ => redirect to the actual type.
    )getr=   get_getattr)r.   r/   typvalueattrZ
inner_typer"   impr    r    r#   deferred_getattr   s   r[   c                 C   s0   |  |||| }| j| }||| |S r   )r=   rU   data_model_managersetZmake_uninitialized)r.   r/   fromtytotyr"   actualmodelr    r    r#   any_to_deferred   s   
rb   c                 C   s*   | j | }|||}| ||| |S r   )r\   rU   r=   )r.   r/   r^   r_   r"   ra   r    r    r#   deferred_to_any   s   
rc   c                 C   s0   |\}}| ||g}||}t| ||j|S r   )geploadr   rH   )r.   r/   r0   r1   base_ptridxelem_ptrrJ   r    r    r#   getitem_cpointer   s   
ri   c                 C   s(   |\}}}| ||g}||| d S r   )rd   store)r.   r/   r0   r1   rf   rg   r"   rh   r    r    r#   setitem_cpointer   s   
rk   c           	         sX   t |t |ksJ ||ft |dksJ  fdd}t||}t||\}}|S )Nr   c                    s   | \}}|\}}j ||}|d usJ  |||} |||}ttj||}|}| ||f}	 |	||}
||
fS r   )	Ztyping_contextZunify_typesr=   r   r?   r   r>   r*   select)ZaccumulatorrX   ZacctyaccZvtyvtyZcmpsiggepredrJ   r/   cmpopr.   r    r#   binary_minmax   s   z do_minmax.<locals>.binary_minmax)lenzipr   )	r.   r/   argtysr1   rs   rt   ZtypvalsZrestyZresvalr    rr   r#   	do_minmax   s   
rx   c                 C   0   t |jd }t||d }t| |||tjS Nr   )listr1   r   unpack_tuplerx   r+   gtr.   r/   r0   r1   rw   r    r    r#   max_iterable      r   c                 C      t | ||j|tjS r   )rx   r1   r+   r}   r.   r/   r0   r1   r    r    r#   
max_vararg      r   c                 C   ry   rz   )r{   r1   r   r|   rx   r+   ltr~   r    r    r#   min_iterable   r   r   c                 C   r   r   )rx   r1   r+   r   r   r    r    r#   
min_vararg   r   r   c                 C   s   d| j f S )Nzllvm.rint.f%d)bitwidth)tpr    r    r#   _round_intrinsic   s   r   c           
      C   sj   |j d }| |}|j}t||g}t||t|}|||}	|	|	| |j
}	t| ||j
|	S rz   )r1   Zget_value_typemoduler   FunctionTyper   Zget_or_insert_functionr   callZfptosirH   r   )
r.   r/   r0   r1   flttyZlltyr   fntyfnrJ   r    r    r#   round_impl_unary   s   

r   c                    sN   |j d }tt|t||  fdd}| ||||}t| ||j|S )Nr   c                    s   t | s
t | r| S |dkr8|dkrd|d  }d}nd| }d}| | | }t |r0| S  || | S d|  }| | } || S )Nr      g      $@gMDg      ?)mathisinfisnan)xndigitsZpow1Zpow2yZ_roundr    r#   round_ndigits  s   

z(round_impl_binary.<locals>.round_ndigits)	r1   r   ZExternalFunctionr   r   r?   compile_internalr   rH   )r.   r/   r0   r1   r   r   rJ   r    r   r#   round_impl_binary   s   
r   c                 C   s0   |j \}|\}| ||||j}t| ||j|S r   )r1   r=   rH   r   )r.   r/   r0   r1   ro   r"   rJ   r    r    r#   int_impl$  s   r   c                 C   s   |j }|j}t|jdkr9|j\}|\}t|tjr*| ||||}t| ||j |S | ||||}	| 	|d}
n t|jdkrY|j\}}|\}	}
| ||	||}	| ||
||}
| 
||}|	|_|
|_| }t| ||j |S )Nr;   r      )rH   Zunderlying_floatru   r1   r'   r   Complexr=   r   get_constantZmake_complexrealimag	_getvalue)r.   r/   r0   r1   Zcomplex_typeZ
float_typeZargtyargrJ   r   r   ZrealtyZimagtyZcmplxr    r    r#   complex_impl-  s(   
r   c                    sb   t |jtjr!|jj  fdd}| ||||}t| ||j|S |\}|j\}| ||||jS )z1
    Call a number class, e.g. np.int32(...)
    c                     s   t j|  dS )N)dtype)nparray)Zarg_hackdtr    r#   fooQ  s   znumber_constructor.<locals>.foo)	r'   rH   r   Arrayr   r   r   r1   r=   )r.   r/   r0   r1   r   rJ   r"   Zvaltyr    r   r#   number_constructorI  s   r   c                 C      |   S r   get_dummy_valuer.   r/   ro   pyvalr    r    r#   constant_dummy_  s   r   c                 C   s0   |  |}| j|||t|d}|||S )N)info)Zget_function_pointer_typeZadd_dynamic_addrZget_pointerstrZbitcast)r.   r/   ro   r   ZptrtyZptrvalr    r    r#   constant_function_pointerd  s
   
r   c                 C   s&   |d u r|  ||jS | ||j|S r   )Zmake_optional_nonetypeZmake_optional_valuer   r    r    r#   constant_optionall  s   r   c                 C   r   )z&
    One-argument type() builtin.
    r   r   r    r    r#   	type_implv  s   r   c                 C   s    |j \}|\}t| |||}|S r   )r1   r   )r.   r/   r0   r1   ro   r"   itervalr    r    r#   	iter_impl~  s   r   c                 C   sr   |j \}|\}t| |||}|j|| dd | j|td W d    | S 1 s0w   Y  | S )NF)Zlikelyr    )	r1   r   Zif_thenr-   Zis_validZ	call_convZreturn_user_excStopIterationZyielded_value)r.   r/   r0   r1   Zitertyr   rJ   r    r    r#   	next_impl  s   
r   znot inc                 C   s"   dd }|  ||||}||S )Nc                 S   s   t || S r   )r+   containsrN   r    r    r#   in_impl     znot_in.<locals>.in_impl)r   r-   )r.   r/   r0   r1   r   rJ   r    r    r#   not_in  s   
r   c                 C   s0   |j \}|j}| |t|j}t| ||j|S r   )r1   rH   r   ru   r   r   )r.   r/   r0   r1   ro   rettyrJ   r    r    r#   constsized_len  s   r   c                 C   s   |j \}t|rtjS tjS r   )r1   ru   r   true_bitr5   )r.   r/   r0   r1   ro   r    r    r#   
sized_bool  s   r   c                 C   s    |j }| |}t| ||j |S r   )rH   Zget_constant_undefr   )r.   r/   r0   r1   r   rJ   r    r    r#   lower_empty_tuple  s   
r   c                 C   s   |\}t | ||j|S r   )r   rH   )r.   r/   r0   r1   r"   r    r    r#   lower_tuple  s   r   c                 C   s6   t jt jt jt jt jt jf}t| |rdd }|S d S )Nc                 S   s   t | dkS rz   )ru   r   r    r    r#   	bool_impl  r   z bool_sequence.<locals>.bool_impl)r   ZCharSeqZUnicodeCharSeqDictTypeListTypeUnicodeTypeSetr'   )r   Zvalid_typesr   r    r    r#   bool_sequence  s   
	r   always)inlinec                 C   s    t | tjs
| d u rdd S d S )Nc                 S      dS NFr    r   r    r    r#   <lambda>  s    zbool_none.<locals>.<lambda>rQ   r   r    r    r#   	bool_none  s   r   c                 C   s,   t | tjr	tjS t | tjr| jS tdNzUnsupported type)r'   r   Floatr   infIntegermaxvalr4   rW   r    r    r#   get_type_max_value  s
   r   c                 C   s.   t | tjr
tj S t | tjr| jS tdr   )r'   r   r   r   r   r   minvalr4   r   r    r    r#   get_type_min_value  s
   r   c           
      C   s   |j d j}t|tjr|j}t|}|j}t	||}nLt|tj
rN|j}|dkr0t }n|dkr9t }ntdttd|}	t	|tj }nt|tjtjfrjd}t|}tjjd }t	||}t| |||S )Nr       @   +llvmlite only supports 32 and 64 bit floatsfloat{}r;   )r1   r   r'   r   r   r   r   rG   r   rF   r   	FloatType
DoubleTyper4   getattrr   formatr   
NPDatetimeNPTimedeltaint64r   
r.   r/   r0   r1   rW   bwZltyr"   rJ   Znptyr    r    r#   lower_get_type_min_value  s*   



r   c           
      C   s   |j d j}t|tjr|j}t|}|j}t	||}nIt|tj
rM|j}|dkr0t }n|dkr9t }ntdttd|}	t	|tj}nt|tjtjfrgd}t|}tjj}t	||}t| |||S )Nr   r   r   r   r   )r1   r   r'   r   r   r   r   rG   r   rF   r   r   r   r4   r   r   r   r   r   r   r   r   r   r    r    r#   lower_get_type_max_value  s*   



r   )
IndexValueIndexValueType)r   register_jitablec                 C   s2   |j }|\}}t|| |}||_||_| S r   )rH   r   Zcreate_struct_proxyindexrX   r   )r.   r/   r0   r1   rW   r   rX   Zindex_valuer    r    r#   impl_index_value  s   r   c                 C   (   t | trt |trdd }|S d S d S )Nc                 S   st   t | jrt |jr| j|jk r| S |S | S t |jr |S | j|jkr(|S | j|jkr8| j|jk r6| S |S | S r   r   r   rX   r   indval1indval2r    r    r#   min_impl*     zindval_min.<locals>.min_implr'   r   )r   r   r   r    r    r#   
indval_min&     
r   c                 C   ,   t | tjrt |tjrdd }|S d S d S )Nc                 S   s   | o|S r   r    val1val2r    r    r#   bool_min_implG     z"boolval_min.<locals>.bool_min_implr&   )r   r   r   r    r    r#   boolval_minC     
r  c                 C   r   )Nc                 S   st   t | jrt |jr| j|jk r| S |S | S t |jr |S |j| jkr(|S | j|jkr8| j|jk r6| S |S | S r   r   r   r    r    r#   max_implP  r   zindval_max.<locals>.max_implr   )r   r   r  r    r    r#   
indval_maxL  r   r  c                 C   r   )Nc                 S   s   | p|S r   r    r   r    r    r#   bool_max_implm  r  z"boolval_max.<locals>.bool_max_implr&   )r   r   r  r    r    r#   boolval_maxi  r  r  c                 C   s   | |kS r   r    rN   r    r    r#   r   r      r   c                 C   s   | |k S r   r    rN   r    r    r#   r   s  r  c                    s    t | tjr fdd}|S d S )Nc                    s,   t | }t|}|D ]	} ||r|}q
|S r   )iternext)iterableit
return_valr"   opr    r#   r$   y  s   
zmin_max_impl.<locals>.impl)r'   r   IterableType)r  r  r$   r    r  r#   min_max_implv  s   r  c                 C   
   t | tS r   )r  	less_thanr  r    r    r#   iterable_min     
r  c                 C   r  r   )r  greater_thanr  r    r    r#   iterable_max  r  r  c                 C   sz   |j }dd }tj|j}t|t||}t|dkr*| 	 | 
|||f}n| 	 | 
||df}| ||||S )ae  Redirect constructor implementation to `numba_typeref_ctor(cls, *args)`,
    which should be overloaded by the type's implementation.

    For example:

        d = Dict()

    `d` will be typed as `TypeRef[DictType]()`.  Thus, it will call into this
    implementation.  We need to redirect the lowering to a function
    named ``numba_typeref_ctor``.
    c                 W   s   t | g|R  S r   )r   )clsr1   r    r    r#   	call_ctor  s   z%redirect_type_ctor.<locals>.call_ctorr   r    )rH   r   TupleZ
from_typesr1   r   r?   TypeRefru   r   Z
make_tupler   )r.   r/   r0   r1   r  r  Z	ctor_argsr    r    r#   redirect_type_ctor  s   r  c                    s   d }t |tjrd}nt |tjrd}nt |tjrd}|d ur)dj| }t|t | tjjtj	tj
tjtjfr<t nt | tjjrFt nd S d fdd	}|S )	N)strings )bytesrP   )	bytearrayrP   z/sum() can't sum {} [use {}''.join(seq) instead]r   c                    s   |} | D ]}|| }q|S r   r    )r  startrm   r   iteratorr    r#   r$     s   
zol_sum.<locals>.implr   )r'   r   r   BytesZ	ByteArrayr   r   
containersZ_HomogeneousTupleListr   r   	RangeTyper	  Z_HeterogeneousTupler   )r  r"  errorr8   r$   r    r#  r#   ol_sum  s&   
r+  c                 G      dd }|S )Nc                 w   s&    t |g|R  D ]}| | V  q	d S r   )rv   )funcr  r1   r   r    r    r#   r$     s   zol_map.<locals>.implr    )r-  r  r1   r$   r    r    r#   ol_map  s   r.  c                 C   s,   | d u s
t | tjrdd }|S dd }|S )Nc                 s   s    |D ]}|r
|V  qd S r   r    r-  r  r   r    r    r#   r$     s   zol_filter.<locals>.implc                 s   s    |D ]	}| |r|V  qd S r   r    r/  r    r    r#   r$     s   rQ   )r-  r  r$   r    r    r#   	ol_filter  s
   	r0  c                 C   s.  dd }dd }t | }t|tjrd| d}t|tjtjtjtjtj	tj
tjtjtjtjtjtjtjtjtjtjf}t||sMd| d}t||}t|tjrZ|jd	 }t|tjsc|f}|D ]}t|tjrs|jd	 }	nt|tjr||}	n|j}	ttjttjttjtj	fttj
ttjttji}
|	|
v rt||
|	 r|  S qet|tjr|	tjtjfvrd
}t|t||	u r|  S |  S t |	}||kr|  S t|tjrt|tjr|j|jjkr|  S t|tj r|jd	 tj!krt||j"st|tjrt|tjr|  S qe|S )Nc                 S   r   )NTr    vartypsr    r    r#   	true_impl  r%   z ol_isinstance.<locals>.true_implc                 S   r   r   r    r1  r    r    r#   
false_impl  r%   z!ol_isinstance.<locals>.false_implz1isinstance cannot handle optional types. Found: ""z1isinstance() does not support variables of type "z".r   zLNumba type classes (except numba.typed.* container types) are not supported.)#r   r'   r   Optionalr   Numberr&  r)  r   ZLiteralStrKeyDictr(  r   r  ZUniTupler   FunctionZ	ClassTyper   ZClassInstanceTyperR   r   keyr   rangedictr{   tuple	BaseTupler]   r  r   Zinstance_type	Container	undefined	__class__)r2  r3  r4  r5  Zvar_tyr8   Zsupported_var_tyZt_typsrW   r:  Ztypes_not_registeredZ	numba_typr    r    r#   ol_isinstance  sx   




rB  c                 C   s   d S r   r    objnamer    r    r#   _getattr_raise_attr_excN  s   rF  c                    s<   t |tjs
td|j}d|  d| d  fdd}|S )N(argument 'name' must be a literal string'z' has no attribute 'c                    s   t  r   )AttributeErrorrC  messager    r#   r$   [  r  z(ol__getattr_raise_attr_exc.<locals>.impl)r'   r   StringLiteralr   rE   )rD  rE  lnamer$   r    rJ  r#   ol__getattr_raise_attr_excT  s   rN  c                    s$  t |tjs
td|j| t tjr)d d d d}t|d u rht tjr8j	t
ksH|}fdd}||fS | t| |fi t|}fdd}||fS |}t tjrfd	d}||fS |   fd
d}||fS )NrG  zQReturning function objects is not implemented. getattr() was requested to return z from attribute 'z' of .c                    s   |d }| j | | |S N)nrtincref)cgctxr/   r0   llargstmp)defaultr    r#   r$   u  s   zresolve_getattr.<locals>.implc                    s   |   }|||d d S rP  )r*   )rT  r/   r0   rU  Znative_impl)r   	raise_sigr    r#   r$   ~  s   c                    s<    j }| ||d |}| |||}| j| | |S rz   )thisr=   Zget_bound_functionrR  rS  )rT  r/   r0   ll_argsZ	cast_typecastedrJ   )r   rD  r    r#   r$     s
   c                    sD   |  }|| ||d }| || }| j|| |S rz   )rV   r=   rR  rS  )rT  r/   r0   rZ  Z	attr_implrJ   r[  )attrtyr   rM  rD  r    r#   r$     s
   )r'   r   rL  r   rE   resolve_getattrr9  r   
NamedTupleZinstance_class_getattr_default_typeZresolve_value_typerF  Zget_call_typenoneZBoundFunction)tyctxrD  rE  rW  r8   r0   r$   r    )r\  rW  r   r   rM  rD  rX  r#   r]  `  s>   
!
r]  r_  r  )Zprefer_literalc                 C      dd }|S )Nc                 S   s   t | |tS r   )r]  _getattr_defaultrC  r    r    r#   r$     r   zol_getattr_2.<locals>.implr    rD  rE  r$   r    r    r#   ol_getattr_2     re  c                 C   r,  )Nc                 S   s   t | ||S r   )r]  )rD  rE  rW  r    r    r#   r$     r   zol_getattr_3.<locals>.implr    )rD  rE  rW  r$   r    r    r#   ol_getattr_3  rf  rg  c                    sb   t |tjs
td|j}| ||  d u rtd}ntd}|||} fdd}||fS )NrG  FTc                    s    d u rt jS t jS r   )r   r5   r   )rT  r/   r0   rZ  r   r    r#   r$     s   zresolve_hasattr.<locals>.impl)r'   r   rL  r   rE   r]  literal)ra  rD  rE  rM  r   r0   r$   r    rh  r#   resolve_hasattr  s   

rj  c                 C   rb  )Nc                 S   s
   t | |S r   )rj  rC  r    r    r#   r$     s   
zol_hasattr.<locals>.implr    rd  r    r    r#   
ol_hasattr  rf  rk  c                    s   d|  d  fdd}|S )Nz<object type:>c                    s"   d}t | |dkrt| | S  S )N__repr__T)hasattrr   )rD  rY   Zmissing_repr_formatr    r#   r$     s   zol_repr_generic.<locals>.implr    )rD  r$   r    ro  r#   ol_repr_generic  s   rp  c                 C   s   ddd}|S )Nr  c                 S   s&   d}t | |dkrt| | S t| S )N__str__T)rn  r   repr)objectrY   r    r    r#   r$     s   zol_str_generic.<locals>.implr  r    )rs  r$   r    r    r#   ol_str_generic  s   
ru  r%  rt  )collectionsr   r   	functoolsr   numpyr   r+   warningsZllvmliter   Znumba.core.imputilsr   r   r   r   r	   r
   r   r   r   r   r   Z
numba.corer   r   r   r   Znumba.core.extendingr   r   Znumba.core.typeconvr   Znumba.core.errorsr   r   r   r   r   r   Znumba.misc.specialr   Znumba.core.typing.asnumbatyper   truthr)   is_notAnyr2   r,   r:   ZOpaquer<   r(   rB   r3   LiteralZIntegerLiteralrK   nerM   rT   ZDeferredTyper[   r7  rb   rc   getitemZCPointerr   ri   setitemrk   rx   maxr>  r   ZVarArgr   minr   r   r   roundr   r   r   intfloatr   complexr   ZNumberClassr   ZDummyr   ZExternalFunctionPointerr   r   r   r   r	  r  r   r
  ZIteratorTyper   r   ru   Z
ConstSizedr   boolSizedr   r=  r   r   r   r   r   r   ZDTyper   r   Znumba.core.typing.builtinsr   r   Znumba.extendingr   ZintpTypeZuintpr   r   r  r  r  r  r  r  r  r  r  r  sumr+  mapr.  filterr0  r'   rB  rF  rN  r]  r_  rc  r   re  rg  rj  rn  rk  rr  rp  r   ru  r    r    r    r#   <module>   s0   4 





	
	











%






	




















	







'


a


9






