Ë PÊÃЛøüãó¦ —ddlmZddlmZmZddlmZmZmZm Z mZm Z m Z m Z m Z mZmZmZddlmZmZej(Zej,Zej.Zej0Zej2Zej4Zd˜d„Zd„ZdZed zed d d d œZeded<iZe j@e«Z e ddh¬«d„«Z!e dddh¬«d„«Z"e ddh¬«d„«Z#e ddh¬«d„«Z$e dddh¬«d„«Z%e ddh¬«d„«Z&e dddh¬«d „«Z'e d!ddh¬«d"„«Z(e d#dh¬«d$„«Z)e d%dh¬«d&„«Z*e d'd(dh¬«d)„«Z+e d*d(h¬«d+„«Z,e d,dh¬«d-„«Z-e d.dh¬«d/„«Z.d™d0„Z/d™d1„Z0e d2hd3£¬«d4„«Z1e d5d6h¬«d7„«Z2e d8dd6h¬«d9„«Z3e d:dd6h¬«d;„«Z4e ddh¬«d?„«Z6e d@hdA£¬«dB„«Z7dC„Z8dD„Z9dE„Z:e dFdG¬«dH„«Z;e dIdG¬«dJ„«Z<e dKhdA£¬«dL„«Z=dM„Z>e dNhdA£¬«dO„«Z?e dPhdA£¬«dQ„«Z@dR„ZAddheA_Be dSddh¬«dT„«ZCe dUhdV£¬«dW„«ZDdX„ZEe dYddh¬«dZ„«ZFe d[ddh¬«d\„«ZGe d]dh¬«d^„«ZHe d_dh¬«d`„«ZIe dad(dh¬«db„«ZJe dcddh¬«de„«ZKe dfdh¬«dg„«ZLe dhddh¬«di„«ZMe djdh¬«dk„«ZNe dlddh¬«dm„«ZOe dnhdo£¬«dp„«ZPe dqddh¬«dr„«ZQe dsddh¬«dt„«ZRe dudh¬«dv„«ZSe dwdh¬«dx„«ZTe dydh¬«dz„«ZUe d{dh¬«d|„«ZVe d}dh¬«d~„«ZWe ddh¬«d€„«ZXe d�ddh¬«d‚„«ZYe dƒdh¬«d„„«ZZe d…dh¬«d†„«Z[e d‡dh¬«dˆ„«Z\e d‰dh¬«dŠ„«Z]e d‹ddh¬«dŒ„«Z^e d�d(h¬«dŽ„«Z_e d�dh¬«d�„«Z`e d‘dh¬«d’„«Zae d“d(h¬«d”„«Zbe d•ddh¬«d–„«Zcd—„ZdejË«Zfy)šé)Ú_)ÚhexÚwdirrev) ÚdiffutilÚencodingÚerrorÚhbisectÚi18nÚobsutilÚpatchÚpycompatÚ registrarÚscmutilÚ templateutilÚutil)Ú stringutilÚurlutilNcó0‡‡—|j|d«Š|j|d«Š|j|d«}d}|�!|d|zz }tj|«d}ntj}||vr dddd gfi||<||}‰j «}|g}|�r%|j «}||vrŒ‰|Љj«D� cgc]1} ‰j| «r‰j| «d k7r || «r| ‘Œ3} } | r1‰j«ddt| «D� cgc]} | ‘Œc} f||<Œš ‰j«D� cgc]} || j «‘Œ} } t| «d kDr9| dd| d dk(rt| «\} }}n!ˆˆfd „}t| |¬ «\} }}n | d\} }}| |d z|f||<|r�Œ%||Scc} wcc} wcc} w#t$r;|j|«|j!d„‰j«D««Y�ŒwxYw)z8return date, distance and name for the latest tag of revórepoóctxócaches latesttagsó-ééÿÿÿÿésnullslocalrcó@•—|dd}‰j«€M‰j«D�cgc]}|j«‘Œ}}‰jd||«}t|«dz}n,‰jd‰j«|«}t|«}| |dgScc}w)Nrró only(%ld, %s)rs only(%d, %s))ÚrevÚparentsÚrevsÚlen)ÚxÚtagÚcÚprevsÚchangesÚchangessincetagÚctxÚrepos €€ú8usr/lib/python3.12/site-packages/mercurial/templatekw.pyÚkeyzgetlatesttags..keyUs˜ø€Ø ™d 1™g˜ØŸ7™7›9Ð,à69·k±k´mÓ$D±m° Q§U¡U¥W°m˜EÐ$DØ&*§i¡iÐ0@À%ÈÓ&M˜GÜ.1°'«l¸QÑ.>™Oà&*§i¡i°ÀÇÁÃÈCÓ&P˜GÜ.1°'«l˜Oð"1Ð 0°!°A±$Ð7Ð7ùò%Es¬B)r+c3ó<K—|]}|j«–—Œy­w©N)r)Ú.0Úps r*Ú z getlatesttags..isèø€Ð7© A˜Ÿ™Ÿ©ùs‚)ÚresourcerÚ stringmatcherrÚalwaysrÚpopÚtagsÚtagtypeÚdateÚsortedrr!ÚmaxÚKeyErrorÚappendÚextend)ÚcontextÚmappingÚpatternÚcacheÚ cachenameÚmatchÚ latesttagsrÚtodoÚtr5r/ÚptagsÚpdateÚpdistÚptagr+r(r)s @@r*Ú getlatesttagsrJ*sIù€à × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ × Ñ ˜W hÓ /€Eà€IØÐØ�T˜G‘^Ñ#ˆ Ü×(Ñ(¨Ó1°!Ñ4‰ä— ‘ ˆà˜Ñð  A¨ yÐ 1Ð2ˆˆiÑØ�yÑ!€Jà �'‰'‹)€CØ ˆ5€DÚ Ø�h‰h‹jˆØ �*Ñ Ø Ø�3‰iˆð—X‘X”Zó á�Ø— ‘ ˜Q” D§L¡L°£O°xÒ$?ÁEÈ!ÄHò Øð ð ñ Ø!Ÿh™h›j¨™m¨Q¼FÀ4¼LÓ0I¹L°q²¸LÑ0IÐIˆJ�s‰OØ ð Ø25·+±+´-Ó@±-¨Q�Z §¡£Ó(°-ˆEÐ@Ü�5‹z˜AŠ~ؘ‘8˜A‘; %¨¡(¨1¡+Ò-ô*-¨U«Ñ&�E˜5¡$õ 8ô*-¨U¸Ô)<Ñ&�E˜5¡$à%*¨1¡XÑ"��u˜dð   ¨¡¨DÐ0ˆ �3‰óY ðZ �c‰?ÐùòQ ùò 1JùòAøô2ò à �K‰K˜Ô Ø �K‰KÑ7¨¯©¬Ó7Ô 7Ú ð  ús2Ã6GÄ GÄ0GÅG ÅAGÇ GÇAHÈHc ó—tj}|d«}tt|j «D�cgc]}|j dd«d‘Œc}t j|«j d«««Scc}w)z"Return a dict of log column labelssbookmark: %s branch: %s changeset: %s copies: %s date: %s extra: %s=%s files+: %s files-: %s files: %s instability: %s manifest: %s obsolete: %s parent: %s phase: %s summary: %s tag: %s user: %s ó:rrT)r ÚidentityÚdictÚzipÚ splitlinesÚsplitr r)rÚcolumnsÚss r*Ú getlogcolumnsrTosy€ä×Ñ€Aáð ó€Gô& Ü Ø*1×*<Ñ*<Ô*>Ó ?Ñ*> QˆQ�W‰W�T˜1Ó ˜aÓ Ð*>Ñ ?Ü �F‰F�7‹O× &Ñ & tÓ ,ó ó ðùâ ?sµA? s{rev}:{node|formatnode}ó s{name} ({source})s {key}={value}s{key}={value|stringescape})óparentómanifestó file_copyóenvvaróextrarXsfilecopysauthorr)Úrequirescó—t||«S)zAlias for ``{user}``)Úshowuser©r=r>s r*Ú showauthorr_¡s€ô �G˜WÓ %Ð%ósbisectrcó’—|j|d«}|j|d«}tj||j««S)z'String. The changeset bisection status.rr)r1r ÚlabelÚnode)r=r>r)r(s r*Ú showbisectrd§s?€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CÜ �=‰=˜˜sŸx™x›zÓ *Ð*r`óbranchcóF—|j|d«}|j«S)zMString. The name of the branch on which the changeset was committed. r)r1Úbranch©r=r>r(s r*Ú showbranchri¯s"€ð × Ñ ˜7 FÓ +€CØ �:‰:‹<Ðr`óbranchescó’—|j|d«}|j«}|dk7rt||d|gd¬«St||dgd¬«S)z•List of strings. The name of the branch on which the changeset was committed. Will be empty if the branch name was default. (DEPRECATED) rsdefaultrerj©Úplural)r1rgÚ compatlist)r=r>r(rgs r*Ú showbranchesro¸sX€ð × Ñ ˜7 FÓ +€CØ �Z‰Z‹\€FØ �ÒÜØ �W˜i¨&¨¸+ô ð ô �g˜w¨ °2¸kÔ JÐJr`s bookmarkscó⇗|j|d«}|j|d«}|j«}|jŠˆfd„}t||d|«}t |||t j «S)z{List of strings. Any bookmarks associated with the changeset. Also sets 'active', the name of the active bookmark. rrcó•—|‰‰dœS)N)óbookmarksactivescurrent©)ÚvÚactives €r*Úzshowbookmarks..Ðs ø€ a°FÈÒOr`rr)r1Ú bookmarksÚ_activebookmarkÚ_showcompatlistÚ_hybridr rM)r=r>r)r(rwÚmakemapÚfrus @r*Ú showbookmarksr}Çskø€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ— ‘ “€IØ × !Ñ !€FÛO€Gܘ ¨+°yÓA€AÜ �1�i ¬(×*;Ñ*;Ó <Ðr(ÚcctxÚ childrevss r*Ú showchildrenr„Õs^€ð × Ñ ˜7 FÓ +€CØ;>¿<¹<¼>ÓJ¹>°4�˜TŸX™X›Z¨Ð.Ó.¸>€IÐJÜ Ø�˜+ y¸(ô ðùòKs¥Ascurrentbookmarkcó—t||«S)zUString. The active bookmark, if it is associated with the changeset. (DEPRECATED))Úshowactivebookmarkr^s r*Úshowcurrentbookmarkr‡às€ô ˜g wÓ /Ð/r`sactivebookmarkcó�—|j|d«}|j|d«}|j}|r||j«vr|Sy)zDString. The active bookmark, if it is associated with the changeset.rrr`)r1rxrw)r=r>r)r(rus r*r†r†çsK€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ × !Ñ !€FÙ �&˜CŸM™M›OÑ+؈ Ø r`sdatecóp—|j|d«}tj|j«d¬«S)zr(rSs r*Úshowdescriptionr”ûsŠ€ð × Ñ ˜7 FÓ +€CØ �‰Ó€AÜ�!”X×&Ñ&Ô'ä×Ñ¤× 2Ñ 2°1Ó 5× ;Ñ ;Ó =Ó>Ð>Ü �A”x×,Ñ,Ô -Ü×$Ñ$ Q§W¡W£YÓ/Ð/à�w‰w‹yÐr`sdiffstatóuicóF—|j|d«}|j|d«}tj|ddi«}|j|¬«}t j t j|««}t j|«\}}} } } dt|«| | fzS)ziString. Statistics of changes with the following format: "modified files: +added/-removed lines" r•rsnoprefixF)Úoptss %d: +%d/-%d) r1rÚ diffalloptsÚdiffr Ú diffstatdatarÚ iterlinesÚ diffstatsumr!) r=r>Úuir(Údiffoptsr™ÚstatsÚmaxnameÚmaxtotalÚaddsÚremovesÚbinarys r*Ú showdiffstatr¥ s™€ð × Ñ ˜' 5Ó )€BØ × Ñ ˜7 FÓ +€CÜ×#Ñ# B¨°eÐ(<Ó=€HØ �8‰8˜ˆ8Ó "€DÜ × Ñ œtŸ~™~¨dÓ3Ó 4€EÜ/4×/@Ñ/@ÀÓ/GÑ,€GˆX�t˜W fØ œS ›Z¨¨wÐ7Ñ 7Ð7r`óenvvarsc󶇗|j|d«}|j«Štjˆfd„t ‰«D««Št ||d‰d¬«S)z5A dictionary of environment variables. (EXPERIMENTAL)r•c3ó,•K—|] }|‰|f–—Œ y­wr-rs)r.ÚkÚenvs €r*r0zshowenvvars..søèø€Ð9©[¨˜˜C ™Fœ ©[ùóƒrYr¦rl)r1ÚexportableenvironrÚsortdictr8Ú compatdict)r=r>r�rªs @r*Ú showenvvarsr¯sPø€ð × Ñ ˜' 5Ó )€BØ × Ñ Ó €CÜ �-‰-Ó9¬V°C¬[Ó9Ó 9€CÜ �g˜w¨ °3¸zÔ JÐJr`óextrascó‡—|j|d«}|j«Štjˆfd„t ‰«D««Šˆfd„}‰D�cgc] }||«‘Œ }}t ||d|d¬«}t |‰|ˆfd„«Scc}w)zRList of dicts with key, value entries of the 'extras' field of this changeset.rc3ó,•K—|] }|‰|f–—Œ y­wr-rs)r.r©Úextrass €r*r0zshowextras..&søèø€ÐB±>¨a˜A˜v a™yœ>±>ùr«có•—|‰|dœS)N)skeysvaluers©r©r³s €r*rvzshowextras..'sø€ ¨f°Q©iÒ8r`rZr°rlcó>•—d|tj‰|«fzS©Ns%s=%s)rÚ escapestrrµs €r*rvzshowextras...sø€�(˜a¤×!5Ñ!5°f¸Q±iÓ!@ÐAÒAr`)r1Úextrarr­r8ryrz)r=r>r(r{r©r$r|r³s @r*Ú showextrasrº s‡ø€ð × Ñ ˜7 FÓ +€CØ �Y‰Y‹[€FÜ �]‰]ÓB´6¸&´>ÓBÓ B€FÛ8€GÙ#Ó$™V˜‰��˜V€AÐ$ܘ ¨(°A¸iÔH€AÜ Ø ØØÛAó  ðùò %sÁBs _fast_rankcóV—|j|d«}|j«}|€yd|zS)zÛthe rank of a changeset if cached The rank of a revision is the size of the sub-graph it defines as a head. Equivalently, the rank of a revision `r` is the size of the set `ancestors(r)`, `r` included. rNs%d)r1Ú fast_rank)r=r>r(Úranks r*r¼r¼2s3€ð × Ñ ˜7 FÓ +€CØ �=‰=‹?€DØ €|ØØ �4‰<Ðr`cóÆ—|j|d«}|j|d«}d|vs|d|kr-|j«j||||¬«}||d<||d<|dS)Nrórevcaches filestatusó filestatusall)Ú listignoredÚ listcleanÚ listunknown)r1Úp1Ústatus)r=r>Úlistallr(ÚrevcacheÚstats r*Ú_getfilestatusrÉAs€Ø × Ñ ˜7 FÓ +€CØ×Ñ ¨Ó5€HؘHÑ$¨Ð1AÑ(BÀWÒ(LØ�v‰v‹x�‰Ø ˜W°ÀWðó ˆð#'ˆ�ÑØ%,ˆÐ!Ñ"Ø �MÑ "Ð"r`cóö‡—|j|d«}d|vs|d|krVt|||¬«}ix|d<}ttjd«|«D]\Š}|j ˆfd„|D««Œ!|dS)Nr¿s filestatusmaprÀ©rÆsMAR!?ICc3ó&•K—|]}|‰f–—Œ y­wr-rs)r.r|Úchars €r*r0z$_getfilestatusmap..Ssøèø€Ð4©e¨˜A˜tœ9©eùsƒ)r1rÉrOr Ú iterbytestrÚupdate)r=r>rÆrÇrÈÚstatmapÚfilesrÍs @r*Ú_getfilestatusmaprÒMs‡ø€Ø×Ñ ¨Ó5€HؘxÑ'¨8Ð4DÑ+EÈÒ+Oܘg w¸Ô@ˆØ/1Ð1ˆÐ!Ñ" WÜœx×3Ñ3°JÓ?ÀÖF‰KˆD�%Ø �N‰NÓ4©eÓ4Õ 4ðGà Ð$Ñ %Ð%r`s file_copies>rrrr¿có6—|j|d«}|j|d«}|j|d«}|j|d«jd«}|€)d|vrtj|«|d<|d}||«}t j ||d|«S)zLList of strings. Files copied in this changeset with their sources. rrrr¿ócopiess getcopiesrX)r1ÚgetrÚ getcopiesfnrÚcompatfilecopiesdict)r=r>r)r(r@ÚcopiesÚ getcopiess r*ÚshowfilecopiesrÚWs¨€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ × Ñ ˜W hÓ /€EØ × Ñ ˜g {Ó 3× 7Ñ 7¸ Ó B€FØ €~Ø ˜uÑ $Ü")×"5Ñ"5°dÓ";ˆE�,Ñ Ø˜,Ñ'ˆ Ù˜3“ˆÜ × ,Ñ ,Ø�˜,¨ó ðr`sfile_copies_switchr¿có|—|j|d«jd«xsg}tj||d|«S)z^List of strings. Like "file_copies" but displayed only if the --copied switch is set. r¿rÔrX)r1rÕrr×)r=r>rØs r*ÚshowfilecopiesswitchrÜosB€ð × Ñ ˜g {Ó 3× 7Ñ 7¸ Ó BÒ HÀb€FÜ × ,Ñ ,Ø�˜,¨ó ðr`s file_addscór—|j|d«}tj||d|j««S)z/List of strings. Files added by this changeset.rsfile_add)r1rÚcompatfileslistÚ filesaddedrhs r*Ú showfileaddsràzs9€ð × Ñ ˜7 FÓ +€CÜ × 'Ñ 'Ø�˜+ s§~¡~Ó'7ó ðr`s file_delscór—|j|d«}tj||d|j««S)z1List of strings. Files removed by this changeset.rsfile_del)r1rrÞÚ filesremovedrhs r*Ú showfiledelsrãƒs;€ð × Ñ ˜7 FÓ +€CÜ × 'Ñ 'Ø�˜+ s×'7Ñ'7Ó'9ó ðr`s file_modscór—|j|d«}tj||d|j««S)z2List of strings. Files modified by this changeset.rsfile_mod)r1rrÞÚ filesmodifiedrhs r*Ú showfilemodsræŒs;€ð × Ñ ˜7 FÓ +€CÜ × 'Ñ 'Ø�˜+ s×'8Ñ'8Ó':ó ðr`sfilescór—|j|d«}tj||d|j««S)zRList of strings. All files modified, added, or removed by this changeset. rsfile)r1rrÞrÑrhs r*Ú showfilesrè•s3€ð × Ñ ˜7 FÓ +€CÜ × 'Ñ '¨°¸'À3Ç9Á9Ã;Ó OÐOr`s graphnode>rrrcóˆ—|j|d«}|j|d«}|j|d«}t|||«S)zUString. The character representing the changeset node in an ASCII revision graph.rrr)r1Ú getgraphnode)r=r>r)r(r@s r*Ú showgraphnoderëžsI€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ × Ñ ˜W hÓ /€EÜ ˜˜c 5Ó )Ð)r`có6—t|||«xs t|«Sr-)ÚgetgraphnodecurrentÚgetgraphnodesymbol)r)r(r@s r*rêrê¨s€Ü ˜t S¨%Ó 0Ò KÔ4FÀsÓ4KÐKr`cóz—|jj«}|d|jk(r|dd}|j«|vry|j d«}|€Qddlm}|j j|«}|j«r|j|jf}nd}||d<|j«|vryy)Nró@s merge_nodes)Ú mergestatersó%r`) ÚdirstaterÚnullidrcrÕÚrñÚreadÚunresolvedcountÚlocalÚother)r)r(r@ÚwpnodesÚ merge_nodesÚ mergestatemodrñs r*rírí¬s²€Ø�m‰m×#Ñ#Ó%€G؈q�z�T—[‘[Ò Ø˜"˜1�+ˆØ ‡x�xƒz�WÑØà—i‘i Ó/ˆ Ø Ð Ý 5à&×1Ñ1×6Ñ6°tÓ<ˆJØ×)Ñ)Ô+Ø)×/Ñ/°×1AÑ1AÐB‘ à � Ø$/ˆE�.Ñ !à �8‰8‹:˜Ñ $ØØr`cój—|j«ry|j«ry|j«ryy)Nóxó*ó_óo)ÚobsoleteÚ isunstableÚ closesbranch©r(s r*rîrîÃs-€Ø ‡|�|„~ØØ �‰Ô ØØ × Ñ Ô Øàr`s graphwidthrscó—y)z?Integer. The width of the graph drawn by 'log --graph' or zero.rrsr^s r*ÚshowgraphwidthrÎs€ð r`sindexcó>—tjtd««‚)z7Integer. The current iteration of the loop. (0 indexed)scan't use index in this context)rÚAbortrr^s r*Ú showindexr Õs€ô �+‰+”aÐ:Ó;Ó <Ð.ìsø€Ü(Ø ‘]ØØò r`rr rL)Ú separator)rJryrzr rM)r=r>r?r{r5r|rCs @r*r r åsLø€ä˜w¨°Ó9€Jó €Gð �a‰=€Dܘ ¨,¸ÈÔM€AÜ �1�d˜G¤X×%6Ñ%6Ó 7Ð7r`slatesttagdistancecó —t||«dS)z(Integer. Longest path to the latest tag.r)rJr^s r*Úshowlatesttagdistancerøs€ô ˜ 'Ó *¨1Ñ -Ð-r`schangessincelatesttagcóf—t||«dd}|j|d|i«}t||«S)z-Integer. All ancestors not in the latest tag.rrr)rJÚ overlaymapr)r=r>r#s r*Úshowchangessincelatesttagrþs=€ô ˜ Ó )¨!Ñ ,¨QÑ /€CØ× Ñ  ¨6°3¨-Ó8€GÜ  ¨Ó 1Ð1r`cóV—|j|d«}|j|d«}d}|j«g}|j|d«}|j«€-d}|j«D�cgc]}|j«‘Œ}}t |j d||««|zScc}w)Nrrrrrr)r1rÚsymbolrr!r )r=r>r)r(Úoffsetr r#r/s r*rrsž€Ø × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ €FØ �G‰G‹Iˆ;€DØ �.‰.˜ &Ó )€Cð ‡w�wƒyÐØˆØ!$§¡¤Ó/¡˜A�—‘• ˆÐ/ä ˆt�y‰yÐ)¨4°Ó5Ó 6¸Ñ ?Ð?ùò0sÁ.B&rWc󪇇—|j|d«}|j|d«}|j«}|€3|jj}tŠ|jj Šn&|j j|«Št|«Š|j|‰‰dœ«}|jd|«}tj|d|ˆˆfd„«S)Nrr©órevónoderWcó•—‰‰dœS)Nrrs)r"ÚmhexÚmrevs €€r*rvzshowmanifest..(s ø€ t°dÒ;r`) r1Ú manifestnodeÚ nodeconstantsÚwdiridrÚwdirhexÚ manifestlogrrrÚprocessrÚ hybriditem)r=r>r)r(Úmnoder|r!r"s @@r*Ú showmanifestr+sÄù€à × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ × Ñ Ó €EØ €}Ø×"Ñ"×)Ñ)ˆÜˆØ×!Ñ!×)Ñ)‰à×Ñ×#Ñ# EÓ*ˆÜ�5‹zˆØ× Ñ  °4À$Ñ*GÓH€GØ�‰˜  WÓ-€AÜ × "Ñ "Ø ˆ4�Ô;ó ðr`sobsfate>r•rrcó,—t||«}|j|d«}|j|d«}g}|j||«D]@}tj|||d|dt j «}|j|«ŒBt||d|«S)Nr•ró successorsómarkerssfate) Úshowsuccsandmarkersr1Útovaluer ÚobsfateprinterrÚformatchangeidr;rn)r=r>Úsuccsandmarkersr�r)Úvaluesr"rts r*Ú showobsfater5,s›€ô *¨'°7Ó;€Oà × Ñ ˜' 5Ó )€BØ × Ñ ˜G WÓ -€DØ €Fà × $Ñ $ W¨gÖ 6ˆÜ × "Ñ "Ø ��a˜ Ñ&¨¨*© ´w×7MÑ7Mó ˆð � ‰ �aÕð 7ô �g˜w¨°Ó 8Ð8r`cóú—|j|d«}|j|d«}|jj|«}|€y|j||j««}t |||j ||¬«S)zÚ namespacer)r(Únsr7s r*Ú shownamesr;Ast€à × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ �‰�‰˜ Ó "€BØ €zð Ø �H‰H�T˜3Ÿ8™8›:Ó &€EÜ Ø�˜"Ÿ/™/¨5¸ô ðr`s namespacescóØ‡ ‡ —|j|d«Š |j|d«}tj«Š d„}‰ jj «D]X\}}|j‰ |j ««}t ||d|«}t||||«tj«‰ |<ŒZt ||dt‰ ««}ˆ ˆ fd„}t|‰ |tj«S)zBDict of lists. Names attached to this changeset per namespace.rrcó‡—ˆfd„S)Ncó$•—d|‰j|iS)Nóname)r8)rtr:s €r*rvz5shownamespaces..makensmapfn..[sø€˜' 1 b§o¡o°qÑ9r`rs)r:s`r*Ú makensmapfnz#shownamespaces..makensmapfnYs ø€ã9Ð9r`r?ó namespacecót•—|‰|‰j|j‰j|jdœS)N)rAsnamessbuiltins colorname)r7ÚbuiltinÚ colorname)r:Ú namespacesr)s €€r*r{zshownamespaces..makemapds9ø€àØ  ‘nØŸ ™  2™×.Ñ.ØŸ*™* R™.×2Ñ2ñ  ð r`) r1rr­r7Úitemsrcryrzr rMÚlist) r=r>r(r@r©r:r7r|r{rEr)s @@r*ÚshownamespacesrHPsÏù€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€Cä—‘“€Jò:ð—‘×!Ñ!Ö#‰ˆˆ2Ø—‘˜˜sŸx™x›zÓ*ˆÜ ˜G W¨g°uÓ =ˆÜ  5©+°b«/¼8×;LÑ;LÓMˆ �1Š ð$ô ˜ ¨,¼¸ZÓ8HÓI€Aõ ô �1�j '¬8×+<Ñ+<Ó =Ð=r`snegrevcó–—|j|d«}|j«}|�|dkry|j|d«}|t|«z S)zmInteger. The repository-local changeset negative revision number, which counts in the opposite direction.rNrr)r1rr!)r=r>r(rr)s r*Ú shownegrevrJosO€ð × Ñ ˜7 FÓ +€CØ �'‰'‹)€CØ €{�c˜A’gØØ × Ñ ˜G WÓ -€DØ ”�T“‰?Ðr`rcóF—|j|d«}|j«S)zUString. The changeset identification hash, as a 40 hexadecimal digit string. r)r1rrhs r*ÚshownoderL{s"€ð × Ñ ˜7 FÓ +€CØ �7‰7‹9Ðr`óobsoletecóJ—|j|d«}|j«ryy)z9String. Whether the changeset is obsolete. (EXPERIMENTAL)rrMr`)r1rrhs r*Ú showobsoleterO„s%€ð × Ñ ˜7 FÓ +€CØ ‡|�|„~ØØ r`sonelinesummarycóz—ddlm}|j|d«}|j|d«}|j||«S)z•String. A one-line summary for the ctx (not including trailing newline). The default template be overridden in command-templates.oneline-summary.r)Úcmdutilr•r)rõrQr1Úformat_changeset_summary)r=r>rQr�r(s r*ÚshowonelinesummaryrS�s>€õ à × Ñ ˜' 5Ó )€BØ × Ñ ˜7 FÓ +€CØ × +Ñ +¨B°Ó 4Ð4r`ópathófctxcóF—|j|d«}|j«S)zDString. Repository-absolute path of the current file. (EXPERIMENTAL)rU)r1Úpath©r=r>Úfctxs r*ÚshowpathrZšó"€ð × Ñ ˜G WÓ -€DØ �9‰9‹;Ðr`speerurlscóü‡‡—|j|d«}|jjŠtj|j«}t j d„|D««Šˆfd„}ˆfd„}td‰||«S)zcA dictionary of repository locations defined in the [paths] section of your configuration file.rc3ó>K—|]\}}||jf–—Œy­wr-)Úrawloc)r.r©r/s r*r0zshowpeerurls..©sèø€Ð=±9©4¨1¨a˜!˜QŸX™Xœ±9ùs‚cóà•—‰|}d|i}t|«dk(r^|dj|d<|djj«}t j t |««}|j|«t j «}|D]^}t j t |jj«««}|j|d<|j|«|g|d<Œ`|S)Nr?rrsurlsurls)r!r^Ú suboptionsrFrr­r8rÏ)r©ÚpsÚdÚsub_optsÚ path_dictr/Úpathss €r*r{zshowpeerurls..makemap«sËø€Ø �1‰XˆØ �aˆLˆÜ ˆr‹7�aŠ<ؘ1™Ÿ ™ ˆAˆf‰Iؘ!‘u×'Ñ'×-Ñ-Ó/ˆHÜ—}‘}¤V¨HÓ%5Ó6ˆHØ �H‰H�XÔ Ü—M‘M“Oˆ ÛˆAÜ—}‘}¤V¨A¯L©L×,>Ñ,>Ó,@Ó%AÓBˆHØ !§¡ˆI�fÑ Ø × Ñ ˜XÔ &Ø#˜ˆAˆgŠJð ð ˆr`có•—d|‰|fzSr·rs)r©Úurlss €r*Ú format_onez showpeerurls..format_one»sø€Ø˜1˜d 1™g˜,Ñ&Ð&r`N)r1r�rerÚ list_pathsrr­rz)r=r>r)Ú all_pathsr{rhrergs @@r*Ú showpeerurlsrk¡siù€ð × Ñ ˜G WÓ -€Dà �G‰G�M‰M€EÜ×"Ñ" 4§7¡7Ó+€IÜ �=‰=Ñ=±9Ó=Ó =€Dôô 'ô �4˜˜w¨ Ó 3Ð3r`s predecessorscó‡—|j|d«Š|j|d«}ttj‰|j «««}t j t|«}td|ˆfd„ˆfd„«S)zDReturns the list of the closest visible predecessors. (EXPERIMENTAL)rrNcó•—d‰|iS©Nrrs©r"r)s €r*rvz"showpredecessors..Ìóø€�6˜4 ™7Ñ#r`có4•—tj‰|«Sr-©rr2ros €r*rvz"showpredecessors..Íóø€”'×(Ñ(¨¨a©Ô1r`) r1r8r Úclosestpredecessorsrcr Úmaplistrrz)r=r>r(Ú predecessorsr)s @r*ÚshowpredecessorsrwÁsqø€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CÜœ'×5Ñ5°d¸C¿H¹H»JÓGÓH€LÜ×#Ñ#¤C¨Ó6€Lä Ø ØÛ#Û1ó  ðr`sreporootcó>—|j|d«}|jS)z5String. The root directory of the current repository.r)r1Úroot)r=r>r)s r*Ú showreporootrzÑs €ð × Ñ ˜G WÓ -€DØ �9‰9Ðr`ssizecóF—|j|d«}|j«S)z:Integer. Size of the current file in bytes. (EXPERIMENTAL)rU)r1ÚsizerXs r*Úshowsizer}Ør[r`sstatus>rrUr¿có—tj||d«}tj|||«}|syt||«}||vrt||d¬«}|j |«S)z7String. Status code of the current file. (EXPERIMENTAL)rTNTrË)rÚ runsymbolÚ stringifyrÒrÕ)r=r>rWrÐs r*Ú showstatusr�àsc€ô × !Ñ ! '¨7°GÓ <€DÜ × !Ñ ! '¨7°DÓ 9€DÙ ØÜ ¨Ó1€GØ �7ÑÜ# G¨W¸dÔCˆØ �;‰;�tÓ Ðr`ssuccessorssetsc ó܇‡‡ ‡ —‰j‰d«Š ‰j‰d«}g}|j«rztj‰ |j «d¬«}|D��cgc]}|D�cgc] }t |«‘Œc}‘Œ}}}|D]'}t d|ˆ fd„ˆ fd„«}|j|«Œ)ˆˆfd„Š ˆ fd „}t ||«|d „tj«Scc}wcc}}w) z»Returns a string of sets of successors for a changectx. Format used is: [ctx1, ctx2], [ctx3] if ctx has been split into ctx1 and ctx2 while also diverged into ctx3. (EXPERIMENTAL)rrT)ÚclosestNcó•—d‰|iSrnrsros €r*rvz$showsuccessorssets..þóø€˜6 4¨¡7Ñ+r`có4•—tj‰|«Sr-rrros €r*rvz$showsuccessorssets..ÿsø€œ'×0Ñ0°°a±Ô9r`có2•—tj‰‰|«Sr-)rr€)rbr=r>s €€r*Úrenderz"showsuccessorssets..rendersø€Ü×%Ñ% g¨w¸Ó:Ð:r`c3óF•K—djˆfd„|D««–—y­w)Ns; c3ó.•K—|] }‰|«–—Œy­wr-rs)r.rbrˆs €r*r0z2showsuccessorssets..gen..søèø€Ð1©D q™ Ÿ©Dùsƒ)Újoin)Údatarˆs €r*Úgenzshowsuccessorssets..gensøèø€Ø�j‰jÓ1©DÓ1Ó1Ó1ùsƒ!có —d|iS)Ns successorsetrs)r"s r*rvz$showsuccessorssets.. s € O°QÑ#7r`) r1rr Úsuccessorssetsrcrrzr;r rM) r=r>r(rŒÚssetsÚssÚnÚhr�rˆr)s `` @@r*Úshowsuccessorssetsr”ísÚû€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CØ €Dà ‡|�|„~Ü×&Ñ& t¨S¯X©X«ZÀÔFˆÙ05Ô6±¨"¡"Ó%¡"˜Q”#�a•& "Ó%°ˆÑ6ãˆBÜØØÛ+Û9ó ˆAð �K‰K˜�Nðõ;ô2ô Ù ˆD‹ �4Ñ7¼×9JÑ9Jó ðùò%&ùÓ6sÁ& C(Á/C# ÂC(Ã#C(ssuccsandmarkerscó0‡—|j|d«Š|j|d«}tj‰|«}|€g}g}|D]·}|d}|D�cgc] }t|«‘Œ}}t d|ˆfd„ˆfd„«}g}|dD]f} t| d«} t d „| d D««} d} | d �t d „| d D««} | | f| d d z| fz| ddz} |j | «Œh|j ||dœ«Œ¹tj|«Scc}w)zÝReturns a list of dict for each final successor of ctx. The dict contains successors node id in "successors" keys and the list of obs-markers from ctx to the set of successors in "markers". (EXPERIMENTAL) rrNr-có•—d‰|iSrnrsros €r*rvz%showsuccsandmarkers..(sø€�v˜t A™wÑ'r`có4•—tj‰|«Sr-rrros €r*rvz%showsuccsandmarkers..)sø€”g×,Ñ,¨T°!©WÔ5r`r.rc3ó2K—|]}t|«–—Œy­wr-©r©r.r’s r*r0z&showsuccsandmarkers..0sèø€Ð1©D qœC ŸF©Dùó‚réc3ó2K—|]}t|«–—Œy­wr-r™ršs r*r0z&showsuccsandmarkers..3sèø€Ð"8±4¨a¤3 q§6±4ùr›ré)r-r.) r1r ÚsuccessorsandmarkersrrzÚtupler;rÚ mappinglist)r=r>r(r4rŒÚiÚ successorsr’Ú finalmarkersÚmÚhexprecÚhexsucsÚ hexparentsÚ newmarkerr)s @r*r/r/sGø€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€Cä × )Ñ )¨$°Ó 4€Fà €~؈ð €DÛ ˆà�}Ñ%ˆ á&0Ó1¡j ”c˜!•f jˆ Ð1ÜØ Ø Û 'Û 5ó  ˆ ðˆ Ø�:”ˆAܘ!˜A™$“iˆGÜÑ1¨A¨aªDÓ1Ó1ˆG؈JØ�‰tÐÜ"Ñ"8°1°Q²4Ó"8Ó8� Ø  'Ð*¨Q¨q°¨VÑ3°z°mÑCÀaÈÈÀeÑKˆIØ × Ñ   Õ *ðð � ‰  J¸LÑIÕJð/ô2 × #Ñ # DÓ )Ð)ùò+2sÁDsp1có|—|j|d«}tjd|j«it¬«S)z�Changeset. The changeset's first parent. ``{p1.rev}`` for the revision number, and ``{p1.node}`` for the identification hash.r©Útmpl)r1rÚ mappingdictrÄÚ _changeidtmplrhs r*Úshowp1r¯<ó4€ð × Ñ ˜7 FÓ +€CÜ × #Ñ # V¨S¯V©V«XÐ$6¼]Ô KÐKr`sp2có|—|j|d«}tjd|j«it¬«S)z‚Changeset. The changeset's second parent. ``{p2.rev}`` for the revision number, and ``{p2.node}`` for the identification hash.rr«)r1rr­Úp2r®rhs r*Úshowp2r³Dr°r`sp1revcób—|j|d«}|j«j«S)z†Integer. The repository-local revision number of the changeset's first parent, or -1 if the changeset has no parents. (DEPRECATED)r)r1rÄrrhs r*Ú showp1revrµLó(€ð × Ñ ˜7 FÓ +€CØ �6‰6‹8�<‰<‹>Ðr`sp2revcób—|j|d«}|j«j«S)z�Integer. The repository-local revision number of the changeset's second parent, or -1 if the changeset has no second parent. (DEPRECATED)r)r1r²rrhs r*Ú showp2revr¸Tr¶r`sp1nodecób—|j|d«}|j«j«S)zªString. The identification hash of the changeset's first parent, as a 40 digit hexadecimal string. If the changeset has no parents, all digits are 0. (DEPRECATED)r)r1rÄrrhs r*Ú showp1noderº\ó(€ð × Ñ ˜7 FÓ +€CØ �6‰6‹8�<‰<‹>Ðr`sp2nodecób—|j|d«}|j«j«S)z±String. The identification hash of the changeset's second parent, as a 40 digit hexadecimal string. If the changeset has no second parent, all digits are 0. (DEPRECATED)r)r1r²rrhs r*Ú showp2noder½er»r`sparentsc󚇗|j|d«Š|j|d«}tj‰|«}|D�cgc]}|j«‘Œ}}|D�cgc]7}d|j«fd|j «fd|j «fg‘Œ9}}t ||d|«}t||ˆfd„ˆfd„t¬ «Scc}wcc}w) z§List of strings. The parents of the changeset in "rev:node" format. If the changeset has only one "natural" parent (the predecessor revision) nothing is shown.rrrróphaserVcó•—d‰|iSrnrsros €r*rvzshowparents..rpr`có4•—tj‰|«Sr-rrros €r*rvzshowparents..€rsr`)Úkeytype) r1rÚmeaningfulparentsrrÚphasestrryrzÚint) r=r>r(Úpctxsr/r%rr|r)s @r*Ú showparentsrÇns×ø€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CÜ × %Ñ % d¨CÓ 0€EÙ#Ó $™e˜ˆQ�U‰U�W˜e€EÐ $ñóáˆAð �!—%‘%“'Ð ˜W a§e¡e£gÐ.°¸1¿:¹:»<Ð0HÒIØð ðô ˜ ¨)°WÓ=€AÜ Ø Ø Û#Û1Üô  ðùò %ùòs ÁCÁÐr`sphaseidxcóF—|j|d«}|j«S)z.Integer. The changeset phase index. (ADVANCED)r)r1Úphaserhs r*Ú showphaseidxrÌŒs"€ð × Ñ ˜7 FÓ +€CØ �9‰9‹;Ðr`rcóP—|j|d«}tj|«S)z8Integer. The repository-local changeset revision number.r)r1rÚintrevrhs r*ÚshowrevrÏ“s%€ð × Ñ ˜7 FÓ +€CÜ �>‰>˜#Ó Ðr`ssubreposcóV—|j|d«}|j}|st||dg«S|j«jxsi}g}|D]#}||vs ||||k7sŒ|j |«Œ%|D]}||vsŒ|j |«Œt||dt |««S)z:List of strings. Updated subrepositories in the changeset.rssubrepo)r1ÚsubstaternrÄr;r8)r=r>r(rÑÚ psubstateÚsubreposÚsubs r*Ú showsubreposrÕšs³€ð × Ñ ˜7 FÓ +€CØ�|‰|€H٠ܘ' 7¨J¸Ó;Ð;Ø—‘“×!Ñ!Ò' R€IØ€HÛˆØ �iÑ  8¨C¡=°I¸c±NÓ#BØ �O‰O˜CÕ ðóˆØ �hÒ Ø �O‰O˜CÕ ðô �g˜w¨ ´F¸8Ó4DÓ EÐEr`ótagscó—t||d«S)z8List of strings. Any tags associated with the changeset.rÖ)r;r^s r*Úshowtagsrدs€ô �W˜g wÓ /Ð/r`s termwidthcóF—|j|d«}|j«S)z+Integer. The width of the current terminal.r•)r1Ú termwidth©r=r>r�s r*Ú showtermwidthrܵs"€ð × Ñ ˜' 5Ó )€BØ �<‰<‹>Ðr`susercóF—|j|d«}|j«S)z/String. The unmodified author of the changeset.r)r1Úuserrhs r*r]r]¼s"€ð × Ñ ˜7 FÓ +€CØ �8‰8‹:Ðr`ó instabilitiescób—|j|d«}t||d|j«d¬«S)zYList of strings. Evolution instabilities affecting the changeset. (EXPERIMENTAL) rs instabilityrßrl)r1rnÚ instabilitiesrhs r*ÚshowinstabilitiesrâÃs;€ð × Ñ ˜7 FÓ +€CÜ ØØØØ ×ÑÓØô  ðr`s verbositycóv—|j|d«}|jry|jry|jryy)zOString. The current output verbosity in 'debug', 'quiet', 'verbose', or ''.r•sdebugsquietsverboser`)r1Ú debugflagÚquietÚverboserÛs r*Ú showverbosityrçÒs7€ð × Ñ ˜' 5Ó )€Bà ‡|‚|ØØ �ŠØØ �ŠØØ r`s whyunstablec óf‡ ‡ —|j|d«Š |j|d«}d„Š tj‰ |«}|D]O}|jd«sŒ|d}t d|D�cgc]}|j «‘Œc}ˆ fd„ˆ ˆ fd„«}||d<ŒQd}t j||d ¬ «Scc}w) zRList of dicts explaining all instabilities of a changeset. (EXPERIMENTAL) rrcóR—dtj|«|j«fzS)Ns%s (%s))rr2rÄrs r*Ú formatnodez#showwhyunstable..formatnodeés#€ØœW×3Ñ3°CÓ8¸#¿,¹,».ÐIÑIÐIr`sdivergentnodesNcó•—d‰|iSrnrsros €r*rvz!showwhyunstable..ôr…r`có•—‰‰|«Sr-rs)r"rêr)s €€r*rvz!showwhyunstable..õsø€™* T¨!¡WÔ-r`sM{instability}:{if(divergentnodes, " ")}{divergentnodes} {reason} {node|short}ó )r¬Úsep)r1r Ú whyunstablerÕrzrrr¡) r=r>r(ÚentriesÚentryÚdnodesÚdnodeÚdnhybridr¬rêr)s @@r*ÚshowwhyunstablerõásÃù€ð × Ñ ˜G WÓ -€DØ × Ñ ˜7 FÓ +€CòJô×!Ñ! $¨Ó,€GãˆØ �9‰9Ð&Õ 'ØÐ,Ñ-ˆFÜØÙ*0Ó1©& �—‘•¨&Ñ1Û+Ü-ó ˆHð (0ˆEÐ#Ò $ðð !ð ô × #Ñ # G°$¸EÔ BÐBùò2sÁ&B. cóZ—|jj«D]\}}|t|<Œy)z1Load template keyword from specified registrarobjN)Ú_tablerFÚkeywords)r�ÚextnameÚ registrarobjÚnameÚfuncs r*Ú loadkeywordrýs(€à"×)Ñ)×/Ñ/Ö1‰ ˆˆdØŒ�Šñ2r`r-)F)gr rrcrrrõrrrr r r r rrrrÚutilsrrÚhybridrzÚ hybriddictÚ hybridlistr®rnryrJrTr®Ú defaulttemplrøÚtemplatekeywordr_rdriror}r„r‡r†r‹r”r¥r¯rºr¼rÉrÒrÚrÜràrãrærèrërêrírîrr rr rrrÚ _requiresr+r5r;rHrJrLrOrSrZrkrwrzr}r�r”r/r¯r³rµr¸rºr½rÇrÉrÌrÏrÕrØrÜr]rârçrõrýr4Ú i18nfunctionsrsr`r*Úrsöðõ÷÷ ÷ ÷ ó ÷ð × Ñ €Ø × $Ñ $€ Ø × $Ñ $€ Ø × $Ñ $€ Ø × $Ñ $€ Ø×.Ñ.€óBòJð@+€ ð˜tÑ#ØØ&ØØ+ñ € ð)¨Ñ6€ ˆ[Ñð €Ø+�)×+Ñ+¨HÓ5€ñ� f XÔ.ñ&ó/ð&ñ � g¨vÐ%6Ô7ñ+ó8ð+ñ� f XÔ.ñó/ðñ�¨ xÔ0ñ Kó1ð Kñ�¨°&Ð(9Ô:ñ =ó;ð =ñ�¨ xÔ0ñó1ðñÐ#¨w¸Ð.?Ô@ñ0óAð0ñ Ð"¨g°vÐ->Ô?ñó@ðñ� F 8Ô,ñ<ó-ð<ñ� F 8Ô,ñ ó-ð ñ�¨¨v Ô7ñ 8ó8ð 8ñ� u gÔ.ñKó/ðKñ� f XÔ.ñó/ðñ"�¨&¨Ô2ñ ó3ð ó #ó&ñØÒEôñóðñ*Ð&°+°Ô?ñó@ðñ�¨°Ð(=Ô>ñó?ðñ�¨°Ð(=Ô>ñó?ðñ�¨°Ð(=Ô>ñó?ðñ� V HÔ-ñPó.ðPñ�Ò(CÔDñ*óEð*òLòò.ñ�¨Ô,ñ ó-ð ñ � BÔ'ñ=ó(ð=ñ �Ò(CÔDñ2óEð2ò8ñ&Ð%Ò0KÔLñ.óMð.ñ Ð)Ò4OÔPñ2óQð2ò @ð #*¨6Ð!2ÐÔñ�¨°Ð'8Ô9ñó:ðñ$�Ò&>Ô?ñ9ó@ð9ò( ñ�¨'°6Ð):Ô;ñ>ó<ð>ñ<� g¨vÐ%6Ô7ñó8ðñ� F 8Ô,ñó-ðñ�¨ xÔ0ñó1ðñÐ"¨e°V¨_Ô=ñ 5ó>ð 5ñ� G 9Ô-ñó.ðñ �¨ yÔ1ñ4ó2ð4ñ>�¨G°VÐ+<Ô=ñ ó>ð ñ�¨ yÔ1ñó2ðñ � G 9Ô-ñó.ðñ�Ò%CÔDñ óEð ñÐ"¨g°vÐ->Ô?ñó@ðñBÐ#¨w¸Ð.?Ô@ñ)*óAð)*ñX� & Ô*ñLó+ðLñ� & Ô*ñLó+ðLñ� V HÔ-ñó.ðñ� V HÔ-ñó.ðñ� f XÔ.ñó/ðñ� f XÔ.ñó/ðñ� w°Ð&7Ô8ñó9ðñ,� V HÔ-ñó.ðñ �¨ xÔ0ñó1ðñ � 6 (Ô+ñó,ðñ �¨ xÔ0ñFó1ðFñ(� G¨VÐ#4Ô5ñ0ó6ð0ñ �¨¨Ô0ñó1ðñ � F 8Ô,ñó-ðñ Ð!¨V¨HÔ5ñ ó6ð ñ�¨¨Ô0ñ ó1ð ñ�¨7°FÐ*;Ô<ñCó=ðCò<ð—‘Ó!� r`