
    zi>i                       d Z ddlmZ ddlZddlZddlZddlmZ ddlm	Z	m
Z
 ddlmZ ddlmZ ddlmZmZmZ dd	lmZ dd
lmZ ddlmZ ddlmZmZmZmZmZ ddlm Z  ddl!m"Z" ddl#m$Z$m%Z% ddl&m'Z' ddl(m)Z)m*Z*m+Z+ ddl,m-Z-m.Z.m/Z/m0Z0 ddl1m2Z2m3Z3m4Z4m5Z5 ddl6m7Z7 ddl6m8Z8 e	r,ddl9m:Z:m;Z; ddl<m=Z= ddl>m?Z? ddl@mAZA ddlBmCZC ddlDmEZE ddlFmGZG  ejH        eI          ZJ G d d          ZKdS )z$Builder superclass for all builders.    )annotationsN)path)TYPE_CHECKINGAny)nodes)DependencyList)CONFIG_CHANGED_REASON	CONFIG_OKBuildEnvironment)ImageAdapter)SphinxError)__)UnicodeDecodeErrorHandlerget_filetypeimport_objectloggingrst)
BuildPhase)bold)progress_messagestatus_iterator)sphinx_domains)CatalogInfoCatalogRepositorydocname_to_domain)SEP	ensuredirrelative_urirelpath)ParallelTasksSerialTasksmake_chunksparallel_available)
directives)roles)IterableSequence)Node)Sphinx)Config)EventManager)Tags)NoneTypec                  r   e Zd ZU dZdZdZdZded<   dZdZ	dZ
dZg Zded	<   dZdZdTdZdUdZdVdZdWdZdWdZdXdYdZdXdZd Zd[d"Zd\d#Zd]d&Zd^d*ZdWd+Zd_d-ZdWd.ZdWd/Zd`d1ZdWd2Z	 	 dadbd8Z d\d9Z!dcd:Z"ddd=Z#dd>dedAZ$dd>dfdCZ%	 dgdhdGZ&didHZ'djdIZ(dkdKZ)dWdLZ*dldMZ+dldNZ,dWdOZ-dWdPZ.dmdSZ/dS )nBuilderz6
    Builds target formats from the reST sources.
     type[nodes.NodeVisitor]default_translator_classnoneFT	list[str]supported_image_typesappr)   envr   returnNonec                   |j         | _         |j        | _        |j        | _        |j        | _        t	          | j                   || _        || _        | j                            | j        | j	                   |j
        | _
        |j        | _        |j        | _        | j                            | j                   | j                            | j                   | j                            d| j        z             | j                            d| j        z             i | _        d| _        d| _        d| _        d | _        d S )Nz	format_%sz
builder_%sr0   F)srcdirconfdiroutdir
doctreedirr   r6   r7   set_versioning_methodversioning_methodversioning_compareeventsconfigtagsaddformatnameimagesimagedirimgpathparallel_okfinish_tasks)selfr6   r7   s      c/var/www/tmov.alphamb/tmov_inventario/venv/lib/python3.11/site-packages/sphinx/builders/__init__.py__init__zBuilder.__init__O   s   j{j.$/"""%(&&t'='+'>	@ 	@ 	@$'J!j(		dk"""	di   	kDK/000	lTY./// ') !!%    argsr   c                @    | j         j                            |           S )zReturn a class of translator.)r6   registryget_translator_classrM   rQ   s     rN   rT   zBuilder.get_translator_classm   s    x 55d;;;rP   nodes.NodeVisitorc                2     | j         j        j        | g|R  S )zReturn an instance of translator.

        This method returns an instance of ``default_translator_class`` by default.
        Users can replace the translator class with ``app.set_translator()`` API.
        )r6   rS   create_translatorrU   s     rN   rX   zBuilder.create_translatorq   s$     3tx 24?$????rP   c                    dS )zoLoad necessary templates and perform initialization.  The default
        implementation does nothing.
        N rM   s    rN   initzBuilder.initz   	     	rP   c                    | j         j        r) t          | j         j        d                      | _        dS ddlm}  |            | _        dS )z&Return the template bridge configured.ztemplate_bridge settingr   )BuiltinTemplateLoaderN)rC   template_bridger   	templatessphinx.jinja2gluer_   )rM   r_   s     rN   create_template_bridgezBuilder.create_template_bridge   sj    ;& 	5F]4;+F+DF F H HDNNN @?????2244DNNNrP   Ndocnamestrtyp
