o
    ò	j`<Ž  ã                   @   sÄ   d Z dZddlZddlZejdk reZddlZddlmZm	Z	m
Z
 zddlZW n ey9   ddlm  mZ Y nw dZdZdZdZdZdZG d	d
„ d
e	jƒZG dd„ deƒZG dd„ dejƒZdS )a×  
Simple man page writer for reStructuredText.

Man pages (short for "manual pages") contain system documentation on unix-like
systems. The pages are grouped in numbered sections:

 1 executable programs and shell commands
 2 system calls
 3 library functions
 4 special files
 5 file formats
 6 games
 7 miscellaneous
 8 system administration

Man pages are written *troff*, a text file formatting system.

See http://www.tldp.org/HOWTO/Man-Page for a start.

Man pages have no subsection only parts.
Standard parts

  NAME ,
  SYNOPSIS ,
  DESCRIPTION ,
  OPTIONS ,
  FILES ,
  SEE ALSO ,
  BUGS ,

and

  AUTHOR .

A unix-like system keeps an index of the DESCRIPTIONs, which is accessible
by the command whatis or apropos.

ÚreStructuredTexté    N©é   r   )ÚnodesÚwritersÚ	languagesé   g      @aw  .
.nr rst2man-indent-level 0
.
.de1 rstReportMargin
\\$1 \\n[an-margin]
level \\n[rst2man-indent-level]
level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
-
\\n[rst2man-indent0]
\\n[rst2man-indent1]
\\n[rst2man-indent2]
..
.de1 INDENT
.\" .rstReportMargin pre:
. RS \\$1
. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
. nr rst2man-indent-level +1
.\" .rstReportMargin post:
..
.de UNINDENT
. RE
.\" indent \\n[an-margin]
.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
.nr rst2man-indent-level -1
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
c                   @   s(   e Zd ZdZ	 dZ	 dd„ Zdd„ ZdS )ÚWriter)ÚmanpageNc                 C   s   t j | ¡ t| _d S ©N)r   r	   Ú__init__Ú
TranslatorÚtranslator_class©Úself© r   ú:/usr/lib/python3/dist-packages/docutils/writers/manpage.pyr   i   s   
zWriter.__init__c                 C   s&   |   | j¡}| j |¡ | ¡ | _d S r   )r   ÚdocumentÚ	walkaboutÚastextÚoutput)r   Úvisitorr   r   r   Ú	translatem   s   zWriter.translate)Ú__name__Ú
__module__Ú__qualname__Ú	supportedr   r   r   r   r   r   r   r	   a   s    r	   c                   @   s<   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ ZdS )ÚTablec                 C   s   g | _ dg| _d| _g | _d S )NÚcenterú	)Ú_rowsÚ_optionsÚ	_tab_charÚ_coldefsr   r   r   r   r   t   s   
zTable.__init__c                 C   s   | j  g ¡ d S r   ©r    Úappendr   r   r   r   Únew_rowy   ó   zTable.new_rowc                 C   s   | j  |g¡ dS )z$Append the separator for table head.Nr$   )r   Ú	separatorr   r   r   Úappend_separator{   s   zTable.append_separatorc                 C   sd   d}t |ƒdkr|d dkrd}| jd  ||d… ¡ t | jƒt | jd ƒk r0| j d¡ dS dS )zcell_lines is an array of linesr   ú.sp
é   éÿÿÿÿNÚl)Úlenr    r%   r#   )r   Ú
cell_linesÚstartr   r   r   Úappend_cell~   s   ÿzTable.append_cellc                 C   s\   |r|d dv r|d= |r|d dv s|r(|d dv r,|d= |r*|d dv sdS dS dS dS )z3Remove leading and trailing blank and ``.sp`` linesr   )Ú
r*   r,   Nr   )r   r/   r   r   r   Ú_minimize_cell†   s   ÿ ÿzTable._minimize_cellc                 C   sæ   dg}|  d | j¡d ¡ |  dd | j¡ ¡ | jD ]J}|  d¡ |  d¡ tt|ƒƒD ]7}|| }|  |¡ | |¡ |d  	d	¡sM|d  d	7  < |t|ƒd
 k r`|  d| j
 d ¡ q.|  d¡ q.q|  d¡ |  d¡ |S )Nz.TS
ú z;
z|%s|.
ú|z_
zT{
r,   r2   r+   zT}zT}
z.TE
)r%   Újoinr!   r#   r    Úranger.   r3   ÚextendÚendswithr"   )r   ÚtextÚrowÚiÚcellr   r   r   Úas_listŒ   s&   




÷


