ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ Rc @sdZddddddddd g Zd d lZejdkZyd d lZWnek rqd d lZnXereZeZ e Z e ed Z e edZn*eZe Z e Z d d dZ dZy eZWnek rdZnXyd dlmZWnLek r^d dlmZd dlmZd d lZeedZnXeedrweZndejfdYZyd dlmZWn'ek rd efdYZnXyd dl m!Z!Wnek rdZ!nXd S(s?Module which provides compatibility with older Python versions.tPY3tinttlongtxrangetexec_tcallablet namedtupletpropertyt defaultdictiNitexectprintcBsc|dkrBejd}|j}|dkr<|j}n~n|dkrW|}nddUdS(Nisexec code in globs, locs(tNonet_syst _getframet f_globalstf_locals(tcodetglobstlocstframe((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyR"s      cCs%tjj|dtjjdS(Ns (tsyststdouttwritetflush(ts((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pytprint_-scCs1x*t|jD]}d|jkrtSqWtS(Nt__call__(ttypet__mro__t__dict__tTruetFalse(tobjtklass((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyR6s(R(t itemgetter(t iskeywordc CsUt|tr*|jddj}nttt|}|rt|}t}xt |D]\}}t d|D st |s| s|dj s|j ds||krd|||WsiR&s_%dcss'|]}|jp|dkVqdS(R&N(R'(R(R)((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pys ^ssWType names and field names can only contain alphanumeric characters and underscores: %rs2Type names and field names cannot be a keyword: %rs9Type names and field names cannot start with a number: %rs/Field names cannot start with an underscore: %rs$Encountered duplicate field name: %rt'tiis, css|]}d|VqdS(s%s=%%rN((R(tname((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pys ussclass %(typename)s(tuple): '%(typename)s(%(argtxt)s)' __slots__ = () _fields = %(field_names)r def __new__(_cls, %(argtxt)s): return _tuple.__new__(_cls, (%(argtxt)s)) @classmethod def _make(cls, iterable, new=tuple.__new__, len=len): 'Make a new %(typename)s object from a sequence or iterable' result = new(cls, iterable) if len(result) != %(numfields)d: raise TypeError('Expected %(numfields)d arguments, got %%d' %% len(result)) return result def __repr__(self): return '%(typename)s(%(reprtxt)s)' %% self def _asdict(self): 'Return a new dict which maps field names to their values' return dict(zip(self._fields, self)) def _replace(_self, **kwds): 'Return a new %(typename)s 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' %% kwds.keys()) return result def __getnewargs__(self): return tuple(self) s( %s = _property(_itemgetter(%d)) s t _itemgettert__name__s namedtuple_%st _propertyt_tuples: t__main__(%t isinstancet basestringtreplacetsplitttupletmaptstrtlisttsett enumeratetmint _iskeywordtisdigitt startswithtaddt ValueErrortlentreprtjointlocalsRRRRtdictR-RRt SyntaxErrortexc_infotmessageR R Rtgett __module__tAttributeError(ttypenamet field_namestverbosetrenametnamestseentiR,t seen_namest numfieldstargtxttreprtxtttemplatet namespacetetresult((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyRFsj   #&            %tsettercBs2eZeZdZdZdZdZRS(cOs,tt|j||||j|_dS(N(tsuperRt__init__t__doc__(tselftfgettargstkwargs((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyR^scCst||j|jS(N(Rtfsettfdel(R`tmethod((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pytgetterscCst|j||jS(N(RRaRe(R`Rf((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyR\scCst|j|j|S(N(RRaRd(R`Rf((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pytdeleters(R.RKRt __metaclass__R^RgR\Rh(((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyRs    (RcBsSeZddZdZdZdZdZdZdZ dZ RS( cOsK|dk r+t|d r+tdntj|||||_dS(NRsfirst argument must be callable(R thasattrt TypeErrorRFR^tdefault_factory(R`Rltatkw((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyR^s  cCs6ytj||SWntk r1|j|SXdS(N(RFt __getitem__tKeyErrort __missing__(R`tkey((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyRos cCs6|jdkrt|n|j||<}|S(N(RlR Rp(R`Rrtvalue((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyRqscCsF|jdkrt}n |jf}t||dd|jfS(N(RlR R6Rtitems(R`Rb((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyt __reduce__s  cCs |jS(N(t__copy__(R`((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pytcopyscCst||j|S(N(RRl(R`((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyRvscCs1ddl}t||j|j|jS(Ni(RwRRltdeepcopyRt(R`tmemoRw((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyt __deepcopy__s cCsd|jtj|fS(Nsdefaultdict(%s, %s)(RlRFt__repr__(R`((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyR{s N( R.RKR R^RoRqRuRwRvRzR{(((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyRs       (twrapscsfd}|S(Ncsx0dddgD]}t||t|qWxadgD]V}t||rtt||jt|q=t||t|jq=W|S(NRKR.R_R(tsetattrtgetattrRjtupdateRw(tfnt attribute(toriginal(sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pytinners " ((RR((RsA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pyR|s(i("R_t__all__Rt version_infoRt __builtin__t ImportErrortbuiltinsRRtrangeRR~RRR Rt Exceptiont collectionsRtoperatorR"R-tkeywordR#R=R RRjRRRFt functoolsR|(((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_compat.pytsR        i  -