ÿØÿàJFIFÿþ ÿÛC       ÿÛC ÿÀÿÄÿÄ"#QrÿÄÿÄ&1!A"2qQaáÿÚ ?Øy,æ/3JæÝ¹È߲؋5êXw²±ÉyˆR”¾I0ó2—PI¾IÌÚiMö¯–þrìN&"KgX:Šíµ•nTJnLK„…@!‰-ý ùúmë;ºgµŒ&ó±hw’¯Õ@”Ü— 9ñ-ë.²1<yà‚¹ïQÐU„ہ?.’¦èûbß±©Ö«Âw*VŒ) `$‰bØÔŸ’ëXÖ-ËTÜíGÚ3ð«g Ÿ§¯—Jx„–’U/ÂÅv_s(Hÿ@TñJÑãõçn­‚!ÈgfbÓc­:él[ðQe 9ÀPLbÃãCµm[5¿ç'ªjglå‡Ûí_§Úõl-;"PkÞÞÁQâ¼_Ñ^¢SŸx?"¸¦ùY騐ÒOÈ q’`~~ÚtËU¹CڒêV  I1Áß_ÿÙ hc@sdZdZddlmZddlmZejdkrQddlmZ nddlm Z e j Z iZ dZ d Zd S( s Contains a metaclass and helper functions used to create protocol message classes from Descriptor objects at runtime. Recall that a metaclass is the "type" of a class. (A class is to a metaclass what an instance is to a class.) In this case, we use the GeneratedProtocolMessageType metaclass to inject all the useful functionality into the classes output by the protocol compiler at compile-time. The upshot of all this is that the real implementation details for ALL pure-Python protocol buffers are *here in this file*. s#robinson@google.com (Will Robinson)i(tapi_implementation(tmessagetcpp(t cpp_message(tpython_messagecCs&t|}|}|j||S(sGenerate a new Message instance from this Descriptor and a byte string. Args: descriptor: Protobuf Descriptor object byte_str: Serialized protocol buffer byte string Returns: Newly created protobuf Message object. (t MakeClasstParseFromString(t descriptortbyte_strt result_classtnew_msg((s>/usr/lib/python2.7/site-packages/google/protobuf/reflection.pyt ParseMessageCs   cCs|tkrt|Si}x-|jjD]\}}t|||/usr/lib/python2.7/site-packages/google/protobuf/reflection.pyRSs   N(t__doc__t __author__tgoogle.protobuf.internalRtgoogle.protobufRtTypetgoogle.protobuf.pyextRt message_implRRR R R(((s>/usr/lib/python2.7/site-packages/google/protobuf/reflection.pyt.s