o
    TdŇ                     @   s.  d Z ddlZddlZddlmZ ddlmZmZ ddl	m
Z
mZmZmZmZ ddlmZ ddlmZ edZejd	ks>J ejejd	d
ddZedZejZejejejde Zejejej de Z!dd Z"edd Z#edd Z$edd Z%edddd Z&edd Z'edddd Z(edd  Z)ed!d" Z*d#d$ Z+d%d& Z,d'd( Z-d)d* Z.ed+d, Z/eejej0d-d. Z1d/d0 Z2eej0ejd1d2 Z3eej4ejd3d4 Z5ed5d6 Z6eej4ej7d7d8 Z8e
ej9d9d: Z:e
e;d;d< Z<e
ej=e
ej>d=d> Z?e
ej@d?d@ ZAe
ejBdAdB ZCe
ejDdCdD ZEe
ejFdEdF ZGe
ejHdGdH ZIe
ejJdIdJ ZKe
ejLdKdL ZMe
ejNdMdN ZOe
ejPdOdP ZQeej7dQeej0dQeejdQdRdS ZReej7dTeej0dTdUdV ZSeej4dWdXdY ZTeej0dZeejdZd[d\ ZUeej7d]d^d_ ZVe
eWd`da ZXeej7dbdcdd ZYeej0dbdedf ZZeej7dgdhdi Z[eej0dgdjdk Z\eej7dldmdn Z]eej0dldodp Z^eej7dqeej0dqeejdqdrds Z_eej7dteej0dteejdtdudv Z`eej7dweej0dweejdwdxdy Zaeej7dzeej0dzeejdzd{d| Zbed}d~ Zceej7deej0deejddddZdeej7deej0deejddddZeeej7deej0deejddddZfeej7deej0deejddddZgeej7deej0deejddd Zheej7deej0deejddddZieej7deej0deejddddZjeej7deej0deejddddZkeej7deej0deejddd ZldS )z=Implements operations on bytes and str (unicode) array items.    N)ir)typescgutils)overload	intrinsicoverload_method
lower_castregister_jitable)is_nonelike)unicodeS1   CT)readonlyU1)r         c                    s    fdd}|S )Nc           	         sR   |\}}t j||d}||t  }||||g}||tdS )Nvalue    )	r   alloca_once_valuebitcastr   IntType
as_pointerloadgepzext)	contextbuilder	signatureargsdataidxrawptrptrchbitsize h/home/ncw/WWW/www-new/content/articles/pi-bbp/venv/lib/python3.10/site-packages/numba/cpython/charseq.pycodegen%   s
   z#make_deref_codegen.<locals>.codegenr(   )r'   r*   r(   r&   r)   make_deref_codegen$   s   r+   c                 C      t |t j}|tdfS )N   r   uint32intpr+   	typingctxr!   offsetsigr(   r(   r)   deref_uint8.      r5   c                 C   r,   )N   r.   r1   r(   r(   r)   deref_uint164   r6   r8   c                 C   r,   )Nr   r.   r1   r(   r(   r)   deref_uint32:   r6   r9   F)_nrtc                 C   s
   t | |S )z6Access i-th item of CharSeq object via code value
    )r5   air(   r(   r)   charseq_get_code@   s   
r>   c                 C   s   t | |}|dkrtd|S )zcAccess i-th item of CharSeq object via code value.

    null code is interpreted as IndexError
    r   index out of range)r>   