zTable.as_listN)	r   r   r   r   r&   r)   r1   r3   r>   r   r   r   r   r   s   s    r   c                   @   s,  e Zd ZdZe d¡Ze d¡ZdZdd„ Z	dd„ Z
d	d
„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd „ Z�dzd"d#„Zd$d%„ Zd&d'„ ZeZd(d)„ Zd*d+„ Zd,d-„ ZeZd.d/„ Zd0d1„ Z d2d3„ Z!d4d5„ Z"d6d7„ Z#d8d9„ Z$d:d;„ Z%d<d=„ Z&d>d?„ Z'eZ(d@dA„ Z)dBdC„ Z*dDdE„ Z+dFdG„ Z,dHdI„ Z-dJdK„ Z.dLdM„ Z/dNdO„ Z0e dP¡j1fdQdR„Z2dSdT„ Z3eZ4dUdV„ Z5dWdX„ Z6dYdZ„ Z7d[d\„ Z8d]d^„ Z9d_d`„ Z:eZ;dadb„ Z<dcdd„ Z=dedf„ Z>dgdh„ Z?didj„ Z@dkdl„ ZAdmdn„ ZBdodp„ ZCdqdr„ ZDdsdt„ ZEdudv„ ZFdwdx„ ZGdydz„ ZHd{d|„ ZId}d~„ ZJdd€„ ZKd�d‚„ ZLdƒd„„ ZMd…d†„ ZNd‡dˆ„ ZOd‰dŠ„ ZPd‹dŒ„ ZQd�dŽ„ ZRd�d�„ ZSeZTd‘d’„ ZUd“d”„ ZVd•d–„ ZWd—d˜„ ZXd™dš„ ZYd›dœ„ ZZd�dž„ Z[dŸd „ Z\d¡d¢„ Z]d£d¤„ Z^d¥d¦„ Z_d§d¨„ Z`d©dª„ Zad«d¬„ Zbd­d®„ Zcd¯d°„ Zdd±d²„ Zed³d´„ Zfdµd¶„ Zgd·d¸„ Zhd¹dº„ Zid»d¼„ ZjeZkd½d¾„ Zld¿dÀ„ ZmdÁdÂ„ ZndÃdÄ„ ZodÅdÆ„ ZpdÇdÈ„ ZqdÉdÊ„ ZrdËdÌ„ ZseZtdÍdÎ„ ZudÏdÐ„ ZvdÑdÒ„ ZwdÓdÔ„ ZxdÕdÖ„ Zyd×dØ„ ZzdÙdÚ„ Z{dÛdÜ„ Z|dÝdÞ„ Z}dßdà„ Z~dádâ„ Zdãdä„ Z€dådæ„ Z�dçdè„ Z‚dédê„ Zƒdëdì„ Z„dídî„ Z…dïdð„ Z†dñdò„ Z‡dódô„ Zˆdõdö„ Z‰eZŠ�d{dødù„Z‹dúdû„ ZŒdüdý„ Z�dþdÿ„ ZŽ�d �d„ Z��d�d„ Z��d�d„ Z‘�d�d„ Z’�d�d	„ Z“�d
�d„ Z”�d�d„ Z•�d�d„ Z–�d�d„ Z—�d�d„ Z˜�d�d„ Z™�d�d„ Zš�d�d„ Z›�d�d„ Zœ�d�d„ Z��d�d„ Zž�d �d!„ ZŸ�d"�d#„ Z �d$�d%„ Z¡�d&�d'„ Z¢�d(�d)„ Z£eZ¤�d*�d+„ Z¥�d,�d-„ Z¦�d.�d/„ Z§�d0�d1„ Z¨�d2�d3„ Z©eZª�d4�d5„ Z«�d6�d7„ Z¬�d8�d9„ Z­�d:�d;„ Z®�d<�d=„ Z¯�d>�d?„ Z°�d@�dA„ Z±�dB�dC„ Z²�dD�dE„ Z³�dF�dG„ Z´�dH�dI„ Zµ�dJ�dK„ Z¶�dL�dM„ Z·�dN�dO„ Z¸�dP�dQ„ Z¹�dR�dS„ Zº�dT�dU„ Z»�dV�dW„ Z¼�dX�dY„ Z½�dZ�d[„ Z¾eZ¿�d\�d]„ ZÀ�d^�d_„ ZÁ�d`�da„ ZÂ�db�dc„ ZÃ�dd�de„ ZÄ�df�dg„ ZÅ�dh�di„ ZÆ�dj�dk„ ZÇ�dl�dm„ ZÈ�dn�do„ ZÉ�dp�dq„ ZÊ�dr�ds„ ZË�dt�du„ ZÌ�dv�dw„ ZÍeZÎ�dx�dy„ ZÏd!S (|  r   Ú z	\S+| +|\nz\.\wz)Man page generated from reStructuredText.c                 C   sò   t j | |¡ |j | _}|j}t ||j¡| _g | _	g | _
g | _d| _g | _d| _g | _d| _d | _g | _dddddg ddddœ	| _g | _i | _d | _d | _d | _d| _d| _d| _g | _d| _dg| _dddd	d
dddd	ddddddœ| _d S )Nr   r?   r+   )	ÚtitleÚtitle_upperÚsubtitleÚmanual_sectionÚmanual_groupÚauthorÚdateÚ	copyrightÚversionF)z.INDENT %.1f
z
.UNINDENT
)z.TPr?   )ú.TP
.B r2   )z\fBú\fP)z.sp
.nf
.ft C
z
.ft P
.fi
)ú.TP
r?   )z\fI\%rJ   )z\fIrJ   )ú
.B r2   )ú.SS )z
.nf
z
.fi
)ÚindentÚdefinition_list_itemÚ
field_nameÚliteralÚliteral_blockÚoption_list_itemÚ	referenceÚemphasisÚstrongÚtermÚtitle_referenceútopic-titleúsidebar-titleÚproblematic)r   ÚNodeVisitorr   ÚsettingsÚlanguage_coder   Úget_languageÚreporterÚlanguageÚheadÚbodyÚfootÚsection_levelÚcontextÚtopic_classÚcolspecsÚ	compact_pÚcompact_simpleÚ
_list_charÚ_docinfoÚ_docinfo_keysÚ_docinfo_namesÚ_in_docinfoÚ_field_nameÚ_active_tableÚ_in_literalÚheader_writtenÚ_line_blockÚauthorsÚ_indentÚdefs)r   r   r]   Úlcoder   r   r   r   ©   s`   ù	îzTranslator.__init__c                    s&   d‰ d  ‡ fdd„| d¡D ƒ¡}|S )zPReturn commented version of the passed text WITHOUT end of
        line/comment.z.\" r?   c                    s   g | ]}ˆ | d  ‘qS )r2   r   )Ú.0Úin_line©Úprefixr   r   Ú
<listcomp>õ   s    ÿz,Translator.comment_begin.<locals>.<listcomp>r2   )r6   Úsplit)r   r:   Úout_textr   r{   r   Úcomment_beginð   s   
ÿÿzTranslator.comment_beginc                 C   s   |   |¡d S )z,Return commented version of the passed text.ú.
)r€   ©r   r:   r   r   r   Úcommentù   s   zTranslator.commentc                 C   s8   t | jƒdkr| jd d dkr| j d¡ dS dS dS )z7Ensure the last line in body is terminated by new line.r   r,   r2   N)r.   rc   r%   r   r   r   r   Ú
ensure_eolý   s    ÿzTranslator.ensure_eolc                 C   s  | j s|  ¡  tt| jƒd ddƒD ]o}| j| dkr�| j|d  dd… dv r.d| j|< q| j|d  dd	… d
krN| j|d  dd… dkrNd| j|< q| j|d  dkr�| j | j|d  ¡s�| j|d	  dd… dks|| j|d	  dd… dkr�d| j|< qd | j| j | j	 ¡S )z0Return the final formatted document as a string.r+   r   r,   r*   Né   )z.BI z.IP r�   r   ú.B é   rK   r2   r   rI   rL   r?   )
rs   Úappend_headerr7   r.   rc   Úpossibly_a_roff_commandÚmatchr6   rb   rd   )r   r<   r   r   r   r     s"   ÿ
€zTranslator.astextc                 C   s   |  dd¡}|  dd¡}|S )Nõ   Â z\ u   â€ z\(dg)Úreplacer‚   r   r   r   Ú	deunicode  s   zTranslator.deunicodec                 C   st   |  ¡ }| dd¡}g d¢}|D ]
\}}| ||¡}q|  |¡}| d¡r)d| }| jr2| dd¡}| j |¡ d S )Nú\z\e))ú-z\-)ú'z\(aq)õ   Â´z\')ú`z\(gaÚ.z\&z
.z
\&.)r   rŒ   r�   Ú
startswithrr   rc   r%   )r   Únoder:   Úreplace_pairsÚin_charÚ
out_markupr   r   r   Ú
visit_Text  s   

