;
@c           @   s   d  Z  d Z d k Z d k Z d k Z d k Z d k l Z l	 Z	 l
 Z
 l Z l Z l Z d k l Z d f  d     YZ d e e f d     YZ d	 e f d
     YZ d e f d     YZ d e f d     YZ d f  d     YZ d f  d     YZ d f  d     YZ d f  d     YZ d f  d     YZ d e f d     YZ d e f d     YZ d f  d     YZ d f  d      YZ d! f  d"     YZ d# e f d$     YZ d% e f d&     YZ d' e f d(     YZ  d) e f d*     YZ! d+ f  d,     YZ" d- f  d.     YZ# d/ f  d0     YZ$ d1 e f d2     YZ% d3 e f d4     YZ& d5 f  d6     YZ' d7 e e e f d8     YZ( d9 e e e f d:     YZ) d; e e e f d<     YZ* d= e e f d>     YZ+ d? e e f d@     YZ, dA e e f dB     YZ- dC e e f dD     YZ. dE e e f dF     YZ/ dG e e f dH     YZ0 dI e e f dJ     YZ1 dK e e f dL     YZ2 dM e e f dN     YZ3 dO e e f dP     YZ4 dQ e e f dR     YZ5 dS e e f dT     YZ6 dU e e f dV     YZ7 dW e e f dX     YZ8 dY e e f dZ     YZ9 d[ e e f d\     YZ: d] e e f d^     YZ; d_ e e f d`     YZ< da e e f db     YZ= dc e e f dd     YZ> de e e f df     YZ? dg e e f dh     YZ@ di e e f dj     YZA dk e# e f dl     YZB dm e e f dn     YZC do e# e f dp     YZD dq e# e f dr     YZE ds e# e f dt     YZF du e# e f dv     YZG dw e e f dx     YZH dy e# e f dz     YZI d{ e# e f d|     YZJ d} e# e f d~     YZK d e# e f d     YZL d e# e f d     YZM d e# e f d     YZN d e e f d     YZO d e# e f d     YZP d e# e f d     YZQ d e# e f d     YZR d e e f d     YZS d e e f d     YZT d e e f d     YZU d e e f d     YZV d e# e f d     YZW d e  e f d     YZX d e  e f d     YZY d e  e f d     YZZ d e  e f d     YZ[ d e  e f d     YZ\ d e  e f d     YZ] d e  e f d     YZ^ d e  e f d     YZ_ d e  e f d     YZ` d e  e f d     YZa d e! e" e e f d     YZb d e! e" e f d     YZc d e! e" e$ e e& f d     YZd d e e e' e f d     YZe d e e e' e f d     YZf d e# e f d     YZg d e e f d     YZh d e# e f d     YZi d e# e f d     YZj d e e f d     YZk d e# e f d     YZl d e# e f d     YZm d e# e f d     YZn d e# e f d     YZo d e# e f d     YZp d e# e f d     YZq d e! e e e f d     YZr d e! e" e e f d     YZs d e! e$ e e f d     YZt d e$ e f d     YZu d e$ e f d     YZv d e$ e f d     YZw d e e$ e% e f d     YZx d e$ e% e f d     YZy d e$ e% e f d     YZz d e$ e f d     YZ{ d e$ e f d     YZ| d e$ e f d     YZ} d e$ e f d     YZ~ d e$ e f d     YZ d e$ e f d     YZ d e e$ e f d     YZ d e$ e f d     YZ d e$ e f d     YZ d e$ e f d     YZ d i   Z d f  d     YZ d e f d     YZ d e f d     YZ d   Z d   Z d   Z d   Z e e  d e f d     YZ d e f d     YZ d e f d    YZ de f d    YZ de f d    YZ de f d    YZ de f d	    YZ d
  Z e i d Z e i d Z d  Z d  Z d  Z d S(  s  
Docutils document tree element class library.

Classes in CamelCase are abstract base classes or auxiliary classes. The one
exception is `Text`, for a text (PCDATA) node; uppercase is used to
differentiate from element classes.  Classes in lower_case_with_underscores
are element classes, matching the XML element generic identifiers in the DTD_.

The position of each node (the level at which it can occur) is significant and
is represented by abstract base classes (`Root`, `Structural`, `Body`,
`Inline`, etc.).  Certain transformations will be easier because we can use
``isinstance(node, base_class)`` to determine the position of the node in the
hierarchy.

.. _DTD: http://docutils.sourceforge.net/docs/ref/docutils.dtd
s   reStructuredTextN(   s   IntTypes	   SliceTypes
   StringTypes   UnicodeTypes	   TupleTypes   ListType(   s
   UserStrings   Nodec           B   st   t  Z d  Z e Z e Z e Z e Z d   Z e	 i
 i d  Z d d d  Z d   Z d   Z d   Z d	   Z RS(
   s0   Abstract base class of nodes in a document tree.c         C   s   d Sd S(   s8  
        Node instances are always true, even if they're empty.  A node is more
        than a simple container.  Its boolean "truth" does not depend on
        having one or more subnodes in the doctree.

        Use `len()` to check node length.  Use `None` to represent a boolean
        false value.
        i   N(    (   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __nonzero__7   s     c         C   s   | i   } |  i |  Sd S(   s6   Return a DOM **fragment** representation of this Node.N(   s   doms   Documents   domroots   selfs	   _dom_node(   s   selfs   doms   domroot(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   asdomB   s     s       i    c         C   s
   t   d S(   s@   Return an indented pseudo-XML representation, for test purposes.N(   s   NotImplementedError(   s   selfs   indents   level(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   pformatG   s     c         C   s
   t   d S(   s   Return a copy of self.N(   s   NotImplementedError(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   copyK   s     c         C   sm   |  | _ |  i oV |  i | _ | i t j o |  i i | _ n | i t j o |  i i | _ qi n d  S(   N(	   s   selfs   childs   parents   documents   sources   Nones   current_sources   lines   current_line(   s   selfs   child(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   setup_childO   s    	
c         C   s   d |  i i } t | | | i  } | i i	 i
 | d d y | |   Wn/ t t f j
 o d Sn t j
 o n X|  i   } y# x | D] } | i |  q WWn t j
 o n Xd S(   s,  
        Traverse a tree of `Node` objects, calling ``visit_...`` methods of
        `visitor` when entering each node. If there is no
        ``visit_particular_node`` method for a node of type
        ``particular_node``, the ``unknown_visit`` method is called.  (The
        `walkabout()` method is similar, except it also calls ``depart_...``
        methods before exiting each node.)

        This tree traversal supports limited in-place tree
        modifications.  Replacing one node with one or more nodes is
        OK, as is removing an element.  However, if the node removed
        or replaced occurs after the current node, the old node will
        still be traversed, and any new nodes will not.

        Within ``visit_...`` methods (and ``depart_...`` methods for
        `walkabout()`), `TreePruningException` subclasses may be raised
        (`SkipChildren`, `SkipSiblings`, `SkipNode`, `SkipDeparture`).

        Parameter `visitor`: A `NodeVisitor` object, containing a
        ``visit_...`` method for each `Node` subclass encountered.
        s   visit_s   categorys   nodes.Node.walkN(   s   selfs	   __class__s   __name__s   names   getattrs   visitors   unknown_visits   methods   documents   reporters   debugs   SkipChildrens   SkipNodes   SkipDepartures   get_childrens   childrens   childs   walks   SkipSiblings(   s   selfs   visitors   names   childrens   childs   method(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   walkX   s"      c         C   s:  d } d |  i i } t | | | i  } | i	 i
 i | d d y y | |   Wn/ t j
 o d Sn t j
 o d } n X|  i   } y# x | D] } | i |  q WWn t j
 o n XWn t j
 o n X| oL d |  i i } t | | | i  } | i	 i
 i | d d | |   n d S(   s  
        Perform a tree traversal similarly to `Node.walk()` (which see),
        except also call ``depart_...`` methods before exiting each node. If
        there is no ``depart_particular_node`` method for a node of type
        ``particular_node``, the ``unknown_departure`` method is called.

        Parameter `visitor`: A `NodeVisitor` object, containing ``visit_...``
        and ``depart_...`` methods for each `Node` subclass encountered.
        i   s   visit_s   categorys   nodes.Node.walkaboutNi    s   depart_(   s   call_departs   selfs	   __class__s   __name__s   names   getattrs   visitors   unknown_visits   methods   documents   reporters   debugs   SkipNodes   SkipDepartures   get_childrens   childrens   childs	   walkabouts   SkipSiblingss   SkipChildrens   unknown_departure(   s   selfs   visitors   names   call_departs   childrens   childs   method(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   walkabout~   s4    	  	(   s   __name__s
   __module__s   __doc__s   Nones   parents   documents   sources   lines   __nonzero__s   xmls   doms   minidoms   asdoms   pformats   copys   setup_childs   walks	   walkabout(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   Node'   s         					&s   Textc           B   sn   t  Z d  Z d Z d d  Z d   Z d   Z d   Z d   Z d   Z	 d	   Z
 d
 d d  Z d   Z RS(   s   
    Instances are terminal nodes (leaves) containing text only; no child
    nodes or attributes.  Initialize by passing a string to the constructor.
    Access the text itself with the `astext` method.
    s   #texts    c         C   s   t  i |  |  | |  _ d  S(   N(   s
   UserStrings   __init__s   selfs   datas	   rawsource(   s   selfs   datas	   rawsource(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__   s    	c         C   sR   t  |  i  } t |  d j o t  |  i d  d  } n d |  i | f Sd  S(   NiF   i@   s    ...s   <%s: %s>(   s   reprs   selfs   datas   lens   tagname(   s   selfs   data(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __repr__   s    c         C   s   t  |  i  Sd  S(   N(   s   lens   selfs   data(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __len__   s    c         C   sR   t  |  i  } t |  d j o t  |  i d  d  } n d |  i | f Sd  S(   Ni   i   s    ...s   <%s: %s>(   s   reprs   selfs   datas   lens   tagname(   s   selfs   data(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   shortrepr   s    c         C   s   | i |  i  Sd  S(   N(   s   domroots   createTextNodes   selfs   data(   s   selfs   domroot(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   _dom_node   s    c         C   s   |  i Sd  S(   N(   s   selfs   data(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   astext   s    c         C   s   |  i |  i  Sd  S(   N(   s   selfs	   __class__s   data(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   copy   s    s       i    c         C   sP   g  } | | } x, |  i i   D] } | i | | d  q  Wd i |  Sd  S(   Ns   
s    (	   s   results   indents   levels   selfs   datas
   splitliness   lines   appends   join(   s   selfs   indents   levels   lines   result(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   pformat   s    
 c         C   s   g  Sd S(   s'   Text nodes have no children. Return [].N(    (   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   get_children   s     (   s   __name__s
   __module__s   __doc__s   tagnames   __init__s   __repr__s   __len__s	   shortreprs	   _dom_nodes   astexts   copys   pformats   get_children(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   Text   s    						s   Elementc           B   s  t  Z d  Z e 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 e d  Z d   Z d   Z e d  Z e Z d   Z d   Z d   Z d d  Z  d   Z! d   Z" d    Z# d! e$ i% d"  Z& d! e$ i% d#  Z' d$ d! d%  Z( d&   Z) d'   Z* d(   Z+ RS()   s6  
    `Element` is the superclass to all specific elements.

    Elements contain attributes and child nodes.  Elements emulate
    dictionaries for attributes, indexing by attribute name (a string).  To
    set the attribute 'att' to 'value', do::

        element['att'] = 'value'

    Elements also emulate lists for child nodes (element nodes and/or text
    nodes), indexing by integer.  To get the first child node, use::

        element[0]

    Elements may be constructed using the ``+=`` operator.  To add one new
    child node to element, do::

        element += node

    This is equivalent to ``element.append(node)``.

    To add a list of multiple child nodes at once, use the same ``+=``
    operator::

        element += [node1, node2]

    This is equivalent to ``element.extend([node1, node2])``.
    s   

s    c         O   s   | |  _  g  |  _ |  i |  h  |  _ x- | i   D] \ } } | |  i | i   <q5 W|  i	 t
 j o |  i i |  _	 n d  S(   N(   s	   rawsources   selfs   childrens   extends
   attributess   itemss   atts   values   lowers   tagnames   Nones	   __class__s   __name__(   s   selfs	   rawsources   childrens
   attributess   values   att(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__   s    	 	 	  c         C   s   | i |  i  } xy |  i i   D]h \ } } t	 | t
  o8 d i g  i } | D] } | d |  qR ~  } n | i | d |  q" Wx' |  i D] } | i | i |   q W| Sd  S(   Ns    s   %s(   s   domroots   createElements   selfs   tagnames   elements
   attributess   itemss	   attributes   values
   isinstances   ListTypes   joins   appends   _[1]s   vs   setAttributes   childrens   childs   appendChilds	   _dom_node(   s   selfs   domroots	   attributes   childs   values   elements   _[1]s   v(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   _dom_node  s     8
 c         C   s   d } xG |  i D]< } | | i   7} t |  d j o | d  d } Pq q W|  i d  o" d |  i i |  i	 d | f Sn d |  i i | f Sd  S(   Ns    i<   i8   s    ...s   names   <%s "%s": %s>s   <%s: %s>(
   s   datas   selfs   childrens   cs	   shortreprs   lens   hasattrs	   __class__s   __name__s
   attributes(   s   selfs   datas   c(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __repr__  s    
 	"c         C   s>   |  i d  o d |  i i |  i d f Sn d |  i Sd  S(   Ns   names   <%s "%s"...>s   <%s...>(   s   selfs   hasattrs	   __class__s   __name__s
   attributess   tagname(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   shortrepr&  s    c         C   s   |  i   i d  Sd  S(   Ns   raw_unicode_escape(   s   selfs   __unicode__s   encode(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __str__-  s    c         C   sl   |  i oT d |  i   d i g  i } |  i D] } | t |   q- ~  |  i   f Sn |  i	   Sd  S(   Nu   %s%s%ss    (
   s   selfs   childrens   starttags   joins   appends   _[1]s   cs   strs   endtags   emptytag(   s   selfs   _[1]s   c(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __unicode__0  s    
Tc         C   s   |  i g } x |  i   D] \ } } | t j o | i |  q t | t	  oO g  i } | D] } | d |  qa ~ } | i d | d i |  f  q | i d | | f  q Wd d i |  Sd  S(   Ns   %ss   %s="%s"s    s   <%s>(   s   selfs   tagnames   partss   attlists   names   values   Nones   appends
   isinstances   ListTypes   _[1]s   vs   valuess   join(   s   selfs   names   values   _[1]s   partss   valuess   v(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   starttag8  s     +$c         C   s   d |  i Sd  S(   Ns   </%s>(   s   selfs   tagname(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   endtagD  s    c      	   C   sV   d d i  |  i g g  i } |  i   D]  \ } } | d | | f  q& ~  Sd  S(   Nu   <%s/>s    s   %s="%s"(   s   joins   selfs   tagnames   appends   _[1]s   attlists   ns   v(   s   selfs   _[1]s   vs   n(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   emptytagG  s    c         C   s   t  |  i  Sd  S(   N(   s   lens   selfs   children(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __len__L  s    c         C   s   t  | t  p t  | t  o |  i | Snq t  | t  o |  i | SnR t  | t  o8 | i	 t
 d f j p
 t d  |  i | i | i !Sn
 t d  d  S(   Ni   s   cannot handle slice with stridesF   element index must be an integer, a slice, or an attribute name string(   s
   isinstances   keys   UnicodeTypes
   StringTypes   selfs
   attributess   IntTypes   childrens	   SliceTypes   steps   Nones   AssertionErrors   starts   stops	   TypeError(   s   selfs   key(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __getitem__O  s      c         C   s   t  | t  p t  | t  o | |  i t |  <n t  | t  o |  i	 |  | |  i
 | <nr t  | t  oX | i t d f j p
 t d  x | D] } |  i	 |  q W| |  i
 | i | i +n
 t d  d  S(   Ni   s   cannot handle slice with stridesF   element index must be an integer, a slice, or an attribute name string(   s
   isinstances   keys   UnicodeTypes
   StringTypes   items   selfs
   attributess   strs   IntTypes   setup_childs   childrens	   SliceTypes   steps   Nones   AssertionErrors   nodes   starts   stops	   TypeError(   s   selfs   keys   items   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __setitem__[  s       c         C   s   t  | t  p t  | t  o |  i | =no t  | t  o |  i | =nQ t  | t  o7 | i	 t
 d f j p
 t d  |  i | i | i 5n
 t d  d  S(   Ni   s   cannot handle slice with stridesM   element index must be an integer, a simple slice, or an attribute name string(   s
   isinstances   keys   UnicodeTypes
   StringTypes   selfs
   attributess   IntTypes   childrens	   SliceTypes   steps   Nones   AssertionErrors   starts   stops	   TypeError(   s   selfs   key(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __delitem__j  s      c         C   s   |  i | Sd  S(   N(   s   selfs   childrens   other(   s   selfs   other(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __add__v  s    c         C   s   | |  i Sd  S(   N(   s   others   selfs   children(   s   selfs   other(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __radd__y  s    c         C   sx   t  | t  o! |  i |  |  i i |  n@ | t j	 o2 x | D] } |  i |  qE W|  i i	 |  n |  Sd S(   s4   Append a node or a list of nodes to `self.children`.N(
   s
   isinstances   others   Nodes   selfs   setup_childs   childrens   appends   Nones   nodes   extend(   s   selfs   others   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __iadd__|  s      c         C   s>   |  i i g  i } |  i D] } | | i    q ~  Sd  S(   N(   s   selfs   child_text_separators   joins   appends   _[1]s   childrens   childs   astext(   s   selfs   _[1]s   child(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   astext  s    c         C   s!   |  i i   } | i   | Sd  S(   N(   s   selfs
   attributess   itemss   attlists   sort(   s   selfs   attlist(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   attlist  s    
c         C   s   |  i i | |  Sd  S(   N(   s   selfs
   attributess   gets   keys   failobj(   s   selfs   keys   failobj(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   get  s    c         C   s   |  i i |  Sd  S(   N(   s   selfs
   attributess   has_keys   attr(   s   selfs   attr(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   hasattr  s    c         C   s%   |  i i |  o |  i | =n d  S(   N(   s   selfs
   attributess   has_keys   attr(   s   selfs   attr(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   delattr  s    c         C   s   |  i i | |  Sd  S(   N(   s   selfs
   attributess
   setdefaults   keys   failobj(   s   selfs   keys   failobj(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   setdefault  s    c         C   s!   |  i |  |  i i |  d  S(   N(   s   selfs   setup_childs   items   childrens   append(   s   selfs   item(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   append  s    c         C   s2   x | D] } |  i |  q W|  i i |  d  S(   N(   s   items   nodes   selfs   setup_childs   childrens   extend(   s   selfs   items   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   extend  s     c         C   sV   t  | t  o$ |  i |  |  i i | |  n | t j	 o | |  | | +n d  S(   N(	   s
   isinstances   items   Nodes   selfs   setup_childs   childrens   inserts   indexs   None(   s   selfs   indexs   item(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   insert  s
    ic         C   s   |  i i |  Sd  S(   N(   s   selfs   childrens   pops   i(   s   selfs   i(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   pop  s    c         C   s   |  i i |  d  S(   N(   s   selfs   childrens   removes   item(   s   selfs   item(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   remove  s    c         C   s   |  i i |  Sd  S(   N(   s   selfs   childrens   indexs   item(   s   selfs   item(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   index  s    c         C   s`   |  i |  } t | t  o |  i |  | |  | <n# | t j	 o | |  | | d +n d S(   s8   Replace one child `Node` with another child or children.i   N(   s   selfs   indexs   olds
   isinstances   news   Nodes   setup_childs   None(   s   selfs   olds   news   index(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   replace  s     i    c         C   s|   t  | t  o | f } n xS t | t t |   |   D]3 } x* | D]" } t  |  | |  o | SqJ qJ Wq= Wt Sd S(   sM  
        Return the index of the first child whose class exactly matches.

        Parameters:

        - `childclass`: A `Node` subclass to search for, or a tuple of `Node`
          classes. If a tuple, any of the classes may match.
        - `start`: Initial index to check.
        - `end`: Initial index to *not* check.
        N(   s
   isinstances
   childclasss	   TupleTypes   ranges   starts   mins   lens   selfs   ends   indexs   cs   None(   s   selfs
   childclasss   starts   ends   indexs   c(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   first_child_matching_class  s    
   c         C   s   t  | t  o | f } n xo t | t t |   |   D]O } d } x0 | D]( } t  |  i | |  o d } PqP qP W| o | Sq= q= Wt Sd S(   sI  
        Return the index of the first child whose class does *not* match.

        Parameters:

        - `childclass`: A `Node` subclass to skip, or a tuple of `Node`
          classes. If a tuple, none of the classes may match.
        - `start`: Initial index to check.
        - `end`: Initial index to *not* check.
        i    i   N(   s
   isinstances
   childclasss	   TupleTypes   ranges   starts   mins   lens   selfs   ends   indexs   matchs   cs   childrens   None(   s   selfs
   childclasss   starts   ends   indexs   cs   match(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   first_child_not_matching_class  s       	s       c      	   C   s`   d i  d | | |  i   f g g  i } |  i D]  } | | i	 | | d   q1 ~  Sd  S(   Ns    s   %s%s
i   (
   s   joins   indents   levels   selfs   starttags   appends   _[1]s   childrens   childs   pformat(   s   selfs   indents   levels   _[1]s   child(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   pformat  s    c         C   s   |  i Sd S(   s   Return this element's children.N(   s   selfs   children(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   get_children  s     c         C   s   |  i |  i   Sd  S(   N(   s   selfs	   __class__s
   attributes(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   copy  s    c         C   s4   |  i i d d  d | i   i   |  i d <d S(   s(   Add a new name to the "class" attribute.s   classs    s    N(   s   selfs
   attributess   gets   names   lowers   strip(   s   selfs   name(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   set_class  s     (,   s   __name__s
   __module__s   __doc__s   Nones   tagnames   child_text_separators   __init__s	   _dom_nodes   __repr__s	   shortreprs   __str__s   __unicode__s   starttags   endtags   emptytags   __len__s   __getitem__s   __setitem__s   __delitem__s   __add__s   __radd__s   __iadd__s   astexts   attlists   gets   hasattrs   delattrs
   setdefaults   has_keys   appends   extends   inserts   pops   removes   indexs   replaces   syss   maxints   first_child_matching_classs   first_child_not_matching_classs   pformats   get_childrens   copys	   set_class(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   Element   sR      	
																											s   TextElementc           B   s#   t  Z d  Z d Z d d d  Z RS(   s  
    An element which directly contains text.

    Its children are all `Text` or `TextElement` subclass nodes.  You can
    check whether an element's context is inline simply by checking whether
    its immediate parent is a `TextElement` instance (including subclasses).
    This is handy for nodes like `image` that can appear both inline and as
    standalone body elements.

    If passing children to `__init__()`, make sure to set `text` to
    ``''`` or some other suitable value.
    s    c         O   sP   | d j o) t |  } t i |  | | | |  n t i |  | | |  d  S(   Ns    (	   s   texts   Texts   textnodes   Elements   __init__s   selfs	   rawsources   childrens
   attributes(   s   selfs	   rawsources   texts   childrens
   attributess   textnode(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__  s    (   s   __name__s
   __module__s   __doc__s   child_text_separators   __init__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   TextElement  s     s   FixedTextElementc           B   s   t  Z d  Z d d d  Z RS(   s5   An element which directly contains preformatted text.s    c         O   s*   t  i |  | | | |  d |  i d <d  S(   Ns   preserves	   xml:space(   s   TextElements   __init__s   selfs	   rawsources   texts   childrens
   attributes(   s   selfs	   rawsources   texts   childrens
   attributes(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__  s    (   s   __name__s
   __module__s   __doc__s   __init__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   FixedTextElement  s    s
   Resolvablec           B   s   t  Z d Z RS(   Ni    (   s   __name__s
   __module__s   resolved(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   Resolvable&  s   s   BackLinkablec           B   s   t  Z d   Z RS(   Nc         C   s   |  i d g   i |  d  S(   Ns   backrefs(   s   selfs
   setdefaults   appends   refid(   s   selfs   refid(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   add_backref-  s    (   s   __name__s
   __module__s   add_backref(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   BackLinkable+  s   s   Rootc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   Root5  s    s   Titularc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   Titular7  s    s   PreDecorativec           B   s   t  Z d  Z RS(   s9   Category of Node which may occur before Decorative Nodes.(   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   PreDecorative9  s   s   PreBibliographicc           B   s   t  Z d  Z RS(   s<   Category of Node which may occur before Bibliographic Nodes.(   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   PreBibliographic<  s   s   Bibliographicc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   Bibliographic?  s    s
   Decorativec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   DecorativeA  s    s
   Structuralc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   StructuralC  s    s   Bodyc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   BodyE  s    s   Generalc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   GeneralG  s    s
   Sequentialc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   SequentialI  s    s
   Admonitionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   AdmonitionK  s    s   Specialc           B   s   t  Z d  Z RS(   s   Special internal body elements.(   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   SpecialM  s   s	   Invisiblec           B   s   t  Z d  Z RS(   s.   Internal elements that don't appear in output.(   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   InvisibleP  s   s   Partc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   PartS  s    s   Inlinec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   InlineU  s    s   Referentialc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   ReferentialW  s    s
   Targetablec           B   s   t  Z d Z e Z RS(   Ni    (   s   __name__s
   __module__s
   referenceds   Nones   indirect_reference_name(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   TargetableY  s   s   Labeledc           B   s   t  Z d  Z RS(   s(   Contains a `label` as its first element.(   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   Labeled`  s   s   documentc           B   s4  t  Z d   Z e i i d  Z e d  Z e e d  Z	 d   Z
 d   Z e d  Z e 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 e d  Z d   Z e d  Z d   Z  d   Z! d   Z" d   Z# RS(   Nc         O   sL  t  i |  | |  t |  _ t |  _ | |  _ | |  _	 g  |  _
 g  |  _ g  |  _ h  |  _ h  |  _ h  |  _ h  |  _ h  |  _ h  |  _ h  |  _ h  |  _ h  |  _ h  |  _ g  |  _ g  |  _ g  |  _ g  |  _ g  |  _ g  |  _ g  |  _ g  |  _ d |  _ d |  _  d |  _! g  |  _" g  |  _# d  k$ } | i& i' |   |  _( |  |  _) d  S(   Ni   i    (*   s   Elements   __init__s   selfs   argss   kwargss   Nones   current_sources   current_lines   settingss   reporters   external_targetss   internal_targetss   indirect_targetss   substitution_defss   substitution_namess   refnamess   refidss   nameidss	   nametypess   idss   substitution_refss   footnote_refss   citation_refss   anonymous_targetss   anonymous_refss   autofootnotess   autofootnote_refss   symbol_footnotess   symbol_footnote_refss	   footnotess	   citationss   autofootnote_starts   symbol_footnote_starts   id_starts   parse_messagess   transform_messagess   docutils.transformss   docutilss
   transformss   Transformers   transformers   document(   s   selfs   settingss   reporters   argss   kwargss   docutils(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__j  s    	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 c         C   s*   | i   } | i |  i |   | Sd S(   s-   Return a DOM representation of this document.N(   s   doms   Documents   domroots   appendChilds   selfs	   _dom_node(   s   selfs   doms   domroot(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   asdom  s     c         C   s  | i d  oj | d } |  i i |  o |  i | | j	 o5 |  i i d |  } | t	 j o | | 7} qv q nt | i d  o t
 | d  } n d } x< | p |  i i |  o  d |  i } |  i d 7_ q W| | d <| |  i | <| Sd  S(   Ns   ids   Duplicate ID: "%s".s   names    s   id%si   (   s   nodes   has_keys   ids   selfs   idss   reporters   severes   msgs   msgnodes   Nones   make_ids   id_start(   s   selfs   nodes   msgnodes   msgs   id(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   set_id  s     
' 
c         C   sl   | i d  oX | d } |  i i |  o |  i | | | | |  qh | |  i | <| |  i	 | <n d S(   sw  
        `self.nameids` maps names to IDs, while `self.nametypes` maps names to
        booleans representing hyperlink type (True==explicit,
        False==implicit).  This method updates the mappings.

        The following state transition table shows how `self.nameids` ("ids")
        and `self.nametypes` ("types") change with new input (a call to this
        method), and what actions are performed:

        ====  =====  ========  ========  =======  ====  =====  =====
         Old State    Input          Action        New State   Notes
        -----------  --------  -----------------  -----------  -----
        ids   types  new type  sys.msg.  dupname  ids   types
        ====  =====  ========  ========  =======  ====  =====  =====
        --    --     explicit  --        --       new   True
        --    --     implicit  --        --       new   False
        None  False  explicit  --        --       new   True
        old   False  explicit  implicit  old      new   True
        None  True   explicit  explicit  new      None  True
        old   True   explicit  explicit  new,old  None  True   [#]_
        None  False  implicit  implicit  new      None  False
        old   False  implicit  implicit  new,old  None  False
        None  True   implicit  implicit  new      None  True
        old   True   implicit  implicit  new      old   True
        ====  =====  ========  ========  =======  ====  =====  =====

        .. [#] Do not clear the name-to-id map or invalidate the old target if
           both old and new targets are external and refer to identical URIs.
           The new target is invalidated regardless.
        s   nameN(
   s   nodes   has_keys   names   selfs   nameidss   set_duplicate_name_ids   ids   msgnodes   explicits	   nametypes(   s   selfs   nodes   ids   msgnodes   explicits   name(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   set_name_id_map  s     
c         C   s  |  i | } |  i | }	 |	 p | |  i | <| o6|	 o d } | t j	 o |  i	 | } | i d  oI | d }
 | i d  o | i d  o | d |
 j o
 d } q n | d j o t |  t |  i | <q n |  i i | d | d | g d | } | t j o | | 7} n t |  q| |  i | <| t j	 o |  i	 | } t |  qnH | t j	 o |	 o( t |  i | <|  i	 | } t |  n t |  | p |	 o
 | t j	 oD |  i i d | d | g d | } | t j o | | 7} qn d  S(	   Ni   s   refuris   namei   s%   Duplicate explicit target name: "%s".s   backrefss	   base_nodes%   Duplicate implicit target name: "%s".(   s   selfs   nameidss   names   old_ids	   nametypess   old_explicits   explicits   levels   Nones   idss   old_nodes   nodes   has_keys   refuris   dupnames   reporters   system_messages   ids   msgs   msgnodes   info(   s   selfs   nodes   ids   names   msgnodes   explicits   old_nodes   old_ids   levels   old_explicits   refuris   msg(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   set_duplicate_name_id  sD    
1

c         C   s   |  i i |  Sd  S(   N(   s   selfs   nameidss   has_keys   name(   s   selfs   name(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   has_name:  s    c         C   s/   |  i | |  } |  i | | | d t d  S(   Ns   explicit(   s   selfs   set_ids   targets   msgnodes   ids   set_name_id_maps   None(   s   selfs   targets   msgnodes   id(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_implicit_target>  s    c         C   s/   |  i | |  } |  i | | | d d d  S(   Ns   expliciti   (   s   selfs   set_ids   targets   msgnodes   ids   set_name_id_map(   s   selfs   targets   msgnodes   id(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_explicit_targetB  s    c         C   s$   |  i i | d g   i |  d  S(   Ns   refname(   s   selfs   refnamess
   setdefaults   nodes   append(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_refnameF  s    c         C   s$   |  i i | d g   i |  d  S(   Ns   refid(   s   selfs   refidss
   setdefaults   nodes   append(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   note_refidI  s    c         C   s   |  i i |  d  S(   N(   s   selfs   external_targetss   appends   target(   s   selfs   target(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_external_targetL  s    c         C   s   |  i i |  d  S(   N(   s   selfs   internal_targetss   appends   target(   s   selfs   target(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_internal_targetO  s    c         C   s5   |  i i |  | i d  o |  i |  n d  S(   Ns   name(   s   selfs   indirect_targetss   appends   targets   has_keys   note_refname(   s   selfs   target(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_indirect_targetR  s    c         C   s!   |  i |  |  i i |  d  S(   N(   s   selfs   set_ids   targets   anonymous_targetss   append(   s   selfs   target(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_anonymous_targetW  s    c         C   s   |  i i |  d  S(   N(   s   selfs   anonymous_refss   appends   ref(   s   selfs   ref(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_anonymous_ref[  s    c         C   s!   |  i |  |  i i |  d  S(   N(   s   selfs   set_ids   footnotes   autofootnotess   append(   s   selfs   footnote(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_autofootnote^  s    c         C   s!   |  i |  |  i i |  d  S(   N(   s   selfs   set_ids   refs   autofootnote_refss   append(   s   selfs   ref(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_autofootnote_refb  s    c         C   s!   |  i |  |  i i |  d  S(   N(   s   selfs   set_ids   footnotes   symbol_footnotess   append(   s   selfs   footnote(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_symbol_footnotef  s    c         C   s!   |  i |  |  i i |  d  S(   N(   s   selfs   set_ids   refs   symbol_footnote_refss   append(   s   selfs   ref(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_symbol_footnote_refj  s    c         C   s!   |  i |  |  i i |  d  S(   N(   s   selfs   set_ids   footnotes	   footnotess   append(   s   selfs   footnote(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_footnoten  s    c         C   s>   |  i |  |  i i | d g   i |  |  i |  d  S(   Ns   refname(   s   selfs   set_ids   refs   footnote_refss
   setdefaults   appends   note_refname(   s   selfs   ref(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_footnote_refr  s     c         C   s   |  i i |  d  S(   N(   s   selfs	   citationss   appends   citation(   s   selfs   citation(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_citationw  s    c         C   s>   |  i |  |  i i | d g   i |  |  i |  d  S(   Ns   refname(   s   selfs   set_ids   refs   citation_refss
   setdefaults   appends   note_refname(   s   selfs   ref(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_citation_refz  s     c         C   s   t  |  } | d <|  i i |  oR |  i i d | d | } | t j o | | 7} n |  i | } t |  n | |  i | <| |  i t |  <d  S(   Ns   names-   Duplicate substitution definition name: "%s".s	   base_node(   s   whitespace_normalize_names   def_names   names   subdefs   selfs   substitution_defss   has_keys   reporters   errors   msgs   msgnodes   Nones   oldnodes   dupnames   substitution_namess   fully_normalize_name(   s   selfs   subdefs   def_names   msgnodes   names   oldnodes   msg(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_substitution_def  s    c         C   s4   t  |  } | d <|  i i | g   i |  d  S(   Ns   refname(   s   whitespace_normalize_names   refnames   names   subrefs   selfs   substitution_refss
   setdefaults   append(   s   selfs   subrefs   refnames   name(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_substitution_ref  s    c         C   s   |  i i | |  d  S(   N(   s   selfs   transformers   add_pendings   pendings   priority(   s   selfs   pendings   priority(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_pending  s    c         C   s   |  i i |  d  S(   N(   s   selfs   parse_messagess   appends   message(   s   selfs   message(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_parse_message  s    c         C   s   |  i i |  d  S(   N(   s   selfs   transform_messagess   appends   message(   s   selfs   message(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_transform_message  s    c         C   s4   | |  _ | t j o | |  _ n | d |  _ d  S(   Ni   (   s   sources   selfs   current_sources   offsets   Nones   current_line(   s   selfs   sources   offset(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note_source  s    	c         C   s    |  i |  i |  i |  i  Sd  S(   N(   s   selfs	   __class__s   settingss   reporters
   attributes(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   copy  s    ($   s   __name__s
   __module__s   __init__s   xmls   doms   minidoms   asdoms   Nones   set_ids   set_name_id_maps   set_duplicate_name_ids   has_names   note_implicit_targets   note_explicit_targets   note_refnames
   note_refids   note_external_targets   note_internal_targets   note_indirect_targets   note_anonymous_targets   note_anonymous_refs   note_autofootnotes   note_autofootnote_refs   note_symbol_footnotes   note_symbol_footnote_refs   note_footnotes   note_footnote_refs   note_citations   note_citation_refs   note_substitution_defs   note_substitution_refs   note_pendings   note_parse_messages   note_transform_messages   note_sources   copy(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   documenth  s<   	f'	*																				s   titlec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   title  s    s   subtitlec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   subtitle  s    s   rubricc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   rubric  s    s   docinfoc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   docinfo  s    s   infoc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   info  s    s   authorc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   author  s    s   authorsc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   authors  s    s   organizationc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   organization  s    s   addressc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   address  s    s   contactc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   contact  s    s   versionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   version  s    s   revisionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   revision  s    s   statusc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   status  s    s   datec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   date  s    s	   copyrightc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   copyright  s    s
   decorationc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   decoration  s    s   headerc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   header  s    s   footerc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   footer  s    s   sectionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   section  s    s   topicc           B   s   t  Z d  Z RS(   s  
    Topics are terminal, "leaf" mini-sections, like block quotes with titles,
    or textual figures.  A topic is just like a section, except that it has no
    subsections, and it doesn't have to conform to section placement rules.

    Topics are allowed wherever body elements (list, table, etc.) are allowed,
    but only at the top level of a section or document.  Topics cannot nest
    inside topics, sidebars, or body elements; you can't have a topic inside a
    table, list, block quote, etc.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   topic  s   s   sidebarc           B   s   t  Z d  Z RS(   s  
    Sidebars are like miniature, parallel documents that occur inside other
    documents, providing related or reference material.  A sidebar is
    typically offset by a border and "floats" to the side of the page; the
    document's main text may flow around it.  Sidebars can also be likened to
    super-footnotes; their content is outside of the flow of the document's
    main text.

    Sidebars are allowed wherever body elements (list, table, etc.) are
    allowed, but only at the top level of a section or document.  Sidebars
    cannot nest inside sidebars, topics, or body elements; you can't have a
    sidebar inside a table, list, block quote, etc.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   sidebar  s   s
   transitionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   transition  s    s	   paragraphc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   paragraph  s    s   bullet_listc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   bullet_list  s    s   enumerated_listc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   enumerated_list  s    s	   list_itemc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   list_item  s    s   definition_listc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   definition_list  s    s   definition_list_itemc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   definition_list_item  s    s   termc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   term  s    s
   classifierc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   classifier  s    s
   definitionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   definition   s    s
   field_listc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   field_list  s    s   fieldc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   field  s    s
   field_namec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   field_name  s    s
   field_bodyc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   field_body  s    s   optionc           B   s   t  Z d Z RS(   Ns    (   s   __name__s
   __module__s   child_text_separator(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   option  s   s   option_argumentc           B   s   t  Z d   Z RS(   Nc         C   s!   |  i d d  t i |   Sd  S(   Ns	   delimiters    (   s   selfs   gets   TextElements   astext(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   astext  s    (   s   __name__s
   __module__s   astext(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   option_argument  s   s   option_groupc           B   s   t  Z d Z RS(   Ns   , (   s   __name__s
   __module__s   child_text_separator(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   option_group  s   s   option_listc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   option_list  s    s   option_list_itemc           B   s   t  Z d Z RS(   Ns     (   s   __name__s
   __module__s   child_text_separator(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   option_list_item  s   s   option_stringc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   option_string  s    s   descriptionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   description   s    s   literal_blockc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   literal_block!  s    s   doctest_blockc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   doctest_block"  s    s
   line_blockc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   line_block#  s    s   block_quotec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   block_quote$  s    s   attributionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   attribution%  s    s	   attentionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   attention&  s    s   cautionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   caution'  s    s   dangerc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   danger(  s    s   errorc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   error)  s    s	   importantc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   important*  s    s   notec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   note+  s    s   tipc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   tip,  s    s   hintc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   hint-  s    s   warningc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   warning.  s    s
   admonitionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys
   admonition/  s    s   commentc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   comment0  s    s   substitution_definitionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   substitution_definition1  s    s   targetc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   target2  s    s   footnotec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   footnote3  s    s   citationc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   citation4  s    s   labelc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   label5  s    s   figurec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   figure6  s    s   captionc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   caption7  s    s   legendc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   legend8  s    s   tablec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   table9  s    s   tgroupc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   tgroup:  s    s   colspecc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   colspec;  s    s   theadc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   thead<  s    s   tbodyc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   tbody=  s    s   rowc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   row>  s    s   entryc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   entry?  s    s   system_messagec           B   s   t  Z e d  Z d   Z RS(   Nc         O   s^   | o  t d |  } | f | } n y t i |  d | |  Wn d | f GH  n Xd  S(   Ns    s   system_message: children=%r(   s   messages	   paragraphs   ps   childrens   Elements   __init__s   selfs
   attributes(   s   selfs   messages   childrens
   attributess   p(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__D  s    c         C   sB   |  i d d  } d |  d | |  d |  d t i |   f Sd  S(   Ns   lines    u   %s:%s: (%s/%s) %ss   sources   types   level(   s   selfs   gets   lines   Elements   astext(   s   selfs   line(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   astextN  s    (   s   __name__s
   __module__s   Nones   __init__s   astext(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   system_messageB  s   
s   pendingc           B   s5   t  Z d  Z e d d  Z d d d  Z d   Z RS(   sF  
    The "pending" element is used to encapsulate a pending operation: the
    operation (transform), the point at which to apply it, and any data it
    requires.  Only the pending operation's location within the document is
    stored in the public document tree (by the "pending" object itself); the
    operation and its data are stored in the "pending" object's internal
    instance attributes.

    For example, say you want a table of contents in your reStructuredText
    document.  The easiest way to specify where to put it is from within the
    document, with a directive::

        .. contents::

    But the "contents" directive can't do its work until the entire document
    has been parsed and possibly transformed to some extent.  So the directive
    code leaves a placeholder behind that will trigger the second phase of its
    processing, something like this::

        <pending ...public attributes...> + internal attributes

    Use `document.note_pending()` so that the
    `docutils.transforms.Transformer` stage of processing can run all pending
    transforms.
    s    c         O   s3   t  i |  | | |  | |  _ | p h  |  _ d  S(   N(   s   Elements   __init__s   selfs	   rawsources   childrens
   attributess	   transforms   details(   s   selfs	   transforms   detailss	   rawsources   childrens
   attributes(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__p  s
    	 s       i    c   
   	   C   s  d d |  i i |  i i f d g } |  i i   } | i   x8| D]0\ } } t
 | t  o_ | i d d | f  | i g  i } | i   i   D] }	 | d d |	 f  q ~  qE | o! t
 | t  o t
 | d t  op | i d d | f  xp | D]J } | i g  i } | i   i   D] }	 | d d |	 f  q/~  q	WqE | i d d | | f  qE Wt i |  | |  d i g  i } | D] }	 | d	 | | |	 f  q~  Sd  S(
   Ns   .. internal attributes:s        .transform: %s.%ss        .details:s   %7s%s:s    s   %9s%si    s	   %7s%s: %rs	       %s%s
(   s   selfs	   transforms
   __module__s   __name__s	   internalss   detailss   itemss   sorts   keys   values
   isinstances   Nodes   appends   extends   _[1]s   pformats
   splitliness   lines   ListTypes   vs   Elements   indents   levels   join(
   s   selfs   indents   levels	   internalss   values   _[1]s   detailss   keys   vs   line(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   pformat{  s    %
 H+ Lc         C   s&   |  i |  i |  i |  i |  i  Sd  S(   N(   s   selfs	   __class__s	   transforms   detailss	   rawsources   attribuates(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   copy  s    (   s   __name__s
   __module__s   __doc__s   Nones   __init__s   pformats   copy(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   pendingT  s    s   rawc           B   s   t  Z d  Z RS(   s@   
    Raw data that is to be passed untouched to the Writer.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   raw  s    s   emphasisc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   emphasis  s    s   strongc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   strong  s    s   literalc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   literal  s    s	   referencec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   reference  s    s   footnote_referencec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   footnote_reference  s    s   citation_referencec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   citation_reference  s    s   substitution_referencec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   substitution_reference  s    s   title_referencec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   title_reference  s    s   abbreviationc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   abbreviation  s    s   acronymc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   acronym  s    s   superscriptc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   superscript  s    s	   subscriptc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   subscript  s    s   imagec           B   s   t  Z d   Z RS(   Nc         C   s   |  i d d  Sd  S(   Ns   alts    (   s   selfs   get(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   astext  s    (   s   __name__s
   __module__s   astext(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   image  s   s   inlinec           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   inline  s    s   problematicc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   problematic  s    s	   generatedc           B   s   t  Z RS(   N(   s   __name__s
   __module__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   generated  s    s  
    Text
    abbreviation acronym address admonition attention attribution author
        authors
    block_quote bullet_list
    caption caution citation citation_reference classifier colspec comment
        contact copyright
    danger date decoration definition definition_list definition_list_item
        description docinfo doctest_block document
    emphasis entry enumerated_list error
    field field_body field_list field_name figure footer
        footnote footnote_reference
    generated
    header hint
    image important info inline
    label legend line_block list_item literal literal_block
    note
    option option_argument option_group option_list option_list_item
        option_string organization
    paragraph pending problematic
    raw reference revision row rubric
    section sidebar status strong subscript substitution_definition
        substitution_reference subtitle superscript system_message
    table target tbody term tgroup thead tip title title_reference topic
        transition
    version
    warnings   NodeVisitorc           B   s)   t  Z d  Z d   Z d   Z d   Z RS(   s3  
    "Visitor" pattern [GoF95]_ abstract superclass implementation for document
    tree traversals.

    Each node class has corresponding methods, doing nothing by default;
    override individual methods for specific and useful behaviour.  The
    "``visit_`` + node class name" method is called by `Node.walk()` upon
    entering a node.  `Node.walkabout()` also calls the "``depart_`` + node
    class name" method before exiting a node.

    This is a base class for visitors whose ``visit_...`` & ``depart_...``
    methods should be implemented for *all* node types encountered (such as
    for `docutils.writers.Writer` subclasses).  Unimplemented methods will
    raise exceptions.

    For sparse traversals, where only certain node types are of interest,
    subclass `SparseNodeVisitor` instead.  When (mostly or entirely) uniform
    processing is desired, subclass `GenericNodeVisitor`.

    .. [GoF95] Gamma, Helm, Johnson, Vlissides. *Design Patterns: Elements of
       Reusable Object-Oriented Software*. Addison-Wesley, Reading, MA, USA,
       1995.
    c         C   s   | |  _  d  S(   N(   s   documents   self(   s   selfs   document(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__  s    c         C   s#   t  d |  i | i i f   d S(   sk   
        Called when entering unknown `Node` types.

        Raise an exception unless overridden.
        s!   %s visiting unknown node type: %sN(   s   NotImplementedErrors   selfs	   __class__s   nodes   __name__(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   unknown_visit  s     c         C   s#   t  d |  i | i i f   d S(   si   
        Called before exiting unknown `Node` types.

        Raise exception unless overridden.
        s"   %s departing unknown node type: %sN(   s   NotImplementedErrors   selfs	   __class__s   nodes   __name__(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   unknown_departure  s     (   s   __name__s
   __module__s   __doc__s   __init__s   unknown_visits   unknown_departure(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   NodeVisitor  s    			s   SparseNodeVisitorc           B   s   t  Z d  Z RS(   s  
    Base class for sparse traversals, where only certain node types are of
    interest.  When ``visit_...`` & ``depart_...`` methods should be
    implemented for *all* node types (such as for `docutils.writers.Writer`
    subclasses), subclass `NodeVisitor` instead.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   SparseNodeVisitor  s   s   GenericNodeVisitorc           B   s    t  Z d  Z d   Z d   Z RS(   s  
    Generic "Visitor" abstract superclass, for simple traversals.

    Unless overridden, each ``visit_...`` method calls `default_visit()`, and
    each ``depart_...`` method (when using `Node.walkabout()`) calls
    `default_departure()`. `default_visit()` (and `default_departure()`) must
    be overridden in subclasses.

    Define fully generic visitors by overriding `default_visit()` (and
    `default_departure()`) only. Define semi-generic visitors by overriding
    individual ``visit_...()`` (and ``depart_...()``) methods also.

    `NodeVisitor.unknown_visit()` (`NodeVisitor.unknown_departure()`) should
    be overridden for default behavior.
    c         C   s
   t   d S(   s)   Override for generic, uniform traversals.N(   s   NotImplementedError(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   default_visit,  s     c         C   s
   t   d S(   s)   Override for generic, uniform traversals.N(   s   NotImplementedError(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   default_departure0  s     (   s   __name__s
   __module__s   __doc__s   default_visits   default_departure(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   GenericNodeVisitor  s    	c         C   s   |  i |  d  S(   N(   s   selfs   default_visits   node(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   _call_default_visit4  s    c         C   s   |  i |  d  S(   N(   s   selfs   default_departures   node(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   _call_default_departure7  s    c         C   s   d  S(   N(    (   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   _nop:  s    c         C   se   x^ |  D]V } t t d | t  t t d | t  t t d | t  t t d | t  q Wd S(   s%   Save typing with dynamic assignments:s   visit_s   depart_s   departN(   s   namess   _names   setattrs   GenericNodeVisitors   _call_default_visits   _call_default_departures   SparseNodeVisitors   _nop(   s   namess   _name(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   _add_node_class_names=  s      s   TreeCopyVisitorc           B   s2   t  Z d  Z d   Z d   Z d   Z d   Z RS(   sQ   
    Make a complete copy of a tree or branch, including element attributes.
    c         C   s&   t  i |  |  g  |  _ g  |  _ d  S(   N(   s   GenericNodeVisitors   __init__s   selfs   documents   parent_stacks   parent(   s   selfs   document(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   __init__M  s    	c         C   s   |  i d Sd  S(   Ni    (   s   selfs   parent(   s   self(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   get_tree_copyR  s    c         C   s<   | i   } |  i i |  |  i i |  i  | |  _ d S(   s9   Copy the current node, and make it the new acting parent.N(   s   nodes   copys   newnodes   selfs   parents   appends   parent_stack(   s   selfs   nodes   newnode(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   default_visitU  s
     c         C   s   |  i i   |  _ d S(   s#   Restore the previous acting parent.N(   s   selfs   parent_stacks   pops   parent(   s   selfs   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   default_departure\  s     (   s   __name__s
   __module__s   __doc__s   __init__s   get_tree_copys   default_visits   default_departure(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   TreeCopyVisitorG  s
    			s   TreePruningExceptionc           B   s   t  Z d  Z RS(   s   
    Base class for `NodeVisitor`-related tree pruning exceptions.

    Raise subclasses from within ``visit_...`` or ``depart_...`` methods
    called from `Node.walk()` and `Node.walkabout()` tree traversals to prune
    the tree traversed.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   TreePruningExceptiona  s    s   SkipChildrenc           B   s   t  Z d  Z RS(   s   
    Do not visit any children of the current node.  The current node's
    siblings and ``depart_...`` method are not affected.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   SkipChildrenn  s    s   SkipSiblingsc           B   s   t  Z d  Z RS(   s   
    Do not visit any more siblings (to the right) of the current node.  The
    current node's children and its ``depart_...`` method are not affected.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   SkipSiblingsx  s    s   SkipNodec           B   s   t  Z d  Z RS(   sq   
    Do not visit the current node's children, and do not call the current
    node's ``depart_...`` method.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   SkipNode  s    s   SkipDeparturec           B   s   t  Z d  Z RS(   s   
    Do not call the current node's ``depart_...`` method.  The current node's
    children and siblings are not affected.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   SkipDeparture  s    s	   NodeFoundc           B   s   t  Z d  Z RS(   s   
    Raise to indicate that the target of a search has been found.  This
    exception must be caught by the client; it is not caught by the traversal
    code.
    (   s   __name__s
   __module__s   __doc__(    (    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys	   NodeFound  s    c         C   sG   t  i d d i |  i   i     } t i d |  } t |  Sd S(   s  
    Convert `string` into an identifier and return it.

    Docutils identifiers will conform to the regular expression
    ``[a-z](-?[a-z0-9]+)*``.  For CSS compatibility, identifiers (the "class"
    and "id" attributes) should have no underscores, colons, or periods.
    Hyphens may be used.

    - The `HTML 4.01 spec`_ defines identifiers based on SGML tokens:

          ID and NAME tokens must begin with a letter ([A-Za-z]) and may be
          followed by any number of letters, digits ([0-9]), hyphens ("-"),
          underscores ("_"), colons (":"), and periods (".").

    - However the `CSS1 spec`_ defines identifiers based on the "name" token,
      a tighter interpretation ("flex" tokenizer notation; "latin1" and
      "escape" 8-bit characters have been replaced with entities)::

          unicode     \[0-9a-f]{1,4}
          latin1      [&iexcl;-&yuml;]
          escape      {unicode}|\[ -~&iexcl;-&yuml;]
          nmchar      [-a-z0-9]|{latin1}|{escape}
          name        {nmchar}+

    The CSS1 "nmchar" rule does not include underscores ("_"), colons (":"),
    or periods ("."), therefore "class" and "id" attributes should not contain
    these characters. They should be replaced with hyphens ("-"). Combined
    with HTML's requirements (the first character must be a letter; no
    "unicode", "latin1", or "escape" characters), this results in the
    ``[a-z](-?[a-z0-9]+)*`` pattern.

    .. _HTML 4.01 spec: http://www.w3.org/TR/html401
    .. _CSS1 spec: http://www.w3.org/TR/REC-CSS1
    s   -s    s    N(	   s   _non_id_charss   subs   joins   strings   lowers   splits   ids   _non_id_at_endss   str(   s   strings   id(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   make_id  s    " 's
   [^a-z0-9]+s   ^[-0-9]+|-+$c         C   s   |  d |  d <|  d =d  S(   Ns   names   dupname(   s   node(   s   node(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   dupname  s    c         C   s   d i  |  i   i    Sd S(   s.   Return a case- and whitespace-normalized name.s    N(   s   joins   names   lowers   split(   s   name(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   fully_normalize_name  s     c         C   s   d i  |  i    Sd S(   s$   Return a whitespace-normalized name.s    N(   s   joins   names   split(   s   name(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   whitespace_normalize_name  s     (   s   __doc__s   __docformat__s   syss   oss   res   xml.dom.minidoms   xmls   typess   IntTypes	   SliceTypes
   StringTypes   UnicodeTypes	   TupleTypes   ListTypes
   UserStrings   Nodes   Texts   Elements   TextElements   FixedTextElements
   Resolvables   BackLinkables   Roots   Titulars   PreDecoratives   PreBibliographics   Bibliographics
   Decoratives
   Structurals   Bodys   Generals
   Sequentials
   Admonitions   Specials	   Invisibles   Parts   Inlines   Referentials
   Targetables   Labeleds   documents   titles   subtitles   rubrics   docinfos   infos   authors   authorss   organizations   addresss   contacts   versions   revisions   statuss   dates	   copyrights
   decorations   headers   footers   sections   topics   sidebars
   transitions	   paragraphs   bullet_lists   enumerated_lists	   list_items   definition_lists   definition_list_items   terms
   classifiers
   definitions
   field_lists   fields
   field_names
   field_bodys   options   option_arguments   option_groups   option_lists   option_list_items   option_strings   descriptions   literal_blocks   doctest_blocks
   line_blocks   block_quotes   attributions	   attentions   cautions   dangers   errors	   importants   notes   tips   hints   warnings
   admonitions   comments   substitution_definitions   targets   footnotes   citations   labels   figures   captions   legends   tables   tgroups   colspecs   theads   tbodys   rows   entrys   system_messages   pendings   raws   emphasiss   strongs   literals	   references   footnote_references   citation_references   substitution_references   title_references   abbreviations   acronyms   superscripts	   subscripts   images   inlines   problematics	   generateds   splits   node_class_namess   NodeVisitors   SparseNodeVisitors   GenericNodeVisitors   _call_default_visits   _call_default_departures   _nops   _add_node_class_namess   TreeCopyVisitors	   Exceptions   TreePruningExceptions   SkipChildrens   SkipSiblingss   SkipNodes   SkipDepartures	   NodeFounds   make_ids   compiles   _non_id_charss   _non_id_at_endss   dupnames   fully_normalize_names   whitespace_normalize_name(   s   definition_list_items   colspecs   hints   abbreviations
   Sequentials   rubrics	   NodeFounds   sidebars
   field_lists   rows   Bodys	   copyrights   titles   versions   pendings   SkipSiblingss   PreDecoratives   attributions   make_ids
   Targetables   node_class_namess   Labeleds   SkipNodes   ListTypes   Inlines
   line_blocks   terms   option_groups   TreeCopyVisitors
   field_bodys	   SliceTypes
   classifiers   enumerated_lists	   references
   admonitions   option_arguments   Referentials   system_messages
   StringTypes   sections	   list_items   whitespace_normalize_names   labels   res   Parts   footnote_references
   UserStrings	   subscripts   title_references   xmls   inlines   bullet_lists	   attentions   SkipDepartures   addresss   strongs   legends
   definitions   _call_default_departures   option_strings   dupnames
   transitions
   Admonitions
   Resolvables   substitution_references   oss   comments   _non_id_at_endss   subtitles   dangers   problematics   images   __docformat__s   headers   tables   Nodes   figures   FixedTextElements   literals   theads   doctest_blocks   options   _nops   authorss	   TupleTypes
   field_names   infos   topics   targets   Texts   acronyms   Generals   option_lists   UnicodeTypes	   paragraphs   literal_blocks   errors   block_quotes   Specials   citation_references   _call_default_visits   IntTypes   Titulars   footnotes   GenericNodeVisitors   citations
   decorations   raws   warnings   cautions   _non_id_charss   BackLinkables   TreePruningExceptions   tgroups   Bibliographics   authors   tips   tbodys   notes   fields   emphasiss   SparseNodeVisitors	   Invisibles   NodeVisitors   _add_node_class_namess   documents   substitution_definitions   revisions   statuss   descriptions   definition_lists   Elements   syss	   generateds	   importants   fully_normalize_names   entrys   dates   captions   Roots   docinfos
   Decoratives   PreBibliographics   footers   TextElements   SkipChildrens   contacts
   Structurals   organizations   option_list_items   superscript(    (    sC   /mit/golem/arch/share/lib/python2.3/site-packages/docutils/nodes.pys   ?   s,  				+|4 (
 D"E 0					




	'		