str | Nonec                    t           )zReturn the target URI for a document name.

        *typ* can be used to qualify the link characteristic for individual
        builders.
        NotImplementedError)rM   rd   rf   s      rN   get_target_urizBuilder.get_target_uri   s
     "!rP   from_toc                p    t          |                     |          |                     ||                    S )zReturn a relative URI between two source filenames.

        May raise environment.NoUri if there's no way to return a sensible URI.
        )r   rk   )rM   rl   rm   rf   s       rN   get_relative_urizBuilder.get_relative_uri   s9    
 D//66 //C88: : 	:rP   str | Iterable[str]c                    t           )aD  Return an iterable of output files that are outdated, or a string
        describing what an update build will build.

        If the builder does not output individual files corresponding to
        source files, return a string here.  If it does, return an iterable
        of those files that need to be written.
        ri   r[   s    rN   get_outdated_docszBuilder.get_outdated_docs   s
     "!rP   c                    g S )z;Return list of paths for assets (ex. templates, CSS, etc.).rZ   r[   s    rN   get_asset_pathszBuilder.get_asset_paths   s    	rP   doctreer(   c                   t          | j                  }|                    t          j                  D ]}d|d         v rd|d         vr| j        D ]"}|d                             |d          }|r n#t          |d                   }|                    |d                   }|r2t          
                    t          d          | j        |||           n0t          
                    t          d          | j        ||           ||d<   n|d         }|| j        j        vr| j        j        |         d	         | j        |<   dS )
z+Pick the best candidate for all image URIs.?
candidates*Nuriz2a suitable image for %s builder not found: %s (%s))locationz-a suitable image for %s builder not found: %s   )r   r7   findallr   imager5   getsortedget_original_image_uriloggerwarningr   rG   rH   )rM   ru   rH   nodeimgtype	candidate	mimetypes	image_uris           rN   post_process_imageszBuilder.post_process_images   s   dh''OOEK00 	C 	CDd<((($|,,,#9  G $\ 2 6 6w E EI   !'tL'9 : :I & = =d5k J JI  Lr +4 (5 (5'+y)YQU ' W W W W r*Y'Z'Z'+y)d ' L L L'U K	//%)X_Y%?%BDK	""5	C 	CrP   catalogsset[CatalogInfo]messagec                j     j         j        sd S d
 fd}t                              t	          t          d                    |z              t          |t          d          dt          |           j        j	        |	          D ],}|
                     j         j         j         j                   -d S )Ncatr   r8   re   c                    t          | j        j        j                                      t
          j        t                    S N)r   mo_pathr7   r;   replacer   sepr   )r   rM   s    rN   cat2relpathz-Builder.compile_catalogs.<locals>.cat2relpath   s+    3;88@@3OOOrP   zbuilding [mo]: writing output... 	darkgreen)stringify_func)r   r   r8   re   )rC   gettext_auto_buildr   infor   r   r   lenr6   	verbositywrite_molanguage gettext_allow_fuzzy_translations)rM   r   r   r   catalogs   `    rN   compile_catalogszBuilder.compile_catalogs   s    {- 	F	P 	P 	P 	P 	P 	P 	D-..//'9:::&x4H1I1I;'*8}}dh6H6AC C C 	K 	KG T[1![IK K K K	K 	KrP   c                "   t          | j        | j        j        | j        j        | j        j                  }t          d          t          t          |j	                            z  }| 
                    t          |j	                  |           d S )Nzall of %d po files)r   r;   rC   locale_dirsr   source_encodingr   r   listr   r   set)rM   repor   s      rN   compile_all_catalogszBuilder.compile_all_catalogs   sx     dk.E!%!5t{7RT T)**Sdm1D1D-E-EEc$-00':::::rP   specified_filesc                    d fd}t                      }t          t          ||                    }t           j         j        j         j        j         j        j                  }|j        D ]4}|j	        |v r)|
                                r|                    |           5t          d          t          |          z  }                     ||           d S )Nfpathre   r8   rg   c                    j                             t          j        |                     }|rt	          |j        j                  S d S r   )r7   path2docr   abspathr   rC   gettext_compact)r   rd   rM   s     rN   	to_domainz4Builder.compile_specific_catalogs.<locals>.to_domain   sD    h''U(;(;<<G ($+2MNNNtrP   z*targets for %d po files that are specified)r   re   r8   rg   )r   mapr   r;   rC   r   r   r   r   domainis_outdatedrE   r   r   r   )rM   r   r   r   domainsr   r   r   s   `       rN   compile_specific_catalogsz!Builder.compile_specific_catalogs   s    	 	 	 	 	 	 55c)_5566 dk.E!%!5t{7RT T} 	& 	&G~((W-@-@-B-B(W%%%ABBS]]Rh00000rP   c                    t          | j        | j        j        | j        j        | j        j                  }d |j        D             }t          d          t          |          z  }| 	                    ||           d S )Nc                :    h | ]}|                                 |S rZ   )r   ).0cs     rN   	<setcomp>z2Builder.compile_update_catalogs.<locals>.<setcomp>   s%    @@@!@A@@@rP   z,targets for %d po files that are out of date)
