Your IP : 3.142.212.225


Current Path : /opt/alt/python35/lib64/python3.5/collections/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/collections/__pycache__/__init__.cpython-35.opt-2.pyc



���]���$@sdddddddddg	Zd	d
lTd	dlZeej7Zd	dlmZmZd	d
lmZ	d	dl
Zd	dlZ
d	dlmZd	dlmZmZmZd	dlmZyd	dlmZWnek
r�YnXeje�yd	dlm Z Wnek
rYnXGdd�de!�Z"Gdd�de#�Z$Gdd�de%�Z&Gdd�de'�Z(Gdd�de)�Z*yd	dlm*Z*Wnek
r�YnXdZ+dZ,dZ-d d d!d�Z.d"d#�Z/yd	d$lm/Z/Wnek
rYnXGd%d�de)�Z0Gd&d�de1�Z2Gd'd�de1�Z3Gd(d�de�Z4Gd)d�de5�Z6dS)*�deque�defaultdict�
namedtuple�UserDict�UserList�
UserString�Counter�OrderedDict�ChainMap�)�*N)�
itemgetter�eq)�	iskeyword)�proxy)�repeat�chain�starmap)�recursive_repr)r)rc@seZdZdd�ZdS)�_OrderedDictKeysViewccst|j�EdHdS)N)�reversed�_mapping)�self�r�-/opt/alt/python35/lib64/python3.5/__init__.py�__reversed__5sz!_OrderedDictKeysView.__reversed__N)�__name__�
__module__�__qualname__rrrrrr3src@seZdZdd�ZdS)�_OrderedDictItemsViewccs0x)t|j�D]}||j|fVqWdS)N)rr)r�keyrrrr:sz"_OrderedDictItemsView.__reversed__N)rrrrrrrrr8src@seZdZdd�ZdS)�_OrderedDictValuesViewccs*x#t|j�D]}|j|VqWdS)N)rr)rrrrrr@sz#_OrderedDictValuesView.__reversed__N)rrrrrrrrr >sr c@seZdZdZdS)�_Link�prev�nextr�__weakref__N)r"r#rr$)rrr�	__slots__rrrrr!Dsr!c@sCeZdZdd�Zejeedd�Zejdd�Zdd�Z	d	d
�Z
dd�Zd
dd�Zd
dd�Z
dd�ZejZZdd�Zdd�Zdd�ZejZe�Zedd�Zddd�Ze�dd ��Zd!d"�Zd#d$�Zedd%d&��Zd'd(�Z dS))rcOs�|std��|^}}t|�dkrFtdt|���y|jWnMtk
r�t�|_t|j�|_}||_|_i|_	YnX|j
||�dS)Nz?descriptor '__init__' of 'OrderedDict' object needs an argument�z$expected at most 1 arguments, got %d)�	TypeError�len�_OrderedDict__root�AttributeErrorr!�_OrderedDict__hardroot�_proxyr"r#�_OrderedDict__map�_OrderedDict__update)�args�kwdsr�rootrrr�__init__Vs
zOrderedDict.__init__c	Cs{||krg|�|j|<}|j}|j}||||_|_|_||_||�|_||||�dS)N)r-r)r"r#r)	rr�valueZdict_setitemrZLink�linkr1�lastrrr�__setitem__ks			zOrderedDict.__setitem__cCsY|||�|jj|�}|j}|j}||_||_d|_d|_dS)N)r-�popr"r#)rrZdict_delitemr4�	link_prev�	link_nextrrr�__delitem__ys
					zOrderedDict.__delitem__ccs:|j}|j}x!||k	r5|jV|j}qWdS)N)r)r#r)rr1�currrrr�__iter__�s
		zOrderedDict.__iter__ccs:|j}|j}x!||k	r5|jV|j}qWdS)N)r)r"r)rr1r;rrrr�s
		zOrderedDict.__reversed__cCs7|j}||_|_|jj�tj|�dS)N)r)r"r#r-�clear�dict)rr1rrrr=�s	