zTranslator.visit_Textc                 C   ó   d S r   r   ©r   r•   r   r   r   Údepart_Text1  ó   zTranslator.depart_Textc                    s€   G ‡ fdd„dt ƒ}dˆ v r| j |ˆ d ƒ¡ n| j |dƒ¡ t| jƒdkr4|  | jd  ¡ ¡ d S |  | jd  ¡ ¡ d S )Nc                       sH   e Zd ZdddœZ‡ fdd„Zdd„ Zejdk reZd	d
„ Z	dd„ Z
dS )z'Translator.list_start.<locals>.EnumCharz\(buz\(em)ÚbulletÚemdashc                    sÎ   || _ dˆ v rˆ d d | _nd| _d| _|dkr3tttˆ jƒƒƒ| _|  jtt| jƒƒd 7  _d S |dkrG|  jtdƒd 7  _d| _d S |d	kr[|  jtd
ƒd 7  _d| _d S | d¡red| _d S d S )Nr0   r+   r   r‡   ÚarabicÚ
loweralphaÚar   Ú
upperalphaÚAÚromané   )Ú_styleÚ_cntrv   r.   ÚstrÚchildrenÚordr9   )r   Ústyle©r•   r   r   r   ;  s"    



ÿz0Translator.list_start.<locals>.EnumChar.__init__c                 S   s¤   | j dkr| j| j  S | j dkr| j| j  S |  jd7  _| j dkr'd| j S | j dv r1d| j S | j  d¡rMt | j¡d	 }| j  d
¡rI| ¡ S | ¡ S d| j S )Nrž   rŸ   r+   r    z%d.)r¡   r£   z%c.r¥   r“   Úupper)	r§   Ú
enum_styler¨   r9   r¥   ÚtoRomanr”   r®   Úlower)r   Úresr   r   r   Ú__next__P  s   






z0Translator.list_start.<locals>.EnumChar.__next__r   c                 S   s   | j S r   )rv   r   r   r   r   Ú	get_widthf  s   z1Translator.list_start.<locals>.EnumChar.get_widthc                 S   s   dt | jƒ S )Nzenum_style-%s)Úlistr§   r   r   r   r   Ú__repr__h  ó   z0Translator.list_start.<locals>.EnumChar.__repr__N)r   r   r   r¯   r   r³   ÚsysÚversion_infoÚnextr´   r¶   r   r­   r   r   ÚEnumChar5  s    þ
r»   Úenumtyperž   r+   éþÿÿÿr,   )Úobjectrk   r%   r.   rN   r´   )r   r•   r»   r   r­   r   Ú
list_start4  s   6zTranslator.list_startc                 C   s   |   ¡  | j ¡  d S r   )Údedentrk   Úpopr   r   r   r   Úlist_endu  s   zTranslator.list_endc                 C   s   d}|| j  S )Nzx.TH "%(title_upper)s" %(manual_section)s "%(date)s" "%(version)s" "%(manual_group)s"
.SH NAME
%(title)s \- %(subtitle)s
)rl   )r   Útmplr   r   r   Úheadery  s   
zTranslator.headerc                 C   s0   | j rdS | j t¡ | j |  ¡ ¡ d| _ dS )z#append header with .TH and .SH NAMENr+   )rs   rb   r%   Ú	MACRO_DEFrÄ   r   r   r   r   rˆ   €  s
   
zTranslator.append_headerc                 C   ó   |   |d¡ d S )NÚaddress©Úvisit_docinfo_itemr›   r   r   r   Úvisit_address‹  r'   zTranslator.visit_addressc                 C   rš   r   r   r›   r   r   r   Údepart_addressŽ  r�   zTranslator.depart_addressNc                 C   s\   |r'| j  d¡ d| jd d | jj ||¡ ¡ | jd d f }| j  |¡ |  |¡ d S )Nr*   z%s%s:%s
rV   r   r+   )rc   r%   rw   ra   ÚlabelsÚgetr®   Úvisit_block_quote©r   r•   Únamer   r   r   Úvisit_admonition‘  s   	ýzTranslator.visit_admonitionc                 C   ó   |   |¡ d S r   )Údepart_block_quoter›   r   r   r   Údepart_admonition¥  r·   zTranslator.depart_admonitionc                 C   rÆ   )NÚ	attention©rÑ   r›   r   r   r   Úvisit_attention¨  r'   zTranslator.visit_attentionc                 C   s>   |dkr| j |  | ¡ ¡ n| ¡ | j |< | j |¡ tj‚©NrE   )rl   r%   r   rm   r   ÚSkipNoderÏ   r   r   r   rÉ   ­  s
   zTranslator.visit_docinfo_itemc                 C   rš   r   r   r›   r   r   r   Údepart_docinfo_itemµ  r�   zTranslator.depart_docinfo_itemc                 C   rÆ   rØ   rÈ   r›   r   r   r   Úvisit_author¸  r'   zTranslator.visit_authorc                 C   rš   r   r   r›   r   r   r   Úvisit_authors½  ó   zTranslator.visit_authorsc                 C   rš   r   r   r›   r   r   r   Údepart_authorsÁ  r�   zTranslator.depart_authorsc                 C   s   |   t¡ |   d¡ d S )Nr   )rN   ÚBLOCKQOUTE_INDENTr›   r   r   r   rÎ   Ä  s   