r   r;   rC   r   r   r   r   r   r   r   )rM   r   r   r   s       rN   compile_update_catalogszBuilder.compile_update_catalogs   sw     dk.E!%!5t{7RT T@@t}@@@CDDs8}}Th00000rP   c                x    |                                   |                     dt          d          d           dS )zBuild all source files.Nzall source filesall)summarymethod)r   buildr   r[   s    rN   	build_allzBuilder.build_all   s;    !!###

4$6!7!7
FFFFFrP   	filenamesc                   g }|D ]}t          j        t          j        |                    }t          j        |          s)t                              t          d          |           f|                    t          | j	                            s)t                              t          d          |           | j
                            |          }|s)t                              t          d          |           |                    |           |                     |           |                     |dt          d          t          |          z             dS )z>Only rebuild as much as needed for changes in the *filenames*.z.file %r given on command line does not exist, zIfile %r given on command line is not under the source directory, ignoringz?file %r given on command line is not a valid document, ignoringspecificz%%d source files given on command line)r   r   N)r   normpathr   isfiler   r   r   
startswithre   r;   r7   r   appendr   r   r   )rM   r   docnamesfilenamerd   s        rN   build_specificzBuilder.build_specific   su    ! 	% 	%H}T\(%;%;<<H;x(( r"RSS') ) )&&s4;'7'788 r #?  @  @AIK K Kh''11G r #7  8  89AC C COOG$$$$&&y111

8JEFFXV 	 	X 	X 	X 	X 	XrP   c                8   |                                   |                                 }t          |t                    r|                     dg|           dS t          |          }|                     |t          d          t          |          z             dS )z8Only rebuild what was changed or added since last build.__all__z0targets for %d source files that are out of date)r   N)r   rr   
isinstancere   r   r   r   r   )rM   to_builds     rN   build_updatezBuilder.build_update  s    $$&&&))++h$$ 	&JJ	{H-----H~~HJJx!"TUU8}} %  & & & & &rP   updater   Iterable[str] | Noner   r   c                2   |r?t                               t          t          d          | j        z            |z              t          j                    5  t          |                                           }ddd           n# 1 swxY w Y   t          |          }t                               t          t          d                    d           | j
                            | j        |          D ]}|                    |           t          |          |z
  }|r)t                               t          d          |           n't                               t          d                     |rdd	lm} t!          t          d
                    5  t#          t%          j        | j        |          d          5 }	t+          j        | j
        |	t*          j                   ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y   t0          j        | j        _        t!          t          d                    5  | j
                                         ddd           n# 1 swxY w Y   n>|dk    r8|s6t                               t          t          d                               dS t0          j        | j        _        |r#|dgk    rt          |          | j
        j        z  }t<          r7| j        j        dk    r'| j         r | j        !                    d          | _"        nd| _"        tG                      | _$        | %                    |tM          |          |           | '                                 | j$                                         dS )zjMain build method.

        First updates the environment, and then calls
        :meth:`!write`.
        zbuilding [%s]: Nz"looking for now-outdated files... Tnonlz%d foundz