zOrderedDict.clearTcCs�|std��|j}|rH|j}|j}||_||_n$|j}|j}||_||_|j}|j|=tj||�}||fS)Nzdictionary is empty)�KeyErrorr)r"r#rr-r>r7)rr5r1r4r8r9rr3rrr�popitem�s 									
zOrderedDict.popitemc	Cs�|j|}|j}|j}|j}||_||_|j}|ry|j}||_||_||_||_n-|j}||_||_||_||_dS)N)r-r"r#r))	rrr5r4r8r9Z	soft_linkr1�firstrrr�move_to_end�s$
														zOrderedDict.move_to_endcCsqtj}t|�d}||j�}|||j�d7}|||j�|7}|||j�|7}|S)Nr&�)�_sys�	getsizeofr(�__dict__r-r+r))rZsizeof�n�sizerrr�
__sizeof__�s	zOrderedDict.__sizeof__cCs
t|�S)N)r)rrrr�keys�szOrderedDict.keyscCs
t|�S)N)r)rrrr�items�szOrderedDict.itemscCs
t|�S)N)r )rrrr�values�szOrderedDict.valuescCs@||kr!||}||=|S||jkr<t|��|S)N)�_OrderedDict__markerr?)rr�default�resultrrrr7�s
zOrderedDict.popNcCs"||kr||S|||<|S)Nr)rrrNrrr�
setdefault�s
zOrderedDict.setdefaultcCs7|sd|jjfSd|jjt|j��fS)Nz%s()z%s(%r))�	__class__r�listrK)rrrr�__repr__szOrderedDict.__repr__cCsdt|�j�}x'tt��D]}|j|d�q"W|jf|pNddt|j��fS)N)�vars�copyrr7rQ�iterrK)r�	inst_dict�krrr�
__reduce__szOrderedDict.__reduce__cCs
|j|�S)N)rQ)rrrrrUszOrderedDict.copycCs(|�}x|D]}|||<qW|S)Nr)�cls�iterabler3rrrrr�fromkeyss	
zOrderedDict.fromkeyscCsGt|t�r7tj||�o6ttt||��Stj||�S)N)�
isinstancerr>�__eq__�all�map�_eq)r�otherrrrr^s(zOrderedDict.__eq__)!rrrr2r>r6r,r!r:r<rr=r@rBrI�MutableMapping�updater.rJrKrL�__ne__�objectrMr7rP�_recursive_reprrSrYrU�classmethodr\r^rrrrrGs.

			
		
)ra�from builtins import property as _property, tuple as _tuple
from operator import itemgetter as _itemgetter
from collections import OrderedDict

class {typename}(tuple):
    '{typename}({arg_list})'

    __slots__ = ()

    _fields = {field_names!r}

    def __new__(_cls, {arg_list}):
        'Create new instance of {typename}({arg_list})'
        return _tuple.__new__(_cls, ({arg_list}))

    @classmethod
    def _make(cls, iterable, new=tuple.__new__, len=len):
        'Make a new {typename} object from a sequence or iterable'
        result = new(cls, iterable)
        if len(result) != {num_fields:d}:
            raise TypeError('Expected {num_fields:d} arguments, got %d' % len(result))
        return result

    def _replace(_self, **kwds):
        'Return a new {typename} object replacing specified fields with new values'
        result = _self._make(map(kwds.pop, {field_names!r}, _self))
        if kwds:
            raise ValueError('Got unexpected field names: %r' % list(kwds))
        return result

    def __repr__(self):
        'Return a nicely formatted representation string'
        return self.__class__.__name__ + '({repr_fmt})' % self

    def _asdict(self):
        'Return a new OrderedDict which maps field names to their values.'
        return OrderedDict(zip(self._fields, self))

    def __getnewargs__(self):
        'Return self as a plain tuple.  Used by copy and pickle.'
        return tuple(self)