zTranslator.visit_block_quotec                 C   ó   |   ¡  |   ¡  d S r   ©rÀ   r›   r   r   r   rÓ   Ê  ó   zTranslator.depart_block_quotec                 C   rÒ   r   ©r¿   r›   r   r   r   Úvisit_bullet_listÎ  r·   zTranslator.visit_bullet_listc                 C   ó   |   ¡  d S r   ©rÂ   r›   r   r   r   Údepart_bullet_listÑ  ó   zTranslator.depart_bullet_listc                 C   rš   r   r   r›   r   r   r   Úvisit_captionÔ  r�   zTranslator.visit_captionc                 C   rš   r   r   r›   r   r   r   Údepart_caption×  r�   zTranslator.depart_captionc                 C   rÆ   )NÚcautionrÖ   r›   r   r   r   Úvisit_cautionÚ  r'   zTranslator.visit_cautionc                 C   s0   |  ¡  d d¡d }| ¡ }| j d| ¡ d S )Nr+   r   ú.IP [%s] 5
)r   r~   Ústriprc   r%   )r   r•   Únumr   r   r   Úvisit_citationß  s   zTranslator.visit_citationc                 C   rš   r   r   r›   r   r   r   Údepart_citationä  r�   zTranslator.depart_citationc                 C   s   | j  d| ¡  d ¡ tj‚©Nú[ú])rc   r%   r   r   rÙ   r›   r   r   r   Úvisit_citation_referenceç  s   z#Translator.visit_citation_referencec                 C   rš   r   r   r›   r   r   r   Úvisit_classifierë  r�   zTranslator.visit_classifierc                 C   rš   r   r   r›   r   r   r   Údepart_classifierî  r�   zTranslator.depart_classifierc                 C   s   | j  |¡ d S r   )rh   r%   r›   r   r   r   Úvisit_colspecñ  r'   zTranslator.visit_colspecc                 C   rš   r   r   r›   r   r   r   Údepart_colspecô  r�   zTranslator.depart_colspecc                 C   s   | j  ddt| jƒ  ¡ d S )Nz%s.
zL )rc   r%   r.   rh   r   r   r   r   Úwrite_colspecs÷  s   zTranslator.write_colspecsz-(?=-)c                 C   s   | j  |  | ¡ ¡¡ tj‚r   )rc   r%   rƒ   r   r   rÙ   )r   r•   Úsubr   r   r   Úvisit_commentú  s   zTranslator.visit_commentc                 C   rÆ   )NÚcontactrÈ   r›   r   r   r   Úvisit_contactÿ  r'   zTranslator.visit_contactc                 C   rš   r   r   r›   r   r   r   Úvisit_container  r�   zTranslator.visit_containerc                 C   rš   r   r   r›   r   r   r   Údepart_container  r�   zTranslator.depart_containerc                 C   rš   r   r   r›   r   r   r   Úvisit_compound
  r�   zTranslator.visit_compoundc                 C   rš   r   r   r›   r   r   r   Údepart_compound  r�   zTranslator.depart_compoundc                 C   rÆ   )NrG   rÈ   r›   r   r   r   Úvisit_copyright  r'   zTranslator.visit_copyrightc                 C   rÆ   )NÚdangerrÖ   r›   r   r   r   Úvisit_danger  r'   zTranslator.visit_dangerc                 C   rÆ   )NrF   rÈ   r›   r   r   r   Ú
visit_date  r'   zTranslator.visit_datec                 C   rš   r   r   r›   r   r   r   Úvisit_decoration  r�   zTranslator.visit_decorationc                 C   rš   r   r   r›   r   r   r   Údepart_decoration  r�   zTranslator.depart_decorationc                 C   rš   r   r   r›   r   r   r   Úvisit_definition!  r�   zTranslator.visit_definitionc                 C   rš   r   r   r›   r   r   r   Údepart_definition$  r�   zTranslator.depart_definitionc                 C   ó   |   t¡ d S r   )rN   ÚDEFINITION_LIST_INDENTr›   r   r   r   Úvisit_definition_list'  r·   z Translator.visit_definition_listc                 C   rå   r   rá   r›   r   r   r   Údepart_definition_list*  rè   z!Translator.depart_definition_listc                 C   ó   | j  | jd d ¡ d S )NrO   r   ©rc   r%   rw   r›   r   r   r   Úvisit_definition_list_item-  ó   z%Translator.visit_definition_list_itemc                 C   r  )NrO   r+   r  r›   r   r   r   Údepart_definition_list_item0  r  z&Translator.depart_definition_list_itemc                 C   rš   r   r   r›   r   r   r   Úvisit_description3  r�   zTranslator.visit_descriptionc                 C   rš   r   r   r›   r   r   r   Údepart_description6  r�   zTranslator.depart_descriptionc                 C   s
   d| _ d S ©Nr+   )ro   r›   r   r   r   Úvisit_docinfo9  s   
