-
<c       sB  d  Z  d k Z d k Z d g Z e i d  Z e i d  Z e i d  Z e i d  Z e i d  Z	 e i d  Z
 e i d	  Z e i d
  Z e i d  Z e i d  Z e i d  Z e i d  Z d e f d     YZ d e i f d     YZ d e f d     YZ e d  Z e d j o e   n d S(   s;   A parser for SGML, using the derived class as a static DTD.Ns
   SGMLParsers   [&<]sN   &([a-zA-Z][a-zA-Z0-9]*|#[0-9]*)?|<([a-zA-Z][^<>]*|/([a-zA-Z][^<>]*)?|![^<>]*)?s%   &([a-zA-Z][-.a-zA-Z0-9]*)[^a-zA-Z0-9]s   &#([0-9]+)[^0-9]s
   <[>a-zA-Z]s   <[a-zA-Z][-.a-zA-Z0-9]*/s"   <([a-zA-Z][-.a-zA-Z0-9]*)/([^/]*)/s   >s   [<>]s   --\s*>s   [a-zA-Z][-_.a-zA-Z0-9]*s`   \s*([a-zA-Z_][-:.a-zA-Z_0-9]*)(\s*=\s*(\'[^\']*\'|"[^"]*"|[-a-zA-Z0-9./:;+*%?!&$\(\)_#=~\'"]*))?s   SGMLParseErrorc      s   t  Z d  Z RS(   s&   Exception raised for all parse errors.(   s   __name__s
   __module__s   __doc__(    (    (    s   /usr/lib/python2.2/sgmllib.pys   SGMLParseError( s    c      sR  t  Z d d  Z d   Z d   Z d   Z d   Z d   Z d   Z d	   Z	 d
 d  Z
 d Z d   Z e Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z h  d d <d d <d d <d d <d  d! <Z d"   Z d#   Z d$   Z d%   Z d&   Z d'   Z d(   Z  d)   Z! d*   Z" RS(+   Ni    c    s   | |  _  |  i   d S(   s#   Initialize and reset this instance.N(   s   verboses   selfs   reset(   s   selfs   verbose(    (    s   /usr/lib/python2.2/sgmllib.pys   __init__: s     	c    sA   d |  _ g  |  _ d |  _ d |  _ d |  _ t i i |   d S(   s0   Reset this instance. Loses all unprocessed data.s    s   ???i    N(	   s   selfs   rawdatas   stacks   lasttags
   nomoretagss   literals
   markupbases
   ParserBases   reset(   s   self(    (    s   /usr/lib/python2.2/sgmllib.pys   reset? s     					c    s   d |  _ |  _ d S(   sY   Enter literal mode (CDATA) till EOF.

        Intended for derived classes only.
        i   N(   s   selfs
   nomoretagss   literal(   s   self(    (    s   /usr/lib/python2.2/sgmllib.pys   setnomoretagsH s     c    s   d |  _ d S(   sP   Enter literal mode (CDATA).

        Intended for derived classes only.
        i   N(   s   selfs   literal(   s   selfs   args(    (    s   /usr/lib/python2.2/sgmllib.pys
   setliteralO s     c    s!   |  i | |  _ |  i d  d S(   s   Feed some data to the parser.

        Call this as often as you want, with as little or as much text
        as you want (may include '
').  (This just saves the text,
        all the processing is done by goahead().)
        i    N(   s   selfs   rawdatas   datas   goahead(   s   selfs   data(    (    s   /usr/lib/python2.2/sgmllib.pys   feedV s     c    s   |  i d  d S(   s   Handle the remaining data.i   N(   s   selfs   goahead(   s   self(    (    s   /usr/lib/python2.2/sgmllib.pys   closea s     c    s   t  |   d  S(   N(   s   SGMLParseErrors   message(   s   selfs   message(    (    s   /usr/lib/python2.2/sgmllib.pys   errore s    c 	   sz  |  i } d } t |  } x| | j  o|  i o |  i | | | ! | } Pn t i | |  } | o | i
   } n | } | | j  o |  i | | | ! n | } | | j o Pn | | d j ot i	 | |  oZ |  i o" |  i | |  | d } q n |  i |  } | d j  o Pn | } q n | i d |  o7 |  i |  } | d j  o Pn | } d |  _ q n |  i o4 | | d j o |  i d  | d } n Pq n | i d |  o. |  i |  } | d j  o Pn | } q n | i d |  o2 |  i |  } | d j  o Pn | | } q n | i d |  o. |  i |  } | d j  o Pn | } q n n+| | d j o|  i o" |  i | |  | d } q n t i	 | |  } | oU | i d  } |  i |  | i d  } | | d d	 j o | d } n q n t i	 | |  } | oU | i d  } |  i |  | i d  } | | d d	 j o | d } n q n n |  i d
  t i	 | |  } | o" |  i | |  | d } q n | i d  } | | j o Pn |  i | | | ! | } q W| o
 | | j  o |  i | | | ! | } n | | |  _ d  S(   Ni    s   <i   s   </s   <!--s   <?s   <!s   &s   ;s   neither < nor & ??(   s   selfs   rawdatas   is   lens   ns
   nomoretagss   handle_datas   interestings   searchs   matchs   starts   js   starttagopens   literals   parse_starttags   ks
   startswiths   parse_endtags   parse_comments   parse_pis   parse_declarations   charrefs   groups   names   handle_charrefs   ends	   entityrefs   handle_entityrefs   errors
   incomplete(	   s   selfs   ends   names   is   js   ns   rawdatas   ks   match(    (    s   /usr/lib/python2.2/sgmllib.pys   goaheadk s    	 
  

  	
  
 

  

i   c    s   |  i } | | | d !d j o |  i d  n t i | | d  } | o d Sn | o+ | i d  } |  i
 | | d | ! n | i d  Sd  S(   Ni   s   <!--s"   unexpected call to parse_comment()ii    (   s   selfs   rawdatas   is   errors   commentcloses   searchs   matchs   reports   starts   js   handle_comments   end(   s   selfs   is   reports   rawdatas   js   match(    (    s   /usr/lib/python2.2/sgmllib.pys   parse_comment s    	s   =c    s   |  i } | | | d !d j o |  i d  n t i | | d  } | o d Sn | i d  } |  i	 | | d | ! | i
 d  } | | Sd  S(   Ni   s   <?s   unexpected call to parse_pi()ii    (   s   selfs   rawdatas   is   errors   picloses   searchs   matchs   starts   js	   handle_pis   end(   s   selfs   is   rawdatas   js   match(    (    s   /usr/lib/python2.2/sgmllib.pys   parse_pi s    	c    s   |  i Sd  S(   N(   s   selfs   _SGMLParser__starttag_text(   s   self(    (    s   /usr/lib/python2.2/sgmllib.pys   get_starttag_text s    c    s  t  |  _ | }	 |  i } t i | |  o t i | |  } | o d Sn | i	 d d  \ } }
 d | |  _ | i   } | i d  } |  i | |
  | |	 | i d  d !|  _ | Sn t i | | d  } | o d Sn | i d  } g  } | | | d !d j o | } |  i } n_ t i | | d  } | o |  i d  n | i d  } | | d | !i   } | |  _ x | | j  o t i | |  } | o Pn | i	 d d d  \ } } } | o
 | } n^ | d  d	 j o | d j n p# | d  d
 j o | d j n o | d d !} n | i | i   | f  | i d  } qW| | d j o | d } n | |	 | !|  _ |  i | |  | Sd  S(   Nii   i   s   <%s/i    s   <>s!   unexpected call to parse_starttagi   s   's   "s   >(   s   Nones   selfs   _SGMLParser__starttag_texts   is	   start_poss   rawdatas   shorttagopens   matchs   shorttags   groups   tags   datas   lowers   ends   ks   finish_shorttags
   endbrackets   searchs   starts   js   attrss   lasttags   tagfinds   errors   attrfinds   attrnames   rests	   attrvalues   appends   finish_starttag(   s   selfs   is   rests	   attrvalues   ks   js   attrnames   tags   rawdatas	   start_poss   datas   matchs   attrs(    (    s   /usr/lib/python2.2/sgmllib.pys   parse_starttag sZ    			  
Lc    s   |  i } t i | | d  } | o d Sn | i d  } | | d | !i   i	   } | | d j o | d } n |  i |  | Sd  S(   Ni   ii    i   s   >(   s   selfs   rawdatas
   endbrackets   searchs   is   matchs   starts   js   strips   lowers   tags   finish_endtag(   s   selfs   is   js   rawdatas   tags   match(    (    s   /usr/lib/python2.2/sgmllib.pys   parse_endtag&s    	c    s.   |  i | g   |  i |  |  i |  d  S(   N(   s   selfs   finish_starttags   tags   handle_datas   datas   finish_endtag(   s   selfs   tags   data(    (    s   /usr/lib/python2.2/sgmllib.pys   finish_shorttag3s    c    s   y t  |  d |  } Wnk t j
 o_ y t  |  d |  } Wn' t j
 o |  i | |  d Sn X|  i | | |  d Sn) X|  i i	 |  |  i | | |  d Sd  S(   Ns   start_s   do_ii    i   (
   s   getattrs   selfs   tags   methods   AttributeErrors   unknown_starttags   attrss   handle_starttags   stacks   append(   s   selfs   tags   attrss   method(    (    s   /usr/lib/python2.2/sgmllib.pys   finish_starttag:s    		c    sx  | o9 t |  i  d } | d j  o |  i |  d  Sn n | |  i j oO y t |  d |  } Wn  t j
 o |  i |  n X|  i	 |  d  Sn t |  i  } x2 t
 |  D]$ } |  i | | j o
 | } n q Wx t |  i  | j ov |  i d } y t |  d |  } Wn t j
 o t } n X| o |  i | |  n |  i |  |  i d =q Wd  S(   Ni   i    s   end_i(   s   tags   lens   selfs   stacks   founds   unknown_endtags   getattrs   methods   AttributeErrors   report_unbalanceds   ranges   is   Nones   handle_endtag(   s   selfs   tags   is   founds   method(    (    s   /usr/lib/python2.2/sgmllib.pys   finish_endtagLs8       c    s   | |  d  S(   N(   s   methods   attrs(   s   selfs   tags   methods   attrs(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_starttagks    c    s   |   d  S(   N(   s   method(   s   selfs   tags   method(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_endtagos    c    s+   |  i o d | d GHd G|  i GHn d  S(   Ns   *** Unbalanced </s   >s
   *** Stack:(   s   selfs   verboses   tags   stack(   s   selfs   tag(    (    s   /usr/lib/python2.2/sgmllib.pys   report_unbalancedss    
c    s   y t  |  } Wn$ t j
 o |  i |  d Sn Xd | j o
 d j n o |  i |  d Sn |  i t |   d S(   s0   Handle character reference, no need to override.Ni    i   (   s   ints   names   ns
   ValueErrors   selfs   unknown_charrefs   handle_datas   chr(   s   selfs   names   n(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_charrefxs     	s   <s   lts   >s   gts   &s   amps   "s   quots   's   aposc    sC   |  i } | i |  o |  i | |  n |  i |  d Sd S(   s   Handle entity references.

        There should be no need to override this method; it can be
        tailored by setting up the self.entitydefs mapping appropriately.
        N(   s   selfs
   entitydefss   tables   has_keys   names   handle_datas   unknown_entityref(   s   selfs   names   table(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_entityrefs     	c    s   d  S(   N(    (   s   selfs   data(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_datas    c    s   d  S(   N(    (   s   selfs   data(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_comments    c    s   d  S(   N(    (   s   selfs   decl(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_decls    c    s   d  S(   N(    (   s   selfs   data(    (    s   /usr/lib/python2.2/sgmllib.pys	   handle_pis    c    s   d  S(   N(    (   s   selfs   tags   attrs(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_starttags    c    s   d  S(   N(    (   s   selfs   tag(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_endtags    c    s   d  S(   N(    (   s   selfs   ref(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_charrefs    c    s   d  S(   N(    (   s   selfs   ref(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_entityrefs    (#   s   __name__s
   __module__s   __init__s   resets   setnomoretagss
   setliterals   feeds   closes   errors   goaheads   parse_comments   _decl_othercharss   parse_pis   Nones   _SGMLParser__starttag_texts   get_starttag_texts   parse_starttags   parse_endtags   finish_shorttags   finish_starttags   finish_endtags   handle_starttags   handle_endtags   report_unbalanceds   handle_charrefs
   entitydefss   handle_entityrefs   handle_datas   handle_comments   handle_decls	   handle_pis   unknown_starttags   unknown_endtags   unknown_charrefs   unknown_entityref(    (    (    s   /usr/lib/python2.2/sgmllib.pys
   SGMLParser8 s@   								c			7								3								s   TestSGMLParserc      s\   t  Z d d  Z d   Z d   Z d   Z d   Z d   Z d   Z d	   Z	 d
   Z
 RS(   Ni    c    s   d |  _ t i |  |  d  S(   Ns    (   s   selfs   testdatas
   SGMLParsers   __init__s   verbose(   s   selfs   verbose(    (    s   /usr/lib/python2.2/sgmllib.pys   __init__s    	c    s9   |  i | |  _ t |  i  d j o |  i   n d  S(   NiF   (   s   selfs   testdatas   datas   lens   flush(   s   selfs   data(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_datas    c    s+   |  i } | o d |  _ d G| GHn d  S(   Ns    s   data:(   s   selfs   testdatas   data(   s   selfs   data(    (    s   /usr/lib/python2.2/sgmllib.pys   flushs    		c    sK   |  i   | } t |  d j o | d  d | d } n d G| GHd  S(   NiD   i    s   ...is   comment:(   s   selfs   flushs   datas   rs   len(   s   selfs   datas   r(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_comments
    
c    s_   |  i   | o d | d GHn9 d | Gx( | D]  \ } } | d d | d Gq2 Wd GHd  S(   Ns   start tag: <s   >s   =s   "(   s   selfs   flushs   attrss   tags   names   value(   s   selfs   tags   attrss   values   name(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_starttags    
 c    s   |  i   d | d GHd  S(   Ns   end tag: </s   >(   s   selfs   flushs   tag(   s   selfs   tag(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_endtags    
c    s   |  i   d | d GHd  S(   Ns   *** unknown entity ref: &s   ;(   s   selfs   flushs   ref(   s   selfs   ref(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_entityrefs    
c    s   |  i   d | d GHd  S(   Ns   *** unknown char ref: &#s   ;(   s   selfs   flushs   ref(   s   selfs   ref(    (    s   /usr/lib/python2.2/sgmllib.pys   unknown_charrefs    
c    s   t  i |   |  i   d  S(   N(   s
   SGMLParsers   closes   selfs   flush(   s   self(    (    s   /usr/lib/python2.2/sgmllib.pys   closes    (   s   __name__s
   __module__s   __init__s   handle_datas   flushs   handle_comments   unknown_starttags   unknown_endtags   unknown_entityrefs   unknown_charrefs   close(    (    (    s   /usr/lib/python2.2/sgmllib.pys   TestSGMLParsers   				
			c 	   s-  d  k  } |  o | i d }  n |  o |  d d j o |  d }  t } n t } |  o |  d } n d } | d j o | i } nF y t	 | d  } Wn/ t
 j
 o# } | Gd G| GH| i d  n X| i   } | | i j	 o | i   n |   } x | D] } | i |  qW| i   d  S(   Ni   i    s   -ss	   test.htmls   -s   rs   :(   s   syss   argss   argvs
   SGMLParsers   klasss   TestSGMLParsers   files   stdins   fs   opens   IOErrors   msgs   exits   reads   datas   closes   xs   cs   feed(	   s   argss   cs   files   fs   datas   syss   klasss   xs   msg(    (    s   /usr/lib/python2.2/sgmllib.pys   tests2    	

	 s   __main__(   s   __doc__s
   markupbases   res   __all__s   compiles   interestings
   incompletes	   entityrefs   charrefs   starttagopens   shorttagopens   shorttags   picloses
   endbrackets   commentcloses   tagfinds   attrfinds   RuntimeErrors   SGMLParseErrors
   ParserBases
   SGMLParsers   TestSGMLParsers   Nones   tests   __name__(   s   starttagopens   shorttags
   SGMLParsers   charrefs   attrfinds   picloses   commentcloses   __all__s   SGMLParseErrors
   markupbases   interestings   tagfinds   res	   entityrefs   TestSGMLParsers   tests   shorttagopens
   endbrackets
   incomplete(    (    s   /usr/lib/python2.2/sgmllib.pys   ? s,   			 u3$