IndexErrorr<   r=   coder(   r(   r)   charseq_get_valueG   s   
rC   c                 C   s>   t dkr	t| |S t dkrt| |S t dkrt| |S td)z=Access i-th item of UnicodeCharSeq object via code value
    r   r   r   z=unicode_charseq_get_code: unicode_byte_width not in [1, 2, 4])unicode_byte_widthr9   r8   r5   NotImplementedErrorr;   r(   r(   r)   unicode_charseq_get_codeS   s   


rF   c                 C   s   t | |S )z,Access i-th item of UnicodeType object.
    )r   _get_code_pointr;   r(   r(   r)   unicode_get_codeb   s   rH   c                 C   s   | | S )z*Access i-th item of Bytes object.
        r(   r;   r(   r(   r)   bytes_get_codei   s   rI   c                 C   sD   t | tjrtS t | tjrtS t | tjrtS t | tjr t	S d S N)

isinstancer   CharSeqr>   BytesrI   UnicodeCharSeqrF   UnicodeTyperH   r<   r(   r(   r)   _get_code_implp   s   rQ   c                 C   s<   t jt jft jt jffD ]}t| |rt||r dS qdS )NTF)r   rL   rM   rN   rO   rK   )r<   btr(   r(   r)   
_same_kind{   s   

rT   c                 C   s   t | tjtjfS rJ   )rK   r   rL   rM   rP   r(   r(   r)   	_is_bytes      rU   c                 C   s   | |kp	t | tjS rJ   )rK   r   Omitted)xdefaultr(   r(   r)   
is_default      rZ   c                 C   s0   t | |}|dkrtdt|ttd S )zlAccess i-th item of UnicodeCharSeq object via unicode value

    null code is interpreted as IndexError
    r   r?   r(   )rF   r@   nparrayunicode_uintviewu1_dtyperA   r(   r(   r)   unicode_charseq_get_value   s   
ra   c              	   C   sD  t || ||d}||jtd }|j}| |}td}	t 	||}
||
|	 }t
|j|j}|d||}||||}|| t ||t
|j|jd W d    n1 sew   Y  t ||%}|||jg}||||	}|||||jg W d    n1 sw   Y  ||
S )Nr   r-   <r   )r   create_struct_proxyr   r!   r   r   r   nitemsget_value_typealloca_onceConstanttypecounticmp_unsignedselectif_thenmemset	for_ranger   indexr   r   store)r   r   fromtytotyvalbarrsrc
src_lengthltydstint_tdst_ptrdst
dst_lengthis_shorter_valueri   loopin_ptrin_valr(   r(   r)   bytes_to_charseq   s2   


r   c                 C   s   t t}|| |}t|trt|jj|}| j	
|||_||_t|jjd|_| j	||j|_t |jj|_t |jj|_t |jj|_|S Nr   )r   rc   
bytes_typerK   intr   rg   rd   rh   nrtmeminfo_allocmeminfoitemsizememinfo_datar!   get_null_valueparentshapestrides)r   r   nbytes	bstr_ctorbstrr(   r(   r)   _make_constant_bytes   s   


r   c                 C   sF   t | ||jj}tj||d}|||jj}t||j||j |S )Nr   )	r   rh   ri   r   r   r   r!   memcpyrd   )r   r   rq   rr   rs   r   r#   r$   r(   r(   r)   charseq_to_bytes   s
   r   c           
      C   s   t || ||d}||jtd }|d|jt	|jj
d}|j}|| | j|td W d    n1 s?w   Y  t| ||}	t ||	j||	j |	S )Nr   r-   z!=r   )z3cannot cast higher than 8-bit unicode_type to bytes)r   rc   r   r!   r   r   r   rj   kindrg   rh   lengthrl   	call_convreturn_user_exc
ValueErrorr   r   rd   )
r   r   rq   rr   rs   uni_strsrc1notkind1rv   r   r(   r(   r)   unicode_to_bytes_cast   s   
r   c                    s*    t jksJ t } fdd}||fS )Nc                    s   t | | t|d  S Nr   )r   r   	_getvalue)r   r   r   r    sr(   r)   r*      s
   z"_unicode_to_bytes.<locals>.codegen)r   unicode_typer   )r2   r   r4   r*   r(   r   r)   _unicode_to_bytes   s   r   c              
   C   sr  t || ||d}||jtd }||jtd }||jtd }|d|jt	|jj
