Ë #Î?m°�_žãó‚—dZdZddlZddlmZddlmZGd„de«ZGd„d e«ZGd „d ej«Z y) z' Transforms related to document parts. ÚreStructuredTextéN)Únodes)Ú Transformcó$—eZdZdZdZ d„Zdd„Zy)ÚSectNumaS Automatically assigns numbers to the titles of document sections. It is possible to limit the maximum section level for which the numbers are added. For those sections that are auto-numbered, the "autonum" attribute is set, informing the contents table generator that a different form of the TOC should be used. iÆcóœ—|jjjdd«|_|jjjdd«|_|jjjdd«|_|jjjdd«|_|jjj|j«|jjjr=|j€tj|_|j|j«y|j|jj_|j|jj_|j |jj_|j |jj_y)NÚdepthÚstartéÚprefixÚÚsuffix)Ú startnodeÚdetailsÚgetÚmaxdepthÚ startvaluer rÚparentÚremoveÚdocumentÚsettingsÚ sectnum_xformÚsysÚmaxsizeÚupdate_section_numbersÚ sectnum_depthÚ sectnum_startÚsectnum_prefixÚsectnum_suffix©Úselfs ú>/usr/lib/python3.12/site-packages/docutils/transforms/parts.pyÚapplyz SectNum.applys(€ØŸ™×.Ñ.×2Ñ2°7¸DÓAˆŒ ØŸ.™.×0Ñ0×4Ñ4°W¸aÓ@ˆŒØ—n‘n×,Ñ,×0Ñ0°¸2Ó>ˆŒ Ø—n‘n×,Ñ,×0Ñ0°¸2Ó>ˆŒ Ø �‰×Ñ×$Ñ$ T§^¡^Ô4Ø �=‰=× !Ñ !× /Ò /Ø�}‰}Ð$Ü #§ ¡ �” Ø × 'Ñ '¨¯ © Õ 6à37·=±=ˆD�M‰M× "Ñ "Ô 0Ø37·?±?ˆD�M‰M× "Ñ "Ô 0Ø48·K±KˆD�M‰M× "Ñ "Ô 1Ø48·K±KˆD�M‰M× "Ñ "Õ 1ócó¢—|dz }|rd}n |j}|D]´}t|tj«sŒ|t |«fz}|d}tj d|j dj|«z|jzdzdg¬«}|jd|«d|d<||jkr|j|||«|dz }Œ¶y) Nr rr Ú.u   Úsectnum)ÚclassesÚauto) rÚ isinstancerÚsectionÚstrÚ generatedr ÚjoinrÚinsertrr) r!Únoder r r'ÚchildÚnumbersÚtitler-s r"rzSectNum.update_section_numbers/sÈ€Ø �‰ ˆÙ ؉Gà—o‘oˆGÛˆEܘ%¤§¡Õ/Ø ¤C¨£L ?Ñ2�ؘa™�ä!ŸO™OؘŸ™ s§x¡x°Ó'8Ñ8¸4¿;¹;ÑFØ'ñ(à&˜Kô)� ð— ‘ ˜Q  Ô*Ø !��f‘ ؘ4Ÿ=™=Ò(Ø×/Ñ/°°wÀÔFؘ1‘ ‘ñr$N)©r)Ú__name__Ú __module__Ú __qualname__Ú__doc__Údefault_priorityr#rr4r$r"rrs„ñðÐØ.ò@ô r$rcó(—eZdZdZdZd„Zdd„Zd„Zy)ÚContentsaè This transform generates a table of contents from the entire document tree or from a single branch. It locates "section" elements and builds them into a nested bullet list, which is placed within a "topic" created by the contents directive. A title is either explicitly specified, taken from the appropriate language module, or omitted (local table of contents). The depth may be specified. Two-way references between the table of contents and section titles are generated (requires Writer support). This transform requires a startnode, which contains generation options and provides the location for the generated table of contents (the startnode is replaced by the table of contents "topic"). iÐcó —t|jjdd«}|jj}d|vr–|jj j }t |tj«sht |tj«sN|j }t |tj«s(t |tj«sŒAn |j}|jj dd|_ d|vr |d|_ n%|jjj|_ |r_|jj jj|«|jj j|j«y|j|«}t!|«r|jj#|«y|jj j j|jj «y)NÚ use_latex_tocFÚlocalÚidsrÚ backlinks)Úgetattrrrrrrr*rr+Útoc_idr@Ú toc_backlinksÚ attributesÚupdaterÚbuild_contentsÚlenÚ replace_self)r!Ú toc_by_writerrrÚcontentss r"r#zContents.applyWsj€ä § ¡ × 6Ñ 6¸ÈÓOˆ Ø—.‘.×(Ñ(ˆØ �gÑ ØŸ™×-Ñ-×4Ñ4ˆIÜ! )¬U¯]©]Ô;Ü$ Y´·±Ô?à%×,Ñ,� ô" )¬U¯]©]Ô;Ü$ Y´·±Ö?🠙 ˆIØ—n‘n×+Ñ+¨EÑ2°1Ñ5ˆŒ Ø ˜'Ñ !Ø$ [Ñ1ˆD�Nà!Ÿ]™]×3Ñ3×AÑAˆDŒNÙ à �N‰N× !Ñ !× ,Ñ ,× 3Ñ 3°GÔ <Ø �N‰N× !Ñ !× (Ñ (¨¯©Õ 8à×*Ñ*¨9Ó5ˆHÜ�8Œ}Ø—‘×+Ñ+¨HÕ5à—‘×%Ñ%×,Ñ,×3Ñ3°D·N±N×4IÑ4IÕJr$cóˆ—|dz }|D�cgc]}t|tj«sŒ|‘Œ!}}g}|jjj dt j«}|D�]!}|d}|j d«} |j|«} tjddg| ¢­d|ddiŽ} |jj| d¬ «} tjdd| «} tjd| «}|jd vrR|jtj«€3|jd k(r| |d<n|jd k(r|j |d<||kr|j#||«}||z }|j%|«�Œ$|r.tj&dg|¢­Ž} r|d j%d«|SgScc}w)Nr r rr)r Úrefidr?z toc-entry)Úsuggested_prefix)ÚentryÚtoprNrOr(zauto-toc)r*rr+rrrrrÚcopy_and_filterÚ referencerÚset_idÚ paragraphÚ list_itemr@Ú next_noderBrFÚappendÚ bullet_list)r!r0ÚlevelÚsectÚsectionsÚentriesr r+r3r)Ú entrytextrQÚref_idrNÚitemÚsubsectsrJs r"rFzContents.build_contentsssª€Ø �‰ ˆÙ%)ÓM¡T˜T¬Z¸¼e¿m¹mÕ-L’D TˆÐM؈ؗ‘×&Ñ&×*Ñ*¨7´C·K±KÓ@ˆÜˆGؘA‘JˆEØ—9‘9˜VÓ$ˆDØ×,Ñ,¨UÓ3ˆIÜŸ™¨¨Bð4Ø)2ò4°g¸e±nÀQÑ6Gñ4ˆIà—]‘]×)Ñ)¨)Ø;Fð*óHˆFä—O‘O B¨¨IÓ6ˆEÜ—?‘? 2 uÓ-ˆDØ—‘Ð"2Ñ2Ø—O‘O¤E§O¡OÓ4Ð<Ø—>‘> WÒ,Ø%+�E˜'’NØ—^‘^ uÒ,Ø%)§[¡[�E˜'‘NØ�uŠ}Ø×.Ñ.¨w¸Ó>�Ø˜Ñ �Ø �N‰N˜4Ö ð' ñ( Ü×(Ñ(¨Ð6¨gÒ6ˆHÙØ˜Ñ#×*Ñ*¨:Ô6؈OàˆIùò;Ns ŠF?ªF?cón—t|j«}|j|«|j«S)z@Return a copy of a title, with references, images, etc. removed.)ÚContentsFilterrÚ walkaboutÚget_entry_text)r!r0Úvisitors r"rPzContents.copy_and_filter”s+€ä  §¡Ó/ˆØ �‰�wÔØ×%Ñ%Ó'Ð'r$N)r)r5r6r7r8r9r#rFrPr4r$r"r;r;Es „ñ ðÐòKó8óB(r$r;có6—eZdZd„Zd„Zd„Zd„Zd„ZeZeZ eZ y)racó6—|j«jS©N)Ú get_tree_copyÚchildrenr s r"rczContentsFilter.get_entry_text�s€Ø×!Ñ!Ó#×,Ñ,Ð,r$có"—tj‚rg©rÚSkipNode©r!r0s r"Úvisit_citation_referencez'ContentsFilter.visit_citation_reference ó €Ü�n‰nÐr$có"—tj‚rgrkrms r"Úvisit_footnote_referencez'ContentsFilter.visit_footnote_reference£ror$có¦—|jd«r1|jjtj|d««tj ‚)NÚalt)ÚhasattrrrVrÚTextrlrms r"Ú visit_imagezContentsFilter.visit_image¦s7€Ø �<‰<˜Ô Ø �K‰K× Ñ œuŸz™z¨$¨u©+Ó6Ô 7Ü�n‰nÐr$có"—tj‚rg)rÚ SkipDeparturerms r"Ú ignore_node_but_process_childrenz/ContentsFilter.ignore_node_but_process_children«s€Ü×!Ñ!Ð!r$N) r5r6r7rcrnrqrvryÚvisit_problematicÚvisit_referenceÚ visit_targetr4r$r"rara›s-„ò-òòòò "ð9ÐØ6€OØ3�Lr$ra) r8Ú __docformat__rÚdocutilsrÚdocutils.transformsrrr;ÚTreeCopyVisitorrar4r$r"Úr�sJðñ ð#€ ó ÝÝ)ô1ˆiô1ôhS(ˆyôS(ôl4�U×*Ñ*õ4r$