???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................U
    e5dC                  	   @   s"  d ddddddddg	Z d	d
lZd	dlmZmZ d	dlmZ	 d	d
l
Zd	d
lZd	dlmZ d	dlmZmZmZ d	dlmZ zd	dlmZ W n ek
r   Y nX eje zd	dlm Z  W n ek
r   Y nX dd Z!G dd dej"Z#G dd dej$Z%G dd dej&Z'G dd de(Z)G dd de*Z+zd	dlm+Z+ W n ek
rR   Y nX zd	dlm,Z, W n ek
r   dd  Z,Y nX d!d
d
d"d#dZ-d$d% Z.zd	d&lm.Z. W n ek
r   Y nX G d'd de*Z/G d(d dej0Z1G d)d dej0Z2G d*d dejZ3G d+d dej4Z5d
S ),dequedefaultdict
namedtupleUserDictUserList
UserStringCounterOrderedDictChainMap    N)
itemgettereq)	iskeyword)proxy)repeatchainstarmap)recursive_repr)r   )r   c                 C   sR   | t jkr:tt | }dd l}|jdtdd |t | < |S tdtd| d S )Nr
   zUsing or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working   
stacklevelzmodule z has no attribute )	_collections_abc__all__getattrwarningswarnDeprecationWarningglobalsAttributeError__name__)nameobjr    r!   ,/usr/lib64/python3.8/collections/__init__.py__getattr__*   s    

 
r#   c                   @   s   e Zd Zdd ZdS )_OrderedDictKeysViewc                 c   s   t | jE d H  d S Nreversed_mappingselfr!   r!   r"   __reversed__?   s    z!_OrderedDictKeysView.__reversed__Nr   
__module____qualname__r+   r!   r!   r!   r"   r$   =   s   r$   c                   @   s   e Zd Zdd ZdS )_OrderedDictItemsViewc                 c   s$   t | jD ]}|| j| fV  q
d S r%   r&   r*   keyr!   r!   r"   r+   D   s    z"_OrderedDictItemsView.__reversed__Nr,   r!   r!   r!   r"   r/   B   s   r/   c                   @   s   e Zd Zdd ZdS )_OrderedDictValuesViewc                 c   s    t | jD ]}| j| V  q
d S r%   r&   r0   r!   r!   r"   r+   J   s    z#_OrderedDictValuesView.__reversed__Nr,   r!   r!   r!   r"   r2   H   s   r2   c                   @   s   e Zd ZdZdS )_Link)prevnextr1   __weakref__N)r   r-   r.   	__slots__r!   r!   r!   r"   r3   N   s   r3   c                   @   s   e Zd Zd*ddZejeefddZejfddZdd	 Z	d
d Z
dd Zd+ddZd,ddZdd Zejj ZZdd Zdd Zdd ZejjZe ZefddZd-ddZe d d! Zd"d# Zd$d% Zed.d&d'Z d(d) Z!dS )/r   r!   c                K   s\   z
| j  W n> tk
rH   t | _t| j | _ }| |_|_i | _Y nX | j|f| d S r%   )	_OrderedDict__rootr   r3   _OrderedDict__hardroot_proxyr4   r5   _OrderedDict__map_OrderedDict__update)r*   otherkwdsrootr!   r!   r"   __init__`   s    
zOrderedDict.__init__c           	      C   sZ   || krJ|  | j |< }| j}|j}|||  |_|_|_||_|||_|| || d S r%   )r;   r8   r4   r5   r1   )	r*   r1   valueZdict_setitemr   ZLinklinkr?   lastr!   r!   r"   __setitem__m   s    
zOrderedDict.__setitem__c                 C   s>   || | | j |}|j}|j}||_||_d |_d |_d S r%   )r;   popr4   r5   )r*   r1   Zdict_delitemrB   	link_prev	link_nextr!   r!   r"   __delitem__{   s    
zOrderedDict.__delitem__c                 c   s(   | j }|j}||k	r$|jV  |j}qd S r%   )r8   r5   r1   r*   r?   Zcurrr!   r!   r"   __iter__   s
    zOrderedDict.__iter__c                 c   s(   | j }|j}||k	r$|jV  |j}qd S r%   )r8   r4   r1   rI   r!   r!   r"   r+      s
    zOrderedDict.__reversed__c                 C   s*   | j }| |_|_| j  t|  d S r%   )r8   r4   r5   r;   cleardict)r*   r?   r!   r!   r"   rK      s    
