-
<c       s    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 8 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      s  8 t  Z : d d  Z ? d   Z H d   Z O d   Z V d   Z a d   Z e d   Z k d	   Z	  d
 d  Z
  d Z  d   Z  e Z  d   Z  d   Z &d   Z 3d   Z :d   Z Ld   Z kd   Z od   Z sd   Z x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    sY   ? @ A d |  _ B g  |  _ C d |  _ D d |  _ E d |  _ F 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   H L M 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   O S T 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-   V \ ^ |  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   a b c |  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   e f t  |   d  S(   N(   s   SGMLParseErrors   message(   s   selfs   message(    (    s   /usr/lib/python2.2/sgmllib.pys   errore s   c 	   s  k l |  i } m d } n t |  } o x!o | | j  op |  i o( q |  i | | | ! r | } s Pn t t i | |  } u | o u | i
   } n
 v | } w | | j  o x |  i | | | ! n y | } z | | j o z Pn { | | d j o;| t i	 | |  ou } |  i o+ ~ |  i | |   | d }  q- n  |  i |  }  | d j  o  Pn  | }  q- n  | i d |  oI  |  i |  }  | d j  o  Pn  | }  d |  _  q- n  |  i oC  | | d j o!  |  i d   | d } n  P q- n  | i d |  o=  |  i |  }  | d j  o  Pn  | }  q- n  | i d |  oA  |  i |  }  | d j  o  Pn  | | }  q- n  | i d |  o=  |  i |  }  | d j  o  Pn  | }  q- n nm | | d j oH |  i o+  |  i | |   | d }  q- n  t i	 | |  }  | og  | i d  }  |  i |   | i d  }  | | d d	 j o  | d } n  q- n  t i	 | |  }  | og  | 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  | o1  | 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 } nq t i | | d  } | o |  i d  n | i d  } | | d | !i   } | |  _ x| | j  o t i | |  } | o Pn | i	 d d d  \ } } } | o | } nd | 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   	 		  !Oc    s   &'|  i } (t i | | d  } )| o *d Sn +| i d  } ,| | d | !i   i	   } -| | d j o .| d } n /|  i |  0| 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:   34|  i | g   5|  i |  6|  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 |  } Wn =t j
 ot >y ?t  |  d |  } Wn0 @t j
 o! A|  i | |  Bd Sn XD|  i | | |  Ed Sn2 XG|  i i	 |  H|  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    s  LM| oE Nt |  i  d } O| d j  o P|  i |  Qd  Sn n S| |  i j oa Ty Ut |  d |  } Wn& Vt j
 o W|  i |  n XY|  i	 |  Zd  Sn [t |  i  } \x; t
 |  D\]* } ]|  i | | j o ]| } n q W^x ^t |  i  | j o _|  i d } `y at |  d |  } Wn bt j
 o ct } n Xd| o e|  i | |  n g|  i |  h|  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   kl| |  d  S(   N(   s   methods   attrs(   s   selfs   tags   methods   attrs(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_starttagks   c    s   op|   d  S(   N(   s   method(   s   selfs   tags   method(    (    s   /usr/lib/python2.2/sgmllib.pys   handle_endtagos   c    s7   st|  i o# ud | d GHvd 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   xyzy {t  |  } Wn- |t j
 o }|  i |  ~d Sn Xd | 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    sX   |  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6s   TestSGMLParserc      sz   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    sE   |  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    s]   |  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    sz   |  i   | o d | d GHnH d | Gx. | D]# \ } } | d d | d GqD Wd 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 } nU y t	 | d  } Wn8 t
 j
 o) } | Gd G| GH| i d  n X| i   } | | i j	 o | i   n |   } x! | D] } | i |  qM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$