fc @sdddddddddg Zd d lTd d lZeejj7Zd d lmZmZd d lmZ m Z d dl m Zd d lZd d lZd dlmZd dlmZmZmZd dlmZGddde Z!Gddde"Z#dZ$dZ%dZ&e'e'ddZ(ddZ)yd dlm)Z)Wne*k r[YnXGddde"Z+Gddde,Z-Gddde,Z.Gddde/Z0Gd dde1Z2d S(!udequeu defaultdictu namedtupleuUserDictuUserListu UserStringuCounteru OrderedDictuChainMapi(u*N(udequeu defaultdict(u itemgetterueq(u iskeyword(uproxy(urepeatuchainustarmap(urecursive_reprcBs|EeZdZdZdS(u_Linkuprevunextukeyu __weakref__N(uprevunextukeyu __weakref__(u__name__u __module__u __qualname__u __slots__(u __locals__((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu_Linksu_LinkcBsD|EeZdZdZddZejeeddZej ddZ dd Z d d Z d d Z d#ddZd#ddZddZejZZejZejZejZejZeZeddZd"ddZeddZddZddZ e!d"ddZ"d d!Z#d"S($u OrderedDictu)Dictionary that remembers insertion orderc Ost|dkr+tdt|ny |jWnMtk rt|_t|j|_}||_|_i|_ YnX|j ||dS(uInitialize an ordered dictionary. The signature is the same as regular dictionaries, but keyword arguments are not recommended because their insertion order is arbitrary. iu$expected at most 1 arguments, got %dN( ulenu TypeErroru_OrderedDict__rootuAttributeErroru_Linku_OrderedDict__hardrootu_proxyuprevunextu_OrderedDict__mapu_OrderedDict__update(uselfuargsukwdsuroot((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__init__)s   uOrderedDict.__init__c Cs~||krj||j|<}|j}|j}||||_|_|_||_|||_n||||dS(u!od.__setitem__(i, y) <==> od[i]=yN(u_OrderedDict__mapu_OrderedDict__rootuprevunextukey( uselfukeyuvalueu dict_setitemuproxyuLinkulinkurootulast((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __setitem__:s    uOrderedDict.__setitem__cCsG||||jj|}|j}|j}||_||_dS(u od.__delitem__(y) <==> del od[y]N(u_OrderedDict__mapupopuprevunext(uselfukeyu dict_delitemulinku link_prevu link_next((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __delitem__Hs     uOrderedDict.__delitem__ccs:|j}|j}x!||k r5|jV|j}qWdS(uod.__iter__() <==> iter(od)N(u_OrderedDict__rootunextukey(uselfurootucurr((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__iter__Ss   uOrderedDict.__iter__ccs:|j}|j}x!||k r5|jV|j}qWdS(u#od.__reversed__() <==> reversed(od)N(u_OrderedDict__rootuprevukey(uselfurootucurr((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __reversed__\s   uOrderedDict.__reversed__cCs7|j}||_|_|jjtj|dS(u.od.clear() -> None. Remove all items from od.N(u_OrderedDict__rootuprevunextu_OrderedDict__mapuclearudict(uselfuroot((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyucleares  uOrderedDict.clearcCs|stdn|j}|rK|j}|j}||_||_n$|j}|j}||_||_|j}|j|=tj||}||fS(uod.popitem() -> (k, v), return and remove a (key, value) pair. Pairs are returned in LIFO order if last is true or FIFO order if false. udictionary is empty(uKeyErroru_OrderedDict__rootuprevunextukeyu_OrderedDict__mapudictupop(uselfulasturootulinku link_prevu link_nextukeyuvalue((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyupopitemls            uOrderedDict.popitemcCs|j|}|j}|j}||_||_|j}|rn|j}||_||_||_|_n+|j}||_||_||_|_dS(uMove an existing element to the end (or beginning if last==False). Raises KeyError if the element does not exist. When last=True, acts like a fast version of self[key]=self.pop(key). N(u_OrderedDict__mapuprevunextu_OrderedDict__root(uselfukeyulastulinku link_prevu link_nexturootufirst((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu move_to_ends            uOrderedDict.move_to_endcCsqtj}t|d}||j}|||jd7}|||j|7}|||j|7}|S(Nii(u_sysu getsizeofulenu__dict__u_OrderedDict__mapu_OrderedDict__hardrootu_OrderedDict__root(uselfusizeofunusize((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __sizeof__s uOrderedDict.__sizeof__cCsC||kr!||}||=|S||jkr?t|n|S(uod.pop(k[,d]) -> v, remove specified key and return the corresponding value. If key is not found, d is returned if given, otherwise KeyError is raised. (u_OrderedDict__markeruKeyError(uselfukeyudefaulturesult((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyupops  uOrderedDict.popcCs"||kr||S|||<|S(uDod.setdefault(k[,d]) -> od.get(k,d), also set od[k]=d if k not in od((uselfukeyudefault((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu setdefaults  uOrderedDict.setdefaultcCs7|sd|jjfSd|jjt|jfS(uod.__repr__() <==> repr(od)u%s()u%s(%r)(u __class__u__name__ulistuitems(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__repr__suOrderedDict.__repr__cs~fddD}tj}x'ttD]}|j|dq;W|rnj|f|fSj|ffS(u%Return state information for picklingcs g|]}||gqS(((u.0uk(uself(u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu s u*OrderedDict.__reduce__..N(uvarsucopyu OrderedDictupopuNoneu __class__(uselfuitemsu inst_dictuk((uselfu9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __reduce__suOrderedDict.__reduce__cCs |j|S(u!od.copy() -> a shallow copy of od(u __class__(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyucopysuOrderedDict.copycCs(|}x|D]}||| New ordered dictionary with keys from S. If not specified, the value defaults to None. ((uclsuiterableuvalueuselfukey((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyufromkeyss  uOrderedDict.fromkeyscCsGt|tr7tj||o6ttt||Stj||S(uod.__eq__(y) <==> od==y. Comparison to another OD is order-sensitive while comparison to a regular mapping is order-insensitive. (u isinstanceu OrderedDictudictu__eq__uallumapu_eq(uselfuother((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__eq__s(uOrderedDict.__eq__NT($u__name__u __module__u __qualname__u__doc__u__init__udictu __setitem__u_proxyu_Linku __delitem__u__iter__u __reversed__uclearuTrueupopitemu move_to_endu __sizeof__uMutableMappinguupdateu_OrderedDict__updateukeysuvaluesuitemsu__ne__uobjectu_OrderedDict__markerupopuNoneu setdefaultu_recursive_repru__repr__u __reduce__ucopyu classmethodufromkeysu__eq__(u __locals__((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu OrderedDicts0           ufrom 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 @property def __dict__(self): 'A new OrderedDict mapping field names to their values' return OrderedDict(zip(self._fields, self)) def _asdict(self): '''Return a new OrderedDict which maps field names to their values. This method is obsolete. Use vars(nt) or nt.__dict__ instead. ''' return self.__dict__ def __getnewargs__(self): 'Return self as a plain tuple. Used by copy and pickle.' return tuple(self) def __getstate__(self): 'Exclude the OrderedDict from pickling' return None {field_defs} u {name}=%ruW {name} = _property(_itemgetter({index:d}), doc='Alias for field number {index:d}') c Cst|tr*|jddj}nttt|}|rt}xot|D]^\}}|j st |s|j ds||krd|||>> Point = namedtuple('Point', ['x', 'y']) >>> Point.__doc__ # docstring for the new class 'Point(x, y)' >>> p = Point(11, y=22) # instantiate with positional args or keywords >>> p[0] + p[1] # indexable like a plain tuple 33 >>> x, y = p # unpack like a regular tuple >>> x, y (11, 22) >>> p.x + p.y # fields also accessable by name 33 >>> d = p._asdict() # convert to a dictionary >>> d['x'] 11 >>> Point(**d) # convert from a dictionary Point(x=11, y=22) >>> p._replace(x=100) # _replace() is like str.replace() but targets named fields Point(x=100, y=22) u,u u_u_%du8Type names and field names must be valid identifiers: %ru2Type names and field names cannot be a keyword: %ru/Field names cannot start with an underscore: %ru$Encountered duplicate field name: %rutypenameu field_namesu num_fieldsuarg_listu'uiurepr_fmtu, css!|]}tjd|VqdS(unameN(u_repr_templateuformat(u.0uname((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu jsunamedtuple..u field_defsu css-|]#\}}tjd|d|VqdS(uindexunameN(u_field_templateuformat(u.0uindexuname((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu lsu__name__u namedtuple_%su__main__i(u isinstanceustrureplaceusplitulistumapusetu enumerateu isidentifieru _iskeywordu startswithuaddu ValueErroru_class_templateuformatutupleulenureprujoinudictuexecu_sourceuprintu_sysu _getframeu f_globalsugetu __module__uAttributeError( utypenameu field_namesuverboseurenameuseenuindexunameuclass_definitionu namespaceuresult((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu namedtuple.s^              (    %cCs5|j}x%|D]}||dd||>> c = Counter('abcdeabcdabcaba') # count elements from a string >>> c.most_common(3) # three most common elements [('a', 5), ('b', 4), ('c', 3)] >>> sorted(c) # list all unique elements ['a', 'b', 'c', 'd', 'e'] >>> ''.join(sorted(c.elements())) # list elements with repetitions 'aaaaabbbbcccdde' >>> sum(c.values()) # total of all counts 15 >>> c['a'] # count of letter 'a' 5 >>> for elem in 'shazam': # update counts from an iterable ... c[elem] += 1 # by adding 1 to each element's count >>> c['a'] # now there are seven 'a' 7 >>> del c['b'] # remove all 'b' >>> c['b'] # now there are zero 'b' 0 >>> d = Counter('simsalabim') # make another counter >>> c.update(d) # add in the second counter >>> c['a'] # now there are nine 'a' 9 >>> c.clear() # empty the counter >>> c Counter() Note: If a count is set to zero or reduced to zero, it will remain in the counter until the entry is deleted or the counter is cleared: >>> c = Counter('aaabbc') >>> c['b'] -= 2 # reduce the count of 'b' by two >>> c.most_common() # 'b' is still in, but its count is zero [('a', 3), ('c', 1), ('b', 0)] c s!tj|j||dS(u Create a new, empty Counter object. And if given, count elements from an input iterable. Or, initialize the count from another mapping of elements to their counts. >>> c = Counter() # a new, empty counter >>> c = Counter('gallahad') # a new counter from an iterable >>> c = Counter({'a': 4, 'b': 2}) # a new counter from a mapping >>> c = Counter(a=4, b=2) # a new counter from keyword args N(usuperu__init__uupdate(uselfuiterableukwds(u __class__(u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__init__s uCounter.__init__cCsdS(u1The count of elements not in the Counter is zero.i((uselfukey((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __missing__suCounter.__missing__cCsP|dkr.t|jdtdddStj||jdtdS(uList the n most common elements and their counts from the most common to the least. If n is None, then list all element counts. >>> Counter('abcdeabcdabcaba').most_common(3) [('a', 5), ('b', 4), ('c', 3)] ukeyiureverseNT(uNoneusorteduitemsu _itemgetteruTrueu_heapqunlargest(uselfun((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu most_commons "uCounter.most_commoncCstjtt|jS(uIterator over elements repeating each as many times as its count. >>> c = Counter('ABCABC') >>> sorted(c.elements()) ['A', 'A', 'B', 'B', 'C', 'C'] # Knuth's example for prime factors of 1836: 2**2 * 3**3 * 17**1 >>> prime_factors = Counter({2: 2, 3: 3, 17: 1}) >>> product = 1 >>> for factor in prime_factors.elements(): # loop over factors ... product *= factor # and multiply them >>> product 1836 Note, if an element's count has been set to zero or is a negative number, elements() will ignore it. (u_chainu from_iterableu_starmapu_repeatuitems(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuelementssuCounter.elementscCstddS(Nu@Counter.fromkeys() is undefined. Use Counter(iterable) instead.(uNotImplementedError(uclsuiterableuv((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyufromkeyssuCounter.fromkeysc s|dk rt|trt|ra|j}xD|jD]#\}}|||d||>> c = Counter('which') >>> c.update('witch') # add elements from another iterable >>> d = Counter('watch') >>> c.update(d) # add elements from another counter >>> c['h'] # four 'h' in which, witch, and watch 4 iN(uNoneu isinstanceuMappingugetuitemsusuperuupdateu_count_elements(uselfuiterableukwdsuself_getuelemucount(u __class__(u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuupdates  uCounter.updatecKs|dk r|j}t|tr[x\|jD]#\}}||d|||>> c = Counter('which') >>> c.subtract('witch') # subtract elements from another iterable >>> c.subtract(Counter('watch')) # subtract elements from another counter >>> c['h'] # 2 in which, minus 1 in witch, minus 1 in watch 0 >>> c['w'] # 1 in which, minus 1 in witch, minus 1 in watch -1 iiN(uNoneugetu isinstanceuMappinguitemsusubtract(uselfuiterableukwdsuself_getuelemucount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyusubtract's   uCounter.subtractcCs |j|S(uReturn a shallow copy.(u __class__(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyucopyBsu Counter.copycCs|jt|ffS(N(u __class__udict(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __reduce__FsuCounter.__reduce__cs#||krtj|ndS(uGLike dict.__delitem__() but does not raise KeyError for missing values.N(usuperu __delitem__(uselfuelem(u __class__(u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __delitem__Is uCounter.__delitem__c Cs|sd|jjSy9djtdj|j}d|jj|fSWn.tk r}dj|jjt|SYnXdS(Nu%s()u, u%r: %ru%s({%s})u {0}({1!r})( u __class__u__name__ujoinumapu__mod__u most_commonu TypeErroruformatudict(uselfuitems((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__repr__Ns! uCounter.__repr__cCst|tstSt}xA|jD]3\}}|||}|dkr)|||>> Counter('abbb') + Counter('bcc') Counter({'b': 4, 'c': 2, 'a': 1}) i(u isinstanceuCounteruNotImplementeduitems(uselfuotheruresultuelemucountunewcount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__add__as  uCounter.__add__cCst|tstSt}xA|jD]3\}}|||}|dkr)|||>> Counter('abbbc') - Counter('bccd') Counter({'b': 2, 'a': 1}) i(u isinstanceuCounteruNotImplementeduitems(uselfuotheruresultuelemucountunewcount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__sub__ts  uCounter.__sub__cCst|tstSt}xU|jD]G\}}||}||krQ|n|}|dkr)|||>> Counter('abbb') | Counter('bcc') Counter({'b': 3, 'c': 2, 'a': 1}) i(u isinstanceuCounteruNotImplementeduitems(uselfuotheruresultuelemucountu other_countunewcount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__or__s   uCounter.__or__cCsxt|tstSt}xU|jD]G\}}||}||krQ|n|}|dkr)|||>> Counter('abbb') & Counter('bcc') Counter({'b': 1}) i(u isinstanceuCounteruNotImplementeduitems(uselfuotheruresultuelemucountu other_countunewcount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__and__s   uCounter.__and__cCs |tS(uEAdds an empty counter, effectively stripping negative and zero counts(uCounter(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__pos__suCounter.__pos__cCs t|S(u{Subtracts from an empty counter. Strips positive and zero counts, and flips the sign on negative counts. (uCounter(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__neg__suCounter.__neg__cCs5dd|jD}x|D] }||=q W|S(u?Internal method to strip elements with a negative or zero countcSs(g|]\}}|dks|qS(i((u.0uelemucount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu s u*Counter._keep_positive..(uitems(uselfu nonpositiveuelem((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu_keep_positives  uCounter._keep_positivecCs5x(|jD]\}}|||7>> c = Counter('abbb') >>> c += Counter('bcc') >>> c Counter({'b': 4, 'c': 2, 'a': 1}) (uitemsu_keep_positive(uselfuotheruelemucount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__iadd__s uCounter.__iadd__cCs5x(|jD]\}}|||8>> c = Counter('abbbc') >>> c -= Counter('bccd') >>> c Counter({'b': 2, 'a': 1}) (uitemsu_keep_positive(uselfuotheruelemucount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__isub__s uCounter.__isub__cCsJx=|jD]/\}}||}||kr |||>> c = Counter('abbb') >>> c |= Counter('bcc') >>> c Counter({'b': 3, 'c': 2, 'a': 1}) (uitemsu_keep_positive(uselfuotheruelemu other_countucount((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__ior__s   uCounter.__ior__cCsJx=|jD]/\}}||}||kr |||>> c = Counter('abbb') >>> c &= Counter('bcc') >>> c Counter({'b': 1}) (uitemsu_keep_positive(uselfuotheruelemucountu other_count((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__iand__s   uCounter.__iand__N(u__name__u __module__u __qualname__u__doc__uNoneu__init__u __missing__u most_commonuelementsu classmethodufromkeysuupdateusubtractucopyu __reduce__u __delitem__u__repr__u__add__u__sub__u__or__u__and__u__pos__u__neg__u_keep_positiveu__iadd__u__isub__u__ior__u__iand__(u __locals__((u __class__u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuCounters0+  !           cBs|EeZdZdZddZddZddZd&dd Zd d Z d d Z ddZ ddZ e ddZeddZddZeZddZeddZddZddZd d!Zd"d#Zd$d%Zd&S('uChainMapu A ChainMap groups multiple dicts (or other mappings) together to create a single, updateable view. The underlying mappings are stored in a list. That list is public and can accessed or updated using the *maps* attribute. There is no other state. Lookups search the underlying mappings successively until a key is found. In contrast, writes, updates, and deletions only operate on the first mapping. cGst|pig|_dS(uInitialize a ChainMap by setting *maps* to the given mappings. If no mappings are provided, a single empty dictionary is used. N(ulistumaps(uselfumaps((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__init__suChainMap.__init__cCst|dS(N(uKeyError(uselfukey((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __missing__suChainMap.__missing__c CsBx2|jD]'}y ||SWq tk r0Yq Xq W|j|S(N(umapsuKeyErroru __missing__(uselfukeyumapping((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __getitem__s    uChainMap.__getitem__cCs||kr||S|S(N((uselfukeyudefault((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyugetsu ChainMap.getcCsttj|jS(N(ulenusetuunionumaps(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__len__suChainMap.__len__cCsttj|jS(N(uiterusetuunionumaps(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__iter__ suChainMap.__iter__cs tfdd|jDS(Nc3s|]}|kVqdS(N((u.0um(ukey(u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu $su(ChainMap.__contains__..(uanyumaps(uselfukey((ukeyu9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __contains__#suChainMap.__contains__cCs t|jS(N(uanyumaps(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__bool__&suChainMap.__bool__cCs%dj|djtt|jS(Nu{0.__class__.__name__}({1})u, (uformatujoinumapureprumaps(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__repr__)suChainMap.__repr__cGs|tj||S(u?Create a ChainMap with a single dict created from the iterable.(udictufromkeys(uclsuiterableuargs((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyufromkeys.suChainMap.fromkeyscCs*|j|jdj|jddS(uHNew ChainMap or subclass with a new copy of maps[0] and refs to maps[1:]iiN(u __class__umapsucopy(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyucopy3su ChainMap.copycCs|ji|jS(u;New ChainMap with a new dict followed by all previous maps.(u __class__umaps(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu new_child9suChainMap.new_childcCs|j|jddS(uNew ChainMap from maps[1:].iN(u __class__umaps(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuparents=suChainMap.parentscCs||jd|Z#d?S(AuUserListuAA more or less complete user-defined wrapper around list objects.cCsg|_|dk rt|t|jkrF||jddZ$d?d@Z%dAdBZ&dCdDZ'dEdFZ(dGdHZ)dIdJZ*dKdLZ+dMdNZ,dOdPZ-dQdRZ.dSdTZ/dUdVZ0d|dWdXZ1dYdZZ2d}d\d]Z3d-ejd^d_Z4d-ejd`daZ5dbdcZ6dddeZ7d|dfdgZ8d|d~dhdiZ9d|ddjdkZ:ddldmZ<d-ejdndoZ=d|dpdqZ>drdsZ?dtduZ@dvdwZAdxdyZBdzd{ZCd|S(u UserStringcCsVt|tr||_n7t|trC|jdd|_nt||_dS(N(u isinstanceustrudatau UserString(uselfuseq((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__init__s  uUserString.__init__cCs t|jS(N(ustrudata(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__str__suUserString.__str__cCs t|jS(N(ureprudata(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__repr__suUserString.__repr__cCs t|jS(N(uintudata(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__int__suUserString.__int__cCs t|jS(N(ufloatudata(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __float__suUserString.__float__cCs t|jS(N(ucomplexudata(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __complex__suUserString.__complex__cCs t|jS(N(uhashudata(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__hash__suUserString.__hash__cCs,t|tr|j|jkS|j|kS(N(u isinstanceu UserStringudata(uselfustring((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__eq__suUserString.__eq__cCs,t|tr|j|jkS|j|kS(N(u isinstanceu UserStringudata(uselfustring((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__ne__suUserString.__ne__cCs,t|tr|j|jkS|j|kS(N(u isinstanceu UserStringudata(uselfustring((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__lt__suUserString.__lt__cCs,t|tr|j|jkS|j|kS(N(u isinstanceu UserStringudata(uselfustring((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__le__suUserString.__le__cCs,t|tr|j|jkS|j|kS(N(u isinstanceu UserStringudata(uselfustring((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__gt__suUserString.__gt__cCs,t|tr|j|jkS|j|kS(N(u isinstanceu UserStringudata(uselfustring((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__ge__suUserString.__ge__cCs(t|tr|j}n||jkS(N(u isinstanceu UserStringudata(uselfuchar((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __contains__s uUserString.__contains__cCs t|jS(N(ulenudata(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__len__ suUserString.__len__cCs|j|j|S(N(u __class__udata(uselfuindex((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu __getitem__suUserString.__getitem__cCsct|tr&|j|j|jSt|trI|j|j|S|j|jt|S(N(u isinstanceu UserStringu __class__udataustr(uselfuother((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__add__s uUserString.__add__cCs=t|tr#|j||jS|jt||jS(N(u isinstanceustru __class__udata(uselfuother((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__radd__suUserString.__radd__cCs|j|j|S(N(u __class__udata(uselfun((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__mul__suUserString.__mul__cCs|j|j|S(N(u __class__udata(uselfuargs((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu__mod__suUserString.__mod__cCs|j|jjS(N(u __class__udatau capitalize(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu capitalize suUserString.capitalizecGs|j|jj||S(N(u __class__udataucenter(uselfuwidthuargs((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyucenter!suUserString.centericCs1t|tr|j}n|jj|||S(N(u isinstanceu UserStringudataucount(uselfusubustartuend((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyucount#s uUserString.countcCsW|rA|r(|j|jj||S|j|jj|S|j|jjS(N(u __class__udatauencode(uselfuencodinguerrors((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuencode's uUserString.encodecCs|jj|||S(N(udatauendswith(uselfusuffixustartuend((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuendswith-suUserString.endswithicCs|j|jj|S(N(u __class__udatau expandtabs(uselfutabsize((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu expandtabs/suUserString.expandtabscCs1t|tr|j}n|jj|||S(N(u isinstanceu UserStringudataufind(uselfusubustartuend((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyufind1s uUserString.findcOs|jj||S(N(udatauformat(uselfuargsukwds((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuformat5suUserString.formatcCs|jj|||S(N(udatauindex(uselfusubustartuend((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuindex7suUserString.indexcCs |jjS(N(udatauisalpha(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuisalpha9suUserString.isalphacCs |jjS(N(udatauisalnum(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuisalnum:suUserString.isalnumcCs |jjS(N(udatau isdecimal(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu isdecimal;suUserString.isdecimalcCs |jjS(N(udatauisdigit(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuisdigit<suUserString.isdigitcCs |jjS(N(udatau isidentifier(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu isidentifier=suUserString.isidentifiercCs |jjS(N(udatauislower(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuislower>suUserString.islowercCs |jjS(N(udatau isnumeric(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu isnumeric?suUserString.isnumericcCs |jjS(N(udatauisspace(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuisspace@suUserString.isspacecCs |jjS(N(udatauistitle(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuistitleAsuUserString.istitlecCs |jjS(N(udatauisupper(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuisupperBsuUserString.isuppercCs|jj|S(N(udataujoin(uselfuseq((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyujoinCsuUserString.joincGs|j|jj||S(N(u __class__udatauljust(uselfuwidthuargs((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuljustDsuUserString.ljustcCs|j|jjS(N(u __class__udataulower(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyulowerFsuUserString.lowercCs|j|jj|S(N(u __class__udataulstrip(uselfuchars((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyulstripGsuUserString.lstripcCs|jj|S(N(udatau partition(uselfusep((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu partitionHsuUserString.partitionicCsUt|tr|j}nt|tr6|j}n|j|jj|||S(N(u isinstanceu UserStringudatau __class__ureplace(uselfuoldunewumaxsplit((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyureplaceJs   uUserString.replacecCs1t|tr|j}n|jj|||S(N(u isinstanceu UserStringudataurfind(uselfusubustartuend((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyurfindPs uUserString.rfindcCs|jj|||S(N(udataurindex(uselfusubustartuend((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyurindexTsuUserString.rindexcGs|j|jj||S(N(u __class__udataurjust(uselfuwidthuargs((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyurjustVsuUserString.rjustcCs|jj|S(N(udatau rpartition(uselfusep((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu rpartitionXsuUserString.rpartitioncCs|j|jj|S(N(u __class__udataurstrip(uselfuchars((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyurstripZsuUserString.rstripcCs|jj||S(N(udatausplit(uselfusepumaxsplit((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyusplit\suUserString.splitcCs|jj||S(N(udataursplit(uselfusepumaxsplit((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyursplit^suUserString.rsplitcCs|jj|S(N(udatau splitlines(uselfukeepends((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu splitlines`suUserString.splitlinescCs|jj|||S(N(udatau startswith(uselfuprefixustartuend((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu startswithasuUserString.startswithcCs|j|jj|S(N(u __class__udataustrip(uselfuchars((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyustripcsuUserString.stripcCs|j|jjS(N(u __class__udatauswapcase(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuswapcasedsuUserString.swapcasecCs|j|jjS(N(u __class__udatautitle(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyutitleesuUserString.titlecGs|j|jj|S(N(u __class__udatau translate(uselfuargs((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu translatefsuUserString.translatecCs|j|jjS(N(u __class__udatauupper(uself((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuupperhsuUserString.uppercCs|j|jj|S(N(u __class__udatauzfill(uselfuwidth((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyuzfillisuUserString.zfillNiiiF(Du__name__u __module__u __qualname__u__init__u__str__u__repr__u__int__u __float__u __complex__u__hash__u__eq__u__ne__u__lt__u__le__u__gt__u__ge__u __contains__u__len__u __getitem__u__add__u__radd__u__mul__u__rmul__u__mod__u capitalizeucenteru_sysumaxsizeucountuNoneuencodeuendswithu expandtabsufinduformatuindexuisalphauisalnumu isdecimaluisdigitu isidentifieruisloweru isnumericuisspaceuistitleuisupperujoinuljustulowerulstripu partitionureplaceurfindurindexurjustu rpartitionurstripusplitursplituFalseu splitlinesu startswithustripuswapcaseutitleu translateuupperuzfill(u __locals__((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyu UserStringsz                                           (3u__all__ucollections.abcu collectionsuabcu _collectionsudequeu defaultdictuoperatoru itemgetteru _itemgetteruequ_equkeywordu iskeywordu _iskeywordusysu_sysuheapqu_heapquweakrefuproxyu_proxyu itertoolsurepeatu_repeatuchainu_chainustarmapu_starmapureprliburecursive_repru_recursive_repruobjectu_Linkudictu OrderedDictu_class_templateu_repr_templateu_field_templateuFalseu namedtupleu_count_elementsu ImportErroruCounteruMutableMappinguChainMapuUserDictuMutableSequenceuUserListuSequenceu UserString(((u9/opt/alt/python33/lib64/python3.3/collections/__init__.pyus<     [  hg4J