zOrderedDict.clearTc                 C   sj   | st d| j}|r0|j}|j}||_||_n|j}|j}||_||_|j}| j|= t| |}||fS )Nzdictionary is empty)KeyErrorr8   r4   r5   r1   r;   rL   rE   )r*   rC   r?   rB   rF   rG   r1   rA   r!   r!   r"   popitem   s     zOrderedDict.popitemc           	      C   st   | j | }|j}|j}|j}||_||_| j}|rR|j}||_||_||_||_n|j}||_||_||_||_d S r%   )r;   r4   r5   r8   )	r*   r1   rC   rB   rF   rG   Z	soft_linkr?   firstr!   r!   r"   move_to_end   s$    
zOrderedDict.move_to_endc                 C   sV   t j}t| d }|| j}||| jd 7 }||| j| 7 }||| j| 7 }|S )N   r   )_sys	getsizeoflen__dict__r;   r9   r8   )r*   Zsizeofnsizer!   r!   r"   
__sizeof__   s    
zOrderedDict.__sizeof__c                 C   s   t | S r%   )r$   r)   r!   r!   r"   keys   s    zOrderedDict.keysc                 C   s   t | S r%   )r/   r)   r!   r!   r"   items   s    zOrderedDict.itemsc                 C   s   t | S r%   )r2   r)   r!   r!   r"   values   s    zOrderedDict.valuesc                 C   s0   || kr| | }| |= |S || j kr,t||S r%   )_OrderedDict__markerrM   )r*   r1   defaultresultr!   r!   r"   rE      s    
zOrderedDict.popNc                 C   s   || kr| | S || |< |S r%   r!   r*   r1   r]   r!   r!   r"   
setdefault   s    zOrderedDict.setdefaultc                 C   s*   | sd| j jf S d| j jt|  f S )N%s()z%s(%r))	__class__r   listrZ   r)   r!   r!   r"   __repr__  s    zOrderedDict.__repr__c                 C   sD   t |  }t t D ]}||d  q| jd|p4d d t|  fS )Nr!   )varscopyr   rE   rb   iterrZ   )r*   Z	inst_dictkr!   r!   r"   
__reduce__  s    zOrderedDict.__reduce__c                 C   s
   |  | S r%   rb   r)   r!   r!   r"   rf     s    zOrderedDict.copyc                 C   s   |  }|D ]}|||< q
|S r%   r!   )clsiterablerA   r*   r1   r!   r!   r"   fromkeys  s    
zOrderedDict.fromkeysc                 C   s2   t |tr&t| |o$ttt| |S t| |S r%   )
isinstancer   rL   __eq__allmap_eqr*   r=   r!   r!   r"   ro     s    
zOrderedDict.__eq__)r!   )T)T)N)N)"r   r-   r.   r@   rL   rD   r:   r3   rH   rJ   r+   rK   rN   rP   rX   r   MutableMappingupdater<   rY   rZ   r[   __ne__objectr\   rE   r`   _recursive_reprrd   ri   rf   classmethodrm   ro   r!   r!   r!   r"   r   Q   s6   
  
		

	


)r   )_tuplegetterc                 C   s   t t| |dS )N)doc)property_itemgetter)indexr{   r!   r!   r"   <lambda>7      r   F)renamedefaultsmodulec                   s  t trdd ttttt| } |rt }t	D ]B\}}|
 rrt|sr|dsr||krd| |< || qH| g D ]D}t|tk	rtd|
 std|t|rtd|qt }D ]F}|dr
|s
td|||kr"td||| qi }|d k	r|t|}t|tkr^td	tttttt|}tttjttd
ddd }	dddd D  d tjtttttf\ d|	 d|	 d}
d|  d}t|
| |d }d|  d|	 d|_|d k	r>||_tfdd}d|  d|j_fdd}d |  d!|_fd"d#} fd$d%}fd&d'}||j||||fD ]}|  d(|j |_q|  d|	 dd)||||||||d*}t	D ](\}}td+| }t ||||< q t| tf|}|d krvzt!dj"#d,d-}W n t$tfk
rt   Y nX |d k	r||_%|S ).N, _z*Type names and field names must be stringsz6Type names and field names must be valid identifiers: z0Type names and field names cannot be a keyword: z-Field names cannot start with an underscore: z"Encountered duplicate field name: z(Got more default values than field names' rQ   (, c                 s   s   | ]}| d V  qdS )z=%rNr!   ).0r   r!   r!   r"   	<genexpr>  s     znamedtuple.<locals>.<genexpr>)zdef __new__(_cls, z): return _tuple_new(_cls, (z))namedtuple_)
_tuple_newr   __new__zCreate new instance of c                    s2   | |} |kr.t d dt| |S )Nz	Expected z arguments, got )	TypeErrorrT   )rk   rl   r^   )_len
num_fields	tuple_newr!   r"   _make  s    
znamedtuple.<locals>._makezMake a new z# object from a sequence or iterablec                   s.   |   |j| }|r*tdt||S )NzGot unexpected field names: )r   rE   
ValueErrorrc   )r*   r>   r^   )_mapfield_namesr!   r"   _replace  s    znamedtuple.<locals>._replacezReturn a new z2 object replacing specified fields with new valuesc                    s   | j j |   S r%   )rb   r   r)   )repr_fmtr!   r"   rd     s    znamedtuple.<locals>.__repr__c                    s    | j | S r%   )_fieldsr)   )_dict_zipr!   r"   _asdict  s    znamedtuple.<locals>._asdictc                    s    | S r%   r!   r)   )_tupler!   r"   __getnewargs__  s    z"namedtuple.<locals>.__getnewargs__.r!   )__doc__r7   r   _field_defaults_fields_defaultsr   r   r   rd   r   r   zAlias for field number r   __main__)&rn   strreplacesplitrc   rq   rR   internset	enumerateisidentifier
_iskeyword
startswithaddtyper   r   tuplerT   rL   r'   zipreprjoinr   execr   __defaults__ry   __func__r   r.   rz   	_getframe	f_globalsgetr   r-   )typenamer   r   r   r   seenr~   r   field_defaultsarg_lists	namespacer   r   r   rd   r   r   methodclass_namespacer{   r^   r!   )	r   r   r   r   r   r   r   r   r   r"   r   9  s    





  

