
    Fe	c             	         d Z ddlmZ ddl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 ddlmZ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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) 	 ddl*m+Z+ erddl.m/Z/m0Z0m1Z1 ddl2m3Z3 ddl4m5Z5 ddl6m7Z7  ejp                  e9      Z:dZ;g dZ< ed dddddd       Z=d!Z>d"Z? ej                  d#      ZA G d$ d%ej                        ZC G d& d'e      ZD G d( d)ej                        ZF G d* d+      ZG G d, d-      ZHd3d.ZId4d5d/ZJ G d0 d1e       ZKdd2lLmMZMmNZNmOZO y# e,$ r	 ddl-m+Z+ Y w xY w)6z~Custom docutils writer for LaTeX.

Much of this code is adapted from Dave Kuhlman's "docpy" writer from his
docutils sandbox.
    )annotationsN)defaultdict)Iterable)path)TYPE_CHECKINGAnycast)nodeswriters)addnodeshighlighting)StandardDomain)SphinxError)___admonitionlabels)logging	texescape)SphinxTranslator)split_index_msg)clean_astextget_prev_node)LaTeXRenderer)tex_replace_map)toRoman)ElementNodeText)LaTeXBuilder)Theme)
IndexEntry   )partchaptersection
subsectionsubsubsection	paragraphsubparagraphc                      y)N\arabic r,       6/usr/lib/python3/dist-packages/sphinx/writers/latex.py<lambda>r/   /   s    r-   r+   z\alphz\Alphz\romanz\Roman)arabic
loweralpha
upperalpha
lowerroman
upperroman
z

z^(.*\S)\s+\(([^()]*)\)\s*$c                      e Zd ZdZy)collected_footnotez5Footnotes that are collected are assigned this class.N)__name__
__module____qualname____doc__r,   r-   r.   r7   r7   =   s    ?r-   r7   c                      e Zd ZdZy)UnsupportedErrorzMarkup is unsupported in LaTeXN)r8   r9   r:   categoryr,   r-   r.   r=   r=   A   s    /Hr-   r=   c                  z     e Zd ZU dZddddgddifddgdd	ifd
dgddifffZi Zded<   ded<   d fdZddZ xZ	S )LaTeXWriter)sphinxlatexzLaTeX writer options zDocument namez	--docnamedefaultzDocument classz
--docclassmanualAuthorz--authordict[str, Any]settings_defaultsr    themec                0    t         |           || _        y N)super__init__builder)selfrM   	__class__s     r.   rL   zLaTeXWriter.__init__R   s    r-   c                    | j                   j                  | j                  | j                   | j                        }| j                  j	                  |       t        t        |      j                         | _        y rJ   )	rM   create_translatordocumentrH   	walkaboutr	   LaTeXTranslatorastextoutput)rN   visitors     r.   	translatezLaTeXWriter.translateV   sO    ,,00djjY(?G4;;=r-   )rM   r   returnNone)rY   rZ   )
r8   r9   r:   	supportedsettings_specrG   __annotations__rL   rX   __classcell__rO   s   @r.   r@   r@   E   sf     I+R	;-)R9	L>Ix+@A	J<)R12 M
 )+~*L>r-   r@   c                  N    e Zd ZdZd	dZd
dZddZddZddZ	 d	 	 	 	 	 ddZ	y)TablezA table datac                n   g | _         g | _        |j                  dd      | _        |j                  dg       | _        g | _        d| j                  v r| j
                  j                  d       nSd| j                  v r| j
                  j                  d       n)d| j                  v r| j
                  j                  d       d| j                  v r| j
                  j                  d       n)d| j                  v r| j
                  j                  d       d	| _        d
| _        d| j
                  v sd| j
                  v rd
| _	        nd| j
                  v rd| _	        nd | _	        g | _
        d| _        d| _        d| _        g | _        g | _        d	| _        d	| _        t%        t&              | _        d	| _        y )NalignrC   classesstandard
borderlessbooktabsnocolorrows	colorrowsr   rB   |F)headerbodygetrc   rd   stylesappendcolcountcolspeccolsep	colwidthshas_problematichas_oldproblematichas_verbatimcaptionstubscolrowr   intcellscell_idrN   nodes     r.   rL   zTable.__init__a   si   !#!	XXgy1
"&((9b"9!#%KKz*T\\)KK|,4<<'KKz*DLL(KK}-DLL(KK{+$(C&(DK4;;&DKDK$&$"'!"$ "
  2=S1A