zTranslator.visit_docinfoc                 C   s   d | _ |  ¡  d S r   )ro   rˆ   r›   r   r   r   Údepart_docinfo<  s   zTranslator.depart_docinfoc                 C   s    | j  | jd d ¡ d| _d S )NrR   r   T)rc   r%   rw   rr   r›   r   r   r   Úvisit_doctest_blockA  s   
zTranslator.visit_doctest_blockc                 C   s    d| _ | j | jd d ¡ d S ©NFrR   r+   )rr   rc   r%   rw   r›   r   r   r   Údepart_doctest_blockE  s   zTranslator.depart_doctest_blockc                 C   s&   | j  |  | j¡ ¡ d ¡ d| _d S )Nr2   r   )rb   r%   rƒ   Údocument_startÚrstriprs   r›   r   r   r   Úvisit_documentI  s   
zTranslator.visit_documentc                 C   s  | j d r| j dd | j d ¡ ¡ d}| jD ]Z}|dkrN| j d| jj ||¡| jd d d | jd d t	 | j | | jd d	 | jd d	 f ¡ q||vrr|| j
v r]| j
| }n| jj ||¡}| j d
|| j | f ¡ q| j d rƒ| j d| j d  ¡ | j |  d¡¡ d S )NrE   z.SH AUTHOR
%s
z, )	rE   rG   rF   rD   rC   rB   r@   rA   rH   rÇ   z
%s:
%s%s.nf
%s
.fi
%s%srN   r   r+   z
%s: %s
rG   z.SH COPYRIGHT
%s
z%Generated by docutils manpage writer.)rl   rc   r%   r6   rm   ra   rÌ   rÍ   rw   rß   rn   rƒ   )r   r•   ÚskiprÐ   Úlabelr   r   r   Údepart_documentO  s8   
ÿ

ú
€
ÿ

ÿzTranslator.depart_documentc                 C   r  )NrU   r   r  r›   r   r   r   Úvisit_emphasisl  r  zTranslator.visit_emphasisc                 C   r  )NrU   r+   r  r›   r   r   r   Údepart_emphasiso  r  zTranslator.depart_emphasisc                 C   sJ   d|v r| j jjd|d� d|v r| j jjd|d� | j t| jƒ¡ d S )NÚmorerowsz""table row spanning" not supported©Ú	base_nodeÚmorecolsz#"table cell spanning" not supported)r   r`   Úwarningrf   r%   r.   rc   r›   r   r   r   Úvisit_entryr  s   
ÿÿzTranslator.visit_entryc                 C   s0   | j  ¡ }| j | j|d … ¡ | j|d …= d S r   )rf   rÁ   rq   r1   rc   )r   r•   r0   r   r   r   Údepart_entry|  s   
zTranslator.depart_entryc                 C   rÒ   r   rã   r›   r   r   r   Úvisit_enumerated_list�  r·   z Translator.visit_enumerated_listc                 C   rå   r   ræ   r›   r   r   r   Údepart_enumerated_list„  rè   z!Translator.depart_enumerated_listc                 C   rÆ   )NÚerrorrÖ   r›   r   r   r   Úvisit_error‡  r'   zTranslator.visit_errorc                 C   rš   r   r   r›   r   r   r   Úvisit_fieldŒ  r�   zTranslator.visit_fieldc                 C   rš   r   r   r›   r   r   r   Údepart_field�  r�   zTranslator.depart_fieldc                 C   s:   | j r| j ¡  dd¡}| j| j|< |  ||¡ tj‚d S )Nr4   Ú_)ro   rp   r±   rŒ   rn   rÉ   r   rÙ   )r   r•   Úname_normalizedr   r   r   Úvisit_field_body’  s   üzTranslator.visit_field_bodyc                 C   rš   r   r   r›   r   r   r   Údepart_field_body™  r�   zTranslator.depart_field_bodyc                 C   r  r   )rN   ÚFIELD_LIST_INDENTr›   r   r   r   Úvisit_field_listœ  r·   zTranslator.visit_field_listc                 C   rå   r   rá   r›   r   r   r   Údepart_field_listŸ  rè   zTranslator.depart_field_listc                 C   s0   | j r| ¡ | _tj‚| j | jd d ¡ d S )NrP   r   )ro   r   rp   r   rÙ   rc   r%   rw   r›   r   r   r   Úvisit_field_name¢  s   
zTranslator.visit_field_namec                 C   r  )NrP   r+   r  r›   r   r   r   Údepart_field_name©  r  zTranslator.depart_field_namec                 C   s   |   d¡ |   d¡ d S )Ng      @r   )rN   r›   r   r   r   Úvisit_figure¬  s   
zTranslator.visit_figurec                 C   rà   r   rá   r›   r   r   r   Údepart_figure°  râ   zTranslator.depart_figurec                 C   ó   | j jjd|d� d S )Nz"footer" not supportedr%  ©r   r`   r(  r›   r   r   r   Úvisit_footer´  ó   

ÿzTranslator.visit_footerc                 C   rš   r   r   r›   r   r   r   Údepart_footer¸  r�   zTranslator.depart_footerc                 C   s6   |  ¡  d d¡\}}| ¡ }| j d|  |¡ ¡ d S )Nr+   rí   )r   r~   rî   rc   r%   r�   )r   r•   rï   r:   r   r   r   Úvisit_footnote»  s   zTranslator.visit_footnotec                 C   rš   r   r   r›   r   r   r   Údepart_footnoteÀ  r�   zTranslator.depart_footnotec                 C   r<  )Nz!"footnote_backrefs" not supportedr%  r=  r›   r   r   r   Úfootnote_backrefsÃ  r?  zTranslator.footnote_backrefsc                 C   s$   | j  d|  | ¡ ¡ d ¡ tj‚rò   )rc   r%   r�   r   r   rÙ   r›   r   r   r   Úvisit_footnote_referenceÇ  s   z#Translator.visit_footnote_referencec                 C   rš   r   r   r›   r   r   r   Údepart_footnote_referenceË  r�   z$Translator.depart_footnote_referencec                 C   rš   r   r   r›   r   r   r   Úvisit_generatedÎ  r�   zTranslator.visit_generatedc                 C   rš   r   r   r›   r   r   r   Údepart_generatedÑ  r�   zTranslator.depart_generatedc                 C   s   t | ¡ ƒ‚r   )ÚNotImplementedErrorr   r›   r   r   r   Úvisit_headerÔ  rè   zTranslator.visit_headerc                 C   rš   r   r   r›   r   r   r   Údepart_header×  r�   zTranslator.depart_headerc                 C   rÆ   )NÚhintrÖ   r›   r   r   r   Ú
visit_hintÚ  r'   zTranslator.visit_hintc                 C   ó   | j  d¡ d S )Nz\s-2\d©rc   r%   r›   r   r   r   Úvisit_subscriptß  r'   zTranslator.visit_subscriptc                 C   rM  )Nz\u\s0rN  r›   r   r   r   Údepart_subscriptâ  r'   zTranslator.depart_subscriptc                 C   rM  )Nz\s-2\urN  r›   r   r   r   Úvisit_superscriptå  r'   zTranslator.visit_superscriptc                 C   rM  )Nz\d\s0rN  r›   r   r   r   Údepart_superscriptè  r'   zTranslator.depart_superscriptc                 C   rM  )Nz\(em rN  r›   r   r   r   Úvisit_attributionë  r'   zTranslator.visit_attributionc                 C   rM  ©Nr2   rN  r›   r   r   r   Údepart_attributionî  r'   zTranslator.depart_attributionc                 C   sf   | j jjd|d� g }d|jv r| |jd ¡ d|jv r%| |jd ¡ | j dd |¡ ¡ tj‚)Nz"image" not supportedr%  ÚaltÚuriz[image: %s]
ú/)	r   r`   r(  Ú
attributesr%   rc   r6   r   rÙ   )r   r•   r:   r   r   r   Úvisit_imageñ  s   
ÿ