c                 C   s&   | j }|D ]}||dd | |< q
d S Nr
   rQ   )r   )mappingrl   Zmapping_getelemr!   r!   r"   _count_elements  s    r   )r   c                       s   e Zd Zd. fdd	Zdd Zd/ddZdd	 Zed0d
dZd1 fdd	Z	d2ddZ
dd Zdd Z fddZdd Zdd Zdd Zdd Zdd Zd d! Zd"d# Zd$d% Zd&d' Zd(d) Zd*d+ Zd,d- Z  ZS )3r   Nc                   s    t t|   | j|f| d S r%   )superr   r@   ru   )r*   rl   r>   rj   r!   r"   r@     s    zCounter.__init__c                 C   s   dS Nr
   r!   r0   r!   r!   r"   __missing__*  s    zCounter.__missing__c                 C   s6   |d krt |  tdddS tj||  tddS )NrQ   T)r1   reverser1   )sortedrZ   r}   _heapqnlargestr*   rV   r!   r!   r"   most_common/  s    	zCounter.most_commonc                 C   s   t tt|  S r%   )_chainfrom_iterable_starmap_repeatrZ   r)   r!   r!   r"   elements<  s    zCounter.elementsc                 C   s   t dd S )Nz@Counter.fromkeys() is undefined.  Use Counter(iterable) instead.)NotImplementedError)rk   rl   vr!   r!   r"   rm   T  s    	zCounter.fromkeysc                   sr   |d k	r`t |tjrV| rD| j}| D ]\}}|||d | |< q&q`tt| | n
t| | |rn| | d S r   )	rn   r   Mappingr   rZ   r   r   ru   r   r*   rl   r>   self_getr   countrj   r!   r"   ru   `  s    
zCounter.updatec                K   sn   |d k	r\| j }t|tjr@| D ]\}}||d| | |< q"n|D ]}||dd | |< qD|rj| | d S r   )r   rn   r   r   rZ   subtractr   r!   r!   r"   r     s    zCounter.subtractc                 C   s
   |  | S r%   rj   r)   r!   r!   r"   rf     s    zCounter.copyc                 C   s   | j t| ffS r%   )rb   rL   r)   r!   r!   r"   ri     s    zCounter.__reduce__c                    s   || krt  | d S r%   )r   rH   )r*   r   rj   r!   r"   rH     s    zCounter.__delitem__c                 C   sf   | sd| j j S z(dtdj|  }d| j j|f W S  tk
