;ò
óŒü?c           @   sÆ  d  Z  d k Z d k Z d k Z d k Z d k Ty e Wn e j
 o e Z n Xy e	 i
 i d j Z Wn e j
 o d Z n Xe i d ƒ i d „ Z e i d „ Z e o d „  Z n
 d	 „  Z d
 Z d d d Z d d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z  d Z! d e" f d „  ƒ  YZ# d e# f d „  ƒ  YZ$ d e# f d „  ƒ  YZ% d e# f d „  ƒ  YZ& e o  e' Z( Z) e* e	 f \ Z* Z	 nD d  f  d! „  ƒ  YZ) e) d ƒ e) d ƒ f \ Z* Z	 e	 e* f d" „ Z( d# f  d$ „  ƒ  YZ+ d% „  Z, d k- Z- y d k. Z/ Wn e0 j
 o d k/ Z/ n Xd& f  d' „  ƒ  YZ1 d( „  Z2 e+ e1 f Z3 e o e3 e) f Z3 n y d k4 Z4 e4 i5 Z6 e4 i7 Z8 Wn# e9 e0 f j
 o e Z6 Z8 n Xy d k4 Z4 e4 i: Z; Wn e9 e0 f j
 o e Z; n Xy( d k< Z< e= e< d) ƒ o
 e0 ‚ n Wn e0 j
 o e Z> n Xd* f  d+ „  ƒ  YZ> y, d, k? l@ Z@ e= e@ d- ƒ o
 e0 ‚ n Wn e0 j
 o e ZA n Xd. f  d/ „  ƒ  YZA d0 f  d1 „  ƒ  YZB d2 f  d3 „  ƒ  YZ: d4 f  d5 „  ƒ  YZ7 d6 „  ZC e e e d d7 „ ZD d8 „  ZE d9 f  d: „  ƒ  YZF d; f  d< „  ƒ  YZG d= eG f d> „  ƒ  YZH d? f  d@ „  ƒ  YZI eI ZJ e dA j oK eI dB ƒ ZK eK GHy eK iL iM dC ƒ GHWqÂe# j
 o ZN dD GeN GHqÂXn d S(E   sH  
An XML-RPC client interface for Python.

The marshalling and response parser code can also be used to
implement XML-RPC servers.

Exported exceptions:

  Error          Base class for client errors
  ProtocolError  Indicates an HTTP protocol error
  ResponseError  Indicates a broken response package
  Fault          Indicates an XML-RPC fault package

Exported classes:

  ServerProxy    Represents a logical connection to an XML-RPC server

  Boolean        boolean wrapper to generate a "boolean" XML-RPC value
  DateTime       dateTime wrapper for an ISO 8601 string or time tuple or
                 localtime integer value to generate a "dateTime.iso8601"
                 XML-RPC value
  Binary         binary data wrapper

  SlowParser     Slow but safe standard parser (based on xmllib)
  Marshaller     Generate an XML-RPC params chunk from a Python data structure
  Unmarshaller   Unmarshal an XML-RPC response from incoming XML event message
  Transport      Handles an HTTP transaction to an XML-RPC server
  SafeTransport  Handles an HTTPS transaction to an XML-RPC server

Exported constants:

  True
  False

Exported functions:

  boolean        Convert any Python value to an XML-RPC boolean
  getparser      Create instance of the fastest available parser & attach
                 to an unmarshalling object
  dumps          Convert an argument tuple or a Fault instance to an XML-RPC
                 request (or response, if the methodresponse option is used).
  loads          Convert an XML-RPC packet to unmarshalled data plus a method
                 name (None if not present).
N(   s   *s   booli    s   [€-ÿ]c         C   s6   t  o | o
 | |  ƒ o t  |  | ƒ }  n |  Sd  S(   N(   s   unicodes   encodings   is8bits   data(   s   datas   encodings   is8bit(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   _decodeœ   s    c         C   s8   | |  d d ƒ }  | |  d d ƒ }  | |  d d ƒ Sd  S(   Ns   &s   &amp;s   <s   &lt;s   >s   &gt;(   s   replaces   s(   s   ss   replace(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   escape¢   s    c         C   s,   y t  |  ƒ SWn t j
 o |  Sn Xd  S(   N(   s   strs   strings   UnicodeError(   s   string(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   _stringify¨   s    c         C   s   |  Sd  S(   N(   s   string(   s   string(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   _stringify¯   s    s   1.0.1l    i   i   iD€ÿÿi¨€ÿÿiÿÿipÿÿiÔÿÿiC€ÿÿiB€ÿÿi§€ÿÿi¦€ÿÿi¥€ÿÿs   Errorc           B   s   t  Z d  Z d „  Z RS(   s   Base class for client errors.c         C   s   t  |  ƒ Sd  S(   N(   s   reprs   self(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __str__Ô   s    (   s   __name__s
   __module__s   __doc__s   __str__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   ErrorÒ   s    s   ProtocolErrorc           B   s    t  Z d  Z d „  Z d „  Z RS(   s!   Indicates an HTTP protocol error.c         C   s5   t  i |  ƒ | |  _ | |  _ | |  _ | |  _ d  S(   N(   s   Errors   __init__s   selfs   urls   errcodes   errmsgs   headers(   s   selfs   urls   errcodes   errmsgs   headers(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__ã   s
    			c         C   s   d |  i |  i |  i f Sd  S(   Ns   <ProtocolError for %s: %s %s>(   s   selfs   urls   errcodes   errmsg(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __repr__é   s    (   s   __name__s
   __module__s   __doc__s   __init__s   __repr__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   ProtocolErrorá   s    	s   ResponseErrorc           B   s   t  Z d  Z RS(   s$   Indicates a broken response package.(   s   __name__s
   __module__s   __doc__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   ResponseErrorô   s    s   Faultc           B   s    t  Z d  Z d „  Z d „  Z RS(   s#   Indicates an XML-RPC fault package.c         K   s#   t  i |  ƒ | |  _ | |  _ d  S(   N(   s   Errors   __init__s   selfs	   faultCodes   faultString(   s   selfs	   faultCodes   faultStrings   extra(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__  s    	c         C   s   d |  i t |  i ƒ f Sd  S(   Ns   <Fault %s: %s>(   s   selfs	   faultCodes   reprs   faultString(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __repr__  s    (   s   __name__s
   __module__s   __doc__s   __init__s   __repr__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   Fault  s    	s   Booleanc           B   sG   t  Z d  Z d d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   sa   Boolean-value wrapper.

        Use True or False to generate a "boolean" XML-RPC value.
        i    c         C   s   t  i | ƒ |  _ d  S(   N(   s   operators   truths   values   self(   s   selfs   value(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__#  s    c         C   s   | i d |  i ƒ d  S(   Ns%   <value><boolean>%d</boolean></value>
(   s   outs   writes   selfs   value(   s   selfs   out(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   encode&  s    c         C   s1   t  | t ƒ o | i } n t |  i | ƒ Sd  S(   N(   s
   isinstances   others   Booleans   values   cmps   self(   s   selfs   other(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __cmp__)  s    c         C   s.   |  i o d t |  ƒ Sn d t |  ƒ Sd  S(   Ns   <Boolean True at %x>s   <Boolean False at %x>(   s   selfs   values   id(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __repr__.  s    
c         C   s   |  i Sd  S(   N(   s   selfs   value(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __int__4  s    c         C   s   |  i Sd  S(   N(   s   selfs   value(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __nonzero__7  s    (	   s   __name__s
   __module__s   __doc__s   __init__s   encodes   __cmp__s   __repr__s   __int__s   __nonzero__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   Boolean  s    				c         C   s   | t i |  ƒ Sd S(   s.   Convert any Python value to XML-RPC 'boolean'.N(   s
   _truefalses   operators   truths   value(   s   values
   _truefalse(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   booleanG  s     s   DateTimec           B   sG   t  Z d  Z d d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   s‹   DateTime wrapper for an ISO 8601 string or time tuple or
    localtime integer value to generate 'dateTime.iso8601' XML-RPC
    value.
    i    c         C   s~   t  | t ƒ o` t  | t t i f ƒ o0 | d j o t i ƒ  } n t i | ƒ } n t i d | ƒ } n | |  _ d  S(   Ni    s   %Y%m%dT%H:%M:%S(	   s
   isinstances   values
   StringTypes	   TupleTypes   times   struct_times	   localtimes   strftimes   self(   s   selfs   value(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__^  s    c         C   s1   t  | t ƒ o | i } n t |  i | ƒ Sd  S(   N(   s
   isinstances   others   DateTimes   values   cmps   self(   s   selfs   other(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __cmp__g  s    c         C   s   |  i Sd  S(   N(   s   selfs   value(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __str__q  s    c         C   s!   d t  |  i ƒ t |  ƒ f Sd  S(   Ns   <DateTime %s at %x>(   s   reprs   selfs   values   id(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __repr__t  s    c         C   s   t  i | ƒ |  _ d  S(   N(   s   strings   strips   datas   selfs   value(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   decodew  s    c         C   s.   | i d ƒ | i |  i ƒ | i d ƒ d  S(   Ns   <value><dateTime.iso8601>s   </dateTime.iso8601></value>
(   s   outs   writes   selfs   value(   s   selfs   out(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   encodez  s    (	   s   __name__s
   __module__s   __doc__s   __init__s   __cmp__s   __str__s   __repr__s   decodes   encode(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   DateTimeX  s    		
			c         C   s   t  ƒ  } | i |  ƒ | Sd  S(   N(   s   DateTimes   values   decodes   data(   s   datas   value(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   _datetime  s    	s   Binaryc           B   s>   t  Z d  Z e d „ Z d „  Z d „  Z d „  Z d „  Z RS(   s   Wrapper for binary data.c         C   s   | |  _  d  S(   N(   s   datas   self(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__”  s    c         C   s   |  i p d Sd  S(   Ns    (   s   selfs   data(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __str__œ  s    c         C   s1   t  | t ƒ o | i } n t |  i | ƒ Sd  S(   N(   s
   isinstances   others   Binarys   datas   cmps   self(   s   selfs   other(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __cmp__Ÿ  s    c         C   s   t  i | ƒ |  _ d  S(   N(   s   base64s   decodestrings   datas   self(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   decode¤  s    c         C   s:   | i d ƒ t i t i |  i ƒ | ƒ | i d ƒ d  S(   Ns   <value><base64>
s   </base64></value>
(   s   outs   writes   base64s   encodes   StringIOs   selfs   data(   s   selfs   out(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   encode§  s    (	   s   __name__s
   __module__s   __doc__s   Nones   __init__s   __str__s   __cmp__s   decodes   encode(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   Binary‘  s    			c         C   s   t  ƒ  } | i |  ƒ | Sd  S(   N(   s   Binarys   values   decodes   data(   s   datas   value(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   _binary¬  s    	s	   XMLParsers   SgmlopParserc           B   s,   t  Z d „  Z d „  Z d „  Z d „  Z RS(   Nc         C   s˜   | i |  _ | i |  _ | i |  _ | i |  _	 t
 i ƒ  |  _ |  i i |  ƒ |  i i |  _ h  d d <d d <d d <d d <d	 d
 <|  _ d  S(   Ns   amps   &s   gts   >s   lts   <s   aposs   's   quots   "(   s   targets   starts   selfs   finish_starttags   ends   finish_endtags   datas   handle_datas   xmls
   handle_xmls   sgmlops	   XMLParsers   parsers   registers   feeds   entity(   s   selfs   target(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__×  s    c         C   s)   z |  i i ƒ  Wd  t |  _ |  _ Xd  S(   N(   s   selfs   parsers   closes   Nones   feed(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   closeè  s     c         C   s:   t  i d | ƒ } | o |  i | i d ƒ d ƒ n d  S(   Ns   encoding\s*=\s*['"]([^"']+)["']i   (   s   res   searchs   attrs   ms   selfs
   handle_xmls   group(   s   selfs   tags   attrs   m(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   handle_procî  s    c         C   sC   y |  i |  i | ƒ Wn$ t j
 o |  i d | ƒ n Xd  S(   Ns   &%s;(   s   selfs   handle_datas   entitys   KeyError(   s   selfs   entity(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   handle_entityrefó  s    (   s   __name__s
   __module__s   __init__s   closes   handle_procs   handle_entityref(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   SgmlopParserÖ  s   			(   s   expats   ParserCreates   ExpatParserc           B   s#   t  Z d „  Z d „  Z d „  Z RS(   Nc         C   su   t  i t t ƒ |  _ } | |  _ | i | _	 | i
 | _ | i | _ t } | i o
 d } n | i | t ƒ d  S(   Ns   utf-8(   s   expats   ParserCreates   Nones   selfs   _parsers   parsers   targets   _targets   starts   StartElementHandlers   ends   EndElementHandlers   datas   CharacterDataHandlers   encodings   returns_unicodes   xml(   s   selfs   targets   encodings   parser(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__  s    	
c         C   s   |  i i | d ƒ d  S(   Ni    (   s   selfs   _parsers   Parses   data(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   feed  s    c         C   s#   |  i i d d ƒ |  ` |  ` d  S(   Ns    i   (   s   selfs   _parsers   Parses   _target(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   close  s    (   s   __name__s
   __module__s   __init__s   feeds   close(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   ExpatParser  s   		s
   SlowParserc           B   s   t  Z d  Z d „  Z RS(   s/   Default XML parser (based on xmllib.XMLParser).c         C   s¯   d  k  } | i t i j o | i f t _ n | i |  _ | i |  _	 | i
 |  _ | i
 |  _ | i |  _ y | i i |  d d ƒWn# t j
 o | i i |  ƒ n Xd  S(   Ns   accept_utf8i   (   s   xmllibs	   XMLParsers
   SlowParsers	   __bases__s   targets   xmls   selfs
   handle_xmls   starts   unknown_starttags   datas   handle_datas   handle_cdatas   ends   unknown_endtags   __init__s	   TypeError(   s   selfs   targets   xmllib(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__  s    	(   s   __name__s
   __module__s   __doc__s   __init__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   SlowParser  s    s
   Marshallerc           B   s  t  Z d  Z e d d „ Z h  Z d „  Z d „  Z d „  Z e e e	 <d „  Z
 e
 e e <e o d „  Z e e e <n d „  Z e e e <d	 „  Z e e e <e d
 „ Z e e e <e o e d „ Z e e e <n d „  Z e e e <e e e <e d „ Z e e e <d „  Z e e e <RS(   sv  Generate an XML-RPC params chunk from a Python data structure.

    Create a Marshaller instance for each set of parameters, and use
    the "dumps" method to convert your data (represented as a tuple)
    to an XML-RPC params chunk.  To write a fault response, pass a
    Fault instance instead.  You may prefer to use the "dumps" module
    function for this purpose.
    i    c         C   s(   h  |  _ t |  _ | |  _ | |  _ d  S(   N(   s   selfs   memos   Nones   datas   encodings
   allow_none(   s   selfs   encodings
   allow_none(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__?  s    			c         C   sÅ   g  } | i } |  i } t | t ƒ o= | d ƒ | h  d | i	 <d | i
 <| ƒ | d ƒ nG | d ƒ x/ | D]' } | d ƒ | | | ƒ | d ƒ qv W| d ƒ t i | d	 ƒ } | Sd  S(
   Ns   <fault>
s	   faultCodes   faultStrings	   </fault>
s	   <params>
s   <param>
s	   </param>
s
   </params>
s    (   s   outs   appends   writes   selfs   _Marshaller__dumps   dumps
   isinstances   valuess   Faults	   faultCodes   faultStrings   vs   strings   joins   result(   s   selfs   valuess   dumps   writes   results   vs   out(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dumpsG  s"    		

 

c         C   sT   y |  i t | ƒ } Wn& t j
 o t d t | ƒ ‚ n X| |  | | ƒ d  S(   Ns   cannot marshal %s objects(   s   selfs   dispatchs   types   values   fs   KeyErrors	   TypeErrors   write(   s   selfs   values   writes   f(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __dumpb  s
    c         C   s&   |  i o t d ‚ n | d ƒ d  S(   Ns0   cannot marshal None unless allow_none is enableds   <value><nil/></value>(   s   selfs
   allow_nones	   TypeErrors   write(   s   selfs   values   write(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dump_nilj  s    c         C   sO   | t j p
 | t j  o t d ‚ n | d ƒ | t | ƒ ƒ | d ƒ d  S(   Ns   int exceeds XML-RPC limitss   <value><int>s   </int></value>
(   s   values   MAXINTs   MININTs   OverflowErrors   writes   str(   s   selfs   values   write(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dump_intp  s
    
c         C   s0   | d ƒ | | o d p d ƒ | d ƒ d  S(   Ns   <value><boolean>s   1s   0s   </boolean></value>
(   s   writes   value(   s   selfs   values   write(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   dump_boolz  s    
c         C   sU   | t j p
 | t j  o t d ‚ n | d ƒ | t t | ƒ ƒ ƒ | d ƒ d  S(   Ns   long int exceeds XML-RPC limitss   <value><int>s   </int></value>
(   s   values   MAXINTs   MININTs   OverflowErrors   writes   strs   int(   s   selfs   values   write(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   dump_long€  s
    
c         C   s(   | d ƒ | t | ƒ ƒ | d ƒ d  S(   Ns   <value><double>s   </double></value>
(   s   writes   reprs   value(   s   selfs   values   write(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dump_doubleˆ  s    
c         C   s(   | d ƒ | | | ƒ ƒ | d ƒ d  S(   Ns   <value><string>s   </string></value>
(   s   writes   escapes   value(   s   selfs   values   writes   escape(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dump_stringŽ  s    
c         C   s:   | i |  i ƒ } | d ƒ | | | ƒ ƒ | d ƒ d  S(   Ns   <value><string>s   </string></value>
(   s   values   encodes   selfs   encodings   writes   escape(   s   selfs   values   writes   escape(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dump_unicode•  s    
c         C   s‚   t  | ƒ } |  i i | ƒ o t d ‚ n t |  i | <|  i } | d ƒ x | D] } | | | ƒ qS W| d ƒ |  i | =d  S(   Ns"   cannot marshal recursive sequencess   <value><array><data>
s   </data></array></value>
(   s   ids   values   is   selfs   memos   has_keys	   TypeErrors   Nones   _Marshaller__dumps   dumps   writes   v(   s   selfs   values   writes   dumps   is   v(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   dump_arrayœ  s    	
 
c         C   sÔ   t  | ƒ } |  i i | ƒ o t d ‚ n t |  i | <|  i } | d ƒ xm | i ƒ  D]_ } | d ƒ t | ƒ t j	 o t d ‚ n | d | | ƒ ƒ | | | | ƒ | d ƒ qY W| d ƒ |  i | =d  S(   Ns%   cannot marshal recursive dictionariess   <value><struct>
s	   <member>
s   dictionary key must be strings   <name>%s</name>
s
   </member>
s   </struct></value>
(   s   ids   values   is   selfs   memos   has_keys	   TypeErrors   Nones   _Marshaller__dumps   dumps   writes   keyss   ks   types
   StringTypes   escape(   s   selfs   values   writes   escapes   dumps   is   k(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dump_structª  s     	
 

c         C   sG   | i t j o  | |  _ | i |  ƒ |  ` n |  i | i | ƒ d  S(   N(   s   values	   __class__s   WRAPPERSs   writes   selfs   encodes   dump_structs   __dict__(   s   selfs   values   write(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dump_instance¼  s
    	
(    s   __name__s
   __module__s   __doc__s   Nones   __init__s   dispatchs   dumpss   _Marshaller__dumps   dump_nils   NoneTypes   dump_ints   IntTypes   _bool_is_builtins	   dump_bools   bools	   dump_longs   LongTypes   dump_doubles	   FloatTypes   escapes   dump_strings
   StringTypes   unicodes   dump_unicodes   UnicodeTypes
   dump_arrays	   TupleTypes   ListTypes   dump_structs   DictTypes   dump_instances   InstanceType(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   Marshaller2  s8    			
	
		
	

	


		s   Unmarshallerc           B   sm  t  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z e	 i
 d „ Z d „  Z h  Z d	 „  Z e e d
 <d „  Z e e d <d „  Z e e d <e e d <d „  Z e e d <d „  Z e e d <e e d <d „  Z e e d <d „  Z e e d <d „  Z e e d <d „  Z e e d <d „  Z e e d <d „  Z e e d  <d! „  Z e e d" <d# „  Z e e d$ <RS(%   s  Unmarshal an XML-RPC response, based on incoming XML event
    messages (start, data, end).  Call close() to get the resulting
    data structure.

    Note that this reader is fairly tolerant, and gladly accepts bogus
    XML-RPC data without complaining (but not bogus XML).
    c         C   sI   t  |  _ g  |  _ g  |  _ g  |  _ t  |  _ d |  _ |  i i |  _ d  S(   Ns   utf-8(	   s   Nones   selfs   _types   _stacks   _markss   _datas   _methodnames	   _encodings   append(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__Ø  s    						c         C   s_   |  i t j p |  i o t ƒ  ‚ n |  i d j o t |  i d   ‚ n t |  i ƒ Sd  S(   Ns   faulti    (   s   selfs   _types   Nones   _markss   ResponseErrors   Faults   _stacks   tuple(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   closeá  s
    c         C   s   |  i Sd  S(   N(   s   selfs   _methodname(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   getmethodnameé  s    c         C   s   | |  _ d  S(   N(   s   encodings   selfs	   _encoding(   s   selfs   encodings
   standalone(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   xmlï  s    c         C   sS   | d j p
 | d j o |  i i t |  i ƒ ƒ n g  |  _ | d j |  _ d  S(   Ns   arrays   structs   value(   s   tags   selfs   _markss   appends   lens   _stacks   _datas   _value(   s   selfs   tags   attrs(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   startó  s    	c         C   s   |  i i | ƒ d  S(   N(   s   selfs   _datas   appends   text(   s   selfs   text(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dataú  s    c         C   sD   y |  i | } Wn t j
 o n X| |  | |  i d ƒ ƒ Sd  S(   Ns    (   s   selfs   dispatchs   tags   fs   KeyErrors   joins   _data(   s   selfs   tags   joins   f(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   endý  s
    c         C   s8   y |  i | } Wn t j
 o n X| |  | ƒ Sd  S(   N(   s   selfs   dispatchs   tags   fs   KeyErrors   data(   s   selfs   tags   datas   f(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   end_dispatch	  s
    c         C   s   |  i t ƒ d |  _ d  S(   Ni    (   s   selfs   appends   Nones   _value(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   end_nil  s    s   nilc         C   sR   | d j o |  i t ƒ n( | d j o |  i t ƒ n
 t d ‚ d |  _ d  S(   Ns   0s   1s   bad boolean valuei    (   s   datas   selfs   appends   Falses   Trues	   TypeErrors   _value(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   end_boolean  s    	s   booleanc         C   s    |  i t | ƒ ƒ d |  _ d  S(   Ni    (   s   selfs   appends   ints   datas   _value(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   end_int&  s    s   i4s   intc         C   s    |  i t | ƒ ƒ d |  _ d  S(   Ni    (   s   selfs   appends   floats   datas   _value(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   end_double,  s    s   doublec         C   s@   |  i o t | |  i ƒ } n |  i t | ƒ ƒ d |  _ d  S(   Ni    (   s   selfs	   _encodings   _decodes   datas   appends
   _stringifys   _value(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   end_string1  s    
s   strings   namec         C   s3   |  i i ƒ  } |  i | g |  i | )d |  _ d  S(   Ni    (   s   selfs   _markss   pops   marks   _stacks   _value(   s   selfs   datas   mark(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   end_array9  s    s   arrayc         C   s~   |  i i ƒ  } h  } |  i | } x< t d t | ƒ d ƒ D]" } | | d | t
 | | ƒ <q; W| g |  i | )d |  _ d  S(   Ni    i   i   (   s   selfs   _markss   pops   marks   dicts   _stacks   itemss   ranges   lens   is
   _stringifys   _value(   s   selfs   datas   is   itemss   marks   dict(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   end_struct@  s      s   structc         C   s0   t  ƒ  } | i | ƒ |  i | ƒ d |  _ d  S(   Ni    (   s   Binarys   values   decodes   datas   selfs   appends   _value(   s   selfs   datas   value(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   end_base64K  s    	s   base64c         C   s'   t  ƒ  } | i | ƒ |  i | ƒ d  S(   N(   s   DateTimes   values   decodes   datas   selfs   append(   s   selfs   datas   value(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   end_dateTimeR  s    	s   dateTime.iso8601c         C   s   |  i o |  i | ƒ n d  S(   N(   s   selfs   _values
   end_strings   data(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   end_valueX  s    
s   valuec         C   s   d |  _ d  S(   Ns   params(   s   selfs   _type(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys
   end_params_  s    s   paramsc         C   s   d |  _ d  S(   Ns   fault(   s   selfs   _type(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   end_faultc  s    s   faultc         C   s6   |  i o t | |  i ƒ } n | |  _ d |  _ d  S(   Ns
   methodName(   s   selfs	   _encodings   _decodes   datas   _methodnames   _type(   s   selfs   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   end_methodNameg  s    
	s
   methodName(   s   __name__s
   __module__s   __doc__s   __init__s   closes   getmethodnames   xmls   starts   datas   strings   joins   ends   end_dispatchs   dispatchs   end_nils   end_booleans   end_ints
   end_doubles
   end_strings	   end_arrays
   end_structs
   end_base64s   end_dateTimes	   end_values
   end_paramss	   end_faults   end_methodName(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   UnmarshallerÌ  sL    									
	
	

	
	

	
		
	
	
	
	
	
	c          C   sž   t  o t o( t t t t t t ƒ }  t  |  ƒ } n[ t	 ƒ  }  t  o t  |  ƒ } n; t
 o t
 |  ƒ } n$ t o t |  ƒ } n t |  ƒ } | |  f Sd S(   s¥   getparser() -> parser, unmarshaller

    Create an instance of the fastest available parser, and attach it
    to an unmarshalling object.  Return both objects.
    N(   s
   FastParsers   FastUnmarshallers   Trues   Falses   _binarys	   _datetimes   Faults   targets   parsers   Unmarshallers   SgmlopParsers   ExpatParsers
   SlowParser(   s   targets   parser(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   getparserx  s     	c         C   s  t  |  t ƒ o
 d } n | o t  |  t ƒ o n | o
 d } n t o t | ƒ } n t | | ƒ } | i
 |  ƒ } | d j o d t | ƒ } n d } | o@ t  | t ƒ o | i | ƒ } n | d | d | d f } n" | o | d | d	 f } n | St i | d
 ƒ Sd S(   sÚ  data [,options] -> marshalled data

    Convert an argument tuple or a Fault instance to an XML-RPC
    request (or response, if the methodresponse option is used).

    In addition to the data object, the following options can be given
    as keyword arguments:

        methodname: the method name for a methodCall packet

        methodresponse: true to create a methodResponse packet.
        If this option is used with a tuple, the tuple must be
        a singleton (i.e. it can contain only one element).

        encoding: the packet encoding (default is UTF-8)

    All 8-bit strings in the data structure are assumed to use the
    packet encoding.  Unicode strings are automatically converted,
    where necessary.
    i   s   utf-8s$   <?xml version='1.0' encoding='%s'?>
s   <?xml version='1.0'?>
s   <methodCall>
<methodName>s   </methodName>
s   </methodCall>
s   <methodResponse>
s   </methodResponse>
s    N(   s
   isinstances   paramss   Faults   methodresponses	   TupleTypes   encodings   FastMarshallers   ms
   Marshallers
   allow_nones   dumpss   datas   strs	   xmlheaders
   methodnames
   StringTypes   encodes   strings   join(   s   paramss
   methodnames   methodresponses   encodings
   allow_nones   ms	   xmlheaders   data(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   dumpsš  s.      

c         C   sI   d k  } t ƒ  \ } } | i |  ƒ | i ƒ  | i ƒ  | i ƒ  f Sd S(   sò   data -> unmarshalled data, method name

    Convert an XML-RPC packet to unmarshalled data plus a method
    name (None if not present).

    If the XML-RPC packet represents a fault condition, this function
    raises a Fault exception.
    N(   s   syss	   getparsers   ps   us   feeds   datas   closes   getmethodname(   s   datas   syss   ps   u(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   loadsé  s     	
s   _Methodc           B   s#   t  Z d „  Z d „  Z d „  Z RS(   Nc         C   s   | |  _ | |  _ d  S(   N(   s   sends   selfs   _Method__sends   names   _Method__name(   s   selfs   sends   name(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__ÿ  s    	c         C   s!   t  |  i d |  i | f ƒ Sd  S(   Ns   %s.%s(   s   _Methods   selfs   _Method__sends   _Method__names   name(   s   selfs   name(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __getattr__  s    c         G   s   |  i |  i | ƒ Sd  S(   N(   s   selfs   _Method__sends   _Method__names   args(   s   selfs   args(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __call__  s    (   s   __name__s
   __module__s   __init__s   __getattr__s   __call__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   _Methodü  s   		s	   Transportc           B   su   t  Z d  Z d e Z d d „ Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z RS(   s1   Handles an HTTP transaction to an XML-RPC server.s'   xmlrpclib.py/%s (by www.pythonware.com)i    c   
      C   sõ   |  i | ƒ } | o | i d ƒ n |  i | | | ƒ |  i	 | | ƒ |  i
 | ƒ |  i | | ƒ | i ƒ  \ } }	 } | d j o t | | | |	 | ƒ ‚ n | |  _ y | i i } Wn t j
 o t } n X|  i | i ƒ  | ƒ Sd  S(   Ni   iÈ   (   s   selfs   make_connections   hosts   hs   verboses   set_debuglevels   send_requests   handlers   request_bodys	   send_hosts   send_user_agents   send_contents   getreplys   errcodes   errmsgs   headerss   ProtocolErrors   _conns   socks   AttributeErrors   Nones   _parse_responses   getfile(
   s   selfs   hosts   handlers   request_bodys   verboses   hs   socks   errcodes   headerss   errmsg(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   request  s$    
	c         C   s   t  ƒ  Sd  S(   N(   s	   getparser(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   getparser?  s    c         C   sµ   h  } t | t ƒ o | \ } } n d  k } | i | ƒ \ } } | oS d  k } | i | i	 | ƒ ƒ } t
 i t
 i | ƒ d ƒ } d d | f g } n t } | | | f Sd  S(   Ns    s   Authorizations   Basic (   s   x509s
   isinstances   hosts	   TupleTypes   urllibs	   splitusers   auths   base64s   encodestrings   unquotes   strings   joins   splits   extra_headerss   None(   s   selfs   hosts   extra_headerss   x509s   base64s   urllibs   auth(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   get_host_infoM  s    		c         C   s2   d  k  } |  i | ƒ \ } } } | i | ƒ Sd  S(   N(   s   httplibs   selfs   get_host_infos   hosts   extra_headerss   x509s   HTTP(   s   selfs   hosts   x509s   extra_headerss   httplib(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   make_connectionh  s    	c         C   s   | i d | ƒ d  S(   Ns   POST(   s
   connections
   putrequests   handler(   s   selfs
   connections   handlers   request_body(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   send_requestu  s    c         C   s~   |  i | ƒ \ } } } | i d | ƒ | oK t | t ƒ o | i	 ƒ  } n x( | D] \ } } | i | | ƒ qV Wn d  S(   Ns   Host(   s   selfs   get_host_infos   hosts   extra_headerss   x509s
   connections	   putheaders
   isinstances   DictTypes   itemss   keys   value(   s   selfs
   connections   hosts   extra_headerss   x509s   values   key(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   send_host~  s     c         C   s   | i d |  i ƒ d  S(   Ns
   User-Agent(   s
   connections	   putheaders   selfs
   user_agent(   s   selfs
   connection(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   send_user_agentŒ  s    c         C   sR   | i d d ƒ | i d t t | ƒ ƒ ƒ | i ƒ  | o | i | ƒ n d  S(   Ns   Content-Types   text/xmls   Content-Length(   s
   connections	   putheaders   strs   lens   request_bodys
   endheaderss   send(   s   selfs
   connections   request_body(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   send_content•  s
    
c         C   s   |  i | t ƒ Sd  S(   N(   s   selfs   _parse_responses   files   None(   s   selfs   file(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   parse_response¢  s    c         C   s£   |  i ƒ  \ } } xl n od | o | i d ƒ } n | i d ƒ } | o Pn |  i	 o d Gt
 | ƒ GHn | i | ƒ q W| i ƒ  | i ƒ  | i ƒ  Sd  S(   Ni   i   s   body:(   s   selfs	   getparsers   ps   us   socks   recvs   responses   files   reads   verboses   reprs   feeds   close(   s   selfs   files   socks   ps   us   response(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   _parse_response°  s     


(   s   __name__s
   __module__s   __doc__s   __version__s
   user_agents   requests	   getparsers   get_host_infos   make_connections   send_requests	   send_hosts   send_user_agents   send_contents   parse_responses   _parse_response(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   Transport  s    
#										s   SafeTransportc           B   s   t  Z d  Z d „  Z RS(   s2   Handles an HTTPS transaction to an XML-RPC server.c         C   sk   d  k  } |  i | ƒ \ } } } y | i } Wn t j
 o t d ƒ ‚ n X| | t	 | p h   Sd  S(   Ns-   your version of httplib doesn't support HTTPS(
   s   httplibs   selfs   get_host_infos   hosts   extra_headerss   x509s   HTTPSs   AttributeErrors   NotImplementedErrors   None(   s   selfs   hosts   httplibs   extra_headerss   x509s   HTTPS(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   make_connectionÍ  s    	(   s   __name__s
   __module__s   __doc__s   make_connection(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   SafeTransportÈ  s    s   ServerProxyc           B   sD   t  Z d  Z e e d d d „ Z d „  Z d „  Z e Z d „  Z RS(   s…  uri [,options] -> a logical connection to an XML-RPC server

    uri is the connection point on the server, given as
    scheme://host/target.

    The standard implementation always supports the "http" scheme.  If
    SSL socket support is available (Python 2.0), it also supports
    "https".

    If the target part and the slash preceding it are both omitted,
    "/RPC2" is assumed.

    The following options can be given as keyword arguments:

        transport: a transport factory
        encoding: the request encoding (default is UTF-8)

    All 8-bit strings passed to the server proxy are assumed to use
    the given encoding.
    i    c         C   sÍ   d  k  } | i | ƒ \ } } | d d f j o t d ‚ n | i | ƒ \ |  _ |  _ |  i o d |  _ n | t
 j o' | d j o t ƒ  } q¥ t ƒ  } n | |  _ | |  _ | |  _ | |  _ d  S(   Ns   https   httpss   unsupported XML-RPC protocols   /RPC2(   s   urllibs	   splittypes   uris   types   IOErrors	   splithosts   selfs   _ServerProxy__hosts   _ServerProxy__handlers	   transports   Nones   SafeTransports	   Transports   _ServerProxy__transports   encodings   _ServerProxy__encodings   verboses   _ServerProxy__verboses
   allow_nones   _ServerProxy__allow_none(   s   selfs   uris	   transports   encodings   verboses
   allow_nones   urllibs   type(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __init__  s    				c         C   sq   t  | | d |  i d |  i ƒ} |  i i |  i |  i	 | d |  i
 ƒ} t | ƒ d j o | d } n | Sd  S(   Ns   encodings
   allow_nones   verbosei   i    (   s   dumpss   paramss
   methodnames   selfs   _ServerProxy__encodings   _ServerProxy__allow_nones   requests   _ServerProxy__transports   _ServerProxy__hosts   _ServerProxy__handlers   _ServerProxy__verboses   responses   len(   s   selfs
   methodnames   paramss   requests   response(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys	   __request  s    c         C   s   d |  i |  i f Sd  S(   Ns   <ServerProxy for %s%s>(   s   selfs   _ServerProxy__hosts   _ServerProxy__handler(   s   self(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __repr__,  s    c         C   s   t  |  i | ƒ Sd  S(   N(   s   _Methods   selfs   _ServerProxy__requests   name(   s   selfs   name(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   __getattr__4  s    (	   s   __name__s
   __module__s   __doc__s   Nones   __init__s   _ServerProxy__requests   __repr__s   __str__s   __getattr__(    (    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   ServerProxyì  s    		s   __main__s   http://betty.userland.comi)   s   ERROR(O   s   __doc__s   res   strings   times   operators   typess   unicodes	   NameErrors   Nones   Falses	   __class__s   __name__s   _bool_is_builtins   compiles   searchs   _decodes   replaces   escapes
   _stringifys   __version__s   MAXINTs   MININTs   PARSE_ERRORs   SERVER_ERRORs   APPLICATION_ERRORs   SYSTEM_ERRORs   TRANSPORT_ERRORs   NOT_WELLFORMED_ERRORs   UNSUPPORTED_ENCODINGs   INVALID_ENCODING_CHARs   INVALID_XMLRPCs   METHOD_NOT_FOUNDs   INVALID_METHOD_PARAMSs   INTERNAL_ERRORs	   Exceptions   Errors   ProtocolErrors   ResponseErrors   Faults   bools   booleans   Booleans   Trues   DateTimes	   _datetimes   base64s	   cStringIOs   StringIOs   ImportErrors   Binarys   _binarys   WRAPPERSs
   _xmlrpclibs   Parsers
   FastParsers   Unmarshallers   FastUnmarshallers   AttributeErrors
   Marshallers   FastMarshallers   sgmlops   hasattrs   SgmlopParsers   xml.parserss   expats   ExpatParsers
   SlowParsers	   getparsers   dumpss   loadss   _Methods	   Transports   SafeTransports   ServerProxys   Servers   servers   exampless   getStateNames   v(<   s   Binarys   SERVER_ERRORs   base64s
   _xmlrpclibs   INVALID_ENCODING_CHARs   ResponseErrors   Unmarshallers   expats   DateTimes	   _datetimes   _bool_is_builtins   booleans   unicodes   escapes   operators   PARSE_ERRORs   ProtocolErrors   ServerProxys   NOT_WELLFORMED_ERRORs   dumpss
   SlowParsers   FastUnmarshallers   INVALID_METHOD_PARAMSs   UNSUPPORTED_ENCODINGs   FastMarshallers   SgmlopParsers   res
   FastParsers   INVALID_XMLRPCs   __version__s   Trues   sgmlops   _Methods   WRAPPERSs   METHOD_NOT_FOUNDs   strings   SYSTEM_ERRORs   Faults   _decodes   times   Servers   MININTs   MAXINTs   ExpatParsers   Errors   APPLICATION_ERRORs   INTERNAL_ERRORs   _binarys   SafeTransports   Falses   StringIOs   vs   servers	   getparsers
   Marshallers   Booleans
   _stringifys   TRANSPORT_ERRORs   loadss	   Transport(    (    s&   /mit/python/lib/python2.3/xmlrpclib.pys   ?‰   s¾   $	
'								$š¬	"O	»$Q