zTranslator.visit_imagec                 C   rÆ   )NÚ	importantrÖ   r›   r   r   r   Úvisit_importantü  r'   zTranslator.visit_importantc                 C   rš   r   r   r›   r   r   r   Úvisit_inline  r�   zTranslator.visit_inlinec                 C   rš   r   r   r›   r   r   r   Údepart_inline  r�   zTranslator.depart_inlinec                 C   sD   t |jtjƒst |jtjƒrtj‚| jjjd|d� | j	 
d¡ d S )Nz"unsupported "label"r%  ró   )Ú
isinstanceÚparentr   ÚfootnoteÚcitationrÙ   r   r`   r(  rc   r%   r›   r   r   r   Úvisit_label  s   ÿ
ÿzTranslator.visit_labelc                 C   rM  )Nz]
rN  r›   r   r   r   Údepart_label  r'   zTranslator.depart_labelc                 C   rš   r   r   r›   r   r   r   Úvisit_legend  r�   zTranslator.visit_legendc                 C   rš   r   r   r›   r   r   r   Údepart_legend  r�   zTranslator.depart_legendc                 C   s8   |  j d7  _ | j dkr| j d¡ d S | j d¡ d S )Nr+   z.nf
z.in +2
©rt   rc   r%   r›   r   r   r   Úvisit_line_block  s   
zTranslator.visit_line_blockc                 C   sD   |  j d8  _ | j dkr| j d¡ | j d¡ d S | j d¡ d S )Nr+   r   z.fi
r*   z.in -2
rg  r›   r   r   r   Údepart_line_block%  s
   
zTranslator.depart_line_blockc                 C   rš   r   r   r›   r   r   r   Ú
visit_line-  r�   zTranslator.visit_linec                 C   rM  rT  rN  r›   r   r   r   Údepart_line0  r'   zTranslator.depart_linec                 C   s,   | j  dt| jd ƒ| jd  ¡ f ¡ d S )Nz
.IP %s %d
r,   )rc   r%   rº   rk   r´   r›   r   r   r   Úvisit_list_item3  s   þzTranslator.visit_list_itemc                 C   rš   r   r   r›   r   r   r   Údepart_list_item9  r�   zTranslator.depart_list_itemc                 C   r  )NrQ   r   r  r›   r   r   r   Úvisit_literal<  r  zTranslator.visit_literalc                 C   r  )NrQ   r+   r  r›   r   r   r   Údepart_literal?  r  zTranslator.depart_literalc                 C   s4   |   t¡ |   d¡ | j | jd d ¡ d| _d S )Nr   rR   T)rN   ÚLITERAL_BLOCK_INDENTrc   r%   rw   rr   r›   r   r   r   Úvisit_literal_blockB  s   


zTranslator.visit_literal_blockc                 C   s0   d| _ | j | jd d ¡ |  ¡  |  ¡  d S r  )rr   rc   r%   rw   rÀ   r›   r   r   r   Údepart_literal_blockJ  s   zTranslator.depart_literal_blockc                 C   ó    | j jjd|d� |  |¡ d S )Nz"math" role not supportedr%  )r   r`   r(  rn  r›   r   r   r   Ú
visit_mathP  ó   
ÿzTranslator.visit_mathc                 C   rÒ   r   )ro  r›   r   r   r   Údepart_mathU  r·   zTranslator.depart_mathc                 C   rs  )Nz"math" directive not supportedr%  )r   r`   r(  rq  r›   r   r   r   Úvisit_math_blockX  ru  zTranslator.visit_math_blockc                 C   rÒ   r   )rr  r›   r   r   r   Údepart_math_block]  r·   zTranslator.depart_math_blockc                 C   rÆ   )NÚnoterÖ   r›   r   r   r   Ú
visit_noteg  r'   zTranslator.visit_noteç      à?c                 C   s4   | j d }| j  |¡ | j | jd d | ¡ d S )Nr,   rN   r   )rv   r%   rc   rw   )r   ÚbyÚstepr   r   r   rN   l  s   
zTranslator.indentc                 C   s$   | j  ¡  | j | jd d ¡ d S )NrN   r+   )rv   rÁ   rc   r%   rw   r   r   r   r   rÀ   r  s   
zTranslator.dedentc                 C   r  r   )rN   ÚOPTION_LIST_INDENTr›   r   r   r   Úvisit_option_listv  r·   zTranslator.visit_option_listc                 C   rå   r   rá   r›   r   r   r   Údepart_option_listy  rè   zTranslator.depart_option_listc                 C   r  )NrS   r   r  r›   r   r   r   Úvisit_option_list_item|  ó   z!Translator.visit_option_list_itemc                 C   r  )NrS   r+   r  r›   r   r   r   Údepart_option_list_item€  r  z"Translator.depart_option_list_itemc                 C   s.   | j  d¡ | j  t| jƒ¡ | j  d¡ d S )Nr†   r   )rf   r%   r.   rc   r›   r   r   r   Úvisit_option_groupƒ  s   zTranslator.visit_option_groupc                 C   sR   | j  ¡  | j  ¡ }| j|d … }| j|d …= | j d| j  ¡ d |¡f ¡ d S )Nz%s%s
r?   )rf   rÁ   rc   r%   r6   )r   r•   Ústart_positionr:   r   r   r   Údepart_option_group�  s
   

$zTranslator.depart_option_groupc                 C   s`   | j d dkr| j d dkr| j d¡ n| j d¡ | j d dkr(| j d¡ | j d¡ d S )	Nr,   r   éýÿÿÿú.BIz\fR,\fB z\fP,\fB rŽ   r4   )rf   rc   r%   r›   r   r   r   Úvisit_option”  s   zTranslator.visit_optionc                 C   s   | j d  d7  < d S )Nr,   r+   )rf   r›   r   r   r   Údepart_optionŸ  s   zTranslator.depart_optionc                 C   rš   r   r   r›   r   r   r   Úvisit_option_string¢  rÝ   zTranslator.visit_option_stringc                 C   rš   r   r   r›   r   r   r   Údepart_option_string¦  r�   zTranslator.depart_option_stringc                 C   sh   d| j d< |d dkr| j d|d  ¡ d S | jt| jƒd   d¡r,| j d¡ d S | j d¡ d S )	Nrˆ  r‡  Ú	delimiterr4   z\fB%s r+   ú=z \ )rf   rc   r%   r.   r9   r›   r   r   r   Úvisit_option_argument©  s   
z Translator.visit_option_argumentc                 C   rš   r   r   r›   r   r   r   Údepart_option_argument´  r�   z!Translator.depart_option_argumentc                 C   rÆ   )NÚorganizationrÈ   r›   r   r   r   Úvisit_organization·  r'   zTranslator.visit_organizationc                 C   rš   r   r   r›   r   r   r   Údepart_organizationº  r�   zTranslator.depart_organizationc                 C   sL   t |jd tjƒ}|jj|d … D ]}t |tjƒrq||u r! dS  dS dS )Nr   r+   )r_  r`  r   r   rª   Ú	Invisible)r   r•   ÚfirstÚchildr   r   r   Úfirst_child½  s   zTranslator.first_childc                 C   s(   |   ¡  |  |¡s| j d¡ d| _d S )Nr*   T)r„   r—  rc   r%   rr   r›   r   r   r   Úvisit_paragraphÇ  s   