r`   d| j jt|  Y S X d S )Nra   r   z%r: %rz%s({%s})z
{0}({1!r}))	rb   r   r   rq   __mod__r   r   formatrL   )r*   rZ   r!   r!   r"   rd     s    zCounter.__repr__c                 C   sp   t |tstS t }|  D ]$\}}|||  }|dkr|||< q| D ] \}}|| krJ|dkrJ|||< qJ|S r   rn   r   NotImplementedrZ   r*   r=   r^   r   r   newcountr!   r!   r"   __add__  s    


zCounter.__add__c                 C   st   t |tstS t }|  D ]$\}}|||  }|dkr|||< q| D ]$\}}|| krJ|dk rJd| ||< qJ|S r   r   r   r!   r!   r"   __sub__  s    

zCounter.__sub__c                 C   s|   t |tstS t }|  D ]0\}}|| }||k r8|n|}|dkr|||< q| D ] \}}|| krV|dkrV|||< qV|S r   r   r*   r=   r^   r   r   other_countr   r!   r!   r"   __or__  s    


zCounter.__or__c                 C   sR   t |tstS t }|  D ]0\}}|| }||k r8|n|}|dkr|||< q|S r   r   r   r!   r!   r"   __and__  s    

zCounter.__and__c                 C   s,   t  }|  D ]\}}|dkr|||< q|S r   r   rZ   r*   r^   r   r   r!   r!   r"   __pos__  s
    
zCounter.__pos__c                 C   s0   t  }|  D ]\}}|dk rd| ||< q|S r   r   r   r!   r!   r"   __neg__  s
    zCounter.__neg__c                 C   s&   dd |   D }|D ]
}| |= q| S )Nc                 S   s   g | ]\}}|d ks|qS )r
   r!   )r   r   r   r!   r!   r"   
<listcomp>"  s      z*Counter._keep_positive.<locals>.<listcomp>)rZ   )r*   nonpositiver   r!   r!   r"   _keep_positive   s    zCounter._keep_positivec                 C   s*   |  D ]\}}| |  |7  < q|  S r%   rZ   r   r*   r=   r   r   r!   r!   r"   __iadd__'  s    	zCounter.__iadd__c                 C   s*   |  D ]\}}| |  |8  < q|  S r%   r   r   r!   r!   r"   __isub__4  s    	zCounter.__isub__c                 C   s2   |  D ] \}}| | }||kr|| |< q|  S r%   r   )r*   r=   r   r   r   r!   r!   r"   __ior__A  s
    	
zCounter.__ior__c                 C   s2   |   D ] \}}|| }||k r|| |< q|  S r%   r   )r*   r=   r   r   r   r!   r!   r"   __iand__P  s
    	
zCounter.__iand__)N)N)N)N)N)r   r-   r.   r@   r   r   r   ry   rm   ru   r   rf   ri   rH   rd   r   r   r   r   r   r   r   r   r   r   r   __classcell__r!   r!   rj   r"   r     s.   3
!
c                   @   s   e Zd Zdd Zdd Zdd Zd&dd	Zd
d Zdd Zdd Z	dd Z
e dd Zedd Zdd ZeZd'ddZedd Zdd Zdd Zd d! Zd"d# Zd$d% ZdS )(r	   c                 G   s   t |pi g| _d S r%   )rc   maps)r*   r   r!   r!   r"   r@   r  s    zChainMap.__init__c                 C   s   t |d S r%   )rM   r0   r!   r!   r"   r   y  s    zChainMap.__missing__c              	   C   s:   | j D ](}z|| W   S  tk
r,   Y qX q| |S r%   )r   rM   r   )r*   r1   r   r!   r!   r"   __getitem__|  s    
zChainMap.__getitem__Nc                 C   s   || kr| | S |S r%   r!   r_   r!   r!   r"   r     s    zChainMap.getc                 C   s   t t j| j S r%   )rT   r   unionr   r)   r!   r!   r"   __len__  s    zChainMap.__len__c                 C   s&   i }t | jD ]}|| qt|S r%   )r'   r   ru   rg   )r*   dr   r!   r!   r"   rJ     s    zChainMap.__iter__c                    s   t  fdd| jD S )Nc                 3   s   | ]} |kV  qd S r%   r!   )r   mr   r!   r"   r     s     z(ChainMap.__contains__.<locals>.<genexpr>anyr   r0   r!   r   r"   __contains__  s    zChainMap.__contains__c                 C   s
   t | jS r%   r   r)   r!   r!   r"   __bool__  s    zChainMap.__bool__c                 C   s"   | j j ddtt| j dS )Nr   r   r   )rb   r   r   rq   r   r   r)   r!   r!   r"   rd     s    zChainMap.__repr__c                 G   s   | t j|f| S r%   )rL   rm   )rk   rl   argsr!   r!   r"   rm     s    zChainMap.fromkeysc                 C   s$   | j | jd  f| jdd   S r   )rb   r   rf   r)   r!   r!   r"   rf     s    zChainMap.copyc                 C   s   |d kri }| j |f| j S r%   rb   r   )r*   r   r!   r!   r"   	new_child  s    zChainMap.new_childc                 C   s   | j | jdd   S )NrQ   r  r)   r!   r!   r"   parents  s    zChainMap.parentsc                 C   s   || j d |< d S r   )r   )r*   r1   rA   r!   r!   r"   rD     s    zChainMap.__setitem__c                 C   s8   z| j d |= W n" tk
r2   td|Y nX d S Nr
   z(Key not found in the first mapping: {!r})r   rM   r   r0   r!   r!   r"   rH     s    zChainMap.__delitem__c                 C   s2   z| j d  W S  tk
r,   tdY nX d S )Nr
   z#No keys found in the first mapping.)r   rN   rM   r)   r!   r!   r"   rN     s    zChainMap.popitemc                 G   s@   z| j d j|f| W S  tk
r:   td|Y nX d S r  )r   rE   rM   r   )r*   r1   r  r!   r!   r"   rE     s    zChainMap.popc                 C   s   | j d   d S r   )r   rK   r)   r!   r!   r"   rK     s    zChainMap.clear)N)N)r   r-   r.   r@   r   r   r   r   rJ   r   r  rx   rd   ry   rm   rf   __copy__r  r|   r  rD   rH   rN   rE   rK   r!   r!   r!   r"   r	   d  s,   




c                   @   sp   e Zd Zdd Zde_dd Zdd Zdd	 Zd
d Zdd Z	dd Z
dd Zdd Zdd ZedddZdS )r   c                  O   s   | st d| ^}} t| dkr0t dt|  | r>| d }n0d|krj|d}dd l}|jdtdd nd }i |_|d k	r|| |r|| d S )	Nz<descriptor '__init__' of 'UserDict' object needs an argumentrQ   z$expected at most 1 arguments, got %dr
   rL   z0Passing 'dict' as keyword argument is deprecatedr   r   )r   rT   rE   r   r   r   dataru   )r  kwargsr*   rL   r   r!   r!   r"   r@     s(    

 
zUserDict.__init__z($self, dict=None, /, **kwargs)c                 C   s
   t | jS r%   rT   r  r)   r!   r!   r"   r     r   zUserDict.__len__c                 C   s:   || j kr| j | S t| jdr.| j| |S t|d S )Nr   )r  hasattrrb   r   rM   r0   r!   r!   r"   r     s
    

zUserDict.__getitem__c                 C   s   || j |< d S r%   r  )r*   r1   itemr!   r!   r"   rD     r   zUserDict.__setitem__c                 C   s   | j |= d S r%   r  r0   r!   r!   r"   rH     r   zUserDict.__delitem__c                 C   s
   t | jS r%   )rg   r  r)   r!   r!   r"   rJ     s    zUserDict.__iter__c                 C   s
   || j kS r%   r  r0   r!   r!   r"   r     s    zUserDict.__contains__c                 C   s
   t | jS r%   r   r  r)   r!   r!   r"   rd     r   zUserDict.__repr__c                 C   s4   | j | j }|j| j | jd  |jd< |S Nr  )rb   r   rU   ru   rf   r*   instr!   r!   r"   r    s    zUserDict.__copy__c                 C   sR   | j tkrt| j S dd l}| j}zi | _|| }W 5 || _X ||  |S r   )rb   r   r  rf   ru   )r*   rf   r  cr!   r!   r"   rf     s    

zUserDict.copyNc                 C   s   |  }|D ]}|||< q
|S r%   r!   )rk   rl   rA   r   r1   r!   r!   r"   rm     s    
zUserDict.fromkeys)N)r   r-   r.   r@   __text_signature__r   r   rD   rH   rJ   r   rd   r  rf   ry   rm   r!   r!   r!   r"   r     s   c                   @   s  e Zd Zd?ddZdd Zdd Zdd	 Zd
d Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zd d! Zd"d# ZeZd$d% Zd&d' Zd(d) Zd*d+ Zd@d-d.Zd/d0 Zd1d2 Zd3d4 Zd5d6 Zd7d8 Zd9d: Zd;d< Z d=d> Z!dS )Ar   Nc                 C   sb   g | _ |d k	r^t|t| j kr0|| j d d < n.t|trT|j d d  | j d d < n
t|| _ d S r%   )r  r   rn   r   rc   )r*   initlistr!   r!   r"   r@   !  s    
zUserList.__init__c                 C   s
   t | jS r%   r  r)   r!   r!   r"   rd   +  r   zUserList.__repr__c                 C   s   | j | |k S r%   r  _UserList__castrs   r!   r!   r"   __lt__,  r   zUserList.__lt__c                 C   s   | j | |kS r%   r  rs   r!   r!   r"   __le__-  r   zUserList.__le__c                 C   s   | j | |kS r%   r  rs   r!   r!   r"   ro   .  r   zUserList.__eq__c                 C   s   | j | |kS r%   r  rs   r!   r!   r"   __gt__/  r   zUserList.__gt__c                 C   s   | j | |kS r%   r  rs   r!   r!   r"   __ge__0  r   zUserList.__ge__c                 C   s   t |tr|jS |S r%   )rn   r   r  rs   r!   r!   r"   __cast1  s    zUserList.__castc                 C   s
   || j kS r%   r  r*   r  r!   r!   r"   r   3  r   zUserList.__contains__c                 C   s
   t | jS r%   r
  r)   r!   r!   r"   r   4  r   zUserList.__len__c                 C   s(   t |tr| | j| S | j| S d S r%   )rn   slicerb   r  r*   ir!   r!   r"   r   5  s    
zUserList.__getitem__c                 C   s   || j |< d S r%   r  r*   r  r  r!   r!   r"   rD   :  r   zUserList.__setitem__c                 C   s   | j |= d S r%   r  r  r!   r!   r"   rH   ;  r   zUserList.__delitem__c                 C   sP   t |tr| | j|j S t |t| jr<| | j| S | | jt| S r%   rn   r   rb   r  r   rc   rs   r!   r!   r"   r   <  s
    
zUserList.__add__c                 C   sP   t |tr| |j| j S t |t| jr<| || j S | t|| j S r%   r!  rs   r!   r!   r"   __radd__B  s
    
zUserList.__radd__c                 C   sR   t |tr|  j|j7  _n2t |t| jr<|  j|7  _n|  jt|7  _| S r%   )rn   r   r  r   rc   rs   r!   r!   r"   r   H  s    
zUserList.__iadd__c                 C   s   |  | j| S r%   rb   r  r   r!   r!   r"   __mul__P  s    zUserList.__mul__c                 C   s   |  j |9  _ | S r%   r  r   r!   r!   r"   __imul__S  s    zUserList.__imul__c                 C   s8   | j | j }|j| j | jd d d  |jd< |S r  )rb   r   rU   ru   r  r!   r!   r"   r  V  s    zUserList.__copy__c                 C   s   | j | d S r%   )r  appendr  r!   r!   r"   r&  \  r   zUserList.appendc                 C   s   | j || d S r%   )r  insertr   r!   r!   r"   r'  ]  r   zUserList.insertr   c                 C   s   | j |S r%   )r  rE   r  r!   r!   r"   rE   ^  r   zUserList.popc                 C   s   | j | d S r%   )r  remover  r!   r!   r"   r(  _  r   zUserList.removec                 C   s   | j   d S r%   )r  rK   r)   r!   r!   r"   rK   `  r   zUserList.clearc                 C   s
   |  | S r%   rj   r)   r!   r!   r"   rf   a  r   zUserList.copyc                 C   s   | j |S r%   )r  r   r  r!   r!   r"   r   b  r   zUserList.countc                 G   s   | j j|f| S r%   r  r~   )r*   r  r  r!   r!   r"   r~   c  r   zUserList.indexc                 C   s   | j   d S r%   )r  r   r)   r!   r!   r"   r   d  r   zUserList.reversec                O   s   | j j|| d S r%   )r  sortr*   r  r>   r!   r!   r"   r*  e  r   zUserList.sortc                 C   s*   t |tr| j|j n| j| d S r%   )rn   r   r  extendrs   r!   r!   r"   r,  f  s    