{field_defs}
z	{name}=%rzW    {name} = _property(_itemgetter({index:d}), doc='Alias for field number {index:d}')
Fc
Cs�t|t�r'|jdd�j�}ttt|��}t|�}|r�t�}xit|�D][\}}|j�s�t	|�s�|j
d�s�||kr�d|||<|j|�qdWxk|g|D]\}t|�tkr�t
d��|j�std|��t	|�r�td|��q�Wt�}x]|D]U}|j
d�rm|rmtd|��||kr�td	|��|j|�qAWtjd
|dt|�dt|�d
tt|��jdd�dd�ddjdd�|D��ddjdd�t|�D���}tdd|�}t||�||}	||	_|rpt|	j�y%tjd�jjdd�|	_Wnttfk
r�YnX|	S)N�,� �_z_%dz*Type names and field names must be stringsz8Type names and field names must be valid identifiers: %rz2Type names and field names cannot be a keyword: %rz/Field names cannot start with an underscore: %rz$Encountered duplicate field name: %r�typename�field_names�
num_fields�arg_list�'�r&�repr_fmtz, css!|]}tjd|�VqdS)�nameN)�_repr_template�format)�.0rsrrr�	<genexpr>�sznamedtuple.<locals>.<genexpr>�
field_defs�
css-|]#\}}tjd|d|�VqdS)�indexrsN)�_field_templateru)rvrzrsrrrrw�srz
namedtuple_%s�__main__���)r]�str�replace�splitrRr`�set�	enumerate�isidentifier�
_iskeyword�
startswith�add�typer'�
ValueError�_class_templateru�tupler(�repr�joinr>�exec�_source�printrD�	_getframe�	f_globals�getrr*)
rlrm�verbose�rename�seenrzrs�class_definition�	namespacerOrrrrgsd	

	

	(


	
%cCs5|j}x%|D]}||d�d||<qWdS)Nr
r&)r�)�mappingr[Zmapping_get�elemrrr�_count_elements�s	
r�)r�cs6eZdZ�fdd�Zdd�Zddd�Zdd	�Zedd
d��Z�fdd
�Z	dd�Z
dd�Zdd�Z�fdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Z�S).rcsm|std��|^}}t|�dkrFtdt|���tt|�j�|j||�dS)Nz;descriptor '__init__' of 'Counter' object needs an argumentr&z$expected at most 1 arguments, got %d)r'r(�superrr2rd)r/r0r)rQrrr2szCounter.__init__cCsdS)Nr
r)rrrrr�__missing__szCounter.__missing__NcCsP|dkr.t|j�dtd�dd�Stj||j�dtd��S)Nrr&�reverseT)�sortedrK�_itemgetter�_heapq�nlargest)rrGrrr�most_commons	"zCounter.most_commoncCstjtt|j���S)N)�_chain�
from_iterable�_starmap�_repeatrK)rrrr�elements)szCounter.elementscCstd��dS)Nz@Counter.fromkeys() is undefined.  Use Counter(iterable) instead.)�NotImplementedError)rZr[�vrrrr\AszCounter.fromkeyscs�|std��|^}}t|�dkrFtdt|���|rV|dnd}|dk	r�t|t�r�|r�|j}xJ|j�D]#\}}|||d�||<q�Wq�tt|�j|�n
t	||�|r�|j|�dS)Nz9descriptor 'update' of 'Counter' object needs an argumentr&z$expected at most 1 arguments, got %dr
)
r'r(r]�Mappingr�rKr�rrdr�)r/r0rr[�self_getr��count)rQrrrdHs 	
zCounter.updatecOs�|std��|^}}t|�dkrFtdt|���|rV|dnd}|dk	r�|j}t|t�r�x\|j�D]#\}}||d�|||<q�Wn(x%|D]}||d�d||<q�W|r�|j|�dS)Nz;descriptor 'subtract' of 'Counter' object needs an argumentr&z$expected at most 1 arguments, got %dr
)r'r(r�r]r�rK�subtract)r/r0rr[r�r�r�rrrr�ps	
zCounter.subtractcCs
|j|�S)N)rQ)rrrrrU�szCounter.copycCs|jt|�ffS)N)rQr>)rrrrrY�szCounter.__reduce__cs ||krt�j|�dS)N)r�r:)rr�)rQrrr:�szCounter.__delitem__cCs�|sd|jjSy9djtdj|j���}d|jj|fSWn.tk
r}dj|jjt|��SYnXdS)Nz%s()z, z%r: %rz%s({%s})z
{0}({1!r}))	rQrr�r`�__mod__r�r'rur>)rrKrrrrS�s!
zCounter.__repr__cCs�t|t�stSt�}x>|j�D]0\}}|||}|dkr)|||<q)Wx<|j�D].\}}||krj|dkrj|||<qjW|S)Nr
)r]r�NotImplementedrK)rrbrOr�r��newcountrrr�__add__�s	zCounter.__add__cCs�t|t�stSt�}x>|j�D]0\}}|||}|dkr)|||<q)Wx@|j�D]2\}}||krj|dkrjd|||<qjW|S)Nr
)r]rr�rK)rrbrOr�r�r�rrr�__sub__�s	zCounter.__sub__cCs�t|t�stSt�}xR|j�D]D\}}||}||krQ|n|}|dkr)|||<q)Wx<|j�D].\}}||kr~|dkr~|||<q~W|S)Nr
)r]rr�rK)rrbrOr�r��other_countr�rrr�__or__�s	
zCounter.__or__cCsut|t�stSt�}xR|j�D]D\}}||}||krQ|n|}|dkr)|||<q)W|S)Nr
)r]rr�rK)rrbrOr�r�r�r�rrr�__and__�s	
zCounter.__and__cCs@t�}x0|j�D]"\}}|dkr|||<qW|S)Nr
)rrK)rrOr�r�rrr�__pos__�s
	zCounter.__pos__cCsDt�}x4|j�D]&\}}|dkrd|||<qW|S)Nr
)rrK)rrOr�r�rrr�__neg__s
	zCounter.__neg__cCs5dd�|j�D�}x|D]
}||=q W|S)NcSs(g|]\}}|dks|�qS)r
r)rvr�r�rrr�
<listcomp>s	z*Counter._keep_positive.<locals>.<listcomp>)rK)r�nonpositiver�rrr�_keep_positives
zCounter._keep_positivecCs5x(|j�D]\}}|||7<q
W|j�S)N)rKr�)rrbr�r�rrr�__iadd__s	zCounter.__iadd__cCs5x(|j�D]\}}|||8<q
W|j�S)N)rKr�)rrbr�r�rrr�__isub__#s	zCounter.__isub__cCsGx:|j�D],\}}||}||kr
|||<q
W|j�S)N)rKr�)rrbr�r�r�rrr�__ior__0s
	