zTranslator.visit_paragraphc                 C   s   d| _ | j d¡ d S )NFr2   )rr   rc   r%   r›   r   r   r   Údepart_paragraphÓ  s   zTranslator.depart_paragraphc                 C   r  )Nr[   r   r  r›   r   r   r   Úvisit_problematic×  r  zTranslator.visit_problematicc                 C   r  )Nr[   r+   r  r›   r   r   r   Údepart_problematicÚ  r  zTranslator.depart_problematicc                 C   s(   |  d¡dkr| j | ¡ d ¡ tj‚)NÚformatr
   r2   )rÍ   rc   r%   r   r   rÙ   r›   r   r   r   Ú	visit_rawÝ  s   zTranslator.visit_rawc                 C   ó   | j  | jd d ¡ dS )zE.g. link or email address.rT   r   Nr  r›   r   r   r   Úvisit_referenceã  r‚  zTranslator.visit_referencec                 C   r  )NrT   r+   r  r›   r   r   r   Údepart_referenceç  r  zTranslator.depart_referencec                 C   rÆ   )NÚrevisionrÈ   r›   r   r   r   Úvisit_revisionê  r'   zTranslator.visit_revisionc                 C   s   | j  ¡  d S r   )rq   r&   r›   r   r   r   Ú	visit_rowï  r·   zTranslator.visit_rowc                 C   rš   r   r   r›   r   r   r   Ú
depart_rowò  r�   zTranslator.depart_rowc                 C   s   |  j d7  _ d S r  ©re   r›   r   r   r   Úvisit_sectionõ  ó   zTranslator.visit_sectionc                 C   s   |  j d8  _ d S r  r¥  r›   r   r   r   Údepart_sectionø  r§  zTranslator.depart_sectionc                 C   rÆ   )NÚstatusrÈ   r›   r   r   r   Úvisit_statusû  r'   zTranslator.visit_statusc                 C   r  )NrV   r   r  r›   r   r   r   Úvisit_strong   r  zTranslator.visit_strongc                 C   r  )NrV   r+   r  r›   r   r   r   Údepart_strong  r  zTranslator.depart_strongc                 C   ó   t j‚)zInternal only.©r   rÙ   r›   r   r   r   Úvisit_substitution_definition  ó   z(Translator.visit_substitution_definitionc                 C   r<  )Nz&"substitution_reference" not supportedr%  r=  r›   r   r   r   Úvisit_substitution_reference
  r?  z'Translator.visit_substitution_referencec                 C   sr   t |jtjƒr| j | jd d ¡ d S t |jtjƒr#|  |d¡ d S t |jtj	ƒr7| j | jd d ¡ d S d S )NrV   r   rB   )