zUserList.extend)N)r   )"r   r-   r.   r@   rd   r  r  ro   r  r  r  r   r   r   rD   rH   r   r"  r   r$  __rmul__r%  r  r&  r'  rE   r(  rK   rf   r   r~   r   r*  r,  r!   r!   r!   r"   r     s>   


c                   @   sh  e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd  Zd!d" Zd#d$ Zd%d& ZeZd'd( Zd)d* Zd+d, Zd-d. Zd/d0 Zd1ejfd2d3Zdd6d7Zd1ejfd8d9Z dd;d<Z!d1ejfd=d>Z"d?d@ Z#dAdB Z$d1ejfdCdDZ%dEdF Z&dGdH Z'dIdJ Z(dKdL Z)dMdN Z*dOdP Z+dQdR Z,dSdT Z-dUdV Z.dWdX Z/dYdZ Z0d[d\ Z1d]d^ Z2d_d` Z3dadb Z4ddddeZ5e6j7Z7dfdg Z8ddidjZ9d1ejfdkdlZ:d1ejfdmdnZ;dodp Z<dqdr Z=ddsdtZ>ddudvZ?ddwdxZ@ddzd{ZAd1ejfd|d}ZBdd~dZCdd ZDdd ZEdd ZFdd ZGdd ZHdcS )r   c                 C   s<   t |tr|| _n&t |tr.|jd d  | _n
t|| _d S r%   )rn   r   r  r   r*   seqr!   r!   r"   r@   s  s
    