none foundr   )ENV_PICKLE_FILENAMEzpickling environmentwbzchecking consistencyr   zno targets are out of date.r   r|   writeF)(r   r   r   r   rG   r   pending_warningsr   readr   r7   check_dependentsr6   rE   sphinx.applicationr   r   openr   joinr>   pickledumpHIGHEST_PROTOCOLr   CONSISTENCY_CHECKphasecheck_consistency	RESOLVING
found_docsr#   parallelallow_parallelis_parallel_allowedrK   r!   rL   r   r   finish)
rM   r   r   r   updated_docnamesdoccountrd   outdatedr   fs
             rN   r   zBuilder.build)  sM     	KKKR 122TY>??'IJJJ %'' 	0 	0"499;;//	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 '((D@AABBNNNx00;KLL 	* 	*G  ))))'((83 	*KK:1111KK<(())) 	>>>>>>!"%;"<"<== B B4?4GHH$OOBSTDHa)@AAAB B B B B B B B B B B B B B B B B B B B B B B B B B B B B B
 (9DHN!"%;"<"<== - -**,,,- - - - - - - - - - - - - - - !!(!D$A!B!BCCDDD#-
  	;YK//8}}tx'::H  	%$("3a"7"7D<O"7#x;;GDDD$D (MM 	

8T"233V<<< 	 	     sZ   "BB
B)H=&G/#H/G3	3H6G3	7HH
H
I))I-0I-c                   t                               t          t          d                    d           | j                            | j        |            | j        j        t          k    }| j        	                    |          \  }}}| j
                            d| j        |||          D ]1}|                    t          |          | j        j        z             2|s|r,|                    | j        j        | j        j        z             |rKt!          j        | j        j        d          | j        j        pdz   }t                               d|d           t                               t          d          t'          |          t'          |          t'          |                     |D ]=}| j
                            d| j        |           | j                            |           >t+          ||z            }| j
                            d	| j        |           t,          r>t'          |          d
k    r+| j        j        dk    r| j                            d          }	nd}	|	r"|                     || j        j                   n|                     |           | j        j        | j        j        vr4t=          d| j                            | j        j                  z            | j
                            d| j                  D ]}
|
|                     |
           t          | j        _        t+          |          S )z(Re-)read all files new or changed since last update.

        Store all environment docnames in the canonical format (ie using SEP as
        a separator in place of os.path.sep).
        zupdating environment: Tr   zenv-get-outdatedr0   z[%s] z %s added, %s changed, %s removedenv-purge-doczenv-before-read-docs   r|   r   Fnproczroot file %s not foundzenv-updated)!r   r   r   r   r7   
find_filesrC   config_statusr
   get_outdated_filesrB   emitr   r   r   glob_toctreesr	   r   config_status_extrar   	clear_docr   r#   r6   r   r   _read_parallel_read_serialroot_docall_docsr   doc2pathextend)rM   updatedaddedchangedremoveddocsreasonrd   r   par_okretvals              rN   r   zBuilder.reads  s    	D45566TBBBDK...8)Y6"&("="=g"F"Fw K$$%75'SZ[[ 	< 	<DNN3t99tx'::;;;;  	IG 	INN481DH4GGHHH 	4+/0FKKx39r;FKKdK333B9::JJGc'll	< 	< 	<  	( 	(GK_dh@@@Hw'''' %'/**/8DDD  	#h--!"3"38IA8M8MX11&99FFF 	(0ABBBBh''';tx'8886"h//0DEEF G G G k&&}dh?? 	( 	(F!''' "+hrP   c                   t          |t          d          dt          |          | j        j                  D ]R}| j                            d| j        |           | j                            |           | 	                    |           Sd S )Nreading sources... purpler   )
