mō ŠËŽGc@s3dkTd„Zd„Zdefd„ƒYZdS((t*cCsKtƒ}t|iƒdjotdƒdfSntƒ|idfSdS(Nis!Too many cu()'s in Pacman source.ti˙˙˙˙(tCUtctlent_stacktReason(R((t\/home/faculty/youssef/public_html/pacman/sample_cache/tarballs/pre/tmp/pacman-3.29/src/CU.pyt currentUsers cCstƒ\}}|iƒ|S(N(Rtrtutrequire(R R ((RtgetCurrentUser s RcBsqtZdZdZdZeƒgZdd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „ZRS( NtcusChange Usernamesschange usernames-pop-cCs<ti|ƒdjotƒ|_n ||_d|_dS(NR(tstringtstriptusernameR tselft _CU__retract(RR((Rt__init__s cCs#|i|ijo|i|ijS(N(RRtxR(RR((RtequalscCs1|idjo |iSn|id|iSdS(NRs retract to (RRR(R((Rtstrs cCstd| d|i ƒS(Nt[s] hasn't been executed.(RRtacquired(R((Rt satisfied"scCs_|idjp |idjp|idjo tƒSn!td| dt|iƒ ƒSdS(Ns-pop-tnonrootsnon-roots Username [s] is not in the password file.(RRRt userexists(R((Rt satisfiable$s0 cCstƒ}|idjoļt|iƒdjotdƒ}q|iƒ|id|_ti ddt ƒd|idƒ}|i ƒo=t i dd t ƒd|id ƒ|ii|iƒqn4t|iƒdjotdƒ}n|iiƒd |_|S( Ns-pop-is,Too many cu()'s in .pacman file source code.i˙˙˙˙R sOK to change from username [s] to username [s]?sChanging from username [s]...i(RtreasonRRRRt userChooserRtasktret getusernametoktverbotlogtappendtpopR(RR((Rtsatisfy(s  ( &  cCs7|idjo|ii|iƒnd|_tƒS(NRi(RRRR%RR(R((Rtrestore8s cCsy|idjp|idjotƒ|_nF|idjp|idjo%tƒdjod}x’tt|iƒdddƒD]q}|i|djoW|i|djoC|i|djo/|i|djo|i||_d}Pq†q†W|p_d}xI|djo t |ƒp.t d ƒ}t |ƒpd |d GHq q W||_qqqutƒ|_ndS( NRRRsnon-roottrootiii˙˙˙˙sChoose a non-root username: sUser [s] does not exist. Try again...( RRR!tgot_onetrangeRRtituserRt raw_input(RR,R*R-((RR=s(   P   (t__name__t __module__ttypettitletactionR!RRRRRRR'R(R(((RRs        N(t EnvironmentRR R(R RR((Rt?s