zUserString.__init__c                 C   s
   t | jS r%   )r   r  r)   r!   r!   r"   __str__z  r   zUserString.__str__c                 C   s
   t | jS r%   r  r)   r!   r!   r"   rd   {  r   zUserString.__repr__c                 C   s
   t | jS r%   )intr  r)   r!   r!   r"   __int__|  r   zUserString.__int__c                 C   s
   t | jS r%   )floatr  r)   r!   r!   r"   	__float__}  r   zUserString.__float__c                 C   s
   t | jS r%   )complexr  r)   r!   r!   r"   __complex__~  r   zUserString.__complex__c                 C   s
   t | jS r%   )hashr  r)   r!   r!   r"   __hash__  r   zUserString.__hash__c                 C   s   | j d d  fS r%   r  r)   r!   r!   r"   r     s    zUserString.__getnewargs__c                 C   s    t |tr| j|jkS | j|kS r%   rn   r   r  r*   stringr!   r!   r"   ro     s    
zUserString.__eq__c                 C   s    t |tr| j|jk S | j|k S r%   r9  r:  r!   r!   r"   r    s    
zUserString.__lt__c                 C   s    t |tr| j|jkS | j|kS r%   r9  r:  r!   r!   r"   r    s    
zUserString.__le__c                 C   s    t |tr| j|jkS | j|kS r%   r9  r:  r!   r!   r"   r    s    
zUserString.__gt__c                 C   s    t |tr| j|jkS | j|kS r%   r9  r:  r!   r!   r"   r    s    
zUserString.__ge__c                 C   s   t |tr|j}|| jkS r%   r9  )r*   charr!   r!   r"   r     s    
zUserString.__contains__c                 C   s
   t | jS r%   r
  r)   r!   r!   r"   r     r   zUserString.__len__c                 C   s   |  | j| S r%   r#  )r*   r~   r!   r!   r"   r     r   zUserString.__getitem__c                 C   sJ   t |tr| | j|j S t |tr6| | j| S | | jt| S r%   )rn   r   rb   r  r   rs   r!   r!   r"   r     s
    

