mς σRΕDc@s‚dkZdkZdkZdklZdklZdklZ dfd„ƒYZ d„Z d„Z d„Z d „Zd „Zd „Zd „Zd „Zhdeddde dƒfddde dƒfddde dƒfddde dƒfddde dƒfddde dƒfd d!de d"ƒfge d#ƒf<d$ege d%ƒf<d&ege d'ƒfRIRBR<RDR@RG((RtsigwalkPs$     cCs~|\}} |\}} } d|| f} ti |ƒ}t ||| ƒ}t i| ƒ} |i|| ƒ\}}|o"|id|| |fƒd Sng} xΥ|D]Ν}|ddjo(|itdƒ| |dfƒq©n|ddjo%|itdƒ| |dfƒn7|dd jo%|itd ƒ| |dfƒn| i|d |d|d fƒq©W| S(sget the keys who signed a datas%s:%ds %s:%d %s iRs%s Bad signature from "%s" iRs1%s Note: Signature has expired (signed by: "%s") Rs0%s Note: This key has expired (signed by: "%s") iiN(R;RGR9tsigdatatnodetversionR R REtbintnode2txtR>R tbinasciit a2b_base64tmygpgR.R'R%R2twarnRt validkeysRRR+R-(R2R>RTRMR;RNR%RR'R9R RORVR R RG((Rtgetkeysms. !%%&cCsqt|ƒ}h}xΧt|ƒD]Ι\} }| \} }}|\}}y|i | ƒ}Wn3tj o'|itdƒ||fƒqnX|ii|ƒ}t|||| |ƒ} | pqn|i|gƒ||i| ƒqWt|ƒ} | iƒxh| D]`}xW||D]K} d|ti|ii|ƒƒf}|idt || ƒ|fƒqWq WdS(slist signed changesetss%s:%d node does not exist s%5d:%ss %-30s %s N(!R8R2RTtrevsRLR>R R;RNROR RGR9tlookuptntKeyErrorRUR+t changelogtrevRDRWR%t setdefaulttextendtlisttnodesRCtkREthexRtkeystr(R2R>RTR9R]ROR RGRXRNR%R RaRbRZRDR;((RtsigsŠs4      %c Cst|ƒ} |i|ƒ}ti|ƒ} g}xjt |ƒD]\\} }| \}}} || jo4t||| | |ƒ}|o|i|ƒq™q=q=W|p(|itdƒti|ƒƒdSn|idti|ƒƒx(|D] }|idt||ƒƒqνWdS(s@verify all the signatures there may be for a particular revisionsNo valid signature for %s Ns%s is signed by: s %s (R8R2RTR>RYR]RERcthexrevR%RLR R;RNROR RWRbR_RR+RFRRd( R2R>R]RNRR%RbROR;RTRfR R ((Rtcheck€s&    cCsE|\}}}|id|dƒ}|od||fSn|SdS(s/associate a string to a key (username, comment)Rs%s (%s)N(RtkeyidtuserR&R2R3Rtcomment(R2RRjRhRiR&((RRd»s cOst||}d}d}|o.g}|D]} ||i | ƒq-~} n|i i ƒg} xΒ| D]Ί} ti| ƒ} |id|i i| ƒti| ƒfƒt|| |ƒ} |i| ƒ}|ptitdƒƒ‚nti|ƒ}|iddƒ}|d| ||f7}qiW|do!|idd ƒi|ƒd SnxF|iƒD]8}d |jo%|d  otitd ƒƒ‚q`q`W|i!d d ƒi|ƒ|i"i#d ƒdjo|i$d gƒn|dod Sn|d}|pAdi&g}| D] } |tdƒti| ƒq~ƒ}ny%|i'd g||d|dƒWn*t(j o} tit*| ƒƒ‚nXd S(s7add a signature for the current tip or a given revisiont0RsSigning %d:%s sError while signings s %s %s %s tlocalR=tabNs.hgsigstforcesRworking copy of .hgsigs is changed (please commit .hgsigs manually or use --force)t?t no_committmessages Added signature for changeset %sRitdate(+R8R2R5RTtsigvert sigmessageRXt_[1]RZR>RYRaR\ttipRERcthexnodeRR]RFRQR R R RtAbortR+RRt b2a_base64treplaceRJtchangestxtwfiletdirstatetstatetaddRqtjointcommitt ValueErrortinsttstr(R2R>RXR5RTRqRsR RtRwR„R RaRZRuR|((RR ΔsJ.,    A%cCs;|djodti|ƒSntitdƒƒ‚dS(smap a manifest into some textRks%s sunknown signature versionN(tverRERcRNRRxR+(R>RNR†((RRQψs R R)Rlsmake the signature localR#Rns$sign even if the sigfile is modifiedRs no-commits'do not commit the sigfile after signingtmRqscommit messagetdRrs date codetuRiRbRsthe key id to sign withs!hg sign [OPTION]... [REVISION]...tsigcheckshg sigcheck REVISIONReshg sigs(RRRRt mercurialRRNREtmercurial.i18ntgettextR+RR8RLRWReRgRdR RQRtcmdtable(R8RdRRŽRQRRRRWRREReRLR RRgR+((RRos   ;      4