r-   c                @    | j                   dkD  xs d| j                  v S )z5True if and only if table uses longtable environment.   	longtable)rz   rd   rN   s    r.   is_longtablezTable.is_longtable   s    xx"};t|| ;;r-   c                    | j                         ry| j                  ry| j                  ry| j                  s| j                  rd| j
                  v ryy)zReturns the LaTeX environment name for the table.

        The class currently supports:

        * longtable
        * tabular
        * tabulary
        r   tabulartabularycolwidths-given)r   rv   rq   rt   rs   rd   r   s    r.   get_table_typezTable.get_table_type   sJ     \\!!dnn9Jdll9Zr-   c                   | j                   r| j                   S | j                  }|J | j                  rad| j                  v rSt	        | j                        }| j                  D cg c]	  }d||fz   }}d| |j                  |       | dt        z   S | j                  r$d|| j                  | j                  |fz  t        z   S | j                         dk(  r"d|z   d|z   | j                  z  z   dz   t        z   S | j                  r$d|| j                  | j                  |fz  t        z   S d|z   d|z   | j                  z  z   dz   t        z   S c c}w )	a  Returns a column spec of table.

        This is what LaTeX calls the 'preamble argument' of the used table environment.

        .. note::

           The ``\X`` and ``T`` column type specifiers are defined in
           ``sphinxlatextables.sty``.
        r   z
\X{%d}{%d}{}z{%s*{%d}{\X{1}{%d}%s}}r   Tl)rq   rr   rs   rd   sumjoinCRrt   rp   r   ru   )rN   _colseptotalwidthcolspecss        r.   get_colspeczTable.get_colspec   sf    <<<<++""">>/4<<?'EDHNNS56SHSyh!7 8	DrII!!,04w0H HJLM M  "j0=S7]dmm$CDsJROO$$,04w0H HJLM M =S7]dmm$CDsJROO Ts   &Ec                8   | xj                   dz  c_         t        |      D ]w  }t        |      D ]g  }| j                  | j                  |z   | j                  |z   f   dk(  sJ | j                   | j                  | j                  |z   | j                  |z   f<   i y y)zsAdds a new cell to a table.

        It will be located at current position: (``self.row``, ``self.col``).
           r   N)r}   ranger|   rz   ry   )rN   heightr   ry   rz   s        r.   add_cellzTable.add_cell   s    
 	< 	LCV} Lzz488c>488c>"BCqHHH?C||

DHHsNDHHsN;<L	Lr-   Nc                t    	 || j                   }|| j                  }t        | ||      S # t        $ r Y yw xY w)zReturns a cell object (i.e. rectangular area) containing given position.

        If no option arguments: ``row`` or ``col`` are given, the current position;
        ``self.row`` and ``self.col`` are used to get a cell object by default.
        N)rz   ry   	TableCell
IndexError)rN   rz   ry   s      r.   cellz
Table.cell   sD    	{hh{hhT3,, 		s   (+ 	77r   r   rY   rZ   )rY   boolrY   str)r   r{   r   r{   rY   rZ   )NN)rz   
int | Nonery   r   rY   zTableCell | None)
r8   r9   r:   r;   rL   r   r   r   r   r   r,   r-   r.   ra   ra   ^   sC    %N<(P>	L 9=+5	r-   ra   c                  <    e Zd ZdZddZedd       Zedd       Zy)r   zData of a cell in a table.c                   |j                   ||f   dk(  rt        || _        |j                   ||f   | _        || _        || _        |j                   | j                  dz
  | j
                  f   | j                  k(  rK| xj                  dz  c_        |j                   | j                  dz
  | j
                  f   | j                  k(  rK|j                   | j                  | j
                  dz
  f   | j                  k(  rL| xj
                  dz  c_        |j                   | j                  | j
                  dz
  f   | j                  k(  rKy y Nr   r   )r|   r   tabler}   rz   ry   )rN   r   rz   ry   s       r.   rL   zTableCell.__init__   s    ;;Sz"a'
{{C:. kk488a<23t||CHHMH kk488a<23t||Ckk488TXX\23t||CHHMH kk488TXX\23t||Cr-   c                   d}| j                   j                  | j                  | j                  |z   f   | j                  k(  rE|dz  }| j                   j                  | j                  | j                  |z   f   | j                  k(  rE|S )zReturns the cell width.r   r   r   r|   rz   ry   r}   )rN   r   s     r.   r   zTableCell.width   ss     jj$((U*:;<LQJE jj$((U*:;<Lr-   c                   d}| j                   j                  | j                  |z   | j                  f   | j                  k(  rE|dz  }| j                   j                  | j                  |z   | j                  f   | j                  k(  rE|S )zReturns the cell height.r   r   r   )rN   r   s     r.   r   zTableCell.height   ss     jj6 1488<=MaKF jj6 1488<=Mr-   N)r   ra   rz   r{   ry   r{   rY   rZ   )rY   r{   )r8   r9   r:   r;   rL   propertyr   r   r,   r-   r.   r   r      s2    $    r-   r   c                0    t        j                  dd|       S )z#Adjust spacing after abbreviations.z
\.(?=\s|$)z.\@)resub)texts    r.   escape_abbrr      s    66-..r-   c                l   t        j                  d|       }|st        | }|j                         dd \  }}|dk(  r:t	        |       |dv rd|z  }|S |dk(  rd|z  }|S |d	k(  rd
t	        |      dz  z  }|S t	        |      |z  dz  }|dv rd|z  }|S |dk(  rd|z  }|S |d	k(  r
d|dz  z  }|S |d| }|S )z4Convert `width_str` with rst length to LaTeX length.z^(\d*\.?\d*)\s*(\S*)$N   d   )rB   pxz%s\sphinxpxdimenptz%sbp%z%.3f\linewidth      Y@z%.5f\sphinxpxdimenz%.5fbpz%.5f\linewidthz.5f)r   match
ValueErrorgroupsfloat)	width_strscaler   resamountunitamount_floats          r.   rstdim_to_latexdimr     s   HH-y9E
C<<>"1%LFD|f:%.C J T\6/C J S[#uV}u'<=C J V}u,u4:',6C J T\\)C
 J	 S[#|e';<C J "#&tf-CJr-   c                      e Zd ZU ded<   dZdZ	 	 	 	 d fdZddZddZddZ	ddd	Z
ddd
ZddZddZddZddZddZddZddZedd       ZddZddZddZddZddZddZddZddZddZddZeZeZ ddZ!ddZ"ddZ#dd Z$dd!Z%dd"Z&dd#Z'dd$Z(dd%Z)dd&Z*dd'Z+dd(Z,dd)Z-dd*Z.dd+Z/dd,Z0dd-Z1dd.Z2dd/Z3dd0Z4dd1Z5dd2Z6dd3Z7dd4Z8dd5Z9dd6Z:dd7Z;dd8Z<dd9Z=dd:Z>dd;Z?dd<Z@dd=ZAdd>ZBdd?ZCdd@ZDddAZEddBZFddCZGddDZHddEZIddFZJddGZKddHZLddIZMddJZNddKZOddLZPddMZQddNZRddOZSddPZTddQZUddRZVddSZWddTZXddUZYddVZZddWZ[ddXZ\ddYZ]ddZZ^dd[Z_dd\Z`dd]Zadd^Zbdd_Zcdd`ZdddaZeddbZfddcZgdddZhddeZiddfZjddgZkddhZlddiZmddjZnddkZoddlZpddmZqddnZrddoZsddpZtddqZuddrZvddsZwddtZxdduZyddvZzeqZ{erZ|euZ}evZ~ddwZddxZddyZddzZdd{Zdd|Zdd}Zdd~ZdddZddZddZddZddZddZddZddZddZddZddZddZddZddZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZeZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZddZeZeZddZddZddZddZddZddZddZddZddÄZddĄZddńZddƄZddǄZddȄZddɄZddʄZdd˄Zdd̄Zdd̈́Zdd΄ZddτZddЄZddфZdd҄ZddӄZddԄZddՄZddքZddׄZdd؄ZddلZddڄZddۄZdd܄Zdd݄ZddބZdd߄ZddZddZddZddZddZ ddZddZddZddZddZddZ xZS (   rT   r   rM   r   Fc                   t         |   ||       g | _        || _        d| _        d| _        d| _        d| _        d| _        d| _	        d| _
        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        g }| j&                  j(                  j+                         | _        t.        d d  | _        | j                  j2                  dk(  r| j0                  j5                  d       d| _        | j8                  j:                  r5	 | j0                  j=                  | j8                  j:                        | _        | j8                  jH                  r| j8                  jJ                  | _%        | jJ                  dkD  rtM        | j0                        tM        t.              k  r/| j6                  dkD  r | xjJ                  | j6                  z  c_%        n"| xjJ                  | j6                  dz
  z  c_%        tO        | jJ                  tM        t.              dz
        | _%        |jQ                  d| jJ                  z         n|jQ                  d       | j8                  jH                  r'| j8                  jR                  r|jQ                  d	       | j8                  jT                  d
vr;d| j8                  jV                  vr#dtX        z   dz   tX        z   dz   | j,                  d<   | j&                  jZ                  | _-        | jZ                  j]                         s3t@        jC                  tE        d      | j8                  jT                         | j^                  }| j`                  jc                  d      r| j`                  jc                  dd      | j6                  z   dz
  }tM        | j0                        tM        t.              k  r| j6                  dkD  r|dz  }|tM        t.              dz
  kD  r0t@        jC                  tE        d             tM        t.              dz
  }d|z  | j,                  d<   te        ||      }| j8                  jH                  r2| j8                  jJ                  dkD  rte        || jJ                  dz
        }|| j^                  kD  rd|z  | j,                  d<   |jc                  d      }|r| jg                  d|      | j,                  d<   | j,                  d   r!|jQ                  d| j,                  d   z         |r!ddji                  |      z  | j,                  d<   | j,                  d   rd| j,                  d   z  | j,                  d<   | j,                  d    r'| j,                  d!xx   d| j,                  d    z   z  cc<   tk        jl                  d"| j8                  jn                  | j8                  jp                  #      | _9        g | _        g | _:        g | _;        d | _<        g | _=        d | _>        g | _?        g | _@        t               | _B        y # t>        $ rO t@        jC                  tE        d      | j8                  j:                  | j                  jF                  fz         Y .w xY w)$Nr   r   Fr%   r$   z+unknown %r toplevel_sectioning for class %rznumfigreset=%snonumfigreset
mathnumfig>   enjafncychapz\usepackage[Sonny]{fncychap}z&\ChNameVar{\Large\normalfont\sffamily}z'\ChTitleVar{\Large\normalfont\sffamily}z%no Babel option known for language %rtocdepthi  r   ztoo large :maxdepth:, ignored.z\setcounter{tocdepth}{%d}z\setcounter{secnumdepth}{%d}secnumdepthcontentsnamez\contentsnamemaxlistdepthzmaxlistdepth=%sz[,%s],sphinxpkgoptionssphinxsetupz\sphinxsetup{%s}extraclassoptionsclassoptionslatexlatex_engine)CrK   rL   rl   rH   in_titlein_production_listin_footnote
in_captionin_termneeds_linetrimmingin_minipageno_latex_floatsfirst_documentthis_is_the_titleliteral_whitespacein_parsed_literalcompact_listfirst_paramin_desc_signaturerM   contextcopyelementsLATEXSECTIONNAMESsectionnamestoplevel_sectioningremovetop_sectionlevelconfiglatex_toplevel_sectioningindexr   loggerwarningr   docclassnumfignumfig_secnum_depthlenminro   math_numfiglanguagelatex_elementsr   babelis_supported_languager   rR   rm   maxbabel_renewcommandr   r   PygmentsBridgepygments_styler   highlighter	descstacktablesnext_table_colspec	bodystackfootnote_restrictedpending_footnotescurfilestacksethandled_abbrs)	rN   rR   rM   rH   r   minsecnumdepthr   r   rO   s	           r.   rL   zLaTeXTranslator.__init__'  s   7+!	
 "#"# !""#!"!& ,,113 .a0::))Y6$$Y/ !";;00]%%++DKK,Q,QR % ;;'+{{'F'FD$''!+ t(()C0A,BB((1,,,0E0EE,,,0E0E0II,+.t/G/G/23D/E/I,K( !''(84;S;S(ST ''8;;$++"9"9##L1KK  4$++"<"<<)H2)M)R*SUW*X)S*TDMM*% \\''
zz//1 NN2EF;;//1 ))==Z( }}((S9D<Q<QQTUUH4$$%,=(>>$$q(A#/0144r"BCD01A5(Dx(ODMM*% :N;;4;;#B#BQ#F 1I1IA1MNND,,,+J+9,:DMM-(  ||N3,0,C,CDTDP-RDMM.) ==(##$5n8U$UV07#((CS:T0TDMM,-==',?$--P]B^,^DMM-(==,-MM.)S-1]];N-O.P P) (66w@Z@ZDHKKD\D\^"$$&#%.2*,37 AC')'*uu  ]r"OP $ E EtzzGZGZ[ \ ]]s   4X AY76Y7c                \    | j                   j                  | j                         || _        y rJ   )r  ro   rl   )rN   newbodys     r.   pushbodyzLaTeXTranslator.pushbody  s    dii(	r-   c                \    | j                   }| j                  j                         | _         |S rJ   )rl   r  pop)rN   rl   s     r.   popbodyzLaTeXTranslator.popbody  s$    yyNN&&(	r-   c                    | j                   j                  dj                  | j                        | j	                         d       | j                  d| j                         S )NrB   )rl   indiceszlatex.tex_t)r   updater   rl   generate_indicesrenderr   s    r.   rU   zLaTeXTranslator.astext  sL    GGDII&,,.
 	 {{=$--88r-   c                f    |r| j                   d   dz   |z   }|rdndd| j                  |      z  z   S )N:\phantomsectionrB   
\label{%s})r  idescape)rN   idwithdocanchors       r.   hypertargetzLaTeXTranslator.hypertarget  s>    ""2&,r1B&,""VXHY8YYYr-   c                P     dj                   fd|d   D              }|rd|z   S |S )NrB   c              3  D   K   | ]  }j                  |d         yw)Fr  N)r   ).0node_idrN   s     r.   	<genexpr>z1LaTeXTranslator.hypertarget_to.<locals>.<genexpr>  s!     \W))'%)@\s    idsr  )r   )rN   r   r  labelss   `   r.   hypertarget_tozLaTeXTranslator.hypertarget_to  s1    \PTUZP[\\%..Mr-   c                *    d| j                  |      z  S )Nz{\hyperref[%s]{r  rN   r  s     r.   	hyperlinkzLaTeXTranslator.hyperlink  s    !DMM"$555r-   c                *    d| j                  |      z  S )Nz\autopageref*{%s}r+  r,  s     r.   hyperpagerefzLaTeXTranslator.hyperpageref  s    #dmmB&777r-   c                V    t        j                  || j                  j                        S rJ   )r   escaper   r   )rN   ss     r.   r1  zLaTeXTranslator.escape  s    4;;#;#;<<r-   c                    dt        |      j                  t              j                  dd      j	                  d      j                  dd      z  S )Nz\detokenize{%s}asciibackslashreplace\r   )r   rX   r   encodedecodereplacer,  s     r.   r  zLaTeXTranslator.idescape  sA    !CG$5$5o$FF7./wGD# 	r-   c                    | j                   d   r d| j                  j                         z  }d}nd}d}| d| d| d| t        z   S )Nmultilingualz\addto\captions%s{r   rB   z\renewcommand{}{)r   r   get_languager   )rN   command
definitionprefixsuffixs        r.   r   z"LaTeXTranslator.babel_renewcommand  sW    ==(*TZZ-D-D-FFFFFF(/'$zl"VHMPRRRr-   c                    d fd}g  j                   j                  }|rӉ j                  j                  j                  j                         D ]  }|j                  D ]  }|j                   d|j                   }t        |t              r||vr3 ||      j                   j                  j                        \  }}|sdj                  d|j                  z  t        z           |||         dj                        S )Nc                t   j                  dt        z          j                  dt        z          t        |       D ]  \  }\  }}|dkD  rj                  dt        z          j                  dj                  |      z  t        z          |D ]  }|d   s	j                  dj	                  |d         z         |d   r&j                  d	j	                  |d         z         j                  d
|d   dj                  |d         dt        z            j                  dt        z          y )Nz\begin{sphinxtheindex}z*\let\bigletter\sphinxstyleindexlettergroupr   z\indexspacez\bigletter{%s}   z%\item\relax\sphinxstyleindexentry{%s}   z\sphinxstyleindexextra{%s}z\sphinxstyleindexpageref{r   r  r   z\end{sphinxtheindex})ro   r   	enumerater1  r7  r  )content	collapsediletterentriesentryretrN   s         r.   generatez2LaTeXTranslator.generate_indices.<locals>.generate  s+   JJ0256JJDrIJ(1'(: I$$FGq5JJ~23

,t{{6/BBRGH$ 	IE 8 JJG#{{584 5 6Qx

#@4;;uUVxCX#XYJJ %a$--a*A CEG H I	I	I JJ.34r-   -z\renewcommand{\indexname}{%s}rB   )rG  z"list[tuple[str, list[IndexEntry]]]rH  r   rY   rZ   )r   latex_domain_indicesrM   envdomainsvaluesr  name
isinstancelistrN  docnamesro   	localnamer   r   )	rN   rN  indices_configdomainindexcls	indexnamerG  rH  rM  s	   `       @r.   r  z LaTeXTranslator.generate_indices  s    	5& 99,,**2299; 1 & 
1H#);;-q @I!.$7$N:$)1&)9)B)B--*/&GY" JJ?(BTBTTWYYZWi0
11 wws|r-   c                D   t        | j                  j                        }| j                  j                  D ]V  }t	        j
                  | j                  j                  ||      }t	        j                  |      sD|j                  ||      c S  |j                  ||      S )Nr   )
r   r   r   templates_pathr   r   rM   confdirexistsr  )rN   template_name	variablesrenderertemplate_dirtemplates         r.   r  zLaTeXTranslator.render  s~     dkk.F.FG KK66 	<Lyy!5!5|!.0H{{8$x;;		< }i88r-   c                :    | j                   r| j                   d   S y)zGet current table.r  N)r  r   s    r.   r   zLaTeXTranslator.table  s     ;;;;r?"r-   c                   | j                   j                  |j                  dd             | j                  dk(  rd| _        n?| j                  dk(  r0| j                  j                  t
        dz   t
        z          d| _        d|v r*| j                  j                  | j                  d             | j                  dz
  | _        y )NdocnamerB   r   r   z	\appendixr  z:doc)	r  ro   rm   r   rl   r   r   r   sectionlevelr~   s     r.   visit_documentzLaTeXTranslator.visit_document  s      )R!89!#"#D  A%IIR,.34"$DIIT--f56 11A5r-   c                     y rJ   r,   r~   s     r.   depart_documentzLaTeXTranslator.depart_document%      r-   c                    | j                   j                  |d          | j                  j                  t        dz   t        z          y )Nrh  z\sphinxstepscope)r  ro   rl   r   r~   s     r.   visit_start_of_filez#LaTeXTranslator.visit_start_of_file(  s7      i1		11B67r-   c                8    | j                   j                          y rJ   )r  r  r~   s     r.   depart_start_of_filez$LaTeXTranslator.depart_start_of_file,  s    r-   c                    | j                   s| xj                  dz  c_        | j                  j                  t               y Nr   )r   ri  rl   ro   	BLANKLINEr~   s     r.   visit_sectionzLaTeXTranslator.visit_section/  s.    %%"		#r-   c                Z    t        | j                  dz
  | j                  dz
        | _        y rs  )r   ri  r   r~   s     r.   depart_sectionzLaTeXTranslator.depart_section4  s*     1 1A 5 $ 5 5 9;r-   c                :    | j                   j                  d       y )Nz{\color{red}\bfseries{}rl   ro   r~   s     r.   visit_problematicz!LaTeXTranslator.visit_problematic8  s    		34r-   c                :    | j                   j                  d       y Nr   ry  r~   s     r.   depart_problematicz"LaTeXTranslator.depart_problematic;      		r-   c                d    d| _         | j                  j                  t        dz   t        z          y )Nr   z\begin{sphinxShadowBox}r   rl   ro   r   r~   s     r.   visit_topiczLaTeXTranslator.visit_topic>  s'    		882=>r-   c                V    d| _         | j                  j                  dt        z          y )Nr   z\end{sphinxShadowBox}r  r~   s     r.   depart_topiczLaTeXTranslator.depart_topicB  s"    		1B67r-   c                     y rJ   r,   r~   s     r.   visit_glossaryzLaTeXTranslator.visit_glossaryH  rm  r-   c                     y rJ   r,   r~   s     r.   depart_glossaryzLaTeXTranslator.depart_glossaryK  rm  r-   c                    | j                   j                  t               | j                   j                  dt        z          d| _        y )Nz\begin{productionlist}r   )rl   ro   rt  r   r   r~   s     r.   visit_productionlistz$LaTeXTranslator.visit_productionlistN  s4    		#		2R78"#r-   c                V    | j                   j                  dt        z          d| _        y )Nz\end{productionlist}r   )rl   ro   rt  r   r~   s     r.   depart_productionlistz%LaTeXTranslator.depart_productionlistS  s"    		09<="#r-   c                   |d   r`|d   }| j                   j                  | j                  d|z                | j                   j                  d| j                  |      z         y | j                   j                  d       y )N	tokennamezgrammar-token-z\production{%s}{z\productioncont{)rl   ro   r   r7  )rN   r   tns      r.   visit_productionz LaTeXTranslator.visit_productionW  sj    k"BIIT--.>.CDEII04;;r?BCII01r-   c                H    | j                   j                  dt        z          y r|  rl   ro   r   r~   s     r.   depart_productionz!LaTeXTranslator.depart_production_  s    		r"r-   c                T    | j                   j                  | j                  d          y )N
transition)rl   ro   r   r~   s     r.   visit_transitionz LaTeXTranslator.visit_transitionb  s    		|45r-   c                     y rJ   r,   r~   s     r.   depart_transitionz!LaTeXTranslator.depart_transitione  rm  r-   c                   |j                   }t        |t        j                        rt        j
                  t        |t        j                        r| j                  rt        |j                        dk7  rGt        |j                  d   t        j                        s t        j                  t        d      |       | j                  d   s,| j                  |j!                               | j                  d<   d| _        t        j
                  d}t#        |j%                  t        j&                              r:d| j                  dj)                  t+        |      j-                                     z  }	 | j.                  j1                  d	| j2                  | j4                      | d
       | j8                  j1                  dt:        z   | j=                  |j                         z          d| _$        y t        |t        j>                        rE| j.                  j1                  d       | j8                  j1                  dt:        z          d| _$        y t        |t        j@                        rE| j.                  j1                  d       | j8                  j1                  dt:        z          d| _$        y t        |t        jB                        rE| j.                  j1                  d
       | j8                  j1                  dt:        z          d| _$        y t        |t        jD                        r| jG                  g        d| _$        y t        j                  t        d      |       | j.                  j1                  d       | j8                  j1                  dt:        z          d| _$        y # t6        $ r2 | j.                  j1                  d	| j2                  d    | d
       Y 5w xY w)Nr   r   z(document title is not a single Text nodelocationtitlerB   [%s] r6  r   r  r   z\sphinxstyletopictitle{z\sphinxstylesidebartitle{zJencountered title node not in section, topic, table, admonition or sidebarz\sphinxstyleothertitle{)%parentrU  r   seealsor
   SkipNoder%   r   r   childrenr   r   r   r   r   r1  rU   anyfindallimager   r   splitrl   ro   r   ri  r   r   r   r)  topicsidebar
Admonitionr   r  r   )rN   r   r  shorts       r.   visit_titlezLaTeXTranslator.visit_titleh  s   fh../.. femm,%%t}}%*:dmmA>N>Cjj4JNN2&P#Q,0 # 2}}W- .2[[-GDMM'*)*&nn$E4<<,-$++chh|D7I7O7O7Q.R"SSH		  Ad&7&78I8I&J%KE7RT!UV LLb4+>+>t{{+K KL& % ,II78LLb)   .II9:LLb)   0 01IIS!LLb)  ,MM"  NN2 6 7$(  * II78LLb)-  H		  Ad&7&7&;%<UG2!FGHs   48N' '7O"!O"c                   d| _         t        |j                  t        j                        r.| j                  J | j                         | j                  _        y | j                  j                  | j                  j                                y Nr   )r   rU  r  r
   r   r  rw   rl   ro   r   r  r~   s     r.   depart_titlezLaTeXTranslator.depart_title  s\    dkk5;;/::)))!%DJJIIT\\--/0r-   c                    t        |j                  t        j                        r>| j                  j                  d       | j                  j                  dt        z          y | j                  j                  d       y )Nz\sphinxstylesidebarsubtitle{r   rB   )rU  r  r
   r  rl   ro   r   r   r~   s     r.   visit_subtitlezLaTeXTranslator.visit_subtitle  sO    dkk5==1II<=LLb)LL#r-   c                j    | j                   j                  | j                  j                                y rJ   rl   ro   r   r  r~   s     r.   depart_subtitlezLaTeXTranslator.depart_subtitle  !    		))+,r-   c                x   | j                   j                  dk(  rB| j                  j                  t               | j                  j                  dt
        z          nA| j                  j                  t               | j                  j                  dt
        z          | j                  rd| j                  _        y y )Nfootnotez&\begin{savenotes}\begin{fulllineitems}z\begin{fulllineitems}T)r   latex_show_urlsrl   ro   rt  r   r   rt   r~   s     r.   
visit_desczLaTeXTranslator.visit_desc  s    ;;&&*4IIY'IIFKLIIY'II5:;::)-DJJ& r-   c                F   | j                   r)| j                  j                  t        dz          d| _         | j                  j
                  dk(  r*| j                  j                  t        dz   t        z          y | j                  j                  t        dz   t        z          y )N\pysigstopsignaturesFr  z"\end{fulllineitems}\end{savenotes}z\end{fulllineitems})r   rl   ro   r   r   r  rt  r~   s     r.   depart_desczLaTeXTranslator.depart_desc  sw    !!IIR"99:%*D";;&&*4IIR"GG)STIIR"889DEr-   c                "   dd}dd}d| _         |D ]X  }t        |t        j                        rd| _          ||      }t        |t        j                        sJ  ||      } ||      }|rJ|r$| j
                  j                  t        dz           y | j
                  j                  t        dz           y |r$| j
                  j                  t        dz           y | j
                  j                  t        dz           y t        |t        j                        s ||      r$| j
                  j                  t        d	z           y | j
                  j                  t        d
z           y  | j
                  j                  t        dz          y )Nc                    	 | j                   | j                   j                  |       dz      S # t        t        f$ r Y y w xY wrs  )r  r   AttributeErrorr   es    r.   next_siblingz;LaTeXTranslator._visit_signature_line.<locals>.next_sibling  s?    xxq 1A 566"J/ s   *- ??c                $    | j                  d      S )Nmulti_line_parameter_list)rm   r  s    r.   has_multi_linez=LaTeXTranslator._visit_signature_line.<locals>.has_multi_line  s    55455r-   FTz+\pysigwithonelineperargwithonelinepertparg{z)\pysiglinewithargsretwithonelinepertparg{z$\pysigwithonelineperargwithtypelist{z"\pysiglinewithargsretwithtypelist{z\pysigwithonelineperarg{z\pysiglinewithargsret{z\pysigline{)r  r   rY   Node | None)r  r   rY   r   )has_tp_listrU  r   desc_type_parameter_listdesc_parameterlistrl   ro   r   )rN   r   r  r  childarglistmulti_tp_listmulti_arglists           r.   _visit_signature_linez%LaTeXTranslator._visit_signature_line  s`   		6 ! "	2E%!B!BC#' 
 'u-!'8+F+FGGG .u 5 .w 7 $		((.\)\]  		((.Z)Z[ 	 %		((.U)UV  		((.S)ST%!<!<=!%(II$$R*E%EF  II$$R*C%CD?"	2D IIR.01r-   c                :    | j                   j                  d       y r|  ry  r~   s     r.   _depart_signature_linez&LaTeXTranslator._depart_signature_line  r~  r-   c                   d}|j                   d   dk7  r#|d   r|d   D ]  }|| j                  |      z  } | j                  j                  |       | j                  s)d| _        | j                  j                  t
        dz          |j                  d      s| j                  |       y | j                  j                  t
        dz          y )	NrB   objtypedescriber'  Tz\pysigstartsignaturesis_multilinez\pysigstartmultiline)r  r   rl   ro   r   r   rm   r  )rN   r   hyperr  s       r.   visit_desc_signaturez$LaTeXTranslator.visit_desc_signature  s    ;;y!Z/DK5k .))"--.		%%%)D"IIR"::;xx'&&t,IIR"99:r-   c                    |j                  d      s| j                  |       y | j                  j                  t        dz          y )Nr  z\pysigstopmultiline)rm   r  rl   ro   r   r~   s     r.   depart_desc_signaturez%LaTeXTranslator.depart_desc_signature  s4    xx'''-IIR"889r-   c                &    | j                  |       y rJ   )r  r~   s     r.   visit_desc_signature_linez)LaTeXTranslator.visit_desc_signature_line
      ""4(r-   c                &    | j                  |       y rJ   )r  r~   s     r.   depart_desc_signature_linez*LaTeXTranslator.depart_desc_signature_line  s    ##D)r-   c                r    | j                   sJ | j                  j                  t        dz          d| _         y )Nr  F)r   rl   ro   r   r~   s     r.   visit_desc_contentz"LaTeXTranslator.visit_desc_content  s1    %%%%		556!&r-   c                     y rJ   r,   r~   s     r.   depart_desc_contentz#LaTeXTranslator.depart_desc_content  rm  r-   c                :    | j                   j                  d       y )N\sphinxcode{\sphinxupquote{ry  r~   s     r.   visit_desc_inlinez!LaTeXTranslator.visit_desc_inline  s    		78r-   c                :    | j                   j                  d       y N}}ry  r~   s     r.   depart_desc_inlinez"LaTeXTranslator.depart_desc_inline      		r-   c                d    | j                   j                  d       | xj                  dz  c_        y )N\sphinxbfcode{\sphinxupquote{r   rl   ro   r   r~   s     r.   visit_desc_namezLaTeXTranslator.visit_desc_name!  s&    		9:1$r-   c                d    | j                   j                  d       | xj                  dz  c_        y Nr  r   r  r~   s     r.   depart_desc_namez LaTeXTranslator.depart_desc_name%  %    		1$r-   c                d    | j                   j                  d       | xj                  dz  c_        y )Nr  r   r  r~   s     r.   visit_desc_addnamez"LaTeXTranslator.visit_desc_addname)  s&    		781$r-   c                d    | j                   j                  d       | xj                  dz  c_        y r  r  r~   s     r.   depart_desc_addnamez#LaTeXTranslator.depart_desc_addname-  r  r-   c                     y rJ   r,   r~   s     r.   visit_desc_typezLaTeXTranslator.visit_desc_type1  rm  r-   c                     y rJ   r,   r~   s     r.   depart_desc_typez LaTeXTranslator.depart_desc_type4  rm  r-   c                :    | j                   j                  d       y )Nz{ $\rightarrow$ ry  r~   s     r.   visit_desc_returnsz"LaTeXTranslator.visit_desc_returns7      		,-r-   c                :    | j                   j                  d       y r|  ry  r~   s     r.   depart_desc_returnsz#LaTeXTranslator.depart_desc_returns:  r  r-   c                   d| _         d| _        d| _        d| _        |j                  D cg c]  }t        ||       c}| _        t        | j                        | _        d| _	        |j                  dd      | _        yc c}w )aK  Visit a signature parameters or type parameters list.

        The *parameter_group* value is the type of a child node acting as a required parameter
        or as a set of contiguous optional parameters.

        The caller is responsible for closing adding surrounding LaTeX macro argument start
        and stop tokens.
        Tr   z\sphinxparamcomma r  FN)is_first_paramoptional_param_levelparams_left_at_levelparam_group_indexr  rU  list_is_required_paramr   required_params_leftparam_separatorrm   r  )rN   r   parameter_groupcs       r.   _visit_sig_parameter_listz)LaTeXTranslator._visit_sig_parameter_list=  s{     #$%!$%!!" PT}}&]!z!_'E&]#$'(C(C$D!4)-2Mu)U&	 '^s   A?c                    | j                   s| j                  j                  d       | j                  |t        j
                         y Nr<  )r  rl   ro   r  r   desc_parameterr~   s     r.   visit_desc_parameterlistz(LaTeXTranslator.visit_desc_parameterlistR  s3    IIT"&&tX-D-DEr-   c                :    | j                   j                  d       y r	  ry  r~   s     r.   depart_desc_parameterlistz)LaTeXTranslator.depart_desc_parameterlistX      		r-   c                z    | j                   j                  d       | j                  |t        j                         y r	  )rl   ro   r  r   desc_type_parameterr~   s     r.   visit_desc_type_parameter_listz.LaTeXTranslator.visit_desc_type_parameter_list\  s*    		&&tX-I-IJr-   c                :    | j                   j                  d       y r	  ry  r~   s     r.   depart_desc_type_parameter_listz/LaTeXTranslator.depart_desc_type_parameter_lista  r  r-   c                t   | j                   rd| _         n=| j                  s1| j                  s%| j                  j	                  | j
                         | j                  dk(  r| xj                  dz  c_        n| xj                  dz  c_        |j                  d      s| j                  j	                  |       y y )NFr   r   noemph)	r  r  r  rl   ro   r  r  r   hasattr)rN   r   parameter_macros      r.   _visit_sig_parameterz$LaTeXTranslator._visit_sig_parametere  s    "'D//8Q8QIIT112$$)%%*%%%*%||H%II_- &r-   c                >   |j                  d      s| j                  j                  d       | j                  | j                     }| j
                  r| j                  dz   t        | j                        k(  }| xr | j                  | j                  dz      }| j                  dkD  }|s|r[|s|rW| j                  j                  | j                         n1| j                  r%| j                  j                  | j                         |r| xj                  dz  c_        y y )Nr  r   r   r   )
r  rl   ro   r  r  r  r   r   r  r  )rN   r   is_requiredis_last_groupnext_is_requiredopt_param_left_at_levels         r.   _depart_sig_parameterz%LaTeXTranslator._depart_sig_parameterq  s    ||H%IIS!11$2H2HI)) 22Q6#d>Y>Y:ZZM!! L//0F0F0JK  '+&?&?!&C#&+=L\		  !5!56&&IIT112""a'" r-   c                (    | j                  |d       y )Nz\sphinxparam{r  r~   s     r.   visit_desc_parameterz$LaTeXTranslator.visit_desc_parameter  s    !!$(89r-   c                &    | j                  |       y rJ   r  r~   s     r.   depart_desc_parameterz%LaTeXTranslator.depart_desc_parameter  r  r-   c                (    | j                  |d       y )Nz\sphinxtypeparam{r   r~   s     r.   visit_desc_type_parameterz)LaTeXTranslator.visit_desc_type_parameter  s    !!$(<=r-   c                &    | j                  |       y rJ   r#  r~   s     r.   depart_desc_type_parameterz*LaTeXTranslator.depart_desc_type_parameter  r  r-   c           	        t        |j                  D cg c]  }t        |t        j                         c}      | _        | xj                  dz  c_        | j                  | _        | j                  r| j                  r| j                  j                  d       y | j                  rA| j                  j                  | j                         | j                  j                  d       y | j                  j                  d       | j                  j                  | j                         y | j                  j                  d       y c c}w )Nr   z\sphinxoptional{)r   r  rU  r   r
  r   r  max_optional_param_levelr  r  rl   ro   r  r  )rN   r   r  s      r.   visit_desc_optionalz#LaTeXTranslator.visit_desc_optional  s    $'26--)A-. *4Ax7N7N)O )A %B!!!Q&!(,(A(A%))""		  !45**		  !5!56		  !45		  !45		  !5!56II01)As   !Ec                H   | xj                   dz  c_         | j                  rA| j                   | j                  dz
  k(  r%| j                  j	                  | j
                         | j                  j	                  d       | j                   dk(  r| xj                  dz  c_        y y )Nr   r   r   )r  r  r*  rl   ro   r  r  r~   s     r.   depart_desc_optionalz$LaTeXTranslator.depart_desc_optional  s    !!Q&!)) ((D,I,IA,MM		  !5!56		$$)""a'" *r-   c                :    | j                   j                  d       y )Nr  ry  r~   s     r.   visit_desc_annotationz%LaTeXTranslator.visit_desc_annotation  s    		9:r-   c                :    | j                   j                  d       y r  ry  r~   s     r.   depart_desc_annotationz&LaTeXTranslator.depart_desc_annotation  r  r-   c                    | j                   j                  t               | j                   j                  dt        d   z  t        z          y )Nz\begin{sphinxseealso}{%s:}r  )rl   ro   rt  r   r   r~   s     r.   visit_seealsozLaTeXTranslator.visit_seealso  s8    		#		69I)9TTWYYZr-   c                    | j                   j                  t               | j                   j                  d       | j                   j                  t               y )Nz\end{sphinxseealso})rl   ro   rt  r~   s     r.   depart_seealsozLaTeXTranslator.depart_seealso  s9    		#		/0		#r-   c                   t        |      dk(  r-|j                         dt        d      fv rt        j                  | j
                  j                  d       | j                  j                  dt        z          d| _	        y )Nr   	Footnotesz\subsubsection*{r   )
r   rU   r   r
   r  rl   ro   r   r   r   r~   s     r.   visit_rubriczLaTeXTranslator.visit_rubric  s]    t9>dkkmQ{^/LL.. 		,-C"H%r-   c                x    d| _         | j                  j                  | j                  j	                                y r  )r   rl   ro   r   r  r~   s     r.   depart_rubriczLaTeXTranslator.depart_rubric  s(    		))+,r-   c                   | xj                   dz  c_         t        t        j                  |d         }| j                  r-| j
                  j                  d|j                         z         nN| j
                  j                  dt        z          | j
                  j                  d|j                         z         d|v r	 | j
                  j                  dt        z          y )Nr   r   z\begin{footnote}[%s]r   referred\sphinxAtStartFootnote)	r   r	   r
   labelr   rl   ro   rU   r   rN   r   r>  s      r.   visit_footnotezLaTeXTranslator.visit_footnote  s    AU[[$q'*!!II4u||~EFIIS2X&II4u||~EF		2R78r-   c                    | j                   r| j                  j                  d       n=| j                  j                  dt        z          | j                  j                  d       | xj                  dz  c_        y )Nz\end{footnote}r   r   )r   rl   ro   r   r   r~   s     r.   depart_footnotezLaTeXTranslator.depart_footnote  sX    !!II./IIS2X&II./Ar-   c                "    t         j                  rJ   r
   r  r~   s     r.   visit_labelzLaTeXTranslator.visit_label      nnr-   c                6    |d   | _         t        j                  )Nspec)r  r
   r  r~   s     r.   visit_tabular_col_specz&LaTeXTranslator.visit_tabular_col_spec  s    "&v,nnr-   c                   t        | j                        dk(  ri| j                  J | j                  j                         dk(  r,t	        | j
                  d   d|j                  xs dd      d| j                  _        nDt        | j                        dkD  r,t	        | j
                  d   d|j                  xs dd	      t        |      }| j                  j                  |       |j                  Nd
d| j                  j                  j                  vxr" d| j                  j                  j                  vz  |_
        | j                  rd| j                  z  t        z   |_        d
|j                   v r#|j"                  j                  d       d
|_
        n"|j"                  j                  d       d|_
        d|j%                  dg       v r t&        j)                  t+        d      |       d | _        y )Nr   r   r  r  rB   z-: longtable does not support nesting a table.Tr   z+: deeply nested tables are not implemented.rj   rg   rf   z{%s}vlinesnovlinesr   rd   zGboth tabularcolumns and :widths: option are given. :widths: is ignored.r  )r   r  r   r   r=   r  linert   ra   ro   rr   rM   r   latex_table_styler  r   rq   rn   rm   r   infor   )rN   r   r   s      r.   visit_tablezLaTeXTranslator.visit_table  s   t{{q ::)))zz((*k9&&&r*DIIOO=> >
 *.DJJ&!"""2&		R9: : d5!<<$,,"5"5"G"GG N (;(;(M(MMEL """T%<%<<rAEMemm###H-"##J/! DHHY$;;B  6 7AE  G"&r-   c                   | j                   J | j                  |      }| j                   j                         }| j                  |dz   | j                   |d      }| j                  j                  t               | j                  j                  |       | j                  j                  t               | j                  j                          y )Nz.tex_t)r   r(  )
r   r)  r   r  rl   ro   rt  r   r  r  )rN   r   r(  
table_typer   s        r.   depart_tablezLaTeXTranslator.depart_table  s    zz%%%$$T*ZZ..0
J1&*jjFCE		#				r-   c                8   | j                   J | j                   xj                  dz  c_        d|v r(| j                   j                  j                  |d          d|v r=| j                   j                  j                  | j                   j                  dz
         y y )Nr   colwidthstub)r   rp   rs   ro   rx   r~   s     r.   visit_colspeczLaTeXTranslator.visit_colspec  s    zz%%%

q JJ  ''Z(89T>JJ##DJJ$7$7!$;< r-   c                     y rJ   r,   r~   s     r.   depart_colspeczLaTeXTranslator.depart_colspec  rm  r-   c                     y rJ   r,   r~   s     r.   visit_tgroupzLaTeXTranslator.visit_tgroup  rm  r-   c                     y rJ   r,   r~   s     r.   depart_tgroupzLaTeXTranslator.depart_tgroup"  rm  r-   c                j    | j                   J | j                  | j                   j                         y rJ   )r   r  rk   r~   s     r.   visit_theadzLaTeXTranslator.visit_thead%  s(    zz%%%djj''(r-   c                    | j                   r,| j                   d   dk(  r| j                   j                          | j                          y Nr  \sphinxhlinerl   r  r  r~   s     r.   depart_theadzLaTeXTranslator.depart_thead*  .    992/9IIMMOr-   c                j    | j                   J | j                  | j                   j                         y rJ   )r   r  rl   r~   s     r.   visit_tbodyzLaTeXTranslator.visit_tbody/  s&    zz%%%djjoo&r-   c                    | j                   r,| j                   d   dk(  r| j                   j                          | j                          y ra  rc  r~   s     r.   depart_tbodyzLaTeXTranslator.depart_tbody4  re  r-   c                |   | j                   J d| j                   _        | j                   j                  }	 | j                   j                  | j                   j                  | j                   j                        }|y | j                   xj                  |j
                  z  c_        |j                  r| j                  j                  d       |j
                  dk(  r)| j                  j                  d|j                  z         n6| j                  j                  d|j
                  |||j                  fz         )Nr   &r   \sphinxtablestrut{%d}z.\multicolumn{%d}{%sl%s}{\sphinxtablestrut{%d}})	r   ry   rr   r   rz   r   rl   ro   r}   )rN   r   r   r   s       r.   	visit_rowzLaTeXTranslator.visit_row9  s    zz%%%

**##::??4::>>4::>>BD|JJNNdjj(Nxx		  %zzQ		  !9DLL!HI		  !R"&**gw!M"N O r-   c                   | j                   J | j                  j                  dt        z          t	        | j                   j
                        D cg c]2  }| j                   j                  | j                   j                  |      4 }}|D cg c]5  }|j                  |j                  z   | j                   j                  dz   k(  7 }}t        |      r| j                  j                  d       nd}|j                  dg       |d   du rd}|| j                   j
                  k  rm||   du rf||dz
     j                  ||   j                  k7  r| j                  j                  d|z         |dz  }|| j                   j
                  k  r||   du rf|| j                   j
                  k  r||d  j                  d      }| j                  j                  d|dz   ||z   fz         ||z  }|dz  }|| j                   j
                  k  rm||   du rf||dz
     j                  ||   j                  k7  r| j                  j                  d|z         |dz  }|| j                   j
                  k  r||   du rf|| j                   j
                  k  r| j                  j                  d| j                   j
                  z         | j                   xj                  dz  c_        y c c}w c c}w )	Nz\\r   rb  r   Fz\sphinxvlinecrossing{%d}z\sphinxcline{%d-%d}z\sphinxfixclines{%d})r   rl   ro   r   r   rp   r   rz   r   allextendr}   r   )rN   r   rI  r|   r   
underlinedjs          r.   
depart_rowzLaTeXTranslator.depart_rowM  s   zz%%%		$=B4::CVCV=WX3XX"') hh,

0BB )
 )z?II_-Aug&!}%$**---*Q-52HQU|++uQx/?/??		(()Dq)HIFA $**---*Q-52H djj)))qrN((/		  !71q5!a%.!HIQQ$**---*Q-52HQU|++uQx/?/??		(()Dq)HIFA $**---*Q-52H djj))) II4tzz7J7JJK

!3 Y)s   7K%:K*c                :   | j                   J | j                   j                  dkD  r| j                  j                  d       | j                   j	                  |j                  dd      dz   |j                  dd      dz          | j                   j                         }|J d}| j                   j                  }|j                  dkD  r| j                  j                  r| j                   j                  dk(  r3| j                  j                  d|j                  ||fz  t        z          n1| j                  j                  d|j                  |fz  t        z          d	t        z   }n8| j                  j                  d
|j                  z  t        z          dt        z   }|j                  dkD  rG| j                  j                  d|j                  |j                  fz  t        z          d	t        z   |z   }|j                  dkD  s|j                  dkD  rb| j                  j                  d|j                  | j                   j                  fz  t        z          dt        z   dz   t        z   |z   }d| _        t!        t#        |j%                  t&        j(                                    dk\  rd| j                   _        t-        |j.                  j.                  t&        j0                        s"|j                  | j                   j2                  v rZt!        |      dk(  r1t-        |d   t&        j(                        r|j5                         dk(  rn| j                  j                  d       | j                  r| j7                  g        | j8                  j                  |       y )Nr   rk  morerowsr   morecolsrB   z\multicolumn{%d}{%sl%s}{%%z\multicolumn{%d}{l%s}{%%}%z\sphinxstartmulticolumn{%d}%%z\sphinxstopmulticolumnz\sphinxmultirow{%d}{%d}{%%z,\begin{varwidth}[t]{\sphinxcolwidth{%d}{%d}}z\parz7\vskip-\baselineskip\vbox{\hbox{\strut}}\end{varwidth}%r   Tz\sphinxstyletheadfamily )r   ry   rl   ro   r   rm   r   rr   r   r   latex_use_latex_multicolumnr   r   r}   rp   r   r   rV  r  r
   r(   ru   rU  r  theadrx   rU   r  r   )rN   r   r   r   r   s        r.   visit_entryzLaTeXTranslator.visit_entryk  s   zz%%%::>>AIIS!

DHHZ3a7*a9PST9TUzz **##::>{{66::>>Q&II$$%B&*jj'7%C&DFH&I J II$$%@DJJPWCX%X[]%]^)		  !ADJJ!NQS!ST3b8;;?II:dkk4<<=XX[]]^Ri')G::>T[[1_IIL $

DJJ,?,?@ACEF G| '> >@BCELMG&'D#tDLL123q8,0DJJ)dkk((%++6488tzzGWGW;W4yA~*T!Weoo"F4;;=\^K^		  !<=""MM"G$r-   c                   | j                   r`d| _         | j                         }|r,|d   t        k(  r |j                  d       |r|d   t        k(  r | j                  j                  |       | j                  j                  | j                  j                                | j                  J | j                  j                         }|J | j                  xj                  |j                  z  c_
        | j                  j                  }	 | j                  j                         }|y | j                  j                  d       |j                  dk(  r)| j                  j                  d|j                  z         n5| j                  j                  d|j                  ||j                  fz         | j                  xj                  |j                  z  c_
        )Nr   rk  r   rl  z,\multicolumn{%d}{l%s}{\sphinxtablestrut{%d}})r   r  r   r  rl   rp  ro   r   r   r   ry   r   rr   r}   )rN   r   rl   r   r   nextcells         r.   depart_entryzLaTeXTranslator.depart_entry  sr   ""&'D#<<>D 47b= 47b=IIT"		))+,zz%%%zz 

$**$**## zz(HIIS!~~" 		  !9H<L<L!LM 		  !P"*..'8;K;K!L"M NJJNNhnn,N r-   c                   t        t        j                  |d         }t        t        t        j                     |      }| j
                  j                  t               | j
                  j                  dj                  d |D              dz          | j
                  j                  t               t        j                  )Nr   , c              3  <   K   | ]  }|j                           y wrJ   rU   )r$  ns     r.   r&  z-LaTeXTranslator.visit_acks.<locals>.<genexpr>  s     "B!188:"B   .)
r	   r
   bullet_listr   	list_itemrl   ro   rt  r   r  )rN   r   r  
list_itemss       r.   
visit_ackszLaTeXTranslator.visit_acks  s     5,,d1g6(5??3[A
		#		"Bz"BBSHI		#nnr-   c                    | j                   s"| j                  j                  dt        z          | j                  rd| j                  _        y y )Nz\begin{itemize}Tr   rl   ro   r   r   rt   r~   s     r.   visit_bullet_listz!LaTeXTranslator.visit_bullet_list  s;      II/"45::)-DJJ& r-   c                b    | j                   s#| j                  j                  dt        z          y y )Nz\end{itemize}r   rl   ro   r   r~   s     r.   depart_bullet_listz"LaTeXTranslator.depart_bullet_list  s(      II-23 !r-   c                l   dd}dfddt         |            j                         z  }dt         |      dz         j                         z  }t        j                   ||            }|j                  dd      }|j                  dd      }| j                  j                  d	t        z          | j                  j                  d
|d|d|d|d|dt        z          d|v r-| j                  j                  d||d   dz
  fz  t        z          | j                  rd| j                  _        y y )Nc                x    | j                  dd      }d|v r#| j                  dd      t        |       z   dkD  rd}|S )Nenumtyper0   alphastartr      )rm   r   )r   r  s     r.   get_enumtypez;LaTeXTranslator.visit_enumerated_list.<locals>.get_enumtype  s?    xx
H5H("!(<s4y(HB'N#Or-   c                    | yt        | t        j                        r | j                        dz   S  | j                        S r   )rU  r
   enumerated_listr  )r   get_nested_levels    r.   r  z?LaTeXTranslator.visit_enumerated_list.<locals>.get_nested_level  s>    |D%"7"78'4q88'44r-   zenum%sr   r@  rB   rA  r  z\begin{enumerate}z\sphinxsetlistlabels{r<  rw  r  z\setcounter{%s}{%d}T)r   r   rY   r   )r   r   rY   r{   )	r   lowerENUMERATE_LIST_STYLErm   rl   ro   r   r   rt   )	rN   r   r  enumenumnextstyler@  rA  r  s	           @r.   visit_enumerated_listz%LaTeXTranslator.visit_enumerated_list  s   		5 '"24"89??AAg&6t&<q&@AGGII$((d);<(B'(C(		-23		xACEF 	Gd?II3tT']Q=N6OORTTU::)-DJJ& r-   c                H    | j                   j                  dt        z          y )Nz\end{enumerate}r  r~   s     r.   depart_enumerated_listz&LaTeXTranslator.depart_enumerated_list  s    		+b01r-   c                :    | j                   j                  d       y )Nz	\item {} ry  r~   s     r.   visit_list_itemzLaTeXTranslator.visit_list_item  s     			&r-   c                B    | j                   j                  t               y rJ   r  r~   s     r.   depart_list_itemz LaTeXTranslator.depart_list_item      		r-   c                    | j                   j                  dt        z          | j                  rd| j                  _        y y )Nz\begin{description}Trl   ro   r   r   rt   r~   s     r.   visit_definition_listz%LaTeXTranslator.visit_definition_list  s2    		/"45::)-DJJ& r-   c                H    | j                   j                  dt        z          y )Nz\end{description}r  r~   s     r.   depart_definition_listz&LaTeXTranslator.depart_definition_list      		-23r-   c                     y rJ   r,   r~   s     r.   visit_definition_list_itemz*LaTeXTranslator.visit_definition_list_item  rm  r-   c                     y rJ   r,   r~   s     r.   depart_definition_list_itemz+LaTeXTranslator.depart_definition_list_item   rm  r-   c                   | xj                   dz  c_         d}|j                  d      r"d}|d   D ]  }|| j                  |d      z  } |dz  }| j                  j	                  d       | j
                  j	                  |       y )	Nr   rB   r'  r  Fr#  r   z\sphinxlineitem{)r   rm   r   rl   ro   r   )rN   r   ctxr%  s       r.   
visit_termzLaTeXTranslator.visit_term  s    88E?$C; ?t'''>>?t		,-C r-   c                    | j                   j                  | j                  j                                | xj                  dz  c_        y rs  )rl   ro   r   r  r   r~   s     r.   depart_termzLaTeXTranslator.depart_term  s/    		))+,r-   c                :    | j                   j                  d       y )Nz{[}ry  r~   s     r.   visit_classifierz LaTeXTranslator.visit_classifier      		r-   c                :    | j                   j                  d       y )Nz{]}ry  r~   s     r.   depart_classifierz!LaTeXTranslator.depart_classifier  r  r-   c                     y rJ   r,   r~   s     r.   visit_definitionz LaTeXTranslator.visit_definition  rm  r-   c                B    | j                   j                  t               y rJ   r  r~   s     r.   depart_definitionz!LaTeXTranslator.depart_definition  r  r-   c                    | j                   j                  dt        z          | j                  rd| j                  _        y y )Nz \begin{quote}\begin{description}Tr  r~   s     r.   visit_field_listz LaTeXTranslator.visit_field_list  s2    		<rAB::)-DJJ& r-   c                H    | j                   j                  dt        z          y )Nz\end{description}\end{quote}r  r~   s     r.   depart_field_listz!LaTeXTranslator.depart_field_list#  s    		82=>r-   c                     y rJ   r,   r~   s     r.   visit_fieldzLaTeXTranslator.visit_field&  rm  r-   c                     y rJ   r,   r~   s     r.   depart_fieldzLaTeXTranslator.depart_field)  rm  r-   c                *   |j                   j                  |      }|dkD  rt        |j                   t        j                        rwt        |j                   |dz
     t        j
                        sMt        |j                   |dz
     t        j                        s#| j                  j                  dt        z          y |dk(  r+t        |j                   t        j                  t        f      ry | j                  j                  t        dt        z   g       y )Nr   r   	\noindentz\sphinxAtStartPar)r  r   rU  r
   compoundr(   rl   ro   r   r  footnotetextrp  )rN   r   r   s      r.   visit_paragraphzLaTeXTranslator.visit_paragraph2  s    !!$'AI*T[[%..At{{5195uGt{{5195u~~FII\B./aZJt{{U^^\4RS 
 IIb"6";<=r-   c                B    | j                   j                  t               y rJ   r  r~   s     r.   depart_paragraphz LaTeXTranslator.depart_paragraphC  r  r-   c                    | j                   j                  t        dz          | j                  rd| j                  _        y y )N\begin{center}Tr  r~   s     r.   visit_centeredzLaTeXTranslator.visit_centeredF  s2    		//0::)-DJJ& r-   c                H    | j                   j                  t        dz          y )N\end{center}r  r~   s     r.   depart_centeredzLaTeXTranslator.depart_centeredK  s    		o-.r-   c                j   | xj                   dz  c_         |d   }| j                   dkD  r"| j                  j                  dt        z          | j                  j                  d|z   dz   t        z          | j                  j                  dt        z          | j                  rd| j                  _        y y )Nr   ncolumnsz\setlength{\multicolsep}{0pt}z\begin{multicols}{z}\raggedrightzA\begin{itemize}\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}Tr  )rN   r   r  s      r.   visit_hlistzLaTeXTranslator.visit_hlistN  s    Q
#q II=BC		.9<LLrQR		 68:; 	<::)-DJJ& r-   c                r    | xj                   dz  c_         | j                  j                  dt        z          y )Nr   z*\end{itemize}\raggedcolumns\end{multicols}r  r~   s     r.   depart_hlistzLaTeXTranslator.depart_hlistY  s+    Q		FKLr-   c                     y rJ   r,   r~   s     r.   visit_hlistcolzLaTeXTranslator.visit_hlistcol]  rm  r-   c                     y rJ   r,   r~   s     r.   depart_hlistcolzLaTeXTranslator.depart_hlistcol`  s     	r-   c                x    	 t        ||      S # t        $ r" t        j                  t	        d      |       Y y w xY w)Nz&dimension unit %s is invalid. Ignored.)r   r   r   r   r   )rN   r   r   s      r.   latex_image_lengthz"LaTeXTranslator.latex_image_lengthh  s:    	%i77 	NN2FGS	s    (99c                J    t        |j                  t        j                        S )z2Check whether a node represents an inline element.)rU  r  r
   TextElementr~   s     r.   	is_inlinezLaTeXTranslator.is_inlineo  s    $++u'8'899r-   c                   g }g }g }t        |j                  t        j                        }|r| j	                  |j                        }n| j	                  |      }d|v rGd|v r| j                  |d   |d         }n| j                  |d         }|r|j                  d|z         d|v rGd|v r| j                  |d   |d         }n| j                  |d         }|r|j                  d|z         d|v r%|s#|j                  dt        |d         dz  z         d|v rBd	d
ddddd}		 |j                  |	||d   f   d          |j                  |	||d   f   d          | j                  r"|j                  d       |j                  d       |s/|s-|j                  t        dz          |j                  t               |j                          |d   | j                  j                  v r| j                  j                  |d      }
n| j                  ry |d   }
|
j                  d      dk7  ry | j                   j#                  |       d}|rddj%                  |      z  }t'        j(                  |
      \  }}| j*                  r|rd| d| d| d}nd| d| d| d}d|v rd |z   dz   }| j                   j                  |       | j                   j#                  |       y # t        $ r Y w xY w)!Nr   r   zwidth=%sr   z	height=%szscale=%sr   rc   )rB   rB   )z\raisebox{-0.5\height}{r   )z\raisebox{-\height}{r   ){\hspace*{\fill}\hspace*{\fill}})r   r  )r  r   ))r   top)r   middle)r   bottom)r   center)r   left)r   rightr   r   z!{\sphinxunactivateextrasandspace r   r  uriz://r  rB   r  r   z!\lowercase{\sphinxincludegraphicsz}{{z\sphinxincludegraphicsz{{#z{\catcode`\#=12)rU  r  r
   	referencer  r  ro   r   KeyErrorr   r   reverserM   imagesignore_missing_imagesfindrl   rp  r   r   splitextr   )rN   r   prepostinclude_graphics_optionshas_hyperlinkr  whalign_prepostr  optionsbaseextcmds                  r.   visit_imagezLaTeXTranslator.visit_images  s   #% "4;;@t{{3It,Id?$++DM4=I++DM:(//
Q?t$++DNDMJ++DN;(//a@d?+ )//
38g3G%3O1Q Rd? %@=I 88M

=DM)AB1EFM)T']*BCAFG !!JJ;<KKJJrL()KKO;$,,---,,%%d5k2C ))u+C88E?b 		#sxx(@AAGMM#&	c==T 8ytfBseSUVC+G9DbRHC$;$s*S0C				G  s   '8K" "	K/.K/c                     y rJ   r,   r~   s     r.   depart_imagezLaTeXTranslator.depart_image  rm  r-   c                <   | j                   d   }| j                  rd}| j                  rd|v r^| j                  |d         }|r| j                  j                  d|z  t        z          | j                  j                  dt        z          nD| j                  j                  dt        z          | j                  j                  dt        z          t        d |D              r| j                  j                  d       | j                  j                  d	t        z          y |j                  d
d      dv rd }d|v r| j                  |d         }n;t        |d   t        j                        rd|d   v r| j                  |d   d         }| j                  j                  t               | j                  j                  d|d
   dk(  rdndd|xs ddt        z          | j                  j                  d       | j                  j                  dt        z   dz   t        z          y | j                  rE| j                  j                  t        dz          | j                  j                  dt        z          y | j                  j                  t        d|z  z   t        z          | j                  j                  dt        z          t        d |D              r"| j                  j                  dt        z          | j                  j                  dt        z          y )Nfigure_alignHr   z!\begin{sphinxfigure-in-table}[%s]z
\centeringz\begin{sphinxfigure-in-table}c              3  P   K   | ]  }t        |t        j                           y wrJ   rU  r
   rw   r$  r  s     r.   r&  z/LaTeXTranslator.visit_figure.<locals>.<genexpr>       F:eU]]3F   $&z	\capstartz!\end{sphinxfigure-in-table}\relaxrc   rB   )r  r  r   z\begin{wrapfigure}{r  rr   r<  0ptr   z\end{wrapfigure}z6\mbox{}\par\vskip-\dimexpr\baselineskip+\parskip\relaxr  r  z\begin{figure}[%s]c              3  P   K   | ]  }t        |t        j                           y wrJ   r  r  s     r.   r&  z/LaTeXTranslator.visit_figure.<locals>.<genexpr>  r  r  z\end{figure})r   r   r   r  rl   ro   r   r  r   rm   rU  r
   r  rt  r   )rN   r   rc   lengths       r.   visit_figurezLaTeXTranslator.visit_figure  s   n-E::$00g?II$$%IF%RUW%WXII$$]R%78		  !AB!FG		  !34FFF		  .LL Dr IJXXgr"&77F$00g?DGU[[1ga6H00a1AB IIY'II%)']g%=c3FRWY[]^ _II]+LL 3 )!* Y!Z !#!# $ IIR"334LL" 45IIR"7%"??"DEII]R/0FFF		  !23LL" 45r-   c                j    | j                   j                  | j                  j                                y rJ   r  r~   s     r.   depart_figurezLaTeXTranslator.depart_figure  r  r-   c                   | xj                   dz  c_         t        |j                  t              r| j                  j                  d       y | j                  r@t        |j                  t        j                        r| j                  j                  d       y | j                  r5|j                  j                  dk(  r| j                  j                  d       y | j                  j                  d       y )Nr   z\sphinxSetupCaptionForVerbatim{z\captionof{figure}{figurez\sphinxfigcaption{z	\caption{)r   rU  r  captioned_literal_blockrl   ro   r   r
   r  r   tagnamer~   s     r.   visit_captionzLaTeXTranslator.visit_caption  s    1dkk#:;II?@*T[[%,,"GII34ZZDKK//8;II23II\*r-   c                   | j                   j                  d       t        |j                  t        j
                        r6| j                  |j                        }| j                   j                  |       | xj                  dz  c_        y )Nr   r   )rl   ro   rU  r  r
   r  r)  r   )rN   r   r(  s      r.   depart_captionzLaTeXTranslator.depart_caption  sZ    		dkk5<<0((5FIIV$1r-   c                H    | j                   j                  t        dz          y )Nz\begin{sphinxlegend}r  r~   s     r.   visit_legendzLaTeXTranslator.visit_legend  s    		556r-   c                H    | j                   j                  dt        z          y )Nz\end{sphinxlegend}r  r~   s     r.   depart_legendzLaTeXTranslator.depart_legend  s    		.34r-   c                r    | j                   j                  t        dz          | xj                  dz  c_        y )Nz\begin{sphinxadmonition}{note}r   rl   ro   r   r   r~   s     r.   visit_admonitionz LaTeXTranslator.visit_admonition  s+    		??@!r-   c                r    | j                   j                  dt        z          | xj                  dz  c_        y Nz\end{sphinxadmonition}r   r  r~   s     r.   depart_admonitionz!LaTeXTranslator.depart_admonition  +    		2R78!r-   c                    t         |j                     }| j                  j                  t        d|j                  d|dz          | xj
                  dz  c_        y )Nz\begin{sphinxadmonition}{r<  z:}r   )r   r  rl   ro   r   r   r?  s      r.   _visit_named_admonitionz'LaTeXTranslator._visit_named_admonition  sH     .		,,/ / 	0!r-   c                r    | j                   j                  dt        z          | xj                  dz  c_        y r  r  r~   s     r.   _depart_named_admonitionz(LaTeXTranslator._depart_named_admonition  r!  r-   c                     y rJ   r,   r~   s     r.   visit_versionmodifiedz%LaTeXTranslator.visit_versionmodified3  rm  r-   c                     y rJ   r,   r~   s     r.   depart_versionmodifiedz&LaTeXTranslator.depart_versionmodified6  rm  r-   c                D    d fd}}t        |t        j                        r-|j                  d      }t        |t        j                        r-t	        t
         j                  j                  j                  d            }t        |t              ry |j                  |      r|j                  |      ry dv ry dv ry j                  d      r<t              }t        |t        j                        rd   |d   k(  rn |d          j                  dd	      radfd
}t              } ||      r9d   d d  } ||      rF|j                  |d          t        |      } ||      r(nt!        d         }nt!        d         }|D ]
  }	 ||	        y )Nc                   | j                  d      ry | j                  d      ry j                  j                        }|dkD  rIt        j                  |dz
     t        j
                        rj                  j                  t               j                   }j                  j                  j                  | |             y )Nzindex-z	equation-r   r   r#  )
startswithr  r   rU  r
   r(   rl   ro   r   r   r   )r  r   r  r   rN   s      r.   
add_targetz0LaTeXTranslator.visit_target.<locals>.add_target:  s     }}X& }}[) KK%%d+EqyZEAI(>P		  $ &FIIT--b-@Ar-   T)ascendstdrefuri	anonymousrefidismodFc                h    t        | t        j                        xr | j                  d      d   v S )Nr2  r'  )rU  r
   targetrm   )sibr   s    r.   has_dup_labelz3LaTeXTranslator.visit_target.<locals>.has_dup_labeli  s,    !#u||4X9ITRW[9XXr-   r'  )r  r   rY   rZ   )r6  r  rY   r   )rU  r
   r5  	next_noder	   r   rM   rQ  
get_domainHYPERLINK_SUPPORT_NODESget_enumerable_node_typeget_numfig_titlerm   r   r  r   iter)
rN   r   r-  r8  rZ  	prev_noder7  prevr'  r  s
   ``        r.   visit_targetzLaTeXTranslator.visit_target9  s   	B* 	ELL1!++4+8I ELL1 ndll&6&6&A&A%&HIi!89**95&:Q:QR[:\t$88G%d+I)U__5$w-9U\K]:]4=) 88GU#Y !&DT"5k!n#D)JJtG}-(.D $D) 4;'tE{#C 	BrN	r-   c                     y rJ   r,   r~   s     r.   depart_targetzLaTeXTranslator.depart_targetz  rm  r-   c                    | j                   j                  t        dz   t        z          | j                   j                  d       y )Nz\begin{flushright}z---r  r~   s     r.   visit_attributionz!LaTeXTranslator.visit_attribution}  s1    		33b89		r-   c                V    | j                   j                  t        dz   t        z          y )Nz\end{flushright}r  r~   s     r.   depart_attributionz"LaTeXTranslator.depart_attribution  s    		11B67r-   c                b    d fd}dd}|j                  dd      s j                  j                  t               |d   }|D ]  \  }}}}}	d}
|rd}
	 t	        t        |t        ||                  }t	        t        ||            }|dk(  r7	 |\  }}|\  }} j                  j                  d	| d
| d| d
| |
 d
       n<|dk(  rC|\  }}|\  }} j                  j                  d	| d
| d| d
| |
 d| d
| d| d
| |
 d       n|dk(  r|\  }}}|\  }}} j                  j                  dj                  g d	| d
| d| d| d
| d| |
 d| d
| d| d| d
| d| |
 d| d
| d| d| d
| d| |
 d             nS|dv r0|\  }}|\  }} j                  j                  d	| d
| d| d       nt        j                  t        d      |        |j                  dd      s j                  j                  d       t        j                  # t        $ r/ |\  }|\  } j                  j                  d	| d
| |
 d       Y ww xY w# t        $ r)}t        j                  t        |             Y d }~ed }~ww xY w)Nc                   j                  |       } | j                  dd      } | j                  dd      } | j                  dd      } | j                  dd      } | j                  d	d
      } | j                  dd      } | S )Nz\{z\sphinxleftcurlybrace{}z\}z\sphinxrightcurlybrace{}"z""@z"@!z"!rj   z
\textbar{}r7  r9  )valuerN   s    r.   r1  z+LaTeXTranslator.visit_index.<locals>.escape  sx    KK&EMM%)CDEMM%)DEEMM#t,EMM#t,EMM#t,EMM#}5ELr-   c                \    t         j                  |       }|r|j                  d      S d| z  S )Nz\\spxentry{\1}\\spxextra{\2}z\spxentry{%s})EXTRA_REr   expand)stringr   s     r.   r  z*LaTeXTranslator.visit_index.<locals>.style  s.    NN6*E||$CDD'&00r-   inlineTrK  rB   z	|spxpagemsinglez\index{rJ  rK  r   pairz}\index{tripler  r  >   seer  z|see{r  z!unknown index entry type %s foundz\ignorespaces )rM  r   rY   r   )rQ  r   rY   r   )rm   rl   ro   r   tuplemapr   r   r   r   r   r   r   r
   r  )rN   r   r1  r  rK  typerQ  _tidismain_keympartsstyledp1p2P1P2pPp3P3_P2errs   `                      r.   visit_indexzLaTeXTranslator.visit_index  s   		1 xx$'IIR y/07 #	),D&$A)c&/$*GHIs5%018#C!&B!'B		((HRD"Qrd!B4s")MN
 V^"FB#FBII$$AbT2$atA3 G113AbT2$atA3b&J KX%!&JBB!'JBBII$$G G8 GB4 Gq G GA GbT G G2$ Ga Gt G1 GRD G G D$ G$&4G'(G)+G,-G.0TG13G464G78G9;G<>G?AdGCD#GF$G$&4G'(G)+G,-G.0TG12G35$G67G8:tG;<G=?DGABGCEGH //"FB$GBII$$AbTt4%HINN2&I#JDQC#	)H xx$'II./nn5 & C"#		((HQCqA3b)ABC,  )s3x(()s=   9I<4ID>I<5I96I<8I99I<<	J.J))J.c                x   | j                  |      s| j                  j                  t               d|j	                  dd      j                         v r)| j                  j                  |j                                | j                  |      s| j                  j                  t               t        j                  )Nr   formatrB   )	r  rl   ro   r   rm   r  rU   r
   r  r~   s     r.   	visit_rawzLaTeXTranslator.visit_raw  s|    ~~d#IIR dhhx,2244IIT[[]+~~d#IIR nnr-   c                B   | j                   sI|j                  d      D ]5  }| j                   }| xj                  | j	                  ||      z  c_        7 | j                  |      s| j                  j                  t               |j                  dd      }|s,|j                  d      rd| j                  d   z   dz   |d   z   }| j                   s|s| j                  j                  d       y |j                  d      r| j                  d   d	z   |d
d  z   }| j                  j                  | j                  |             | j                  j                  d       | j                  j                  r:| j                  s.| j                  j                  d| j                  |      z         y | j                  j                  d       y |j                  d      r[|j!                  d      }|dk(  r	|d
d  dz   }n|d
d  j#                  dd	      }| j                  j                  | j                  |             t%        |      rkt'        |d   t(        j*                        rNd|d   j                  dg       v r7| j                  j                  d       | j                  j                  d       y | j                  j                  d       | j                  j                  r:| j                  s.| j                  j                  d| j                  |      z         y | j                  j                  d       y t%        |      d
k(  r||d   k(  r|j                  d      r=| j                  j                  d| j-                  |      z         t(        j.                  | j                  j                  d| j-                  |      z         t(        j.                  | j                  j                  d| j-                  |      z         | j                  j                  d       y )Nr'  r#  r0  rB   r2  r   r  r  r  r   z\sphinxsamedocref{z}}} (%s)z}}}z::docr   zstd-termrd   z\sphinxtermref{z\sphinxcrossref{	nolinkurlz\sphinxnolinkurl{%s}z\sphinxurl{%s}z\sphinxhref{%s}{r   )r   rm   r   rl   r   r  ro   r   r  r   r,  r-  r   latex_show_pagerefsr   r/  r  r9  r   rU  r
   r   
encode_urir  )rN   r   r  r  r  	hashindexs         r.   visit_referencezLaTeXTranslator.visit_reference  s.   }}hhuo A!__,		T--b-@@	A ~~d#IIR hhx$txx())"--3d7mCC==LL#^^C ""2&,s12w6BIIT^^B/0II23{{..++##J1B1B21F$FG##E*^^C IBWw& W__S#.IIT^^B/0D	tAw6$q'++i"<<##E*		  !34		  !45;;224;R;RLL''
T5F5Fr5J(JKLL''.4yA~#a.88K(II$$%<ts?S%ST nn$ II$$%69M%MNnn$		  !4ts7K!KL##C(r-   c                    | j                   j                  | j                  j                                | j	                  |      s | j                   j                  t
               y y rJ   )rl   ro   r   r  r  r   r~   s     r.   depart_referencez LaTeXTranslator.depart_reference  sD    		))+,~~d#IIR  $r-   c                   |j                  d      r| j                  d   dz   |d   z   }n%|j                  dd      dd  j                  dd      }| j                  |j                  dd	            j                  d
d	      }d|v sd|v rc|j                  dd      j                  dd      }t	        |      j                  d| j                  |      z  d| j                  |      z        }n t	        |      d| j                  |      z  z  }d| j                  |       d| d}| j                  j                  |       t        j                  )Nr2  r  r  r0  rB   r   r  r  z%sz\%sz\{name\}z
\{number\}z{name}z{number}z\nameref{%s}\ref{%s})rT  numberz
\hyperref[]{r   )rm   r  r9  r1  r   rl  r  rl   ro   r
   r  )rN   r   r  r  r   hyperrefs         r.   visit_number_referencez&LaTeXTranslator.visit_number_reference  s:   88G""2&,tG}<B(B'+33C=BDHHWd34<<VTJ%=E#9MM+x8@@PZ[Eu%,,/DMMRTDU2U4?$--PRBS4S - UD u%t}}R7H)HID r!2 33tfB?		"nnr-   c                     y rJ   r,   r~   s     r.   visit_download_referencez(LaTeXTranslator.visit_download_reference  rm  r-   c                     y rJ   r,   r~   s     r.   depart_download_referencez)LaTeXTranslator.depart_download_reference  rm  r-   c                     y rJ   r,   r~   s     r.   visit_pending_xrefz"LaTeXTranslator.visit_pending_xref!  rm  r-   c                     y rJ   r,   r~   s     r.   depart_pending_xrefz#LaTeXTranslator.depart_pending_xref$  rm  r-   c                :    | j                   j                  d       y )Nz\sphinxstyleemphasis{ry  r~   s     r.   visit_emphasiszLaTeXTranslator.visit_emphasis'  s    		12r-   c                :    | j                   j                  d       y r|  ry  r~   s     r.   depart_emphasiszLaTeXTranslator.depart_emphasis*  r~  r-   c                :    | j                   j                  d       y )Nz+\sphinxstyleliteralemphasis{\sphinxupquote{ry  r~   s     r.   visit_literal_emphasisz&LaTeXTranslator.visit_literal_emphasis-  s    		GHr-   c                :    | j                   j                  d       y r  ry  r~   s     r.   depart_literal_emphasisz'LaTeXTranslator.depart_literal_emphasis0  r  r-   c                :    | j                   j                  d       y )Nz\sphinxstylestrong{ry  r~   s     r.   visit_strongzLaTeXTranslator.visit_strong3  s    		/0r-   c                :    | j                   j                  d       y r|  ry  r~   s     r.   depart_strongzLaTeXTranslator.depart_strong6  r~  r-   c                :    | j                   j                  d       y )Nz)\sphinxstyleliteralstrong{\sphinxupquote{ry  r~   s     r.   visit_literal_strongz$LaTeXTranslator.visit_literal_strong9  s    		EFr-   c                :    | j                   j                  d       y r  ry  r~   s     r.   depart_literal_strongz%LaTeXTranslator.depart_literal_strong<  r  r-   c                f   |j                         }| j                  j                  d       |j                  d      rZ|| j                  vrL| j
                  j                  d| j                  |d         z         | j                  j                  |       y | j
                  j                  d       y )Nz\sphinxstyleabbreviation{explanationz} (%s)r   )rU   rl   ro   r  r
  r   r7  add)rN   r   abbrs      r.   visit_abbreviationz"LaTeXTranslator.visit_abbreviation?  s    {{}		56<<&4t7I7I+ILL4;;tM7J+K KL""4(LL$r-   c                j    | j                   j                  | j                  j                                y rJ   r  r~   s     r.   depart_abbreviationz#LaTeXTranslator.depart_abbreviationI  r  r-   c                $    | j                  |      S rJ   )r  r~   s     r.   visit_manpagezLaTeXTranslator.visit_manpageL  s    **400r-   c                $    | j                  |      S rJ   )r  r~   s     r.   depart_manpagezLaTeXTranslator.depart_manpageO  s    ++D11r-   c                :    | j                   j                  d       y )Nz\sphinxtitleref{ry  r~   s     r.   visit_title_referencez%LaTeXTranslator.visit_title_referenceR  r  r-   c                :    | j                   j                  d       y r|  ry  r~   s     r.   depart_title_referencez&LaTeXTranslator.depart_title_referenceU  r~  r-   c                4   t        t        t        j                     |      }d |D        }t	        d |D        t
              }t        |      t        kD  r	|d t         }| j                  j                  t        d| j                  |      z  z   t        z          y )Nc              3  V   K   | ]!  }t        t        j                  |d           # yw)r   N)r	   r
   r>  )r$  citations     r.   r&  z8LaTeXTranslator.visit_thebibliography.<locals>.<genexpr>Z  s     KX$u{{HQK0Ks   ')c              3  <   K   | ]  }|j                           y wrJ   r  )r$  r>  s     r.   r&  z8LaTeXTranslator.visit_thebibliography.<locals>.<genexpr>[  s     @U\\^@r  )keyz!\begin{sphinxthebibliography}{%s})r	   r   r
   r  r   r   MAX_CITATION_LABEL_LENGTHrl   ro   r   r7  )rN   r   	citationsr(  longest_labels        r.   visit_thebibliographyz%LaTeXTranslator.visit_thebibliographyX  s    %..148	KK@@cJ} 99)*D+DEM		B]34 4689 	:r-   c                H    | j                   j                  dt        z          y )Nz\end{sphinxthebibliography}r  r~   s     r.   depart_thebibliographyz&LaTeXTranslator.depart_thebibliographyc  s    		7"<=r-   c           	         t        t        j                  |d         }| j                  j	                  d| j                  |j                                d|d    d|d   d    d       y )Nr   z	\bibitem[ry  rh  r  r'  r   )r	   r
   r>  rl   ro   r7  rU   r?  s      r.   visit_citationzLaTeXTranslator.visit_citationf  sf    U[[$q'*		Idkk%,,.&A%B C#I/qeQ0@D 	Er-   c                     y rJ   r,   r~   s     r.   depart_citationzLaTeXTranslator.depart_citationk  rm  r-   c                    | j                   ry | j                  j                  d|d    d|d    d       t        j                  )Nz\sphinxcite{rh  r  refnamer   )r   rl   ro   r
   r  r~   s     r.   visit_citation_referencez(LaTeXTranslator.visit_citation_referencen  sB    ==IId9o->aY?PPRST.. r-   c                     y rJ   r,   r~   s     r.   depart_citation_referencez)LaTeXTranslator.depart_citation_referenceu  rm  r-   c                N   | j                   r| j                  j                  d       y d|d   v r| j                  j                  d       y |j                  dd       }d|d   vs|s| j                  j                  d       y | j                  j
                  j                  |i       }| j                  j                  |j                         |||d	      }| j                  j                  d
t        z   |j                         z   dz   t        z   dz          t        j                  )Nz*\sphinxstyleliteralintitle{\sphinxupquote{kbdrd   z\sphinxkeyboard{\sphinxupquote{r   coder  T)optsr  nowrapz\sphinxcode{\sphinxupquote{%r   r  )r   rl   ro   rm   r   highlight_optionsr  highlight_blockrU   r   rstripr
   r  )rN   r   langr  hlcodes        r.   visit_literalzLaTeXTranslator.visit_literalx  s
   ==IIJKd9o%II?@xx
D)i(II;<{{,,00r:!!11KKM4dT$ 2 H		82=!==?+-01356  	! nnr-   c                :    | j                   j                  d       y r  ry  r~   s     r.   depart_literalzLaTeXTranslator.depart_literal  r  r-   c                "    t         j                  rJ   rD  r~   s     r.   visit_footnote_referencez(LaTeXTranslator.visit_footnote_reference  rF  r-   c                :    | j                   j                  d       y )Nz\sphinxfootnotemark[ry  r~   s     r.   visit_footnotemarkz"LaTeXTranslator.visit_footnotemark  s    		01r-   c                :    | j                   j                  d       y )N]ry  r~   s     r.   depart_footnotemarkz#LaTeXTranslator.depart_footnotemark  r~  r-   c                   t        t        j                  |d         }| j                  j	                  dt
        z          | j                  j	                  d|j                         z         | j                  j	                  dt
        z          y )Nr   r   z\begin{footnotetext}[%s]r=  )r	   r
   r>  rl   ro   r   rU   r?  s      r.   visit_footnotetextz"LaTeXTranslator.visit_footnotetext  sb    U[[$q'*		r"		4u||~EF		2R78r-   c                ~    | j                   j                  dt        z          | j                   j                  d       y )Nr   z \end{footnotetext}\ignorespaces r  r~   s     r.   depart_footnotetextz#LaTeXTranslator.depart_footnotetext  s+    		r"		<=r-   c                     y rJ   r,   r~   s     r.   visit_captioned_literal_blockz-LaTeXTranslator.visit_captioned_literal_block  rm  r-   c                     y rJ   r,   r~   s     r.   depart_captioned_literal_blockz.LaTeXTranslator.depart_captioned_literal_block  rm  r-   c                   |j                   |j                         k7  r8| xj                  dz  c_        | j                  j	                  dt
        z          y | j                  |      }t        |j                  t              r|| j                  |j                        z  }|r4| j                  s(| j                  j	                  t
        dz   |z   dz          |j                  dd      }|j                  dd      }|j                  d	i       }|j                  d
d      |d
<   | j                  j                  j                  |i       } | j                  j                  |j                   |f|||d|}| j                  r5| j                  j	                  t
        dz          |j!                  dd      }nS| j"                  r5d| j"                  _        d| j"                  _        |j!                  dd      }n|j!                  dd      }|j)                         d d }| j"                  r| j                  s|dz  }n|dz  }t+        |j                  dg             dd }|r%| j                  j	                  t
        d|z  z          | j                  j	                  t
        |z   t
        z          |r"| j                  j	                  dt
        z          t,        j.                  )Nr   z\begin{sphinxalltt}z\def\sphinxLiteralBlockLabel{r   r   rC   linenosFhighlight_argsforce)r  r  r  z\sphinxSetupCodeBlockInFootnotez\begin{Verbatim}z\begin{sphinxVerbatim}Tz\begin{sphinxVerbatimintable}iz\end{sphinxVerbatimintable}z\end{sphinxVerbatim}hl_linesr  z\fvset{hllines={, %s,}}%%z\sphinxresetverbatimhllines)	rawsourcerU   r   rl   ro   r   r)  rU  r  r  r   rm   r   r  r  r  r9  r   rt   rv   r  r   r
   r  )	rN   r   r(  r  r  r  r  r  hlliness	            r.   visit_literal_blockz#LaTeXTranslator.visit_literal_block  sw   >>T[[]*""a'"II3b89((.F$++'>?$--dkk::d..		  &F!F!ORU!UV88J	2Dhhy%0G!XX&6;N&*hhw&>N7#;;0044T2>D5T%%55+/!/F 		  &H!HI(;(AC -1

**.

'(;(HJ  (;(AC ]]_Tc*Fzz$"2"28811.,,Z<=aCG		  &BW&L!LMIIR&[2-.		  !?"!DE.. r-   c                    | j                   j                  t        dz   t        z          | xj                  dz  c_        y )Nz\end{sphinxalltt}r   )rl   ro   r   r   r~   s     r.   depart_literal_blockz$LaTeXTranslator.depart_literal_block  s0    		22R78!#r-   c                :    | j                   j                  d       y )Nz\item[] ry  r~   s     r.   
visit_linezLaTeXTranslator.visit_line  s    		%r-   c                B    | j                   j                  t               y rJ   r  r~   s     r.   depart_linezLaTeXTranslator.depart_line  r  r-   c                d   t        |j                  t        j                        rE| j                  j                  dt        z          | j                  j                  dt        z          n)| j                  j                  t        dz   t        z          | j                  rd| j                  _        y y )Nz\item[]z'\begin{DUlineblock}{\DUlineblockindent}z\begin{DUlineblock}{0em}T)	rU  r  r
   
line_blockrl   ro   r   r   rt   r~   s     r.   visit_line_blockz LaTeXTranslator.visit_line_block  sy    dkk5#3#34IIZ"_-IIG"LMIIR"==BC::)-DJJ& r-   c                H    | j                   j                  dt        z          y )Nz\end{DUlineblock}r  r~   s     r.   depart_line_blockz!LaTeXTranslator.depart_line_block  r  r-   c                4   d}t        |j                        dk(  r;|j                  d   }t        |t        j                  t        j
                  f      rd}|sA| j                  j                  dt        z          | j                  rd| j                  _
        y y y )Nr   r   z\begin{quote}T)r   r  rU  r
   r  r  rl   ro   r   r   rt   rN   r   doner  s       r.   visit_block_quotez!LaTeXTranslator.visit_block_quote  s     t}}"MM!$E%%"3"3U5J5J!KLII-23zz-1

*  r-   c                    d}t        |j                        dk(  r;|j                  d   }t        |t        j                  t        j
                  f      rd}|s#| j                  j                  dt        z          y y )Nr   r   z\end{quote})	r   r  rU  r
   r  r  rl   ro   r   r  s       r.   depart_block_quotez"LaTeXTranslator.depart_block_quote  se    t}}"MM!$E%%"3"3U5J5J!KLII^b01 r-   c                Z    | j                   d   r| j                  j                  d       y y )Nr  r  )r   rl   ro   r~   s     r.   visit_optionzLaTeXTranslator.visit_option  s%    <<IIT" r-   c                2    | j                   dxx   dz  cc<   y )Nr  r   )r   r~   s     r.   depart_optionzLaTeXTranslator.depart_option  s    RAr-   c                Z    | j                   j                  |j                  dd             y)z1The delimiter between an option and its argument.	delimiterr  N)rl   ro   rm   r~   s     r.   visit_option_argumentz%LaTeXTranslator.visit_option_argument  s    		+s34r-   c                     y rJ   r,   r~   s     r.   depart_option_argumentz&LaTeXTranslator.depart_option_argument  rm  r-   c                p    | j                   j                  d       | j                  j                  d       y )Nz\item [r   )rl   ro   r   r~   s     r.   visit_option_groupz"LaTeXTranslator.visit_option_group  s&    		$Ar-   c                n    | j                   j                          | j                  j                  d       y )Nz] )r   r  rl   ro   r~   s     r.   depart_option_groupz#LaTeXTranslator.depart_option_group"  s$    		r-   c                    | j                   j                  dt        z          | j                  rd| j                  _        y y )Nz\begin{optionlist}{3cm}Tr  r~   s     r.   visit_option_listz!LaTeXTranslator.visit_option_list&  s2    		3b89::)-DJJ& r-   c                H    | j                   j                  dt        z          y )Nz\end{optionlist}r  r~   s     r.   depart_option_listz"LaTeXTranslator.depart_option_list+  s    		,r12r-   c                     y rJ   r,   r~   s     r.   visit_option_list_itemz&LaTeXTranslator.visit_option_list_item.  rm  r-   c                     y rJ   r,   r~   s     r.   depart_option_list_itemz'LaTeXTranslator.depart_option_list_item1  rm  r-   c                    |j                         }| j                  j                  | j                  |             t        j
                  rJ   )rU   rl   ro   r7  r
   r  )rN   r   ostrings      r.   visit_option_stringz#LaTeXTranslator.visit_option_string4  s2    ++-		W-.nnr-   c                :    | j                   j                  d       y )Nr  ry  r~   s     r.   visit_descriptionz!LaTeXTranslator.visit_description9  r~  r-   c                     y rJ   r,   r~   s     r.   depart_descriptionz"LaTeXTranslator.depart_description<  rm  r-   c                :    | j                   j                  d       y )Nz	$^{\text{ry  r~   s     r.   visit_superscriptz!LaTeXTranslator.visit_superscript?      		&r-   c                :    | j                   j                  d       y Nz}}$ry  r~   s     r.   depart_superscriptz"LaTeXTranslator.depart_superscriptB  r  r-   c                :    | j                   j                  d       y )Nz	$_{\text{ry  r~   s     r.   visit_subscriptzLaTeXTranslator.visit_subscriptE  r
  r-   c                :    | j                   j                  d       y r  ry  r~   s     r.   depart_subscriptz LaTeXTranslator.depart_subscriptH  r  r-   c                z   |j                  dg       }|dgfv r7| j                  j                  d       | j                  j                  d       y |dgfv r7| j                  j                  d       | j                  j                  d       y |dgfv r7| j                  j                  d       | j                  j                  d       y |rU| j                  sI| j                  j                  d	d
j                  |      z         | j                  j                  d       y | j                  j                  d       y )Nrd   menuselectionz\sphinxmenuselection{r   guilabelz\sphinxguilabel{acceleratorz\sphinxaccelerator{z\DUrole{%s}{r   rB   )rm   rl   ro   r   r   r   )rN   r   rd   s      r.   visit_inlinezLaTeXTranslator.visit_inlineK  s    ((9b)())II56LL$*&II01LL$-))II34LL$T]]II_sxx/@@ALL$LL#r-   c                j    | j                   j                  | j                  j                                y rJ   r  r~   s     r.   depart_inlinezLaTeXTranslator.depart_inline\  r  r-   c                     y rJ   r,   r~   s     r.   visit_generatedzLaTeXTranslator.visit_generated_  rm  r-   c                     y rJ   r,   r~   s     r.   depart_generatedz LaTeXTranslator.depart_generatedb  rm  r-   c                     y rJ   r,   r~   s     r.   visit_compoundzLaTeXTranslator.visit_compounde  rm  r-   c                     y rJ   r,   r~   s     r.   depart_compoundzLaTeXTranslator.depart_compoundh  rm  r-   c                r    |j                  dg       }|D ]   }| j                  j                  d|z         " y )Nrd   z
\begin{sphinxuseclass}{%s}rm   rl   ro   )rN   r   rd   r  s       r.   visit_containerzLaTeXTranslator.visit_containerk  s;    ((9b) 	BAII<q@A	Br-   c                l    |j                  dg       }|D ]  }| j                  j                  d        y )Nrd   z
\end{sphinxuseclass}r"  )rN   r   rd   _cs       r.   depart_containerz LaTeXTranslator.depart_containerp  s4    ((9b) 	8BII67	8r-   c                     y rJ   r,   r~   s     r.   visit_decorationz LaTeXTranslator.visit_decorationu  rm  r-   c                     y rJ   r,   r~   s     r.   depart_decorationz!LaTeXTranslator.depart_decorationx  rm  r-   c                "    t         j                  rJ   rD  r~   s     r.   visit_headerzLaTeXTranslator.visit_header}  rF  r-   c                "    t         j                  rJ   rD  r~   s     r.   visit_footerzLaTeXTranslator.visit_footer  rF  r-   c                "    t         j                  rJ   rD  r~   s     r.   visit_docinfozLaTeXTranslator.visit_docinfo  rF  r-   c                    | j                  |      }| j                  r-|j                  t        dt        z         j                  dd      }|S )Nz~\\r  ~)r1  r   r9  r   rN   r   s     r.   r7  zLaTeXTranslator.encode  sA    {{4 "" <<FRK088cBDr-   c                    | j                  |      j                  dd      j                  dd      j                  dd      S )Nz\textasciitilde{}r2  z\sphinxhyphen{}rO  z\textquotesingle{}'rL  r3  s     r.   rq  zLaTeXTranslator.encode_uri  s=    
 {{4 (()=sCG&,G)3/	0r-   c                x    | j                  |j                               }| j                  j                  |       y rJ   )r7  rU   rl   ro   )rN   r   r   s      r.   
visit_TextzLaTeXTranslator.visit_Text  s(    {{4;;=)		r-   c                     y rJ   r,   r~   s     r.   depart_TextzLaTeXTranslator.depart_Text  rm  r-   c                "    t         j                  rJ   rD  r~   s     r.   visit_commentzLaTeXTranslator.visit_comment  rF  r-   c                "    t         j                  rJ   rD  r~   s     r.   
visit_metazLaTeXTranslator.visit_meta  s    nnr-   c                     y rJ   r,   r~   s     r.   visit_system_messagez$LaTeXTranslator.visit_system_message  rm  r-   c                B    | j                   j                  t               y rJ   r  r~   s     r.   depart_system_messagez%LaTeXTranslator.depart_system_message  r  r-   c                
   | j                   r<| j                  j                  d|j                         z         t        j
                  | j                  j                  d|j                         z         t        j
                  )Nz\protect\(%s\protect\)z\(%s\))r   rl   ro   rU   r
   r  r~   s     r.   
visit_mathzLaTeXTranslator.visit_math  s\    ==II6FG nn IIY67nnr-   c                   |j                  d      rd|d    d|d    }nd }|j                  d      rY|r| j                  j                  d|z         | j                  j                  |j                                t        j                  ddlm} | j                  j                   ||j                         || j                  j                               t        j                  )	Nr>  	equation:rh  r  r  r  r   )wrap_displaymath)
rm   rl   ro   rU   sphinx.util.mathrF  r   math_number_allr
   r  )rN   r   r>  rF  s       r.   visit_math_blockz LaTeXTranslator.visit_math_block  s    88GY0$w-AEE88H		  !67IIT[[]+
 nn :II-dkkmU.2kk.I.IK Lnnr-   c                   d|d    d|d    }| j                   j                  }|r2	 d|z  }| j                  j                  |j	                  |             y | j                  j                  d	|z         y # t
        $ rI}t        j                  t        d      ||       | j                  j                  d	|z         Y d }~y d }~ww xY w)
NrE  rh  r  r5  rw  )rx  zInvalid math_eqref_format: %rr  z
\eqref{%s})	r   math_eqref_formatrl   ro   rl  r  r   r   r   )rN   r   r>  eqref_formatrefexcs         r.   visit_math_referencez$LaTeXTranslator.visit_math_reference  s    DO,Ad8n-=>{{448!E)		  !4!4C!4!@A II]U23  8r"ABC(,  .		  !6778s   0A8 8	C
?CC
c                     y rJ   r,   r~   s     r.   depart_math_referencez%LaTeXTranslator.depart_math_reference  rm  r-   )rR   znodes.documentrM   r   rH   r    rY   rZ   )r  	list[str]rY   rZ   )rY   rR  r   )TT)r  r   r  r   r  r   rY   r   )F)r   r   r  r   rY   r   )r  r   rY   r   )r2  r   rY   r   )r>  r   r?  r   rY   r   )ra  r   rb  rF   rY   r   )rY   zTable | Noner   )r   r   r  ztype[Element]rY   rZ   )r   r   r  r   rY   rZ   r   )r   r   r   r{   rY   z
str | None)r   r   rY   r   r   r   rY   r   )r   r   rY   rZ   (  r8   r9   r:   r]   r   r  rL   r  r  rU   r   r)  r-  r/  r1  r  r   r  r  r   r   rj  rl  ro  rq  ru  rw  rz  r}  r  r  visit_sidebardepart_sidebarr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r!  r$  r&  r(  r+  r-  r/  r1  r3  r5  r8  r:  r@  rB  rE  rI  rP  rS  rW  rY  r[  r]  r_  rd  rg  ri  rm  rs  rz  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  visit_field_namedepart_field_namevisit_field_bodydepart_field_bodyr  r  r  r  r  r  r  r  r  r  r  r   r  r  r  r  r  r  r  r   r#  r%  visit_attentiondepart_attentionvisit_cautiondepart_cautionvisit_dangerdepart_dangervisit_errordepart_error
visit_hintdepart_hintvisit_importantdepart_important
visit_notedepart_note	visit_tip
depart_tipvisit_warningdepart_warningr'  r)  r@  rB  rD  rF  rj  rm  rs  ru  r{  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  visit_doctest_blockdepart_doctest_blockr  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r  r  r  r	  r  r  r  r  r  r  r  r  r   r#  r&  r(  r*  r,  r.  r0  r7  rq  r7  r9  r;  r=  r?  rA  rC  rI  rO  rQ  r^   r_   s   @r.   rT   rT      sf   K!A-A-"&A-F
9Z
68=
S%N9  68 $
;5?8  M!N$
$2#6-^1$-.F.2`;:)*'
9%%%%.V*FK

.((:)>)2"	(;
[$
-9!'F
=)

'

O(<'%R!-F.4.>2'
.
4	!  .
? "#')>".
/	.M:Pd)6V-	+75"""" .O/+M-N*L,M)K+L(J*K-O/(J*K'I)J+M-N?B 8;z6)p!
(3I1G%-12.	:>E
!(29>
1!f$ ./&.422#
5
.
3
' ' $"-B
8


0 4 r-   rT   )r:  r  r  rT  rS  )r   r   r   r{   rY   r   )Pr;   
__future__r   r   collectionsr   collections.abcr   osr   typingr   r   r	   docutilsr
   r   sphinxr   r   sphinx.domains.stdr   sphinx.errorsr   sphinx.localer   r   r   sphinx.utilr   r   sphinx.util.docutilsr   sphinx.util.index_entriesr   sphinx.util.nodesr   r   sphinx.util.templater   sphinx.util.texescaper   docutils.utils.romanr   ImportErrorromandocutils.nodesr   r   r   sphinx.builders.latexr   sphinx.builders.latex.themingr    sphinx.domainsr!   	getLoggerr8   r   r  r   r  r   rt  compilerO  r  r7   r=   Writerr@   ra   r   r   r   rT   sphinx.builders.latex.nodesr:  r  r  r,   r-   r.   <module>r     sC   # 	 # $  + + # ) - % 1 1 * 1 5 9 . 1,
 2223) 
		8	$ C "#51;5=5=5>5>$%&  
	2::34@ @0{ 0>'.. >2{ {|   F/
8s& sp= uE  s   8E EE