zUserString.__add__c                 C   s.   t |tr| || j S | t|| j S r%   )rn   r   rb   r  rs   r!   r!   r"   r"    s    
zUserString.__radd__c                 C   s   |  | j| S r%   r#  r   r!   r!   r"   r$    s    zUserString.__mul__c                 C   s   |  | j| S r%   r#  r*   r  r!   r!   r"   r     s    zUserString.__mod__c                 C   s   |  t||  S r%   )rb   r   )r*   templater!   r!   r"   __rmod__  s    zUserString.__rmod__c                 C   s   |  | j S r%   )rb   r  
capitalizer)   r!   r!   r"   r@    r   zUserString.capitalizec                 C   s   |  | j S r%   )rb   r  casefoldr)   r!   r!   r"   rA    s    zUserString.casefoldc                 G   s   |  | jj|f| S r%   )rb   r  centerr*   widthr  r!   r!   r"   rB    s    zUserString.centerr
   c                 C   s    t |tr|j}| j|||S r%   )rn   r   r  r   r*   substartendr!   r!   r"   r     s    
zUserString.countutf-8strictc                 C   s.   |d krdn|}|d krdn|}| j ||S )NrI  rJ  )r  encode)r*   encodingerrorsr!   r!   r"   rK    s    zUserString.encodec                 C   s   | j |||S r%   )r  endswith)r*   suffixrG  rH  r!   r!   r"   rN    s    zUserString.endswith   c                 C   s   |  | j|S r%   )rb   r  
expandtabs)r*   tabsizer!   r!   r"   rQ    s    zUserString.expandtabsc                 C   s    t |tr|j}| j|||S r%   )rn   r   r  findrE  r!   r!   r"   rS    s    
zUserString.findc                O   s   | j j||S r%   )r  r   r+  r!   r!   r"   r     s    zUserString.formatc                 C   s   | j |S r%   )r  
format_map)r*   r   r!   r!   r"   rT    s    zUserString.format_mapc                 C   s   | j |||S r%   r)  rE  r!   r!   r"   r~     s    zUserString.indexc                 C   s
   | j  S r%   )r  isalphar)   r!   r!   r"   rU    r   zUserString.isalphac                 C   s
   | j  S r%   )r  isalnumr)   r!   r!   r"   rV    r   zUserString.isalnumc                 C   s
   | j  S r%   )r  isasciir)   r!   r!   r"   rW    r   zUserString.isasciic                 C   s
   | j  S r%   )r  	isdecimalr)   r!   r!   r"   rX    r   zUserString.isdecimalc                 C   s
   | j  S r%   )r  isdigitr)   r!   r!   r"   rY    r   zUserString.isdigitc                 C   s
   | j  S r%   )r  r   r)   r!   r!   r"   r     r   zUserString.isidentifierc                 C   s
   | j  S r%   )r  islowerr)   r!   r!   r"   rZ    r   zUserString.islowerc                 C   s
   | j  S r%   )r  	isnumericr)   r!   r!   r"   r[    r   zUserString.isnumericc                 C   s
   | j  S r%   )r  isprintabler)   r!   r!   r"   r\    r   zUserString.isprintablec                 C   s
   | j  S r%   )r  isspacer)   r!   r!   r"   r]    r   zUserString.isspacec                 C   s
   | j  S r%   )r  istitler)   r!   r!   r"   r^    r   zUserString.istitlec                 C   s
   | j  S r%   )r  isupperr)   r!   r!   r"   r_    r   zUserString.isupperc                 C   s   | j |S r%   )r  r   r.  r!   r!   r"   r     r   zUserString.joinc                 G   s   |  | jj|f| S r%   )rb   r  ljustrC  r!   r!   r"   r`    s    zUserString.ljustc                 C   s   |  | j S r%   )rb   r  lowerr)   r!   r!   r"   ra    r   zUserString.lowerNc                 C   s   |  | j|S r%   )rb   r  lstripr*   charsr!   r!   r"   rb    r   zUserString.lstripc                 C   s   | j |S r%   )r  	partitionr*   sepr!   r!   r"   re    s    zUserString.partitionr   c                 C   s6   t |tr|j}t |tr |j}| | j|||S r%   )rn   r   r  rb   r   )r*   oldnewmaxsplitr!   r!   r"   r     s
    

