ó ŸēƒQc@sųddlZddlZddlZddlZddlZddlmZmZiZgZ ddddgZ d„Z d„Z d „Z d „Zd „Zd „Zd „Zed„Zd„Zd„Zd„Zd„Zed„Zd„ZdS(i’’’’N(t_tgettextthbisectt bookmarkst parentrevspectinterhgccs3x,tD]$}t|}|r||fVqqWdS(N(t_ordert _extensions(tnametmodule((s8/sys/lib/python2.7/site-packages/mercurial/extensions.pyt extensionss  cCsŽd}yt|}Wn^tk rtxNtjƒD]<\}}|jd|ƒsc|jd|ƒr1|}Pq1q1WnX|sŠt|ƒ‚n|S(s'return module with given extension namet.t/N(tNoneRtKeyErrort iteritemstendswith(Rtmodtktv((s8/sys/lib/python2.7/site-packages/mercurial/extensions.pytfinds & cCsĪ|jddƒ}tj|ƒ}tjj|ƒrˆtjj|jdƒƒ\}}tj ||gƒ\}}}tj ||||ƒSytj ||ƒSWn+t k rÉ}|j sĆ||_ n‚nXdS(NR RR (treplacetutilt expandpathtostpathtisdirtsplittrstriptimpt find_modulet load_modulet load_sourcetIOErrortfilename(Rt module_nametdtftfdtfpathtdesctexc((s8/sys/lib/python2.7/site-packages/mercurial/extensions.pytloadpath$s!  cCsļ|jdƒs|jdƒr+|d}n|}|tkrAdS|tkrUt|Sdt|<|r{t|d|ƒ}nYd„}y|d|ƒ}Wn9tk rÓ}|jd|||fƒ||ƒ}nX|t|      c sĶtjˆdƒst‚tj||ƒ\}}x0|jƒD]"\}}||kr=|}Pq=q=W|d‰‡‡fd†}tˆdƒ|_tˆdƒ|_t |ƒ} || ds (RfRtdicttdocsRR2RsR€(RtpathsRrRRR((s8/sys/lib/python2.7/site-packages/mercurial/extensions.pytdisabled s    cCsuy:ddlm}|tkr#dSt|jj|ƒƒSWntk rMnXtƒ}||krqt||ƒSdS(s;find a specific disabled extension from hgext. returns desci’’’’(RN( RfRRRR„tgetR2RsR€(RRR…((s8/sys/lib/python2.7/site-packages/mercurial/extensions.pyt disabledext#s    csŚtdtƒ}|s'tj|ƒ‚n‡‡fd†}d}|j|dƒ}|rl||||ƒ}n|s®x9|jƒD](\}}||||ƒ}|rPqqWn|rĒd|jkrĒ|Stj|ƒ‚dS(sUimport disabled extensions until cmd is found. returns (cmdname, extname, module)Rocsėyt|d|ƒ}Wntk r+dSXy+tj|t|diƒˆƒ\}}WnPtjtjfk rwdStk r©ˆjt dƒ|ƒˆj ƒdSXx1|D]}|j |ƒr±|}Pq±q±W|d}|||fS(Nshgext.%stcmdtables&warning: error finding commands in %s i( R*R?RTRUR,terrortAmbiguousCommandtUnknownCommandR@RRAR0(tcmdRRRRZR[tc(tstrictR5(s8/sys/lib/python2.7/site-packages/mercurial/extensions.pyRU:s&  "    t DEPRECATEDN(RstTrueRŠRŒR tpopRRP(R5RRR…RUtextRR((RR5s8/sys/lib/python2.7/site-packages/mercurial/extensions.pyt disabledcmd2s  cCsli}x_tƒD]T\}}t|jƒp4tdƒ}|jdƒd}|jƒdjƒ||s&$    $ ! *     .