m๒ ฉหŽGc@sIdkTdkTdkZdkZdgd„Zdefd„ƒYZdS((t*NtcCsRtiitii||ƒƒo|yFtitii||ƒƒiƒo|itii|ƒƒnWqNt j o#dtii||ƒdGHqNXnฑtii tii||ƒƒoŽy"ti tii||ƒƒ}Wn5t j o)dtii||ƒdGHg}nXx1|D]%}t|tii||ƒ|ƒq!WndS(Ns Can't read [s]. Skipping...(tostpathtisfiletjointpretFileModet ownerExecutetexpathstappendtOSErrortisdirtlistdirt filenamestfilenamet getInpaths(RRR RR((t_/home/faculty/youssef/public_html/pacman/sample_cache/tarballs/pre/tmp/pacman-3.29/src/Paths.pyR s"%!%"" tPathcBsŒtZdZdZdZhZdddedƒd„Zd „Zd „Z d „Z d „Z d „Z d„Z d„Zd„Zd„ZRS(NRtPathss add to pathtPATHtfrontRs bad-pathscCsจ||_||_||_||_t|dƒo d|_nt|dƒo d|_n||_ t|dƒp t|dƒpt|dƒo d|_ ndS(NRtbacktnochecksno-checkt overwritei( RtselftvaluetenvRtfiletoptiontcontainstforcet_force(RRRRRR((Rt__init__s       0cCs#|i|ijo|i|ijS(N(RRtxR(RR"((Rtequal)scCs|id|iS(Ns added to (RRR(R((Rtstr*scCs2tƒ}g}t|id|ƒ|i o|ii|i ƒo๋xฎ|i|i D]œ}t i dd| d|dƒt |ƒt |iƒjpYg}t|d|ƒx@|D]4}||jo!|id|d|dƒqดqดWqTqTWt|ƒd jo#d |id |i d |_q.n|S( NRRs Checking if [s] clashes with [s]...sPath [s] is also in [s].is Can't add [s] to path variable [t](t AllReasontrtnewpathsRRRR t_dirsthas_keyRtdtverbotlogtfullpathtoldpathstntreasontlentheadline(RR+R(R'R/R0((Rtclashes-s" !! -'cCsสtƒ}|ioœtii|iƒo`ti|i}t i |ti ƒ}|i |jo'|id|i d|idƒqซqฦtd|i d|idƒ}ntd|idƒ}|S(Nt[s] is no longer in [s].sPath variable [s] has not been set.(tReasonR'RtacquiredRtenvironR*RtvtstringtsplittpathseptvlRR1(RR=R'R9((Rt satisfied<s  +&cCstƒS(N(R6(R((Rt satisfiableHscCs |iƒS(N(Rtsatisfy(R((RtsetupIscCsฺtƒ}t|iƒ|_|iptii|iƒoE|i i |i ƒo|i|i |i j o|i o|i ƒ}n|i ƒo่|i i |i ƒpg|i |i R?RARGRKRV(((RRs      ! (tBaset EnvironmentRRRR(RRRR((Rt?s