r   r   r   r6   r   rB   r   r7   r   read_doc)rM   r   rd   s      rN   r   zBuilder._read_serial  s    &x4I1J1JH'*8}}dh6HJ J 	# 	#G K_dh@@@Hw'''MM'""""	# 	#rP   r   intc                   	 t          ||          }t          |t          d          dt          |           j        j                  	|D ]=} j                            d j        |            j        	                    |           >d fd}d	 fd}t          |          }|D ]}|                    |||           |                                 t                              d           d S )Nr	  r
  r   r  r4   r8   bytesc                    j         j        _         | D ]}                    |d           t          j        j        t          j                  S )NF_cache)r6   r7   r  r   dumpsr   )r  rd   rM   s     rN   read_processz,Builder._read_parallel.<locals>.read_process  sM    8DHL 5 5ge4444<&*ABBBrP   otherenvr9   c                    t          j        |          }j                            | |j                   t                     d S r   )r   loadsr7   merge_info_fromr6   next)r  r  r7   progressrM   s      rN   mergez%Builder._read_parallel.<locals>.merge  s=    ,x((CH$$T3999NNNNNrP   r0   )r  r4   r8   r  )r  r4   r  r  r8   r9   )r"   r   r   r   r6   r   rB   r   r7   r   r    add_taskr   r   r   )