r_  r`  r   Úsidebarrc   r%   rw   r   rÉ   Úsectionr›   r   r   r   Úvisit_subtitle  s   ÿzTranslator.visit_subtitlec                 C   s   | j  | jd d d ¡ d S )NrV   r+   z
.PP
r  r›   r   r   r   Údepart_subtitle  s   zTranslator.depart_subtitlec                 C   sb   i }d}|  d¡r|d |d< |  d¡rd|d  }nd}| j d|d |d |d	 |f ¡ d S )
Nr?   ÚidrÐ   Úlinez	, line %sz$.IP "System Message: %s/%s (%s:%s)"
ÚtypeÚlevelÚsource)Úhasattrrc   r%   )r   r•   ÚattrÚbackref_textr·  r   r   r   Úvisit_system_message  s   


ÿzTranslator.visit_system_messagec                 C   rš   r   r   r›   r   r   r   Údepart_system_message*  r�   z Translator.depart_system_messagec                 C   s   t ƒ | _d S r   )r   rq   r›   r   r   r   Úvisit_table-  rè   zTranslator.visit_tablec                 C   s$   |   ¡  | j | j ¡ ¡ d | _d S r   )r„   rc   r8   rq   r>   r›   r   r   r   Údepart_table0  s   
zTranslator.depart_tablec                 C   r­  r   r®  r›   r   r   r   Úvisit_target5  r°  zTranslator.visit_targetc                 C   rš   r   r   r›   r   r   r   Úvisit_tbody9  r�   zTranslator.visit_tbodyc                 C   rš   r   r   r›   r   r   r   Údepart_tbody<  r�   zTranslator.depart_tbodyc                 C   r  )NrW   r   r  r›   r   r   r   Ú
visit_term?  r  zTranslator.visit_termc                 C   r  )NrW   r+   r  r›   r   r   r   Údepart_termB  r  zTranslator.depart_termc                 C   rš   r   r   r›   r   r   r   Úvisit_tgroupE  r�   zTranslator.visit_tgroupc                 C   rš   r   r   r›   r   r   r   Údepart_tgroupH  r�   zTranslator.depart_tgroupc                 C   rš   r   r   r›   r   r   r   Úvisit_theadK  rÝ   zTranslator.visit_theadc                 C   rš   r   r   r›   r   r   r   Údepart_theadO  rÝ   zTranslator.depart_theadc                 C   rÆ   )NÚtiprÖ   r›   r   r   r   Ú	visit_tipS  r'   zTranslator.visit_tipc                 C   sÜ   t |jtjƒr| j | jd d ¡ d S t |jtjƒr(| j | jd d ¡ d S t |jtjƒr7| j d¡ d S | j	dkrO| 
¡ | jd< | 
¡  ¡ | jd< tj‚| j	dkrf| j d|  | 
¡  ¡ ¡ ¡ tj‚| j d	¡ d S )
NrY   r   rZ   z.IP "r@   rA   r+   z.SH %s
rM   )r_  r`  r   Útopicrc   r%   rw   r²  Ú
admonitionre   r   rl   r®   rÙ   r�   r›   r   r   r   Úvisit_titleX  s   

zTranslator.visit_titlec                 C   s*   t |jtjƒr| j d¡ | j d¡ d S )Nú"r2   )r_  r`  r   rÎ  rc   r%   r›   r   r   r   Údepart_titlej  s   zTranslator.depart_titlec                 C   rž  )zinline citation referencerX   r   Nr  r›   r   r   r   Úvisit_title_referenceo  r‚  z Translator.visit_title_referencec                 C   r  )NrX   r+   r  r›   r   r   r   Údepart_title_references  r  z!Translator.depart_title_referencec                 C   rš   r   r   r›   r   r   r   Úvisit_topicv  r�   zTranslator.visit_topicc                 C   rš   r   r   r›   r   r   r   Údepart_topicy  r�   zTranslator.depart_topicc                 C   rš   r   r   r›   r   r   r   Úvisit_sidebar|  r�   zTranslator.visit_sidebarc                 C   rš   r   r   r›   r   r   r   Údepart_sidebar  r�   zTranslator.depart_sidebarc                 C   rš   r   r   r›   r   r   r   Úvisit_rubric‚  r�   zTranslator.visit_rubricc                 C   rM  rT  rN  r›   r   r   r   Údepart_rubric…  r'   zTranslator.depart_rubricc                 C   rM  )Nz
.sp
.ce
----
rN  r›   r   r   r   Úvisit_transitionˆ  s   zTranslator.visit_transitionc                 C   rM  )Nz
.ce 0
.sp
rN  r›   r   r   r   Údepart_transitionŽ  r'   zTranslator.depart_transitionc                 C   rÆ   )NrH   rÈ   r›   r   r   r   Úvisit_version‘  r'   zTranslator.visit_versionc                 C   rÆ   )Nr(  rÖ   r›   r   r   r   Úvisit_warning”  r'   zTranslator.visit_warningc                 C   s   t d|jj ƒ‚)Nz$visiting unimplemented node type: %s)rH  Ú	__class__r   r›   r   r   r   Úunimplemented_visit™  s   ÿzTranslator.unimplemented_visitr   )r{  )Ðr   r   r   Ú__doc__ÚreÚcompileÚwords_and_spacesr‰   r  r   r€   rƒ   r„   r   r�   r™   rœ   r¿   rÂ   rÄ   rˆ   rÊ   rË   rÑ   rÔ   r×   Údepart_attentionrÉ   rÚ   rÛ   Údepart_authorrÜ   rÞ   rÎ   rÓ   rä   rç   ré   rê   rì   Údepart_cautionrð   rñ   rõ   rö   r÷   rø   rù   rú   rû   rü   rþ   Údepart_contactrÿ   r   r  r  r  r  Údepart_dangerr  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r!  r"  r#  r)  r*  r+  r,  r.  Údepart_errorr/  r0  r3  r4  r6  r7  r8  r9  r:  r;  r>  r@  rA  rB  rC  rD  rE  rF  rG  rI  rJ  rL  Údepart_hintrO  rP  rQ  rR  rS  rU  rZ  r\  Údepart_importantr]  r^  rc  rd  re  rf  rh  ri  rj  rk  rl  rm  rn  ro  rq  rr  rt  rv  rw  rx  rz  Údepart_noterN   rÀ   r  r€  r�  rƒ  r„  r†  r‰  rŠ  r‹  rŒ  r�  r�  r’  r“  r—  r˜  r™  rš  r›  r�  rŸ  r   r¢  Údepart_revisionr£  r¤  r¦  r¨  rª  Údepart_statusr«  r¬  r¯  r±  r´  rµ  r¾  r¿  rÀ  rÁ  rÂ  rÃ  rÄ  rÅ  rÆ  rÇ  rÈ  rÉ  rÊ  rÌ  Ú
depart_tiprÏ  rÑ  rÒ  rÓ  rÔ  rÕ  rÖ  r×  rØ  rÙ  rÚ  rÛ  rÜ  rÝ  Údepart_warningrß  r   r   r   r   r   ¢   s˜   

G	A

ÿ
	


r   )rà  Ú__docformat__rá  r¸   r¹   Úxranger7   Údocutilsr   r   r   r¥   ÚImportErrorÚdocutils.utils.romanÚutilsr5  r  r~  rß   rp  rÅ   r	   r¾   r   r\   r   r   r   r   r   Ú<module>   s,   '
ÿ/