\x89\x50\x4E\x47\x0D\x0A\x1A\x0A PNG  \x89\x50\x4E\x47\x0D\x0A\x1A\x0A  13\c@@sddlmZddlZddlmZddlmZmZmZm Z m Z m Z m Z m Z mZe jZe jZdefdYZdefd YZd ejfd YZd Zd ejfdYZdejejfdYZdddZdS(i(tabsolute_importNi(t_( t changelogterrort localrepotmanifestt namespacestpathutilturltutiltvfsthttprangereadercB@sSeZdZdZdZdZddZdZdZ dZ RS( cC@s(||_d|_||_||_dS(Ni(Rtpostopenertname(tselfRR ((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt__init__s   cC@s|S(N((R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt __enter__&scC@s|jdS(N(tclose(Rtexc_typet exc_valuet traceback((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt__exit__)scC@s ||_dS(N(R (RR ((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pytseek,sc C@setj|j}d}|r2|j|d}n|jsA|ra|jdd|j|fny+|jj|}|j}|j}Wnnt j k r}|jdkrt j pd}t||n,t jk r}td|jdnX|dkr9|r)||j|j|!}qL||j}n|rL|| }n|jt|7_|S(NtitRanges bytes=%d-%sii(turlreqtrequestRR t add_headerR topentreadtcodeturlerrt httperrorterrnotENOENTtNonetIOErrorturlerrortreasontlen( RtbytestreqtendtftdataRtinsttnum((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyR.s.     cC@s|jjtS(N(Rt splitlinestTrue(R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt readlinesKscC@st|jS(N(titerR2(R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt__iter__MscC@sdS(N((R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyROsN( t__name__t __module__RRRRR$RR2R4R(((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyR s       t _RangeErrorcB@seZdZRS(s6Error raised when an unsatisfiable range is requested.(R5R6t__doc__(((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyR7Ust_HTTPRangeHandlercB@s eZdZdZdZRS(sHandler that enables HTTP Range headers. This was extremely simple. The Range header is a HTTP feature to begin with so all this class does is tell urllib2 that the "206 Partial Content" response from the HTTP server is what we expected. cC@s1tj|||j}||_||_|S(N(Rt addinfourlt get_full_urlRtmsg(RR*tfpRR<thdrstr((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pythttp_error_206as  cC@stddS(NsRequested Range Not Satisfiable(R7(RR*R=RR<R>((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pythttp_error_416hs(R5R6R8R@RA(((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyR9Xs c@sEtj||jtdtjffdY}|S(Nt statichttpvfsc@s,eZdZdfdZdZRS(cS@s ||_dS(N(tbase(RRC((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRrsR?c@sI|dkrtdndj|jtj|f}t|S(NR?trbsPermission deniedt/(R?RD(R%tjoinRCRtquoteR (RtpathtmodetargstkwR,(t urlopener(s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt__call__us !cS@s$|rtj|j|S|jSdS(N(RRFRC(RRH((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRF{s(R5R6RRMRF((RL(s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRBqs (RR t add_handlerR9tvfsmodt abstractvfs(tuitauthinfoRB((RLs>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt build_openerlststatichttppeercB@seZdZdZRS(cC@sdS(N(R$(R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pytlocalscC@stS(N(tFalse(R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pytcanpushs(R5R6RURW(((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRTs tstatichttprepositorycB@sbeZejjZdZdZdZdZ dZ e dZ e dZ dZRS(c C@s||_||_||_tj|jdd}|j\|_}t||}||j|_ ||j j d|_ g|_ t j |_d|_y"t|j jdj}Wntk rx}|jtjkrnt}y*|j d}|jd|jWqytk rt}|jtjkrRntd|} tj| qyXnXtj|} tj|| tj||tj||j||_ |j j|_!|j j"|_#|j j |_$i|_%||_&t'j(|j#} t'j)|j#|| |_)t*j*|j#|_*d|_+d|_,i|_-d|_.d|_/d|_0d|_1dS(NREs/.hgtcachetrequiress 00changelog.iis+'%s' does not appear to be an hg repository(2t_urlRQtrootR RtrstripRRRHRSR RFtcachevfst_phasedefaultsRtnamesR$t filternametsetRR0R%R"R#RRRt RepoErrorRtgathersupportedrequirementstensurerequirementsrecognizedtensurerequirementscompatiblet makestoretstoretspathR tsvfstsjoint _filecachet requirementsRtmanifestrevlogt manifestlogRt_tagst nodetagscachet _branchcachest_revbranchcachet encodepatst decodepatst _transref( RRQRHtuRRtvfsclassRmR.R=R<tsupportedrequirementst rootmanifest((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRs\     "           cC@s(tt|j|}|jdgS(Ntpushkey(tsuperRXt_restrictcapabilitiest difference(Rtcaps((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyR}scC@s|jS(N(R[(R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRscC@stS(N(RV(R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRUscC@s t|S(N(RT(R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pytpeerscC@s(tjdtddtddS(Nislock not availabletlocks"cannot lock static-http repository(RtLockUnavailableR(Rtwait((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pytwlockscC@stjtddS(Ns"cannot lock static-http repository(RtAbortR(RR((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRscC@sdS(N((R((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt _writecachess(R5R6Rtlocalrepositoryt_basesupportedt supportedRR}RRURR1RRR(((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyRXs  ;      cC@s/|rtjtdnt||dS(Ns(cannot create new static-http repositoryi(RRRRX(RQRHtcreatetintentst createopts((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pytinstances( t __future__RR"ti18nRRRRRRRRRR R ROR RtobjectR R%R7t basehandlerR9RSt localpeerRTRtrevlogfilestorageRXR$R(((s>/usr/lib64/python2.7/site-packages/mercurial/statichttprepo.pyt s @  7  U