rM   r   r   chunksrd   r  r  taskschunkr  s
   `        @rN   r   zBuilder._read_parallel  s+   Xu-- #62.C+D+Dh#&v;;0BD D   	( 	(GK_dh@@@Hw''''	C 	C 	C 	C 	C 	C	 	 	 	 	 	 	 e$$ 	7 	7ENN<6666 	

BrP   r  r  boolc                  | j                             |           t          j        | j        d          }t          j        |          r| j                             |           | j                             |          }t          | j	        j
        j        |          }| j	        j                            | j	        |          }t                      |j        _        t#          | j                   5  t%          j        || j
        j                  5  t)          j        dt-          |                     |                    |           |                                 |j        }ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y   t5          j                    dz  | j         j        |<   | j         j                                         | j         j                                         |                      |||           dS )z>Parse a file and add/update inventory entries for the doctree.zdocutils.confsphinx)source_pathNi  r  )!r7   prepare_settingsr   r   r<   r   note_dependencyr   r   r6   rC   source_suffixrS   get_publisherr   settingsrecord_dependenciesr   r   default_rolecodecsregister_errorr   
set_sourcepublishdocumenttimetime_nsr   	temp_dataclearref_contextwrite_doctree)rM   rd   r  docutilsconfr   filetype	publisherru   s           rN   r  zBuilder.read_doc  sF   !!'*** y??;|$$ 	3H$$\2228$$W-- =xHHH%33DHhGG	 2@1A1A	.DH%% 	) 	)s'7AY'Z'Z 	) 	)!(";G"D"DF F F   X 666(G	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) &*\^^u%<'" 	  """""$$$7GF;;;;;s7   - FAE-!F-E1	1F4E1	5FFFnodes.documentc                  d|_         d|_        |j                                        |_        d|j        _        d|j        _        d|j        _        t          j        | j	        |dz             }t          t          j        |                     t          |d          5 }t          j        ||t          j                   ddd           n# 1 swxY w Y   |r|| j        j        |<   dS dS )zWrite the doctree to a file.Nz.doctreer   )reportertransformerr'  copywarning_streamr7   r(  r   r   r>   r   dirnamer   r   r   r   _write_doc_doctree_cache)rM   rd   ru   r  doctree_filenamer   s         rN   r4  zBuilder.write_doctree  s&   
  " #+0022*.'#/3,9T_g
6JKK$,/00111"D)) 	=QKF$;<<<	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	= 	=  	A9@DH-g666	A 	As   !CCCbuild_docnamesr   Sequence[str]c                
   ||dgk    r| j         j        }|dk    r t          |          t          |          z  }nt          |          }t                              t          d          d                    t          |                               t          |          D ]T}| j         j	        
                    |t                                D ]%}|| j         j        v r|                    |           &U|                    | j        j                   t          t          d                    5  |                     |           d d d            n# 1 swxY w Y   t          t          d                    5  |                                  d d d            n# 1 swxY w Y   | j        r3|                     t          |          | j        j        dz
             d S |                     t          |                     d S )	Nr   r   zdocnames to write: %sz, zpreparing documentszcopying assetsr|   r   )r7   r   r   r   debugr   r   r   r   files_to_rebuildr   rE   rC   r   r   prepare_writingcopy_assetsrK   _write_parallelr6   r   _write_serial)rM   rA  r   r   r   rd   
tocdocnames          rN   r   zBuilder.write  sw    !^	{%B%B!X0NX>**S1A-B-BBHH>**HR/00$))F8<L<L2M2MNNN H~~ 	- 	-G"h7;;GSUUKK - -
!444LL,,,- 	T[)***b!67788 	+ 	+  ***	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ b!12233 	 		 	 	 	 	 	 	 	 	 	 	 	 	 	 	  	1   !1!1'+x'81'< ! > > > > > vh//00000s$   2EEE;FF #F c           	        t          j                    5  t          |t          d          dt	          |          | j        j                  D ]u}t          j        | j        _	        | j
                            ||           }t          j        | j        _	        |                     ||           |                     ||           v	 d d d            d S # 1 swxY w Y   d S )Nr   r   )r   r   r   r   r   r6   r   r   r   r   r7   get_and_resolve_doctreeWRITINGwrite_doc_serialized	write_doc)rM   r   rd   ru   s       rN   rI  zBuilder._write_serial=  s   %'' 	1 	1*8R8L5M5M{+.x==$(:LN N 1 1!+!5(::7DII!+!3))'7;;;w00001	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1s   B.CCCc                6    d fd}|d         |dd          }}t           j         j        _         j                            |           }t           j         j        _                             ||                                ||           t          |          }t          ||          }t          |t          d          d	t          |           j        j                  dfd}t           j         j        _        |D ]h}	g }
|	D ]J} j                            |           }                     ||           |
                    ||f           K|                    ||
|           i|                                 t$                              d           d S )Nr   list[tuple[str, nodes.document]]r8   r9   c                p    t           j        j        _        | D ]\  }}                    ||           d S r   )r   rM  r6   r   rO  )r  rd   ru   rM   s      rN   write_processz.Builder._write_parallel.<locals>.write_processH  sD    '/DHN$( 1 1 w00001 1rP   r   r|   r   r   rQ   list[tuple[str, NoneType]]resultr-   c                &    t                     d S r   )r  )rQ   rU  r  s     rN   on_chunk_donez.Builder._write_parallel.<locals>.on_chunk_done]  s    NNNNNrP   r0   )r  rQ  r8   r9   )rQ   rT  rU  r-   r8   r9   )r   r   r6   r   r7   rL  rM  rN  rO  r    r"   r   r   r   r   r   r  r   r   r   )rM   r   r   rS  	firstnameru   r  r  rW  r  argrd   r  s   `           @rN   rH  zBuilder._write_parallelG  s   	1 	1 	1 	1 	1 	1 'qk8ABB<8	#-(229dCC#+!!)W555y'***e$$Xu-- #62.B+C+C[#&v;;0BD D	 	 	 	 	 	 $- 	> 	>EC  / /(::7DII))'7;;;

GW-....NN=#}==== 	