d}	|d|jt	|jj
d}
|d|jt	|jj
d}|j}| |}tdt }t ||}||| }t	|j
|j}|d	||}||||}|| t ||t	|j
|jt d
 W d    n1 sw   Y  ||	; t ||%}|||jg}||||}|||||jg W d    n1 sw   Y  W d    n1 sw   Y  ||
P tdkr8t ||%}|||jg}||||}|||||jg W d    n	1 s2w   Y  n| j|tdtd |f  W d    n	1 sQw   Y  ||P tdkrt ||%}|||jg}||||}|||||jg W d    n	1 sw   Y  n| j|tdtd |f  W d    n	1 sw   Y  ||S )Nr   r-   r7   r   z==r   r   r   rb   r   z,cannot cast 16-bit unicode_type to %s-bit %sz,cannot cast 32-bit unicode_type to %s-bit %s)r   rc   r   r!   r   r   r   rj   r   rg   rh   r   re   rD   rf   ri   rk   rl   rm   rn   r   ro   r   r   rp   r   r   r   )r   r   rq   rr   rs   r   r   src2src4kind1kind2kind4rv   rw   rx   ry   rz   r{   r|   ri   r}   r~   r   r(   r(   r)   unicode_to_unicode_charseq   s   








r   c                    sb   d  t |tjrt | tjrt t | tjrt  d ur/| jdd   fdd}|S d S )Nzindex out of range [0, %s]r   c                    s"   |k r|dkr | |S t r   )r@   r   r=   	get_valuemax_imsgr(   r)   getitem_implU  s   
z%charseq_getitem.<locals>.getitem_impl)rK   r   IntegerrL   rC   rN   ra   ri   )r   r=   r   r(   r   r)   charseq_getitemI  s   r   c                    sJ   t | tjtjfr#t|  | jdkrdd }|S  fdd}|S d S )Nr   c                 S   s   dS r   r(   r   r(   r(   r)   len_implb  s   zcharseq_len.<locals>.len_implc                    sD   }d}|dkr|d }|dk r	 |d S  | |}|dks|d S )Nr   r   r(   )r   r=   rB   get_codenr(   r)   r   f  s   
)rK   r   rL   rN   rQ   ri   )r   r   r(   r   r)   charseq_len\  s   r   c                 C   s   t | |sd S t| tjrt|tjrdd }|S t|tjr+t| tjr+dd }|S t| tjr=t|tjr=dd }|S t| tjtjfrUt|tjtjfrWdd }|S d S d S )Nc                 S   s   t | | S rJ   strr<   rR   r(   r(   r)   impl{     zcharseq_concat.<locals>.implc                 S   s   | t | S rJ   r   r   r(   r(   r)   r     r   c                 S   s   t | t | S rJ   r   r   r(   r(   r)   r        c                 S   s   |   |    S rJ   _to_str	_to_bytesr   r(   r(   r)   r     r[   )rT   rK   r   rN   rO   rL   rM   r<   rR   r   r(   r(   r)   charseq_concatt  s.   



r   c                 C   sp   t | tjrdd }|S t |tjrdd }|S t | tjtjfr'dd }|S t |tjtjfr6dd }|S d S )Nc                 S   s   t | | S rJ   r   r   r(   r(   r)   wrap  r   zcharseq_repeat.<locals>.wrapc                 S   s   | t | S rJ   r   r   r(   r(   r)   r     r   c                 S   s   |   |  S rJ   r   r   r(   r(   r)   r     r   c                 S   s   | |    S rJ   r   r   r(   r(   r)   r     r   rK   r   rN   rL   rM   )r<   rR   r   r(   r(   r)   charseq_repeat  s   r   c                 C   s&   t | tjtjtjfrdd }|S d S )Nc                 S   s   t | dkS r   )lenrP   r(   r(   r)   r     r   zcharseq_not.<locals>.implr   )r<   r   r(   r(   r)   charseq_not  s   r   c                    H   t | |sd S t|  t| d ur d ur" fdd}|S d S d S )Nc                    sD   t | }|t |krdS t|D ]} | |||kr dS qdS )NFT)r   range)r<   rR   r   r=   	left_code
right_coder(   r)   eq_impl  s   zcharseq_eq.<locals>.eq_implrT   rQ   )r<   rR   r   r(   r   r)   
charseq_eq  s   
r   c                 C   B   t | |sd S t| }t|}|d ur|d urdd }|S d S d S )Nc                 S   s
   | |k S rJ   r(   r   r(   r(   r)   ne_impl     
zcharseq_ne.<locals>.ne_implr   )r<   rR   r   r   r   r(   r(   r)   
charseq_ne     
r   c                    r   )Nc                    sZ   t | }t |}t||}t|D ]} | |||}}||kr(||k   S q||k S rJ   )r   minr   )r<   rR   nanbr   r=   cacbr   r(   r)   lt_impl  s   
zcharseq_lt.<locals>.lt_implr   )r<   rR   r   r(   r   r)   
charseq_lt  s   
	r   c                 C   r   )Nc                 S   s   || k S rJ   r(   r   r(   r(   r)   gt_impl     zcharseq_gt.<locals>.gt_implr   )r<   rR   r   r   r   r(   r(   r)   
charseq_gt  r   r   c                 C   r   )Nc                 S   s
   | |k S rJ   r(   r   r(   r(   r)   le_impl  r   zcharseq_le.<locals>.le_implr   )r<   rR   r   r   r   r(   r(   r)   
charseq_le  r   r   c                 C   r   )Nc                 S   s
   | |k  S rJ   r(   r   r(   r(   r)   ge_impl  r   zcharseq_ge.<locals>.ge_implr   )r<   rR   r   r   r   r(   r(   r)   
charseq_ge  r   r   c                 C   sV   t | |sd S t| }t|}|d ur'|d ur)t| r!dd }|S dd }|S d S d S )Nc                 S   s   |  |   v S rJ   r   r   r(   r(   r)   contains_impl  s   z'charseq_contains.<locals>.contains_implc                 S   s   t |t | v S rJ   r   r   r(   r(   r)   r     r   )rT   rQ   rU   )r<   rR   r   r   r   r(   r(   r)   charseq_contains   s   
	r   isasciic                       t |   fdd}|S )Nc                    s*   t t| D ]} | |dkr dS qdS )N   FT)r   r   r   r   r(   r)   r     s
   zcharseq_isascii.<locals>.implrQ   r   r   r(   r   r)   charseq_isascii  s   r   	_get_kindc                    r   )Nc                    sN   d}t t| D ]} | |}||kr|}q|dkrtjS |dkr$tjS tjS )Nr   i     )r   r   r   PY_UNICODE_4BYTE_KINDPY_UNICODE_2BYTE_KINDPY_UNICODE_1BYTE_KIND)r   max_coder=   rB   r   r(   r)   r   '  s   
