
Sc           @   s  d  Z  d Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z y d d l Z	 WnZ e
 k
 r y/ d d l Z d e f d     YZ	 e e	 _ Wn e
 k
 r e Z	 n Xn Xd d l Z d d l m Z m Z m Z m Z m Z m Z d d l m Z d d l m Z d d	 l m Z m Z m Z d d
 l m Z d e j f d     YZ d e j  f d     YZ! d e j" f d     YZ# d S(   s/  
Simple HyperText Markup Language document tree Writer.

The output conforms to the XHTML version 1.0 Transitional DTD
(*almost* strict).  The output contains a minimum of formatting
information.  The cascading style sheet "html4css1.css" is required
for proper viewing with a modern graphical browser.
t   reStructuredTextiNt   PILc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR      s    (   t   frontendt   nodest   utilst   writerst	   languagest   io(   t
   SafeString(   t
   writer_aux(   t   unichar2text   pick_math_environmentt	   math2html(   t   parse_latex_matht   Writerc           B   s  e  Z dl Z d Z d e j e j j e j	   d  e
 j e   g Z d Z e j e j j e j	   d  e j j e
 j e  e   Z d dm d e d	 g i e d
 6d d 6f d d g i d d 6d d 6e j d 6f d e d g i d d 6d d 6e j d 6e g d
 6f d d g i d d
 6d d 6e j d 6f d d g i d d 6d  d 6f d! e d" g i d# d 6e j d 6e d
 6f d$ d% g i d& j   d' 6d( d
 6d) d 6f d* d+ g i d, d
 6d) d 6e j d 6f d- d. g i d, d
 6d) d 6e j d 6f d/ d0 g i d1 d2 g d' 6d2 d
 6d3 d 6d4 d 6f d5 d6 g i d7 d8 d9 d: g d' 6d7 d
 6d3 d 6f d; d< g i d d
 6d d 6e j d 6f d= d> g i d? d 6d  d 6f d@ dA g i d d
 6d d 6e j d 6f dB dC g i dD d 6d  d 6f dE dF g i dG d
 6f dH dI g i dJ d
 6f dK dL g i dM d 6d d
 6d  d 6e j d 6f dN dO g i d d 6e j d 6f f f Z i dP dQ 6Z dR Z dn Z do Z df   Z dg   Z dh   Z di   Z dj   Z dk   Z  RS(p   t   htmlt	   html4css1t   xhtmls   html4css1.csst   .t   dummys   template.txts   HTML-Specific Optionss<   Specify the template file (UTF-8 encoded).  Default is "%s".s
   --templatet   defaults   <file>t   metavarsh   Comma separated list of stylesheet URLs. Overrides previous --stylesheet and --stylesheet-path settings.s   --stylesheets   <URL[,URL,...]>t   stylesheet_patht	   overridest	   validators   Comma separated list of stylesheet paths. Relative paths are expanded if a matching file is found in the --stylesheet-dirs. With --link-stylesheet, the path is rewritten relative to the output HTML file. Default: "%s"s   --stylesheet-paths   <file[,file,...]>t
   stylesheets   Embed the stylesheet(s) in the output HTML file.  The stylesheet files must be accessible during processing. This is the default.s   --embed-stylesheeti   t
   store_truet   actionsN   Link to the stylesheet(s) in the output HTML file. Default: embed stylesheets.s   --link-stylesheett   embed_stylesheett   destt   store_falses   Comma-separated list of directories where stylesheets are found. Used by --stylesheet-path when expanding relative path arguments. Default: "%s"s   --stylesheet-dirss   <dir[,dir,...]>s|   Specify the initial header level.  Default is 1 for "<h1>".  Does not affect document title & subtitle (see --no-doc-title).s   --initial-header-levels   1 2 3 4 5 6t   choicest   1s   <level>s   Specify the maximum width (in characters) for one-column field names.  Longer field names will span an entire row of the table used to render the field list.  Default is 14 characters.  Use 0 for "no limit".s   --field-name-limiti   s   Specify the maximum width (in characters) for options in option lists.  Longer options will span an entire row of the table used to render the option list.  Default is 14 characters.  Use 0 for "no limit".s   --option-limits[   Format for footnote references: one of "superscript" or "brackets".  Default is "brackets".s   --footnote-referencest   superscriptt   bracketss   <format>t   trim_footnote_reference_spaces{   Format for block quote attributions: one of "dash" (em-dash prefix), "parentheses"/"parens", or "none".  Default is "dash".s   --attributiont   dasht   parenthesest   parenst   nonesp   Remove extra vertical whitespace between items of "simple" bullet lists and enumerated lists.  Default: enabled.s   --compact-listss3   Disable compact simple bullet and enumerated lists.s   --no-compact-listst   compact_listssX   Remove extra vertical whitespace between items of simple field lists.  Default: enabled.s   --compact-field-listss#   Disable compact simple field lists.s   --no-compact-field-listst   compact_field_listssJ   Added to standard table classes. Defined styles: "borderless". Default: ""s   --table-stylet    s[   Math output format, one of "MathML", "HTML", "MathJax" or "LaTeX". Default: "HTML math.css"s   --math-outputs   HTML math.csss,   Omit the XML declaration.  Use with caution.s   --no-xml-declarationt   xml_declarationsy   Obfuscate email addresses to confuse harvesters while still keeping email links usable with standards-compliant browsers.s   --cloak-email-addressest   xmlcharrefreplacet   output_encoding_error_handlers   html4css1 writerR   t   head_prefixt   headt   body_prefixt   body_pre_docinfot   docinfot   bodyt   body_suffixt   titlet   subtitlet   headert   footert   metat   fragmentt   html_prologt	   html_headt
   html_titlet   html_subtitlet	   html_bodyc         C   s   t  j j |   t j g S(   N(   R   R   t   get_transformsR   t   Admonitions(   t   self(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRB      s    c         C   s   t  j j |   t |  _ d  S(   N(   R   R   t   __init__t   HTMLTranslatort   translator_class(   RD   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRE      s    c         C   si   |  j  |  j  |  _ } |  j j |  x* |  j D] } t |  | t | |   q3 W|  j   |  _ d  S(   N(	   RG   t   documentt   visitort	   walkaboutt   visitor_attributest   setattrt   getattrt   apply_templatet   output(   RD   RI   t   attr(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt	   translate   s
    c         C   sK   t  |  j j j d  } t | j   d  } | j   |  j   } | | S(   Nt   rbs   utf-8(   t   openRH   t   settingst   templatet   unicodet   readt   closet   interpolation_dict(   RD   t   template_fileRU   t   subs(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRN      s
    
c         C   si   i  } |  j  j } x6 |  j D]+ } d j t |  |   j d  | | <q W| j | d <t j | d <| S(   NR,   s   
t   encodingt   version(	   RH   RT   RK   t   joinRM   t   rstript   output_encodingt   docutilst   __version__(   RD   R[   RT   RP   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRY      s    )c         C   sG   t  j j |   x0 |  j D]% } d j t |  |   |  j | <q Wd  S(   NR,   (   R   R   t   assemble_partsRK   R^   RM   t   parts(   RD   t   part(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRc      s    (   R   R   R   N(   s   writers(   s   head_prefixs   heads
   stylesheets   body_prefixs   body_pre_docinfos   docinfos   bodys   body_suffixs   titles   subtitles   headers   footers   metas   fragments   html_prologs	   html_heads
   html_titles   html_subtitles	   html_body(!   R   R   t	   supportedt   default_stylesheetR   t   relative_patht   ost   pathR^   t   getcwdRa   t   _datadirt   __file__t   default_stylesheet_dirst   default_templatet   default_template_patht   NoneR   t   validate_comma_separated_listt   validate_booleant   splitt   validate_nonnegative_intt   settings_spect   settings_defaultst   config_sectiont   config_section_dependenciesRK   RB   RE   RQ   RN   RY   Rc   (    (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR   (   s   	-!





     						RF   c           B   s  e  Z d  Z d Z d Z e Z d Z d Z d Z d Z	 d Z
 d Z d	 Z d
 Z e j d  Z e j d e j  Z d Z d   Z d   Z d   Z d   Z d   Z e j d  d  Z d   Z d e d  Z d d  Z d d  Z d   Z d   Z  d   Z! d   Z" d   Z# d    Z$ d!   Z% d"   Z& d#   Z' d$   Z( d d%  Z* i d d( 6d d+ 6d d, 6d d- 6Z+ d.   Z, d/   Z- d0   Z. d1   Z/ d2   Z0 d3   Z1 d4   Z2 d5   Z3 d6   Z4 d7   Z5 d8   Z6 d9   Z7 d:   Z8 d;   Z9 d<   Z: d=   Z; d>   Z< d?   Z= d@   Z> dA   Z? dB   Z@ dC   ZA dD   ZB e j dE  jC dF  ZD dG   ZE dH   ZF dI   ZG dJ   ZH dK   ZI dL   ZJ dM   ZK dN   ZL dO   ZM dP   ZN dQ   ZO dR   ZP dS   ZQ dT   ZR dU   ZS dV   ZT dW   ZU dX   ZV dY   ZW dZ   ZX d[   ZY d\   ZZ e[ d]  Z\ d^   Z] d_   Z^ d`   Z_ da   Z` db   Za dc   Zb dd   Zc de   Zd df   Ze dg   Zf dh   Zg di   Zh dj   Zi dk   Zj dl   Zk dm   Zl dn   Zm do   Zn dp   Zo dq   Zp dr   Zq ds   Zr dt   Zs du   Zt dv   Zu dw   Zv dx   Zw dy   Zx dz   Zy d{   Zz d|   Z{ d}   Z| d~   Z} d   Z~ d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d' d  Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   s  
    This HTML writer has been optimized to produce visually compact
    lists (less vertical whitespace).  HTML's mixed content models
    allow list items to contain "<li><p>body elements</p></li>" or
    "<li>just text</li>" or even "<li>text<p>and body
    elements</p>combined</li>", each with different effects.  It would
    be best to stick with strict body elements in list items, but they
    affect vertical spacing in browsers (although they really
    shouldn't).

    Here is an outline of the optimization:

    - Check for and omit <p> tags in "simple" lists: list items
      contain either a single paragraph, a nested simple list, or a
      paragraph followed by a nested simple list.  This means that
      this list can be compact:

          - Item 1.
          - Item 2.

      But this list cannot be compact:

          - Item 1.

            This second paragraph forces space between list items.

          - Item 2.

    - In non-list contexts, omit <p> tags on a paragraph if that
      paragraph is the only child of its parent (footnotes & citations
      are allowed a label first).

    - Regardless of the above, in definitions, table cells, field bodies,
      option descriptions, and list items, mark the first child with
      'class="first"' and the last child with 'class="last"'.  The stylesheet
      sets the margins (top & bottom respectively) to 0 for these elements.

    The ``no_compact_lists`` setting (``--no-compact-lists`` command-line
    option) disables list whitespace optimization.
    s%   <?xml version="1.0" encoding="%s" ?>
sz   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
sW   <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="%(lang)s" lang="%(lang)s">
<head>
sC   <meta http-equiv="Content-Type" content="text/html; charset=%s" />
sO   <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=%s" />
sR   <meta name="generator" content="Docutils %s: http://docutils.sourceforge.net/" />
s2   <script type="text/javascript" src="%s"></script>
sM   http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMMLs4   <link rel="stylesheet" href="%s" type="text/css" />
s%   <style type="text/css">

%s
</style>
s	   \S+| +|\ns   .+\W\W.+|[-?].+t   langc         C   s-  t  j j |  |  | j |  _ } | j } t j | | j  |  _ |  j	 t
 j g |  _ g  |  _ g  |  _ | j r |  j j |  j | j  |  j j |  j  n  |  j |  _ g  t j |  D] } |  j |  ^ q |  _ d g |  _ g  |  _ g  |  _ g  |  _ g  |  _ d g |  _ d |  _ t | j  |  _ | j  j!   |  _  |  j  d |  _" |  j  d j#   |  _  g  |  _$ g  |  _% g  |  _& t' |  _( t) |  _* t) |  _+ t) |  _, t) |  _- g  |  _. g  |  _/ g  |  _0 g  |  _1 |  j2 g |  _3 g  |  _4 g  |  _5 g  |  _6 d |  _7 t) |  _8 t) |  _9 g  |  _: d  S(   Ns   </head>
<body>
s   </body>
</html>
i    i   (;   R   t   NodeVisitorRE   RT   t   language_codeR   t   get_languaget   reportert   languaget	   generatorRa   Rb   R;   R0   R=   R-   t   appendR`   R1   R   t   get_stylesheet_listt   stylesheet_callR   R2   R3   R4   R5   R<   R6   t   section_levelt   intt   initial_header_levelt   math_outputRt   t   math_output_optionst   lowert   contextt   topic_classest   colspecst   Truet	   compact_pt   Falset   compact_simplet   compact_field_listt
   in_docinfot
   in_sidebarR7   R8   R9   R:   t   content_typeR>   R?   R@   RA   t   in_document_titlet	   in_mailtot   author_in_authorst   math_header(   RD   RH   RT   t   lcodeRj   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRE     sZ    				+																							c         C   sA   d j  |  j |  j |  j |  j |  j |  j |  j |  j  S(   NR,   (	   R^   R0   R1   R   R2   R3   R4   R5   R6   (   RD   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   astextK  s    c         C   sa   t  |  } | j i d t d  6d t d  6d t d  6d t d  6d	 t d
  6d d 6 S(   s-   Encode special characters in `text` & return.u   &amp;t   &u   &lt;t   <u   &quot;t   "u   &gt;t   >u   &#64;t   @u   &nbsp;i   (   RV   RQ   t   ord(   RD   t   text(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   encodeQ  s    	c         C   s   | j  d d  S(   s*   Try to hide a mailto: URL from harvesters.R   s   %40(   t   replace(   RD   t   uri(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   cloak_mailto^  s    c         C   s(   | j  d d  } | j  d d  } | S(   s;   Try to hide the link text of a email link from harversters.s   &#64;s   <span>&#64;</span>R   s   <span>&#46;</span>(   R   (   RD   t   addr(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   cloak_emaile  s    s   [
	]c         C   s[   |  j  | j d |   } |  j rW |  j j rW | j d d  } | j d d  } n  | S(   s6   Cleanse, HTML encode, and return attribute value text.t    s   %40s   &#37;&#52;&#48;R   s   &#46;(   R   t   subR   RT   t   cloak_email_addressesR   (   RD   R   t
   whitespacet   encoded(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   attvalm  s
    c         C   s   |  j  j r y5 t j d | d d  j   } |  j  j j |  WnD t k
 r } d | t | j	  f } |  j
 j j |  d | SX|  j | S|  j  j r t j |  j  j |  } n  |  j |  j |  S(   s8   Return code to reference or embed stylesheet file `path`t   source_pathR\   s   utf-8u!   Cannot embed stylesheet '%s': %s.s   <--- %s --->
(   RT   R   R	   t	   FileInputRW   t   record_dependenciest   addt   IOErrorR
   t   strerrorRH   R~   t   errort   embedded_stylesheetR   R   Rh   t   _destinationt   stylesheet_linkR   (   RD   Rj   t   contentt   errt   msg(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR   w  s    	s   
c         K   s  | j    } g  } i  } g  } x* | j   D] \ }	 }
 |
 | |	 j    <q+ Wg  } g  } x{ | j d g   | j d d  j   D]Q } | j d  r | j | d  q | j   r | | k r | j |  q q W| r | d | |  j <n  | rd j	 |  | d <n  d | k st
  | j | j d	 g    d	 | k r]| j | d	  | d	 =n  | r| d | d <x= | d
 D]. } | r| j d |  q|| d | 7} q|Wn  | j   } | j   | g } x | D] \ }	 }
 |
 d k	 st
  t |
 t  rUg  |
 D] } t |  ^ q} | j d |	 j    |  j d j	 |   f  q| j d |	 j    |  j t |
   f  qW| rd } n d } d j	 |  d d j	 |  | f | S(   s   
        Construct and return a start tag given a node (id & class attributes
        are extracted), tag name, and optional attributes.
        t   classest   classR,   s	   language-i	   i    R   t   idt   idsi   s   <span id="%s"></span>s   %s="%s"s    /s   <%s%s>N(   R   t   itemst   gett   popRt   t
   startswithR   t   stript   lang_attributeR^   t   AssertionErrort   extendt   sortRq   t
   isinstancet   listRV   R   (   RD   t   nodet   tagnamet   suffixt   emptyt
   attributest   prefixt   attsR   t   namet   valueR   R   t   clsR   t   attlistRd   t   vt   valuest   infix(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   starttag  sV    /

	 	c         K   s   |  j  | | | d t | S(   s1   Construct and return an XML-compatible empty tag.R   (   R   R   (   RD   R   R   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   emptytag  s    i    c         C   sc   g  | D] } t  | t j  s | ^ q } y | | } Wn t k
 rM d SX| d j |  d S(   s   
        Set class `class_` on the visible child no. index of `node`.
        Do nothing if node has fewer children than `index`.
        NR   (   R   R   t	   Invisiblet
   IndexErrorR   (   RD   R   t   class_t   indext   nt   childrent   child(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   set_class_on_child  s    +c         C   s*   |  j  | d d  |  j  | d d  d  S(   Nt   firsti    t   lasti(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   set_first_last  s    c         C   sV   | j    } |  j |  } |  j rB |  j j rB |  j |  } n  |  j j |  d  S(   N(   R   R   R   RT   R   R   R5   R   (   RD   R   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt
   visit_Text  s
    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_Text  s    c         C   s#   |  j  j |  j | d d   d  S(   Nt   abbrR,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_abbreviation  s    c         C   s   |  j  j d  d  S(   Ns   </abbr>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_abbreviation  s    c         C   s#   |  j  j |  j | d d   d  S(   Nt   acronymR,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_acronym  s    c         C   s   |  j  j d  d  S(   Ns
   </acronym>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_acronym  s    c         C   s<   |  j  | d d t |  j j |  j | d d d  d  S(   Nt   addressR;   t   pret   CLASS(   t   visit_docinfo_itemR   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_address  s    c         C   s   |  j  j d  |  j   d  S(   Ns   
</pre>
(   R5   R   t   depart_docinfo_item(   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_address  s    c         C   s-   |  j  j |  j | d   |  j |  d  S(   Nt   div(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_admonition  s    c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_admonition  s    s   &mdash;R,   R&   t   (t   )R'   R(   R)   c         C   sR   |  j  |  j j \ } } |  j j |  |  j j |  j | d | d d  d  S(   Nt   pR   t   attribution(   t   attribution_formatsRT   R   R   R   R5   R   (   RD   R   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_attribution
  s    	c         C   s!   |  j  j |  j j   d  d  S(   Ns   </p>
(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_attribution  s    c         C   sH   t  | j t j  r4 |  j rD |  j j d  qD n |  j | d  d  S(   Ns   
<br />t   author(   R   t   parentR   t   authorsR   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_author  s    	c         C   s/   t  | j t j  r! t |  _ n
 |  j   d  S(   N(   R   R   R   R   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_author  s    c         C   s   |  j  | d  t |  _ d  S(   NR   (   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_authors   s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_authors$  s    c         C   s    |  j  j |  j | d   d  S(   Nt
   blockquote(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_block_quote'  s    c         C   s   |  j  j d  d  S(   Ns   </blockquote>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_block_quote*  s    c         C   s@   t  |  j  } y | j |  Wn t j k
 r7 d SXd Sd S(   s7   Check for a simple list that can be rendered compactly.i   N(   t   SimpleListCheckerRH   t   walkR   t	   NodeFoundRq   (   RD   R   RI   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   check_simple_list-  s    c         C   sT   d | d k pS |  j  j oS d | d k oS |  j pS |  j d g k pS |  j |  S(   Nt   compactR   RS   t   contents(   RT   R*   R   R   R  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   is_compactable7  s    	c         C   s   i  } |  j  } |  j j |  j  |  j f  d  |  _ |  j |  |  _  |  j  rc | rc d | d <n  |  j j |  j | d |   d  S(   Nt   simpleR   t   ul(   R   R   R   R   Rq   R  R5   R   (   RD   R   R   t   old_compact_simple(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_bullet_list?  s    		c         C   s/   |  j  j   \ |  _ |  _ |  j j d  d  S(   Ns   </ul>
(   R   R   R   R   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_bullet_listI  s    c         C   s)   |  j  j |  j | d d d d  d  S(   NR   R,   R   t   caption(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_captionM  s    c         C   s   |  j  j d  d  S(   Ns   </p>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_captionP  s    c      
   C   sO   |  j  j |  j | d d d d d d d  |  j  j d  |  j |  d  S(	   Nt   tableR   s   docutils citationt   framet   voidt   rulesR)   sK   <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top">
<tr>(   R5   R   R   t   footnote_backrefs(   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_citationS  s
    c         C   s   |  j  j d  d  S(   Ns   </td></tr>
</tbody>
</table>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_citation\  s    c      	   C   sy   d } d | k r# | | d 7} n' d | k rJ | |  j  j | d 7} n  |  j j |  j | d d d d d |  d  S(	   Nt   #t   refidt   refnamet   at   [R   s   citation-referencet   href(   RH   t   nameidsR5   R   R   (   RD   R   R#  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_citation_reference`  s    c         C   s   |  j  j d  d  S(   Ns   ]</a>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_citation_referencek  s    c         C   s9   |  j  j d  |  j  j |  j | d d d d  d  S(   Ns-    <span class="classifier-delimiter">:</span> t   spanR,   R   t
   classifier(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_classifiern  s    c         C   s   |  j  j d  d  S(   Ns   </span>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_classifierr  s    c         C   s3   |  j  j |  | j j j | j j d   d  S(   Nt   stub(   R   R   R   t   stubsR   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_colspecu  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_colspecz  s    c         C   s   d } x |  j  D] } | | d 7} q WxS |  j  D]H } t | d d | d  } |  j j |  j | d d d |  q2 Wg  |  _  d  S(   Ni    t   colwidthg      Y@g      ?t   colt   widths   %i%%(   R   R   R5   R   R   (   RD   R1  R   R/  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   write_colspecs}  s    s   -(?=-)c         C   s0   |  j  j d | d | j     t j  d S(   s%   Escape double-dashes in comment text.s   <!-- %s -->
s   - N(   R5   R   R   R   t   SkipNode(   RD   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_comment  s    #c         C   s   |  j  j |  j | d d d  t |  d k r | d d j d  | d d j d	  x) | d d !D] } | d j d
  ql Wn  d  S(   NR   R   t   compoundi   i    R   s   compound-firstis   compound-lasts   compound-middle(   R5   R   R   t   len(   RD   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_compound  s    "c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_compound  s    c         C   s&   |  j  j |  j | d d d  d  S(   NR   R   t	   container(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_container  s    c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_container  s    c         C   s   |  j  | d d t d  S(   Nt   contactR;   (   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_contact  s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_contact  s    c         C   s   |  j  | d  d  S(   Nt	   copyright(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_copyright  s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_copyright  s    c         C   s   |  j  | d  d  S(   Nt   date(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt
   visit_date  s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_date  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_decoration  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_decoration  s    c         C   s@   |  j  j d  |  j  j |  j | d d   |  j |  d  S(   Ns   </dt>
t   ddR,   (   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_definition  s    c         C   s   |  j  j d  d  S(   Ns   </dd>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_definition  s    c         C   s&   |  j  j |  j | d d d  d  S(   Nt   dlR   Ra   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_definition_list  s    c         C   s   |  j  j d  d  S(   Ns   </dl>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_definition_list  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_definition_list_item  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_definition_list_item  s    c         C   s0   |  j  j |  j | d d   |  j |  d  S(   Nt   tdR,   (   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_description  s    c         C   s   |  j  j d  d  S(   Ns   </td>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_description  s    c      
   C   sd   |  j  j t |  j   |  j j |  j | d d d d d d d  |  j j d  t |  _ d  S(	   NR  R   R4   R  R  R  R)   sR   <col class="docinfo-name" />
<col class="docinfo-content" />
<tbody valign="top">
(   R   R   R6  R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_docinfo  s    c         C   sE   |  j  j d  t |  _ |  j j   } |  j  | |  _ g  |  _  d  S(   Ns   </tbody>
</table>
(   R5   R   R   R   R   R   R4   (   RD   R   t   start(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_docinfo  s
    	c         C   s   | r5 d | |  j  | j    f } |  j |  n  |  j j |  j | d d   |  j j d |  j j |  t |  r t	 | d t
 j  r | d d j d  n  t	 | d t
 j  r | d d j d	  q n  d  S(
   Ns    <meta name="%s" content="%s" />
t   trR,   s&   <th class="docinfo-name">%s:</th>
<td>i    R   R   iR   (   R   R   t   add_metaR5   R   R   R   t   labelsR6  R   R   t   Element(   RD   R   R   R;   t   meta_tag(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR     s    c         C   s   |  j  j d  d  S(   Ns   </td></tr>
(   R5   R   (   RD   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR     s    c         C   s&   |  j  j |  j | d d d  d  S(   NR   R   s   doctest-block(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_doctest_block  s    c         C   s   |  j  j d  d  S(   Ns   
</pre>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_doctest_block  s    c         C   s-   |  j  j d |  j | j d d    d  S(   Ns   <title>%s</title>
R7   R,   (   R1   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_document  s    c         C   s  |  j  j |  j |  j i |  j j d 6g  |  j j |  j  |  j j	 d |  j
 |  j j  |  j j	 d |  j
 |  j j  |  j r |  j d k r |  j j |  j  q |  j j |  j  n  |  j j |  j d  |  j j |  j | d d d  |  j j	 d d  |  j j |  j  |  j j |  j d |  j |  j |  j |  j d	   |  j s}t d
 t |  j    d  S(   NRz   i    t   mathjaxi   R   R   RH   s   </div>
is   len(context) = %s(   R0   R   t   doctypet   head_prefix_templateRT   R|   R=   R   R;   t   insertR   R`   R1   R   R   R   R>   R2   R   R6   R<   R5   RA   R3   R4   R   R   R6  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_document  s"      	"	.c         C   s#   |  j  j |  j | d d   d  S(   Nt   emR,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_emphasis  s    c         C   s   |  j  j d  d  S(   Ns   </em>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_emphasis  s    c         C   s|  i g  d 6} t  | j j t j  r9 | d j d  n  | j j j j | j j ri | d j d  n  | d r d } d j | d  | d <n d } | d =| j j d 7_ d | k r | d d | d	 <n  d
 | k r
| d
 d | d <| j j | d
 7_ n  |  j j |  j	 | | d |   |  j
 j d | j    t |  d k rk|  j j d  n  |  j |  d  S(   NR   R1   R+  t   thR   RO  i   t   morerowst   rowspant   morecolst   colspanR,   s   </%s>
i    s   &nbsp;(   R   R   R   t   theadR   R,  t   columnR^   R5   R   R   R   R6  R   (   RD   R   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_entry  s*    
"c         C   s   |  j  j |  j j    d  S(   N(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_entry3  s    c         C   s   i  } d | k r# | d | d <n  d | k r@ | d | d <n  |  j  } |  j j |  j  |  j f  d |  _ |  j |  |  _  |  j  r | r | j d d  d j   | d <n  |  j j |  j	 | d |   d S(   s   
        The 'start' attribute does not conform to HTML 4.01's strict.dtd, but
        CSS1 doesn't help. CSS2 isn't widely enough supported yet to be
        usable.
        RS  t   enumtypeR   R,   s    simplet   olN(
   R   R   R   R   Rq   R  R   R   R5   R   (   RD   R   R   R  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_enumerated_list6  s    		#c         C   s/   |  j  j   \ |  _ |  _ |  j j d  d  S(   Ns   </ol>
(   R   R   R   R   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_enumerated_listK  s    c         C   s)   |  j  j |  j | d d d d  d  S(   NRU  R,   R   t   field(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_fieldO  s    c         C   s   |  j  j d  d  S(   Ns   </tr>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_fieldR  s    c         C   s   |  j  j |  j | d d d d  |  j | d d  | j } |  j s t | j t j  s | j j	 |  t
 | j  d k r |  j | d d	  n  d  S(
   NRO  R,   R   s
   field-bodyR   i    i   R   i(   R5   R   R   R   R   R   R   R   R4   R   R6  (   RD   R   Rr  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_field_bodyU  s    %		%c         C   s   |  j  j d  d  S(   Ns   </td>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_field_bodya  s    c      
   C   se  |  j  j |  j |  j f  d  |  _ d | d k rA t |  _ n( |  j j ri d | d k ri t |  _ n  |  j r#x | D] } | d } t | t	 j
  s t  g  | D] } t | t	 j  s | ^ q } t |  d k pt |  d k ot | d t	 j t	 j f  sy t |  _ Pqy qy Wn  |  j j |  j | d d d	 d
 d d d  |  j j d  d  S(   NR  R   RS   ii    i   R  R  R  R  R)   R   s   docutils field-listsK   <col class="field-name" />
<col class="field-body" />
<tbody valign="top">
(   R   R   R   R   Rq   R   RT   R+   R   R   t
   field_bodyR   R   R6  t	   paragrapht
   line_blockR   R5   R   (   RD   R   Rr  Rw  R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_field_listd  s.    		

	
c         C   s/   |  j  j d  |  j j   \ |  _ |  _ d  S(   Ns   </tbody>
</table>
(   R5   R   R   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_field_list  s    c         C   s   i  } |  j  r d | d <n
 d | d <|  j j r t | j    |  j j k r d | d <|  j j d |  j | j d d d	 d
 d  n |  j j d  |  j	 j |  j | d d |   d  S(   Ns   docinfo-nameR   s
   field-namei   Ri  s   </tr>
RU  R,   R   Rr  s   <td>&nbsp;</td>Re  (
   R   RT   t   field_name_limitR6  R   R   R   R   R   R5   (   RD   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_field_name  s    	

	*c         C   s-   |  j  j d  |  j  j |  j j    d  S(   Ns   :</th>(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_field_name  s    c         C   s~   i d d 6} | j  d  r1 d | d | d <n  | j  d  r[ | d c d | d 7<n  |  j j |  j | d |   d  S(	   Nt   figureR   R1  s	   width: %st   stylet   aligns    align-R   (   R   R5   R   R   (   RD   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_figure  s    c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_figure  s    c         C   s   |  j  j t |  j   d  S(   N(   R   R   R6  R5   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_footer  s    c         C   sy   |  j  j   } |  j | d d d d g } | j |  j |  | j d  |  j j |  | |  j d *|  j | 3d  S(   NR   R   R:   s   <hr class="footer" />
s   
</div>
i    (   R   R   R   R   R5   R   R:   R6   (   RD   R   RS  R:   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_footer  s    	c      
   C   sO   |  j  j |  j | d d d d d d d  |  j  j d  |  j |  d  S(	   NR  R   s   docutils footnoteR  R  R  R)   sK   <colgroup><col class="label" /><col /></colgroup>
<tbody valign="top">
<tr>(   R5   R   R   R  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_footnote  s
    c         C   sM  g  } | d } |  j  j r | r t |  d k ro |  j j d  |  j j d  |  j j d | d  qd } x/ | D]' } | j d | | f  | d 7} q| W|  j j d d	 j |   |  j d d g 7_ n% |  j j d  |  j d d g 7_ t |  d k rI| s1| d d
 j d  n  | d d
 j d  n  d  S(   Nt   backrefsi   R,   s   </a>s!   <a class="fn-backref" href="#%s">i    s'   <a class="fn-backref" href="#%s">%s</a>s   <em>(%s)</em> s   , R   R   iR   (   RT   t   footnote_backlinksR6  R   R   R^   (   RD   R   t	   backlinksR  t   it   backref(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR    s*    
	c         C   s   |  j  j d  d  S(   Ns   </td></tr>
</tbody>
</table>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_footnote  s    c      	   C   s   d | d } |  j  j } | d k r? d } |  j j d  n( | d k sQ t  d } |  j j d  |  j j |  j | d	 | d
 d d |  d  S(   NR  R  R$   R"  t   ]R#   s   <sup>s   </sup>R!  R   s   footnote-referenceR#  (   RT   t   footnote_referencesR   R   R   R5   R   (   RD   R   R#  t   formatR   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_footnote_reference  s    c         C   s!   |  j  j |  j j   d  d  S(   Ns   </a>(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_footnote_reference  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_generated  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_generated  s    c         C   s   |  j  j t |  j   d  S(   N(   R   R   R6  R5   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_header  s    c         C   sy   |  j  j   } |  j | d d d g } | j |  j |  | j d  |  j j |  |  j j |  |  j | 3d  S(   NR   R   R9   s   
<hr class="header"/>
</div>
(   R   R   R   R   R5   R   R2   R9   (   RD   R   RS  R9   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_header  s    c         C   s  i  } | d } i d d 6d d 6} t  j j |  d j   } | d# k rg | | d <| | | d <n  | | d	 <| j d
 |  | d
 <d | k r | d | d <n  d | k r | d | d <n  d | k rTt rd | k o d | k r|  j j rt j	 |  } yC t
 | t  r"| } n | j t j    } t j j |  } Wn t t f k
 rcqX|  j j j | j d d   d | k rd | j d | d <n  d | k rd | j d | d <n  ~ n  x d$ D]u }	 |	 | k rt j d | |	  }
 |
 st  d t |
 j d   t | d  d |
 j d  f | |	 <qqWn  g  } xh d% D]` }	 |	 | k rat j d | |	  r| |	 c d 7<n  | j d |	 | |	 f  | |	 =qaqaW| rd j |  | d <n  t
 | j t j   s$t
 | j t j!  r-t
 | j j t j   r-d } n d } d | k rTd | d | d <n  |  j" j d  | d& k r|  j# j |  j$ | d  | |  | j d
 |  d! |  n" |  j# j |  j% | d" | |   d  S('   NR   s   image/svg+xmls   .svgs   application/x-shockwave-flashs   .swfi   t   datat   typet   srct   altR1  t   heightt   scales   \t   /s   %dpxi    s   ([0-9.]+)(\S*)$s   %s%sid   i   s	   ^[0-9.]+$t   pxs   %s: %s;R   R  R,   s   
R  s   align-%sR   t   objects	   </object>t   img(   s   .svgs   .swf(   s   widthR  (   s   widthR  (   s   .svgs   .swf(&   Ri   Rj   t   splitextR   R   R   RT   t   file_insertion_enabledt   urllibt   url2pathnameR   t   strR   t   syst   getfilesystemencodingt   ImageRS   R   t   UnicodeEncodeErrorR   R   R   t   sizet   ret   matchR   t   floatt   groupR   R^   R   R   t   TextElementt	   referenceR   R5   R   R   (   RD   R   R   R   t   typest   extt	   imagepatht   imagepath_strR  t   att_nameR  R  R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_image  sx    




	$!		4c         C   s   |  j  j |  j j    d  S(   N(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_imageC  s    c         C   s#   |  j  j |  j | d d   d  S(   NR'  R,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_inlineF  s    c         C   s   |  j  j d  d  S(   Ns   </span>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_inlineI  s    c         C   s6   |  j  j |  j | d d |  j j   d d  d  S(   NRO  s   %s[R   t   label(   R5   R   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_labelL  s    (c         C   s0   |  j  j d |  j j   |  j j   f  d  S(   Ns   ]%s</td><td>%s(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_labelQ  s    c         C   s&   |  j  j |  j | d d d  d  S(   NR   R   t   legend(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_legendU  s    c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_legendX  s    c         C   sK   |  j  j |  j | d d d d d  t |  sG |  j  j d  n  d  S(   NR   R   R,   R   t   lines   <br />(   R5   R   R   R6  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt
   visit_line[  s    (c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_line`  s    c         C   s&   |  j  j |  j | d d d  d  S(   NR   R   s
   line-block(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_line_blockc  s    c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_line_blockf  s    c         C   sG   |  j  j |  j | d d   t |  rC | d d j d  n  d  S(   Nt   liR,   i    R   R   (   R5   R   R   R6  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_list_itemi  s    c         C   s   |  j  j d  d  S(   Ns   </li>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_list_itemn  s    c         C   sp  | j  d g   } d | k rj g  | D] } | d k r% | ^ q% | d <|  j j |  j | d d   d  S|  j j |  j | d d d d  | j   } x |  j j |  D] } | j   r|  j j	 |  r |  j j d |  j
 |   qO|  j j |  j
 |   q | d k r-|  j j |  q |  j j d
 t |  d d	  q W|  j j d  t j  d  S(   NR   t   codeR,   t   ttR   s   docutils literals   <span class="pre">%s</span>s   
R   s   &nbsp;i   s   </tt>(   s   
R   (   R   R5   R   R   R   t   words_and_spacest   findallR   t   sollbruchstellet   searchR   R6  R   R3  (   RD   R   R   R   R   t   token(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_literalq  s&    )	&c         C   s   |  j  j d  d  S(   Ns   </code>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_literal  s    c         C   s&   |  j  j |  j | d d d  d  S(   NR   R   s   literal-block(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_literal_block  s    c         C   s   |  j  j d  d  S(   Ns   
</pre>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_literal_block  s    c         C   s  |  j  d k r5 |  j j j d |  j   d |  _  n  i d d 6d  d 6d! d 6d" d 6} | |  j  | d k } | |  j  d } i d# d 6d$ d 6d% d 6d& d 6} | |  j  | d k } | j   j t j  } | r | r | | | | f } n | r| | } n  |  j  d' k r&|  j	 |  } n  |  j  d k rt|  j
 rt|  j r[|  j d |  _ n  |  j |  j g |  _
 n|  j  d k r|  j r|  j
 rg  |  j d j d  D]' }	 |  j t j |	 |  j j   ^ q|  _
 n  | d k t j _ t j |  } n=|  j  d k rA|  j |  _ |  j |  _ y, t | d | }
 d j |
 j    } WqAt k
 r=} |  j j j | d | } |  j |  |  j  j! |  j" | d   |  j  j! d j | j#   |  j  j! d  |  j  j! |  j" | d d d  |  j  j! |  j	 |   |  j  j! d  |  j$ |  t% j&  qAXn  | r||  j  j! |  j" | | d d t' |  d |  n  |  j  j! |  | r|  j  j! d  n  | r|  j  j! d |  n  | r|  j  j! d  n  t% j&  d  S((   Nt   mathmlR   R]  t   latexs=   math-output format "%s" not supported falling back to "latex"R   R,   R'  t   formulat   mathR   R  i   s   $%s$u   \begin{%s}
%s
\end{%s}s   \(%s\)i    t   ,t   inlinet	   base_nodeR   u   ,s   </p>
R   s   literal-blocks   
</pre>
R   s   
s   </%s>(   R  s   htmls   mathjaxR  (   s   divR,   R,   (   s   divs   spanR  (   s   divs   spanR  (   s   pres   ttR  (   NN(   s   $%s$u   \begin{%s}
%s
\end{%s}(   s   \(%s\)u   \begin{%s}
%s
\end{%s}(   NN(   R  s   mathjax((   R   RH   R~   R   Rq   R   RQ   R   t   uni2tex_tableR   R   R   t   mathjax_urlt   mathjax_scriptRt   R   R   t   find_file_in_dirsRT   t   stylesheet_dirsR   t   DocumentParameterst   displaymodet   doctype_mathmlR^  t   content_type_mathmlR   R   R^   t   xmlt   SyntaxErrort   visit_system_messageR5   R   R   t   argst   depart_system_messageR   R3  t   bool(   RD   R   t   math_envt   tagst   tagt   clsargt   wrapperst   wrappert	   math_codet   st   mathml_treeR   t   err_node(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt
   visit_math  s    

	G
c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_math  s    c         C   s)   t  | j    } |  j | d | d  S(   NR  (   R   R   R  (   RD   R   R  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_math_block  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_math_block  s    c         C   s,   |  j  | d | j    } |  j |  d  S(   NR;   (   R   t   non_default_attributesRV  (   RD   R   R;   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt
   visit_meta  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_meta  s    c         C   s$   |  j  j |  |  j j |  d  S(   N(   R;   R   R1   (   RD   R  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRV    s    c         C   sI   |  j  d r  |  j j d  n  |  j j |  j | d d d d  d  S(   Nis   , R'  R,   R   t   option(   R   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_option  s    c         C   s'   |  j  j d  |  j d c d 7<d  S(   Ns   </span>ii   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_option  s    c         C   s?   |  j  j | j d d   |  j  j |  j | d d   d  S(   Nt	   delimiterR   t   varR,   (   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_option_argument  s    c         C   s   |  j  j d  d  S(   Ns   </var>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_option_argument  s    c         C   s   i  } |  j  j rM t | j    |  j  j k rM d | d <|  j j d  n |  j j d  |  j j |  j | d d d |  |  j j d  |  j j d	  d  S(
   Ni   Ri  s   </tr>
<tr><td>&nbsp;</td>R,   RO  R   s   option-groups   <kbd>i    (   RT   t   option_limitR6  R   R   R   R5   R   (   RD   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_option_group  s    
	c         C   s:   |  j  j   |  j j d  |  j j |  j  j    d  S(   Ns   </kbd></td>
(   R   R   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_option_group  s    c      
   C   sB   |  j  j |  j | d d d d d d d  |  j  j d  d  S(	   NR  R   s   docutils option-listR  R  R  R)   sH   <col class="option" />
<col class="description" />
<tbody valign="top">
(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_option_list$  s    	c         C   s   |  j  j d  d  S(   Ns   </tbody>
</table>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_option_list,  s    c         C   s#   |  j  j |  j | d d   d  S(   NRU  R,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_option_list_item/  s    c         C   s   |  j  j d  d  S(   Ns   </tr>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_option_list_item2  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_option_string5  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_option_string8  s    c         C   s   |  j  | d  d  S(   Nt   organization(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_organization;  s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_organization>  s    c         C   sX  t  | j t j  s* t  | j t j  r. t Sx^ | j   D]P \ } } | j |  r; | d k o | g  d g d g d d g f k r; t Sq; Wt  | j d t j  } xA | j j	 | D]/ } t  | t j
  r q n  | | k r Pn  t SWt g  | j D]' } t  | t j
 t j f  s | ^ q  } |  j sP|  j sP|  j rT| d k rTt St S(   sU   
        Determine if the <p> tags around paragraph ``node`` can be omitted.
        R   R   R   i    i   (   R   R   R   RH   R5  R   R   t   is_not_defaultR  R   R   R6  R   R   R   R   (   RD   R   t   keyR   R   R   R   t   parent_length(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   should_be_compact_paragraphA  s,    "'		c         C   sU   |  j  |  r" |  j j d  n/ |  j j |  j | d d   |  j j d  d  S(   NR,   R   s   </p>
(   R  R   R   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_paragraph_  s    c         C   s   |  j  j |  j j    d  S(   N(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_paragraphf  s    c         C   ss   | j  d  r: |  j j d | d  |  j j d  n |  j j d  |  j j |  j | d d d d  d  S(   NR  s   <a href="#%s">s   </a>R,   R'  R   t   problematic(   t   hasattrR5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_problematici  s
    c         C   s-   |  j  j d  |  j  j |  j j    d  S(   Ns   </span>(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_problematicq  s    c         C   s   d | j  d d  j   k r t | j t j  r9 d p< d } | d rn |  j j |  j | | d d  n  |  j j | j	    | d r |  j j d |  q n  t j
  d  S(	   NR   R  R,   R'  R   R   R   s   </%s>(   R   Rt   R   R   R   R  R5   R   R   R   R3  (   RD   R   t   t(    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt	   visit_rawu  s    !
%
c         C   s2  i d d 6} d | k r| | d | d <|  j  j ri | d j d  ri |  j | d  | d <t |  _ n  | d c d 7<n: d | k s t d   d	 | d | d <| d c d
 7<t | j t	 j
  st |  d k r t | d t	 j  s t  | d c d 7<n  |  j j |  j | d d |   d  S(   NR  R   t   refuriR#  s   mailto:s	    externalR  s3   References must have "refuri" or "refid" attribute.R  s	    internali   i    s    image-referenceR!  R,   (   RT   R   R   R   R   R   R   R   R   R   R  R6  t   imageR5   R   R   (   RD   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_reference  s     	.c         C   sE   |  j  j d  t | j t j  s8 |  j  j d  n  t |  _ d  S(   Ns   </a>s   
(   R5   R   R   R   R   R  R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_reference  s    c         C   s   |  j  | d d t d  S(   Nt   revisionR;   (   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_revision  s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_revision  s    c         C   s,   |  j  j |  j | d d   d | _ d  S(   NRU  R,   i    (   R5   R   R   Rk  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt	   visit_row  s    c         C   s   |  j  j d  d  S(   Ns   </tr>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt
   depart_row  s    c         C   s)   |  j  j |  j | d d d d  d  S(   NR   R,   R   t   rubric(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_rubric  s    c         C   s   |  j  j d  d  S(   Ns   </p>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_rubric  s    c         C   s5   |  j  d 7_  |  j j |  j | d d d  d  S(   Ni   R   R   t   section(   R   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_section  s    	c         C   s#   |  j  d 8_  |  j j d  d  S(   Ni   s   </div>
(   R   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_section  s    c         C   s<   |  j  j |  j | d d d  |  j |  t |  _ d  S(   NR   R   t   sidebar(   R5   R   R   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_sidebar  s    	c         C   s   |  j  j d  t |  _ d  S(   Ns   </div>
(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_sidebar  s    c         C   s   |  j  | d d t d  S(   Nt   statusR;   (   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_status  s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_status  s    c         C   s#   |  j  j |  j | d d   d  S(   Nt   strongR,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_strong  s    c         C   s   |  j  j d  d  S(   Ns	   </strong>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_strong  s    c         C   s#   |  j  j |  j | d d   d  S(   NR   R,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_subscript  s    c         C   s   |  j  j d  d  S(   Ns   </sub>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_subscript  s    c         C   s   t  j  d S(   s   Internal only.N(   R   R3  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_substitution_definition  s    c         C   s   |  j  |  d  S(   N(   t   unimplemented_visit(   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_substitution_reference  s    c         C   s2  t  | j t j  rM |  j j |  j | d d d d  |  j j d  n t  | j t j  r |  j j |  j | d d d d  |  j j d  t	 |  j  |  _
 n t  | j t j  r.d	 |  j |  j d
 } |  j j |  j | | d d d |  j i  d d d d  |  j j d |  n  d  S(   NR   R,   R   s   sidebar-subtitles   </p>
t   h2R8   s   </h2>
s   h%si   s   section-subtitleR'  s   </span></%s>
(   R   R   R   R'  R5   R   R   R   RH   R6  R   R$  R   R   (   RD   R   R  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_subtitle  s    
%	c         C   su   |  j  j |  j j    |  j rq |  j  |  j d !|  _ d |  _ |  j j |  j   |  j j |  j   |  j  2n  d  S(   Nii    (	   R5   R   R   R   R   R8   R3   R   R@   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_subtitle  s    		c         C   s#   |  j  j |  j | d d   d  S(   Nt   supR,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_superscript  s    c         C   s   |  j  j d  d  S(   Ns   </sup>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_superscript  s    c         C   s+  |  j  j |  j | d d d  |  j  j d  d } t | d  r | d } t |  d k ru d | d	 } q d } g  } x/ | D]' } | j d
 | | f  | d 7} q Wd d j |  } n  | j d  r d | d } n d } |  j  j d | d | d |  j | d  | | f  d  S(   NR   R   s   system-messages    <p class="system-message-title">R,   R  i   s%   ; <em><a href="#%s">backlink</a></em>i    s   <a href="#%s">%s</a>s   ; <em>backlinks: %s</em>s   , R  s	   , line %ss=   System Message: %s/%s (<tt class="docutils">%s</tt>%s)%s</p>
R  t   levelt   source(   R5   R   R   R6  R^   R  R   (   RD   R   t   backref_textR  R  R  R  R  (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR    s*    "
c         C   s   |  j  j d  d  S(   Ns   </div>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR    s    c         C   si   |  j  j |  j  t |  _ d j d |  j j g  j   } |  j j |  j	 | d d | d d  d  S(   NR   Ra   R  R   t   borderR"   (
   R   R   R   R   R^   RT   t   table_styleR   R5   R   (   RD   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_table  s
    	!	c         C   s&   |  j  j   |  _ |  j j d  d  S(   Ns	   </table>
(   R   R   R   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_table  s    c         C   sp   d | k p! d | k p! d | k s\ |  j  j |  j | d d d d  |  j j d  n |  j j d  d  S(	   NR  R  R   R'  R,   R   t   targets   </span>(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_target  s
    %c         C   s   |  j  j |  j j    d  S(   N(   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_target'  s    c         C   sI   |  j    |  j j |  j j    |  j j |  j | d d d  d  S(   Nt   tbodyt   valignt   top(   R2  R5   R   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_tbody*  s    
c         C   s   |  j  j d  d  S(   Ns	   </tbody>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_tbody/  s    c         C   s#   |  j  j |  j | d d   d  S(   Nt   dtR,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt
   visit_term2  s    c         C   s   d S(   sg   
        Leave the end tag to `self.visit_definition()`, in case there's a
        classifier.
        N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_term5  s    c         C   s9   |  j  j |  j | d   |  j j d  g  | _ d  S(   Nt   colgroups   </colgroup>
(   R5   R   R   R   R,  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_tgroup<  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_tgroupC  s    c         C   sY   |  j    |  j j |  j j    |  j j d  |  j j |  j | d d d  d  S(   NR,   Rj  RF  t   bottom(   R2  R5   R   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_theadF  s    
c         C   s   |  j  j d  d  S(   Ns	   </thead>
(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_theadM  s    c         C   sr  d } d } t  | j t j  rI |  j j |  j | d d d d  nt  | j t j  r |  j j |  j | d d d d  nt  | j t j  r |  j j |  j | d d d d  nt  | j t j	  r |  j j |  j | d	 d   d
 } n^t  | j t j
  rU|  j j |  j | d d d d  d } t |  j  |  _ n	t  | j t j  spt  |  j |  j d } i  } t | j  d k rt  | j d t j  rd | d <n  |  j j |  j | d | d |   i  } | j d  rd | d <d | d | d <n  | rT|  j j |  j i  d d |   d | } n
 d | } |  j j |  d S(   s,   Only 6 section levels are supported by HTML.i    s   </p>
R   R,   R   s   topic-title firsts   sidebar-titles   admonition-titleR  s   </caption>
t   h1R7   s   </h1>
i   i   s   with-subtitles   h%sR  s   toc-backrefR   R  R#  R!  s   </a></h%s>
s   </h%s>
N(   R   R   R   t   topicR5   R   R   R'  t
   AdmonitionR  RH   R6  R   R$  R   R   R   R8   R  R   (   RD   R   t   check_idt	   close_tagt   h_levelR   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_titleP  sH    					%	
"
c         C   su   |  j  j |  j j    |  j rq |  j  |  j d !|  _ d |  _ |  j j |  j   |  j j |  j   |  j  2n  d  S(   Nii    (	   R5   R   R   R   R   R7   R3   R   R?   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_titley  s    		c         C   s#   |  j  j |  j | d d   d  S(   Nt   citeR,   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_title_reference  s    c         C   s   |  j  j d  d  S(   Ns   </cite>(   R5   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_title_reference  s    c         C   s3   |  j  j |  j | d d d  | d |  _ d  S(   NR   R   RT  R   (   R5   R   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_topic  s    "c         C   s   |  j  j d  g  |  _ d  S(   Ns   </div>
(   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_topic  s    c         C   s&   |  j  j |  j | d d d  d  S(   Nt   hrR   Ra   (   R5   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_transition  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_transition  s    c         C   s   |  j  | d d t d  S(   NR]   R;   (   R   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   visit_version  s    c         C   s   |  j    d  S(   N(   R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   depart_version  s    c         C   s   t  d | j j   d  S(   Ns$   visiting unimplemented node type: %s(   t   NotImplementedErrort	   __class__R   (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR3    s    N(   s   &mdash;R,   (   R   R   (   R   R   (   R,   R,   (   R   R   t   __doc__R-   R^  R  R_  R   R  R   R  R  R   R   R  t   compileR  t   UR  R   RE   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   Rq   R   R   R   R   R  R  R  R  R  R  R  R  R  R  R  R  R  R  R%  R&  R)  R*  R-  R.  R2  R   R4  R7  R8  R:  R;  R=  R>  R@  RA  RC  RD  RE  RF  RH  RI  RK  RL  RM  RN  RP  RQ  RR  RT  R   R   R   RZ  R[  R\  Ra  Rc  Rd  Rl  Rm  Rp  Rq  Rs  Rt  Ru  Rv  Rz  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  RV  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/  R0  R1  R2  R4  R6  R7  R9  R:  R  R  R@  RA  RC  RD  RH  RI  RK  RL  RN  RO  RQ  RR  RY  RZ  R\  R]  R^  R_  Ra  Rb  Rc  Rd  R3  (    (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRF      s  )	6							@										

									
		
																																		
																								
												H																	S																																																																		)										R  c           B   s\   e  Z d  Z d   Z d   Z d   Z d   Z d   Z d   Z e Z	 e Z
 e Z e Z RS(   s   
    Raise `nodes.NodeFound` if non-simple list item is encountered.

    Here "simple" means a list item containing nothing other than a single
    paragraph, a simple list, or a paragraph followed by a simple list.
    c         C   s   t  j  d  S(   N(   R   R
  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   default_visit  s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR    s    c         C   s   d  S(   N(    (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyRp    s    c         C   s   g  } x3 | j  D]( } t | t j  s | j |  q q W| r t | d t j  r t | d t j  s t | d t j  r | j   n  t	 |  d k r d  St j
  d  S(   Ni    ii   (   R   R   R   R   R   Rx  t   bullet_listt   enumerated_listR   R6  R
  (   RD   R   R   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR    s    c         C   s   t  j  d  S(   N(   R   R3  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR    s    c         C   s   t  j  d S(   s"   Invisible nodes should be ignored.N(   R   R3  (   RD   R   (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   invisible_visit  s    (   R   R   Rg  Rj  R  Rp  R  R  Rm  R4  R2  RC  t   visit_pending(    (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyR    s   						($   Rg  t   __docformat__R  Ri   t   os.patht   timeR  R  t	   PIL.ImageR   t   ImportErrorR  R  Rq   Ra   R   R   R   R   R   R	   t   docutils.utils.error_reportingR
   t   docutils.transformsR   t   docutils.utils.mathR   R   R   t    docutils.utils.math.latex2mathmlR   R   R{   RF   t   GenericNodeVisitorR  (    (    (    sG   /usr/lib/python2.7/dist-packages/docutils/writers/html4css1/__init__.pyt   <module>   s<   .     