BrP   set[str]c                    t           )z?A place where you can add logic before :meth:`write_doc` is runri   )rM   r   s     rN   rF  zBuilder.prepare_writingm      !!rP   c                    dS )zBWhere assets (images, static files, etc) are copied before writingNrZ   r[   s    rN   rG  zBuilder.copy_assetsq  s    rP   c                    t           )z5Where you actually write something to the filesystem.ri   rM   rd   ru   s      rN   rO  zBuilder.write_docu  r\  rP   c                    dS )zoHandle parts of write_doc that must be called in the main process
        if parallel build is active.
        NrZ   r_  s      rN   rN  zBuilder.write_doc_serializedy  r]   rP   c                    dS )zWFinish the building process.

        The default implementation does nothing.
        NrZ   r[   s    rN   r   zBuilder.finish  	    
 	rP   c                    dS )zQCleanup any resources.

        The default implementation does nothing.
        NrZ   r[   s    rN   cleanupzBuilder.cleanup  rb  rP   optiondefaultc                    	 | j          d| }t          | j        |          S # t          $ r | d| }t          | j        |          cY S w xY w)zReturn a builder specific option.

        This method allows customization of common builder settings by
        inserting the name of the current builder in the option key.
        If the key does not exist, use default as builder name.
        _)rG   getattrrC   AttributeError)rM   re  rf  optnames       rN   get_builder_configzBuilder.get_builder_config  st    	1--V--G4;000 	1 	1 	1 ++6++G4;00000	1s    # &AA)r6   r)   r7   r   r8   r9   )rQ   r   r8   r1   )rQ   r   r8   rV   )r8   r9   r   )rd   re   rf   rg   r8   re   )rl   re   rm   re   rf   rg   r8   re   )r8   rp   )r8   r4   )ru   r(   r8   r9   )r   r   r   re   r8   r9   )r   r4   r8   r9   )r   r4   r8   r9   )Nr   )r   r   r   rg   r   re   r8   r9   )r   r4   r8   r9   )r   r4   r   r  r8   r9   )rd   re   r  r  r8   r9   )rd   re   ru   r8  r  r  r8   r9   )r   )rA  r   r   rB  r   re   r8   r9   )r   rB  r8   r9   )r   rB  r   r  r8   r9   )r   rZ  r8   r9   )rd   re   ru   r8  r8   r9   )re  re   rf  re   r8   r   )0__name__
__module____qualname____doc__rG   rF   epilog__annotations__r@   rA   r   use_message_catalogr5   supported_remote_imagessupported_data_uri_imagesrO   rT   rX   r\   rc   rk   ro   rr   rt   r   r   r   r   r   r   r   r   r   r   r   r   r  r4  r   rI  rH  rF  rG  rO  rN  r   rd  rl  rZ   rP   rN   r/   r/   .   ss         
 DF F 6555N (*))))# %& & & &<< < < <@ @ @ @   5 5 5 5" " " " ": : : : :" " " "   C C C CBK K K K; ; ; ;1 1 1 1&1 1 1 1G G G GX X X X<& & & &  #	H! H! H! H! H!T>  >  >  > @# # # #       D 8< < < < < < <D HLA A A A A A< 	#1 #1 #1 #1 #1J1 1 1 1$ $ $ $L" " " "   " " " "         1 1 1 1 1 1rP   r/   )Lrp  
__future__r   r*  r   r/  osr   typingr   r   docutilsr   docutils.utilsr   sphinx.environmentr	   r
   r   !sphinx.environment.adapters.assetr   sphinx.errorsr   sphinx.localer   sphinx.utilr   r   r   r   r   sphinx.util.build_phaser   sphinx.util.consoler   sphinx.util.displayr   r   sphinx.util.docutilsr   sphinx.util.i18nr   r   r   sphinx.util.osutilr   r   r   r   sphinx.util.parallelr    r!   r"   r#   r!  r$   r%   collections.abcr&   r'   docutils.nodesr(   r   r)   sphinx.configr*   sphinx.eventsr+   sphinx.util.tagsr,   sphinx.util.typingr-   	getLoggerrm  r   r/   rZ   rP   rN   <module>r     s   * * " " " " " "          % % % % % % % %       ) ) ) ) ) ) Q Q Q Q Q Q Q Q Q Q : : : : : : % % % % % %       \ \ \ \ \ \ \ \ \ \ \ \ \ \ . . . . . . $ $ $ $ $ $ A A A A A A A A / / / / / / N N N N N N N N N N D D D D D D D D D D D D \ \ \ \ \ \ \ \ \ \ \ \             	,22222222######))))))$$$$$$******%%%%%%++++++ 
	8	$	$m	1 m	1 m	1 m	1 m	1 m	1 m	1 m	1 m	1 m	1rP   