zcharseq_get_kind.<locals>.implr   r   r(   r   r)   charseq_get_kind"  s   r   r   c                 C      dd }|S )zConvert unicode_type object to Bytes object.

    Note: The usage of _to_bytes method can be eliminated once all
    Python bytes operations are implemented for numba Bytes objects.

    c                 S   s   t | S rJ   )r   r   r(   r(   r)   r   =  r   z"unicode_to_bytes_mth.<locals>.implr(   r   r(   r(   r)   unicode_to_bytes_mth5  s   r   r   c                    r   )zConvert bytes array item or bytes instance to UTF-8 str.

    Note: The usage of _to_str method can be eliminated once all
    Python bytes operations are implemented for numba Bytes objects.
    c                    sJ   t | }|  }ttj||}t|D ]} | |}t||| q|S rJ   )r   r   r   _empty_stringr   r   _set_code_point)r   r   is_asciiresultr=   rB   r   r(   r)   
tostr_implL  s   
z&charseq_to_str_mth.<locals>.tostr_implr   )r   r   r(   r   r)   charseq_to_str_mthB  s   	r   __str__c                    r   )Nc                    sX   t | }|  }|dko|  }t|||}t|D ]} | |}t||| q|S r   )r   r   r   r   r   r   r   )r   r   r   r   r   r=   rB   r   r(   r)   str_impl\  s   
zcharseq_str.<locals>.str_implr   )r   r   r(   r   r)   charseq_strX  s   
r   c                 C   s   t | tjr
dd S d S )Nc                 S   s   | S rJ   r(   r   r(   r(   r)   <lambda>l  s    zcharseq_bytes.<locals>.<lambda>)rK   r   rL   r   r(   r(   r)   charseq_bytesi  s   r   __hash__c                 C   r   )Nc                 S   s   t t| S rJ   )hashr   r   r(   r(   r)   r   q  r   z"unicode_charseq_hash.<locals>.implr(   r   r(   r(   r)   unicode_charseq_hasho     r   c                 C   r   )Nc                 S   s   t |  S rJ   )r   r   r   r(   r(   r)   r   x  s   zcharseq_hash.<locals>.implr(   r   r(   r(   r)   charseq_hashv  s   r  isupperc                 C   r   )Nc                 S   s   t |    S rJ   )r   r  r   r(   r(   r)   r        z%unicode_charseq_isupper.<locals>.implr(   r   r(   r(   r)   unicode_charseq_isupper     r  c                 C   r   )Nc                 S   s   |      S rJ   )r   r  r   r(   r(   r)   r     r  zcharseq_isupper.<locals>.implr(   r   r(   r(   r)   charseq_isupper  r  r  upperc                 C   r   )Nc                 S      t |  S rJ   )r   r  r   r(   r(   r)   r     r   z#unicode_charseq_upper.<locals>.implr(   r   r(   r(   r)   unicode_charseq_upper  r  r
  c                 C   r   )Nc                 S      |     S rJ   )r   r  r   r   r(   r(   r)   r     r  zcharseq_upper.<locals>.implr(   r   r(   r(   r)   charseq_upper  r  r  findc                 C      t | tjrt |tjrdd }|S t |tjrdd }|S t | tjr3t |tjtjfr3dd }|S t | tjrEt |tjrEdd }|S t | tjrWt |tjrYdd }|S d S d S )Nc                 S      t | t |S rJ   r   r  r   r(   r(   r)   r     rV   z"unicode_charseq_find.<locals>.implc                 S      t | |S rJ   r  r   r(   r(   r)   r        c                 S      |   |  S rJ   r   r  r   r(   r(   r)   r     rV   c                 S      |  t|S rJ   )r  r   r   r(   r(   r)   r     r  c                 S   r  rJ   r  r   r(   r(   r)   r     rV   rK   r   rN   rO   rL   rM   r   r(   r(   r)   unicode_charseq_find  *   r  rfindc                 C   r  )Nc                 S   r  rJ   r   r  r   r(   r(   r)   r     rV   z#unicode_charseq_rfind.<locals>.implc                 S   r  rJ   r  r   r(   r(   r)   r     r  c                 S   r  rJ   r   r  r   r(   r(   r)   r     rV   c                 S   r  rJ   )r  r   r   r(   r(   r)   r     r  c                 S   r  rJ   r  r   r(   r(   r)   r     rV   r  r   r(   r(   r)   unicode_charseq_rfind  r  r  
startswithc                 C   t   t | tjrt |tjrdd }|S t |tjrdd }|S t | tjtjfr6t |tjtjfr8dd }|S d S d S )Nc                 S   r  rJ   r   r  r   r(   r(   r)   r     rV   z(unicode_charseq_startswith.<locals>.implc                 S   r  rJ   r  r   r(   r(   r)   r     r  c                 S   r  rJ   )r   r  r   r(   r(   r)   r     rV   r  r   r(   r(   r)   unicode_charseq_startswith     r   endswithc                 C   r  )Nc                 S   r  rJ   r   r"  r   r(   r(   r)   r     rV   z&unicode_charseq_endswith.<locals>.implc                 S   r  rJ   r#  r   r(   r(   r)   r     r  c                 S   r  rJ   )r   r"  r   r(   r(   r)   r      rV   r  r   r(   r(   r)   unicode_charseq_endswith  r!  r$  c                 C   s   dd | D S )Nc                 S      g | ]}|  qS r(   )r   ).0r   r(   r(   r)   
<listcomp>      z_map_bytes.<locals>.<listcomp>r(   )seqr(   r(   r)   
_map_bytes  s   r*  splitc                 C   s   |dkst |tjtjtjfsd S t | tjrHt |tjr$d
dd}|S t |tjr1d
dd}|S t|rHt|drAd
dd}|S d
dd}|S t | tj	tj
frxt |tj	tj
frad
dd}|S t|rzt|drqd
dd}|S d
d	d}|S d S d S )Nr,  c                 S   s   t | jt ||dS N)sepmaxsplitr   r+  r<   r.  r/  r(   r(   r)   r        z#unicode_charseq_split.<locals>.implc                 S   s   t | j||dS r-  r0  r1  r(   r(   r)   r     rV   c                 S   r	  rJ   r0  r1  r(   r(   r)   r     r   c                 S   s   t | j|dS N)r/  r0  r1  r(   r(   r)   r      r   c                 S   s   t |  j| |dS r3  r*  r   r+  r1  r(   r(   r)   r   %  s   c                 S   s   t |   S rJ   r4  r1  r(   r(   r)   r   +  r   c                 S   s   t |  j|dS r3  r4  r1  r(   r(   r)   r   .  r[   Nr,  )rK   r   rW   r   IntegerLiteralrN   rO   r
   rZ   rL   rM   )r<   r.  r/  r   r(   r(   r)   unicode_charseq_split
  s>   








r7  ljust c                 C      t | tjr,t|drd	dd}|S t |tjrd	dd}|S t |tjr,d	dd}|S t | tjtjfrVt|ds?t|drFd	dd}|S t |tjtjfrXd	dd}|S d S d S )
Nr9  c                 S   r  rJ   r   r8  r<   widthfillcharr(   r(   r)   r   ;  r  z#unicode_charseq_ljust.<locals>.implc                 S      t | |t |S rJ   r;  r<  r(   r(   r)   r   ?  r[   c                 S      t | ||S rJ   r;  r<  r(   r(   r)   r   C  r       c                 S      |   | S rJ   r   r8  r   r<  r(   r(   r)   r   H  rV   c                 S      |   ||   S rJ   rC  r<  r(   r(   r)   r   L     r9  rK   r   rN   rZ   rO   rL   rM   r<   r=  r>  r   r(   r(   r)   unicode_charseq_ljust5  &   





rI  rjustc                 C   r:  )
Nr9  c                 S   r  rJ   r   rK  r<  r(   r(   r)   r   W  r  z#unicode_charseq_rjust.<locals>.implc                 S   r?  rJ   rL  r<  r(   r(   r)   r   [  r[   c                 S   r@  rJ   rL  r<  r(   r(   r)   r   _  r   rA  c                 S   rB  rJ   r   rK  r   r<  r(   r(   r)   r   d  rV   c                 S   rD  rJ   rM  r<  r(   r(   r)   r   h  rE  rF  rG  rH  r(   r(   r)   unicode_charseq_rjustQ  rJ  rN  centerc                 C   r:  )
Nr9  c                 S   r  rJ   r   rO  r<  r(   r(   r)   r   s  r  z$unicode_charseq_center.<locals>.implc                 S   r?  rJ   rP  r<  r(   r(   r)   r   w  r[   c                 S   r@  rJ   rP  r<  r(   r(   r)   r   {  r   rA  c                 S   rB  rJ   r   rO  r   r<  r(   r(   r)   r     rV   c                 S   rD  rJ   rQ  r<  r(   r(   r)   r     rE  rF  rG  rH  r(   r(   r)   unicode_charseq_centerm  rJ  rR  zfillc                 C   :   t | tjrdd }|S t | tjtjfrdd }|S d S )Nc                 S   r  rJ   )r   rS  r<   r=  r(   r(   r)   r     r  z#unicode_charseq_zfill.<locals>.implc                 S   rB  rJ   )r   rS  r   rU  r(   r(   r)   r     rV   r   )r<   r=  r   r(   r(   r)   unicode_charseq_zfill  s   rV  lstripc                 C      t | tjr+t|rddd}|S t |tjrddd}|S t |tjr+ddd}|S t | tjtjfrOt|r?ddd}|S t |tjtjfrQddd}|S d S d S )Nc                 S   r	  rJ   r   rW  r<   charsr(   r(   r)   r     r   z$unicode_charseq_lstrip.<locals>.implc                 S   r  rJ   rY  rZ  r(   r(   r)   r     rV   c                 S   r  rJ   rY  rZ  r(   r(   r)   r     r  c                 S   r  rJ   r   rW  r   rZ  r(   r(   r)   r     r   c                 S      |   |   S rJ   r\  rZ  r(   r(   r)   r     r2  rJ   rK   r   rN   r
   rO   rL   rM   r<   r[  r   r(   r(   r)   unicode_charseq_lstrip  &   




r`  rstripc                 C   rX  )Nc                 S   r	  rJ   r   rb  rZ  r(   r(   r)   r     r   z$unicode_charseq_rstrip.<locals>.implc                 S   r  rJ   rc  rZ  r(   r(   r)   r     rV   c                 S   r  rJ   rc  rZ  r(   r(   r)   r     r  c                 S   r  rJ   r   rb  r   rZ  r(   r(   r)   r     r   c                 S   r]  rJ   rd  rZ  r(   r(   r)   r     r2  rJ   r^  r_  r(   r(   r)   unicode_charseq_rstrip  ra  re  stripc                 C   rX  )Nc                 S   r	  rJ   r   rf  rZ  r(   r(   r)   r     r   z#unicode_charseq_strip.<locals>.implc                 S   r  rJ   rg  rZ  r(   r(   r)   r     rV   c                 S   r  rJ   rg  rZ  r(   r(   r)   r     r  c                 S   r  rJ   r   rf  r   rZ  r(   r(   r)   r     r   c                 S   r]  rJ   rh  rZ  r(   r(   r)   r     r2  rJ   r^  r_  r(   r(   r)   unicode_charseq_strip  ra  ri  joinc                 C   rT  )Nc                 S   s   dd |D }t | |S )Nc                 S   s   g | ]}t |qS r(   r   r&  pr(   r(   r)   r'    r(  6unicode_charseq_join.<locals>.impl.<locals>.<listcomp>)r   rj  r<   parts_partsr(   r(   r)   r     s   z"unicode_charseq_join.<locals>.implc                 S   s    dd |D }|   | S )Nc                 S   r%  r(   r   rk  r(   r(   r)   r'    r(  rm  )r   rj  r   rn  r(   r(   r)   r     s   r   )r<   ro  r   r(   r(   r)   unicode_charseq_join  s   rq  r5  rF  rJ   )m__doc__operatornumpyr\   llvmliter   
numba.corer   r   numba.core.extendingr   r   r   r   r	   numba.core.cgutilsr
   numba.cpythonr   dtypes1_dtyper   rM   uint8r   r`   rD   uint16r/   r^   r   r   r   unicode_kindr+   r5   r8   r9   r>   rC   rF   rH   rI   rQ   rT   rU   rZ   ra   rL   r   r   r   rO   r   r   rN   r   getitemr   r   r   addiaddr   mulr   not_r   eqr   ner   ltr   gtr   ler   ger   containsr   r   r   r   r   r   bytesr   r   r  r  r  r
  r  r  r  r   r$  r*  r7  rI  rN  rR  rV  r`  re  ri  rq  r(   r(   r(   r)   <module>   sB   
	















L



















































(






















