ó >é,Xc@s•yddlmZWn!ek r7ddlmZnXyddlmZWn!ek roddlmZnXdd„Z dd„Z d„Z dS( iÿÿÿÿ(t cElementTree(t ElementTree(t ParseError(t ExpatErrorcCsÙ|d krd }nd ifg}yƒx|tj|dd ƒD]e\}}t|jƒ}|ddkr~|j|ifƒq=||kr$|ddj|gƒ|ddikr|jd k rä|dd|j|jƒq!|dd|jiƒqŽ|dd|j|ddƒnj|ddikrt|jd k r_|j|dd|spameggs -> {'a': {'b': 'spam', 'c': 'eggs'}} spam + ['b'] -> {'a': {'b': [{'c': 'spam'}, {'c': 'eggs'}]}} eggs teventststarttenditsiþÿÿÿiiÿÿÿÿsXML parse errorN((sstartsend( tNoneRt iterparset _strip_nsttagtappendt setdefaultttexttpoptclearRt SyntaxErrort ValueError(t xml_streamtlist_item_tagststackteventtelemR ((s;/usr/lib/python2.7/site-packages/requestbuilder/xmlparse.pyt parse_aws_xmls4   $ cCsü|d krd }nd ifg}y¦xŸtj|dd ƒD]ˆ\}}t|jƒ}|ddkr ||krŠ|j|gfƒqÅ|j|ifƒq=||ddksºt‚t|ddtƒrG|ddikr'|j d k r|ddj|j ƒqD|ddjiƒq±|ddj|ddƒnj|ddikr—|j d k r‚|j |dd|spameggs -> {'a': {'b': 'spam', 'c': 'eggs'}} spam + ['a'] -> {'a': [{'c': 'spam'}, {'c': 'eggs'}]} eggs RRRiRiÿÿÿÿiþÿÿÿisXML parse errorN((sstartsend(RRR R R R tAssertionErrort isinstancetlistRRRRRR(Rt list_tagsRRRR ((s;/usr/lib/python2.7/site-packages/requestbuilder/xmlparse.pytparse_listdelimited_aws_xmlhs8     cCs-|ddkr%||jdƒdS|SdS(Nit{t}i(tfind(telem_tag((s;/usr/lib/python2.7/site-packages/requestbuilder/xmlparse.pyR ¶sN( t xml.etreeRRt ImportErrortxml.etree.ElementTreeRtxml.parsers.expatRRRRR (((s;/usr/lib/python2.7/site-packages/requestbuilder/xmlparse.pyts   J N