zCounter.__ior__cCsGx:|j�D],\}}||}||kr
|||<q
W|j�S)N)rKr�)rrbr�r�r�rrr�__iand__?s
	
zCounter.__iand__)rrrr2r�r�r�rhr\rdr�rUrYr:rSr�r�r�r�r�r�r�r�r�r�r�rr)rQrr�s.3
("

c@s	eZdZdd�Zdd�Zdd�Zddd	�Zd
d�Zdd
�Zdd�Z	dd�Z
e�dd��Ze
dd��Zdd�ZeZddd�Zedd��Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�ZdS)&r	cGst|�pig|_dS)N)rR�maps)rr�rrrr2aszChainMap.__init__cCst|��dS)N)r?)rrrrrr�hszChainMap.__missing__cCsBx2|jD]'}y||SWq
tk
r0Yq
Xq
W|j|�S)N)r�r?r�)rrr�rrr�__getitem__ks
	zChainMap.__getitem__NcCs||kr||S|S)Nr)rrrNrrrr�sszChainMap.getcCstt�j|j��S)N)r(r��unionr�)rrrr�__len__vszChainMap.__len__cCstt�j|j��S)N)rVr�r�r�)rrrrr<yszChainMap.__iter__cs t�fdd�|jD��S)Nc3s|]}�|kVqdS)Nr)rv�m)rrrrw}sz(ChainMap.__contains__.<locals>.<genexpr>)�anyr�)rrr)rr�__contains__|szChainMap.__contains__cCs