zUserString.replacec                 C   s    t |tr|j}| j|||S r%   )rn   r   r  rfindrE  r!   r!   r"   rk    s    
zUserString.rfindc                 C   s   | j |||S r%   )r  rindexrE  r!   r!   r"   rl    s    zUserString.rindexc                 G   s   |  | jj|f| S r%   )rb   r  rjustrC  r!   r!   r"   rm    s    zUserString.rjustc                 C   s   | j |S r%   )r  
rpartitionrf  r!   r!   r"   rn    s    zUserString.rpartitionc                 C   s   |  | j|S r%   )rb   r  rstriprc  r!   r!   r"   ro    s    zUserString.rstripc                 C   s   | j ||S r%   )r  r   r*   rg  rj  r!   r!   r"   r     s    zUserString.splitc                 C   s   | j ||S r%   )r  rsplitrp  r!   r!   r"   rq    s    zUserString.rsplitFc                 C   s   | j |S r%   )r  
splitlines)r*   keependsr!   r!   r"   rr    r   zUserString.splitlinesc                 C   s   | j |||S r%   )r  r   )r*   prefixrG  rH  r!   r!   r"   r     s    zUserString.startswithc                 C   s   |  | j|S r%   )rb   r  striprc  r!   r!   r"   ru    r   zUserString.stripc                 C   s   |  | j S r%   )rb   r  swapcaser)   r!   r!   r"   rv    r   zUserString.swapcasec                 C   s   |  | j S r%   )rb   r  titler)   r!   r!   r"   rw    r   zUserString.titlec                 G   s   |  | jj| S r%   )rb   r  	translater=  r!   r!   r"   rx    s    zUserString.translatec                 C   s   |  | j S r%   )rb   r  upperr)   r!   r!   r"   ry    r   zUserString.upperc                 C   s   |  | j|S r%   )rb   r  zfill)r*   rD  r!   r!   r"   rz    r   zUserString.zfill)rI  rJ  )rP  )N)r   )N)Nr   )Nr   )F)N)Ir   r-   r.   r@   r0  rd   r2  r4  r6  r8  r   ro   r  r  r  r  r   r   r   r   r"  r$  r-  r   r?  r@  rA  rB  rR   maxsizer   rK  rN  rQ  rS  r   rT  r~   rU  rV  rW  rX  rY  r   rZ  r[  r\  r]  r^  r_  r   r`  ra  rb  r   	maketransre  r   rk  rl  rm  rn  ro  r   rq  rr  r   ru  rv  rw  rx  ry  rz  r!   r!   r!   r"   r   r  s   








)6r   r   operatorr   r}   r   rr   keywordr   r   sysrR   heapqr   _weakrefr   r:   	itertoolsr   r   r   r   r   r   reprlibr   rx   _collectionsr   ImportErrorMutableSequenceregisterr   r#   KeysViewr$   	ItemsViewr/   
ValuesViewr2   rw   r3   rL   r   rz   r   r   r   rt   r	   r   r   Sequencer   r!   r!   r!   r"   <module>   sf   
    Y &  }nMS