t|j�S)N)r�r�)rrrr�__bool__szChainMap.__bool__cCs%dj|djtt|j���S)Nz{0.__class__.__name__}({1})z, )rur�r`r�r�)rrrrrS�szChainMap.__repr__cGs|tj||��S)N)r>r\)rZr[r/rrrr\�szChainMap.fromkeyscCs*|j|jdj�|jdd��S)Nr
r&)rQr�rU)rrrrrU�sz
ChainMap.copycCs%|dkri}|j||j�S)N)rQr�)rr�rrr�	new_child�szChainMap.new_childcCs|j|jdd��S)Nr&)rQr�)rrrr�parents�szChainMap.parentscCs||jd|<dS)Nr
)r�)rrr3rrrr6�szChainMap.__setitem__cCs@y|jd|=Wn'tk
r;tdj|���YnXdS)Nr
z(Key not found in the first mapping: {!r})r�r?ru)rrrrrr:�s
zChainMap.__delitem__cCs:y|jdj�SWntk
r5td��YnXdS)Nr
z#No keys found in the first mapping.)r�r@r?)rrrrr@�s
zChainMap.popitemcGsIy|jdj||�SWn'tk
rDtdj|���YnXdS)Nr
z(Key not found in the first mapping: {!r})r�r7r?ru)rrr/rrrr7�s
zChainMap.popcCs|jdj�dS)Nr
)r�r=)rrrrr=�szChainMap.clear)rrrr2r�r�r�r�r<r�r�rgrSrhr\rU�__copy__r��propertyr�r6r:r@r7r=rrrrr	Ss&c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zeddd��Z
dS)rcOs�|std��|^}}t|�dkrFtdt|���|rY|d}nFd|kr�|jd�}ddl}|jdtdd�nd}i|_|dk	r�|j|�t|�r�|j|�dS)	Nz<descriptor '__init__' of 'UserDict' object needs an argumentr&z$expected at most 1 arguments, got %dr
r>z0Passing 'dict' as keyword argument is deprecated�
stacklevelrC)r'r(r7�warnings�warn�PendingDeprecationWarning�datard)r/�kwargsrr>r�rrrr2�s$
		
zUserDict.__init__cCs
t|j�S)N)r(r�)rrrrr��szUserDict.__len__cCsO||jkr|j|St|jd�r?|jj||�St|��dS)Nr�)r��hasattrrQr�r?)rrrrrr��s
zUserDict.__getitem__cCs||j|<dS)N)r�)rr�itemrrrr6�szUserDict.__setitem__cCs|j|=dS)N)r�)rrrrrr:�szUserDict.__delitem__cCs
t|j�S)N)rVr�)rrrrr<�szUserDict.__iter__cCs
||jkS)N)r�)rrrrrr��szUserDict.__contains__cCs
t|j�S)N)r�r�)rrrrrS�szUserDict.__repr__cCsq|jtkr"t|jj��Sddl}|j}zi|_|j|�}Wd||_X|j|�|S)Nr
)rQrr�rUrd)rrUr��crrrrU�s		

z
UserDict.copyNcCs(|�}x|D]}|||<qW|S)Nr)rZr[r3�drrrrr\�s	
zUserDict.fromkeys)rrrr2r�r�r6r:r<r�rSrUrhr\rrrrr�sc@sxeZdZddd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�ZeZd$d%�Zd&d'�Zd(d)�Zd=d+d,�Zd-d.�Zd/d0�Zd1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�Z dS)>rNcCs�g|_|dk	r�t|�t|j�krF||jdd�<nAt|t�rx|jdd�|jdd�<nt|�|_dS)N)r�r�r]rrR)r�initlistrrrr2s	#zUserList.__init__cCs
t|j�S)N)r�r�)rrrrrSszUserList.__repr__cCs|j|j|�kS)N)r��_UserList__cast)rrbrrr�__lt__szUserList.__lt__cCs|j|j|�kS)N)r�r�)rrbrrr�__le__szUserList.__le__cCs|j|j|�kS)N)r�r�)rrbrrrr^szUserList.__eq__cCs|j|j|�kS)N)r�r�)rrbrrr�__gt__szUserList.__gt__cCs|j|j|�kS)N)r�r�)rrbrrr�__ge__szUserList.__ge__cCst|t�r|jS|S)N)r]rr�)rrbrrr�__castszUserList.__castcCs
||jkS)N)r�)rr�rrrr�szUserList.__contains__cCs
t|j�S)N)r(r�)rrrrr�szUserList.__len__cCs|j|S)N)r�)r�irrrr�szUserList.__getitem__cCs||j|<dS)N)r�)rr�r�rrrr6szUserList.__setitem__cCs|j|=dS)N)r�)rr�rrrr:szUserList.__delitem__cCslt|t�r&|j|j|j�St|t|j��rR|j|j|�S|j|jt|��S)N)r]rrQr�r�rR)rrbrrrr�s
zUserList.__add__cCslt|t�r&|j|j|j�St|t|j��rR|j||j�S|jt|�|j�S)N)r]rrQr�r�rR)rrbrrr�__radd__!s
zUserList.__radd__cCsgt|t�r$|j|j7_n?t|t|j��rN|j|7_n|jt|�7_|S)N)r]rr�r�rR)rrbrrrr�'szUserList.__iadd__cCs|j|j|�S)N)rQr�)rrGrrr�__mul__/szUserList.__mul__cCs|j|9_|S)N)r�)rrGrrr�__imul__2szUserList.__imul__cCs|jj|�dS)N)r��append)rr�rrrr�5szUserList.appendcCs|jj||�dS)N)r��insert)rr�r�rrrr�6szUserList.insertr&cCs|jj|�S)N)r�r7)rr�rrrr77szUserList.popcCs|jj|�dS)N)r��remove)rr�rrrr�8szUserList.removecCs|jj�dS)N)r�r=)rrrrr=9szUserList.clearcCs
|j|�S)N)rQ)rrrrrU:sz
UserList.copycCs|jj|�S)N)r�r�)rr�rrrr�;szUserList.countcGs|jj||�S)N)r�rz)rr�r/rrrrz<szUserList.indexcCs|jj�dS)N)r�r�)rrrrr�=szUserList.reversecOs|jj||�dS)N)r��sort)rr/r0rrrr�>sz
UserList.sortcCs9t|t�r%|jj|j�n|jj|�dS)N)r]rr��extend)rrbrrrr�?szUserList.extendr})!rrrr2rSr�r�r^r�r�r�r�r�r�r6r:r�r�r�r��__rmul__r�r�r�r7r�r=rUr�rzr�r�r�rrrrrs<
c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�ZeZd'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Zd1ejd2d3�Zd4d4d5d6�Zd1ejd7d8�Z d9d:d;�Z!d1ejd<d=�Z"d>d?�Z#d@dA�Z$d1ejdBdC�Z%dDdE�Z&dFdG�Z'dHdI�Z(dJdK�Z)dLdM�Z*dNdO�Z+dPdQ�Z,dRdS�Z-dTdU�Z.dVdW�Z/dXdY�Z0dZd[�Z1d\d]�Z2d^d_�Z3d4d`da�Z4e5j6Z6dbdc�Z7d�dedf�Z8d1ejdgdh�Z9d1ejdidj�Z:dkdl�Z;dmdn�Z<d4dodp�Z=d4d�dqdr�Z>d4d�dsdt�Z?dudvdw�Z@d1ejdxdy�ZAd4dzd{�ZBd|d}�ZCd~d�ZDd�d��ZEd�d��ZFd�d��ZGd4S)�rcCsVt|t�r||_n7t|t�rC|jdd�|_nt|�|_dS)N)r]r~r�r)r�seqrrrr2Ls
zUserString.__init__cCs
t|j�S)N)r~r�)rrrr�__str__SszUserString.__str__cCs
t|j�S)N)r�r�)rrrrrSTszUserString.__repr__cCs
t|j�S)N)�intr�)rrrr�__int__UszUserString.__int__cCs
t|j�S)N)�floatr�)rrrr�	__float__VszUserString.__float__cCs
t|j�S)N)�complexr�)rrrr�__complex__WszUserString.__complex__cCs
t|j�S)N)�hashr�)rrrr�__hash__XszUserString.__hash__cCs|jdd�fS)N)r�)rrrr�__getnewargs__YszUserString.__getnewargs__cCs,t|t�r|j|jkS|j|kS)N)r]rr�)r�stringrrrr^\szUserString.__eq__cCs,t|t�r|j|jkS|j|kS)N)r]rr�)rr�rrrr�`szUserString.__lt__cCs,t|t�r|j|jkS|j|kS)N)r]rr�)rr�rrrr�dszUserString.__le__cCs,t|t�r|j|jkS|j|kS)N)r]rr�)rr�rrrr�hszUserString.__gt__cCs,t|t�r|j|jkS|j|kS)N)r]rr�)rr�rrrr�lszUserString.__ge__cCs%t|t�r|j}||jkS)N)r]rr�)r�charrrrr�qs	zUserString.__contains__cCs
t|j�S)N)r(r�)rrrrr�vszUserString.__len__cCs|j|j|�S)N)rQr�)rrzrrrr�wszUserString.__getitem__cCsct|t�r&|j|j|j�St|t�rI|j|j|�S|j|jt|��S)N)r]rrQr�r~)rrbrrrr�xs
zUserString.__add__cCs=t|t�r#|j||j�S|jt|�|j�S)N)r]r~rQr�)rrbrrrr�~szUserString.__radd__cCs|j|j|�S)N)rQr�)rrGrrrr��szUserString.__mul__cCs|j|j|�S)N)rQr�)rr/rrrr��szUserString.__mod__cCs|j|t�S)N)rQr/)rrurrr�__rmod__�szUserString.__rmod__cCs|j|jj��S)N)rQr��
capitalize)rrrrr��szUserString.capitalizecCs|j|jj��S)N)rQr��casefold)rrrrr��szUserString.casefoldcGs|j|jj||��S)N)rQr��center)r�widthr/rrrr��szUserString.centerr
cCs.t|t�r|j}|jj|||�S)N)r]rr�r�)r�sub�start�endrrrr��s	zUserString.countNcCsW|rA|r(|j|jj||��S|j|jj|��S|j|jj��S)N)rQr��encode)r�encoding�errorsrrrr��s
zUserString.encodecCs|jj|||�S)N)r��endswith)r�suffixr�r�rrrr��szUserString.endswith�cCs|j|jj|��S)N)rQr��
expandtabs)r�tabsizerrrr�szUserString.expandtabscCs.t|t�r|j}|jj|||�S)N)r]rr��find)rr�r�r�rrrr�s	zUserString.findcOs|jj||�S)N)r�ru)rr/r0rrrru�szUserString.formatcCs|jj|�S)N)r��
format_map)rr�rrrr�szUserString.format_mapcCs|jj|||�S)N)r�rz)rr�r�r�rrrrz�szUserString.indexcCs
|jj�S)N)r��isalpha)rrrrr�szUserString.isalphacCs
|jj�S)N)r��isalnum)rrrrr�szUserString.isalnumcCs
|jj�S)N)r��	isdecimal)rrrrr�szUserString.isdecimalcCs
|jj�S)N)r��isdigit)rrrrr�szUserString.isdigitcCs
|jj�S)N)r�r�)rrrrr��szUserString.isidentifiercCs
|jj�S)N)r��islower)rrrrr	�szUserString.islowercCs
|jj�S)N)r��	isnumeric)rrrrr
�szUserString.isnumericcCs
|jj�S)N)r��isprintable)rrrrr�szUserString.isprintablecCs
|jj�S)N)r��isspace)rrrrr�szUserString.isspacecCs
|jj�S)N)r��istitle)rrrrr
�szUserString.istitlecCs
|jj�S)N)r��isupper)rrrrr�szUserString.isuppercCs|jj|�S)N)r�r�)rr�rrrr��szUserString.joincGs|j|jj||��S)N)rQr��ljust)rr�r/rrrr�szUserString.ljustcCs|j|jj��S)N)rQr��lower)rrrrr�szUserString.lowercCs|j|jj|��S)N)rQr��lstrip)r�charsrrrr�szUserString.lstripcCs|jj|�S)N)r��	partition)r�seprrrr�szUserString.partitionr&cCsOt|t�r|j}t|t�r0|j}|j|jj|||��S)N)r]rr�rQr)r�old�new�maxsplitrrrr�s
		zUserString.replacecCs.t|t�r|j}|jj|||�S)N)r]rr��rfind)rr�r�r�rrrr�s	zUserString.rfindcCs|jj|||�S)N)r��rindex)rr�r�r�rrrr�szUserString.rindexcGs|j|jj||��S)N)rQr��rjust)rr�r/rrrr�szUserString.rjustcCs|jj|�S)N)r��
rpartition)rrrrrr�szUserString.rpartitioncCs|j|jj|��S)N)rQr��rstrip)rrrrrr�szUserString.rstripcCs|jj||�S)N)r�r�)rrrrrrr��szUserString.splitcCs|jj||�S)N)r��rsplit)rrrrrrr�szUserString.rsplitFcCs|jj|�S)N)r��
splitlines)r�keependsrrrr�szUserString.splitlinescCs|jj|||�S)N)r�r�)r�prefixr�r�rrrr��szUserString.startswithcCs|j|jj|��S)N)rQr��strip)rrrrrr!�szUserString.stripcCs|j|jj��S)N)rQr��swapcase)rrrrr"�szUserString.swapcasecCs|j|jj��S)N)rQr��title)rrrrr#�szUserString.titlecGs|j|jj|��S)N)rQr��	translate)rr/rrrr$�szUserString.translatecCs|j|jj��S)N)rQr��upper)rrrrr%�szUserString.uppercCs|j|jj|��S)N)rQr��zfill)rr�rrrr&�szUserString.zfillr}r}r})Hrrrr2r�rSr�r�r�r�r�r^r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rD�maxsizer�r�r�rrrurrzrrrrr�r	r
rrr
rr�rrrr~�	maketransrrrrrrrr�rrr�r!r"r#r$r%r&rrrrrKs�	)7�__all__�_collections_abc�operatorrr�r
ra�keywordrr��sysrD�heapqr��_weakrefrr,�	itertoolsrr�rr�rr��reprlibrrg�_collectionsr�ImportError�MutableSequence�registerr�KeysViewr�	ItemsViewr�
ValuesViewr rfr!r>rr�rtr{rr�rrcr	rr�Sequencerrrrr�<module>sX




�
3^
��lCI

?>