+
    JV-jµâ  ã                   ó   € R t Rt^ RIt^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
Ht ^ RI
Ht ^ RI
Ht ^ RIHt ^ RIHt ^ R	IHt ^ R
IHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ]P8                  tRtRtRt ]PB                  t! ! R R]"4      t#R t$R t%R t&R t'R t(R t)R t*R t+R t,R t-R  t.R! t/R" t0R# t1R$ t2R% t3R& t4 ! R' R(]54      t6R) t7R* t8R+ t9R, t:R- t;R. t<R/ t=R0 t>R1 t?R2 t@R3 tAR4 tBR5 tCR6 tDR7 tER8 tFR9 tGR: tHR; tIR< tJR= tKR> tLR? tMR@ tNRA tORB tPRC tQRD tRRE tSRF tTRG tURH tV ! RI RJ]W4      tX ! RK RL]X4      tYR# )Ma  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*.
z#robinson@google.com (Will Robinson)N)ÚBytesIO)Ú
descriptor)Úmessage)Útext_format)Úapi_implementation)Ú
containers)Údecoder)Úencoder)Úenum_type_wrapper)Úextension_dict)Úmessage_listener)Útype_checkers)Úwell_known_types)Úwire_formatzgoogle.protobuf.Anyúgoogle.protobuf.Structúgoogle.protobuf.ListValuec                   óF   a a€ ] tR t^;t oRtRtV 3R ltV 3R ltRtVt	V ;t
# )ÚGeneratedProtocolMessageTypea<  Metaclass for protocol message classes created at runtime from Descriptors.

We add implementations for all methods described in the Message class.  We
also create properties to allow getting/setting all fields in the protocol
message.  Finally, we create slots to prevent users from accidentally
"setting" nonexistent fields in the protocol message, which then wouldn't get
serialized / deserialized properly.

The protocol compiler currently uses this metaclass to create protocol
message classes at runtime.  Clients can also manually create their own
classes at runtime, as in this example:

mydescriptor = Descriptor(.....)
factory = symbol_database.Default()
factory.pool.AddDescriptor(mydescriptor)
MyProtoClass = message_factory.GetMessageClass(mydescriptor)
myproto_instance = MyProtoClass()
myproto.foo_field = 23
...
Ú
DESCRIPTORc                ó¦  <€ V\         P                  ,          p\        V\        4      '       d   \	        R4      h\        VRR4      pV'       d   V# VP                  \        P                  9   d*   V\        P                  VP                  ,          3,          p\        WC4       \        WC4       \        \         V 4      pVP                  WW#4      pV# )a#  Custom allocation for runtime-generated class types.

We override __new__ because this is apparently the only place
where we can meaningfully set __slots__ on the class we're creating(?).
(The interplay between metaclasses and slots is not very well-documented).

Args:
  name: Name of the class (ignored, but required by the
    metaclass protocol).
  bases: Base classes of the class we're constructing.
    (Should be message.Message).  We ignore this field, but
    it's required by the metaclass protocol
  dictionary: The class dictionary of the class we're
    constructing.  dictionary[_DESCRIPTOR_KEY] must contain
    a Descriptor object describing this protocol message
    type.

Returns:
  Newly-allocated class.

Raises:
  RuntimeError: Generated code only work with python cpp extension.
z\The generated code only work with python cpp extension, but it is using pure python runtime.Ú_concrete_classN)r   Ú_DESCRIPTOR_KEYÚ
isinstanceÚstrÚRuntimeErrorÚgetattrÚ	full_namer   ÚWKTBASESÚ&_AddClassAttributesForNestedExtensionsÚ	_AddSlotsÚsuperÚ__new__)ÚclsÚnameÚbasesÚ
dictionaryr   Ú	new_classÚ
superclassÚ	__class__s   &&&&   €Úx/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/google/protobuf/internal/python_message.pyr!   Ú$GeneratedProtocolMessageType.__new__V   s»   ø€ ð0 Ô8×HÑHÕI€Jä�*œc×"Ò"Üð Kó Lð Lô ˜
Ð$5°tÓ<€IßØÐà×ÑÔ/×8Ñ8Ô8ØÔ ×)Ñ)¨*×*>Ñ*>Õ?ÐAÕA€eÜ*¨:ÔBÜˆjÔ%äÔ3°SÓ9€JØ×"Ñ" 3¨eÓ@€IØÐó    c                óx  <€ V\         P                  ,          p\        VRR4      pV'       d    WPJ g   Q RVP                  ,          4       hR# / V n        / V n        VP                  '       dT   VP                  4       P                  '       d4   \        P                  ! V4      R3V P                  \        P                  &   VP                   F  p\        W4       K  	  VP                  '       dV   \        VP                   R4      '       d:   VP                   P"                  P%                  V4      pV F  p\        W4       K  	  Wn        \)        W@4       \+        W@4       \-        W@4       \/        W@4       \1        V 4       \3        W@4       \5        W@4       \7        \         V 4      p	V	P9                  WV4       R# )ah  Here we perform the majority of our work on the class.
We add enum getters, an __init__ method, implementations
of all Message methods, and properties for all fields
in the protocol type.

Args:
  name: Name of the class (ignored, but required by the
    metaclass protocol).
  bases: Base classes of the class we're constructing.
    (Should be message.Message).  We ignore this field, but
    it's required by the metaclass protocol
  dictionary: The class dictionary of the class we're
    constructing.  dictionary[_DESCRIPTOR_KEY] must contain
    a Descriptor object describing this protocol message
    type.
r   NzBDuplicate `GeneratedProtocolMessageType` created for descriptor %rÚpool)r   r   r   r   Ú_message_set_decoders_by_tagÚ_fields_by_tagÚhas_optionsÚ
GetOptionsÚmessage_set_wire_formatr   ÚMessageSetItemDecoderÚMESSAGE_SET_ITEM_TAGÚfieldsÚ_AttachFieldHelpersÚis_extendableÚhasattrÚfiler-   ÚFindAllExtensionsr   Ú_AddEnumValuesÚ_AddInitMethodÚ_AddPropertiesForFieldsÚ_AddPropertiesForExtensionsÚ_AddStaticMethodsÚ_AddMessageMethodsÚ_AddPrivateHelperMethodsr    Ú__init__)r"   r#   r$   r%   r   Úexisting_classÚfieldÚ
extensionsÚextr'   r(   s   &&&&      €r)   rB   Ú%GeneratedProtocolMessageType.__init__‹   so  ø€ ð" Ô8×HÑHÕI€Jô ˜ZÐ):¸DÓA€NßØÓ"ð $Ø
NØ×!Ñ!õ#ó$Ð"ñ à')€CÔ$Ø€CÔØ××ÐØ×ÑÓ×7×7Ð7ä
×
'Ò
'¨
Ó
3Ø
ðH€c×&Ñ&¤w×'CÑ'CÑDð ×"Ô"ˆÜ˜#Ö%ñ #ð ××Ð¤G¨J¯O©O¸V×$DÒ$DØ—?‘?×'Ñ'×9Ñ9¸*ÓE€jÛˆ#Ü˜CÖ%ñ ð "%ÔÜ�:Ô#Ü�:Ô#Ü˜JÔ,Ü 
Ô0Ü�cÔÜ�zÔ'Ü˜ZÔ-äÔ3°SÓ9€JØ×Ñ˜ ZÖ0r+   © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r!   rB   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r(   Ú__classdict__s   @@r)   r   r   ;   s!   ù‡ € ñð. !€/õ3÷j81õ 81r+   r   c                ó   € V # )a  Returns the name of the public property attribute which
clients can use to get and (in some cases) set the value
of a protocol message field.

Args:
  proto_field_name: The protocol message field name, exactly
    as it appears (or would appear) in a .proto file.
rH   )Úproto_field_names   &r)   Ú_PropertyNamerU   Î   s
   € ð4 
Ðr+   c                ó   € . ROVR&   R# )a  Adds a __slots__ entry to dictionary, containing the names of all valid
attributes for this message type.

Args:
  message_descriptor: A Descriptor instance describing this message type.
  dictionary: Class dictionary to which we'll add a '__slots__' entry.
Ú	__slots__N)	Ú_cached_byte_sizeÚ_cached_byte_size_dirtyÚ_fieldsÚ_unknown_fieldsÚ_is_present_in_parentÚ	_listenerÚ_listener_for_childrenÚ__weakref__Ú_oneofsrH   )Úmessage_descriptorr%   s   &&r)   r   r   ë   s   € ò(€*ˆ[Ór+   c                 ó\  € V P                   ;'       dš    V P                  P                  ;'       d|    V P                  P                  4       P                  ;'       dP    V P
                  \        P                  8H  ;'       d+    V P                  '       * ;'       d    V P                  '       * # ©N)
Úis_extensionÚcontaining_typer0   r1   r2   ÚtypeÚ_FieldDescriptorÚTYPE_MESSAGEÚis_requiredÚis_repeated©rD   s   &r)   Ú_IsMessageSetExtensionrl   þ   sš   € Ø
×
Ñ
÷  ð  Ø
×
Ñ
×
+Ñ
+÷ ð  à
×
Ñ
×
*Ñ
*Ó
,×
DÑ
D÷ ð  ð �*‰*Ô(×5Ñ5Ñ
5÷ ð  ð ×ÑÔ
÷	 ð  ð
 ×ÑÔ
ð!r+   c                 óx   € V P                   \        P                  8H  ;'       d    V P                  P                  # rc   )rf   rg   rh   Úmessage_typeÚ_is_map_entryrk   s   &r)   Ú_IsMapFieldrp     s3   € Ø
�*‰*Ô(×5Ñ5Ñ
5÷ +ð +Ø
×
Ñ
×
*Ñ
*ð,r+   c                 óv   € V P                   P                  R ,          pVP                  \        P                  8H  # )Úvalue)rn   Úfields_by_nameÚcpp_typerg   ÚCPPTYPE_MESSAGE)rD   Ú
value_types   & r)   Ú_IsMessageMapFieldrw     s0   € Ø×!Ñ!×0Ñ0°Õ9€*Ø	×	Ñ	Ô 0× @Ñ @Ñ	@Ð@r+   c                 ó.  a a€ \        S4      Sn        V V3R  lpV! \        P                  SP                  ,          R4       SP
                  '       dB   \        P                  ! SP                  4      '       d   V! \        P                  R4       R# R# R# )c                 ól   <€ \         P                  ! SP                  V 4      pSV3SP                  V&   R # rc   )r	   ÚTagBytesÚnumberr/   )ÚwiretypeÚ	is_packedÚ	tag_bytesr"   Úfield_descriptors   && €€r)   ÚAddFieldByTagÚ*_AttachFieldHelpers.<locals>.AddFieldByTag  s1   ø€ Ü× Ò Ð!1×!8Ñ!8¸(ÓC€IØ%5°yÐ$A€C×Ñ�yÓ!r+   FTN)	Ú _DefaultValueConstructorForFieldÚ_default_constructorr   ÚFIELD_TYPE_TO_WIRE_TYPErf   rj   r   ÚIsTypePackableÚWIRETYPE_LENGTH_DELIMITED)r"   r   r€   s   ff r)   r6   r6     s~   ù€ Ü*JØó+ÐÔ'öBñ Ü×+Ñ+Ð,<×,AÑ,AÕBÀEôð ×!×!Ð!¤k×&@Ò&@Ø×Ñ÷'ò 'ñ
 ”+×7Ñ7¸Ö>ñ'Ñ!r+   c                 óv  € \        VR 4      '       d   R# VP                  p\        V4      pVP                  pV'       d8   \        P
                  ! V4      p\        P                  ! V\        V4      4      pM¶\        V4      '       dB   \        P                  ! VP                  4      p\        P                  ! VP                  4      pMd\        P                  VP                  ,          ! VP                  W$4      p\        P                  VP                  ,          ! VP                  W$4      pWan        WQn        R# )Ú_encoderN)r8   rj   rp   r}   r	   Ú
MapEncoderÚMapSizerrw   rl   ÚMessageSetItemEncoderr{   ÚMessageSetItemSizerr   ÚTYPE_TO_ENCODERrf   ÚTYPE_TO_SIZERÚ_sizerrˆ   )r"   r   rj   Úis_map_entryr}   Úfield_encoderÚsizers   &&     r)   Ú_MaybeAddEncoderr“   %  sû   € ÜÐ˜z×*Ò*Ù
Ø ×,Ñ,€+ÜÐ-Ó.€,Ø×(Ñ(€)çÜ×&Ò&Ð'7Ó8€MÜ×ÒÐ-Ü/Ð0@ÓAóC�EäÐ.×/Ò/Ü×1Ò1Ð2B×2IÑ2IÓJ€MÜ×'Ò'Ð(8×(?Ñ(?Ó@�Eä!×1Ñ1Ð2B×2GÑ2GÖHØ×Ñ ó9€Mä×'Ñ'Ð(8×(=Ñ(=Ö>Ø×Ñ ó9€Eð "ÔØ+Ör+   c                 ó  aaaa€ \        SR 4      '       d   R# SP                  o\        S4      o/ oVVVV3R lpV! R4       S'       d/   \        P                  ! SP
                  4      '       d	   V! R4       SSn        R# )Ú	_decodersNc                 ó  <€ SP                   pV\        P                  8X  d-   SP                  P                  '       g   \        P
                  pR pSP                  e   SpS'       d.   \        S4      p\        P                  ! S\        S4      V4      pMîV\        P                  8X  d@   \        P                  ! SP                  SV SSP                  SP                  '       * 4      pMšSP                   \        P"                  8X  d7   \$        P&                  V,          ! SP                  SV SSP                  4      pME\$        P&                  V,          ! SP                  SV SSP                  SP                  '       * 4      pVSV &   R # rc   )rf   rg   Ú	TYPE_ENUMÚ	enum_typeÚ	is_closedÚ
TYPE_INT32Úcontaining_oneofrw   r   Ú
MapDecoderÚ_GetInitializeDefaultForMapÚTYPE_STRINGÚStringDecoderr{   rƒ   Úhas_presencert   ru   r   ÚTYPE_TO_DECODER)	r}   Údecode_typeÚoneof_descriptorÚis_message_mapÚfield_decoderr   Úhelper_decodersr�   rj   s	   &    €€€€r)   Ú
AddDecoderÚ$_MaybeAddDecoder.<locals>.AddDecoderE  sS  ø€ Ø"×'Ñ'€KØÔ'×1Ñ1Ô1Ø×&Ñ&×0×0Ð0Ü$×/Ñ/€kàÐØ×(Ñ(Ò4Ø)ÐçÜ)Ð*:Ó;€nä×(Ò(Ø
Ô7Ð8HÓIØ
ó�mð 
Ô(×4Ñ4Ô	4Ü×+Ò+Ø
×
!Ñ
! ;°	Ø
Ð,×AÑAØ×+Ñ+Ô
+ó-�mð 
×	"Ñ	"Ô&6×&FÑ&FÔ	FÜ#×3Ñ3°KÖ@Ø
×
!Ñ
! ;°	Ø
Ð,×AÑAóC�mô $×3Ñ3°KÖ@Ø
×
!Ñ
! ;°	à
Ð,×AÑAØ×+Ñ+Ô
+ó	-€mð "/€O�IÓr+   FT)r8   rj   rp   r   r…   rf   r•   )r"   r   r§   r¦   r�   rj   s   &f @@@r)   Ú_MaybeAddDecoderr©   =  sq   û€ ÜÐ˜{×+Ò+Ù
à ×,Ñ,€+ÜÐ-Ó.€,Ø€/÷ /ð  /ñD ˆUÔç”[×/Ò/Ð0@×0EÑ0E×FÒFñ ˆtÔà.ÐÖr+   c                 óh   € V P                   pVP                  4        F  w  r4W19  g   Q hWAV&   K  	  R # rc   )Úextensions_by_nameÚitems)r   r%   rE   Úextension_nameÚextension_fields   &&   r)   r   r   q  s7   € Ø×,Ñ,€*Ø)3×)9Ñ)9Ö);Ñ%€nØÔ+Ð+Ð+Ø!0ˆ~Óó *<r+   c                óæ   € V P                    F`  p\        WP                  \        P                  ! V4      4       VP
                   F#  p\        WP                  VP                  4       K%  	  Kb  	  R# )zþSets class-level attributes for all enum fields defined in this message.

Also exporting a class-level object that can name enum values.

Args:
  descriptor: Descriptor object for this message type.
  cls: Class we're constructing for this message type.
N)Ú
enum_typesÚsetattrr#   r
   ÚEnumTypeWrapperÚvaluesr{   )r   r"   r˜   Ú
enum_values   &&  r)   r;   r;   x  sR   € ð ×(Ô(€iÜˆC—‘Ô!2×!BÒ!BÀ9Ó!MÔNØ×&Ô&ˆ
Üˆc—?‘? J×$5Ñ$5Ö6ó 'ó )r+   c                 óT  a aaa€ S P                   '       g   \        R S P                  ,          4      hS P                  P                  p\
        P                  ! VR,          4      oVR,          o\        S 4      '       d   V VV3R lpV# \
        P                  ! S4      oV VV3R lpV# )z&map_entry set on non-repeated field %sÚkeyrr   c                 ór   <€ \         P                  ! V P                  SP                  SSP                  4      # rc   )r   Ú
MessageMapr^   rn   )r   rD   Úkey_checkerÚvalue_fields   &€€€r)   ÚMakeMessageMapDefaultÚ:_GetInitializeDefaultForMap.<locals>.MakeMessageMapDefault�  s2   ø€ Ü×"Ò"Ø
×
(Ñ
(¨+×*BÑ*BÀKØ
×
Ñ
óð r+   c                 ó^   <€ \         P                  ! V P                  SSSP                  4      # rc   )r   Ú	ScalarMapr^   rn   )r   rD   r¹   Úvalue_checkers   &€€€r)   ÚMakePrimitiveMapDefaultÚ<_GetInitializeDefaultForMap.<locals>.MakePrimitiveMapDefault—  s,   ø€ Ü×!Ò!Ø
×
(Ñ
(¨+°}Ø
×
Ñ
óð r+   )rj   Ú
ValueErrorr#   rn   rs   r   ÚGetTypeCheckerrw   )rD   rs   r»   rÀ   r¹   r¿   rº   s   f   @@@r)   r�   r�   ‡  s�   û€ Ø	×	×	Ð	Ü
Ð=Ø�
‰
õó ð à×%Ñ%×4Ñ4€.Ü×,Ò,¨^¸EÕ-BÓC€+à˜wÕ'€+Ü˜×Ò÷ð !Ð ä!×0Ò0°Ó=€M÷ð #Ð"r+   c                óþ  a aa€ \        S 4      '       d   \        S 4      # S P                  '       d’   S P                  '       d.   S P                  . 8w  d   \        RS P                  ,          4      hS P                  \        P                  8X  d   S P                  oV 3R lpV# \        P                  ! S 4      oV V3R lpV# S P                  \        P                  8X  d   S P                  oV V3R lpV# V 3R lpV# )aw  Returns a function which returns a default value for a field.

Args:
  field: FieldDescriptor object for this field.

The returned function has one argument:
  message: Message instance containing this field, or a weakref proxy
    of same.

That function in turn returns a default value for this field.  The default
  value may refer back to |message| via a weak reference.
z/Repeated field default value not empty list: %sc                 óZ   <€ \         P                  ! V P                  SP                  4      # rc   )r   ÚRepeatedCompositeFieldContainerr^   rn   ©r   rD   s   &€r)   ÚMakeRepeatedMessageDefaultÚD_DefaultValueConstructorForField.<locals>.MakeRepeatedMessageDefault¶  s)   ø€ Ü×9Ò9Ø×*Ñ*¨E×,>Ñ,>ó@ð 	@r+   c                 óH   <€ \         P                  ! V P                  SS4      # rc   )r   ÚRepeatedScalarFieldContainerr^   )r   rD   Útype_checkers   &€€r)   ÚMakeRepeatedScalarDefaultÚC_DefaultValueConstructorForField.<locals>.MakeRepeatedScalarDefault¼  s#   ø€ Ü×6Ò6Ø×*Ñ*¨L¸%ó
ð 	
r+   c                 óð   <€ \        SR 4      '       g   ^ RIHp VP                  S4       SP	                  4       pTP                  SP                  e   \        V S4      4       V# V P                  4       V# )r   ©Úmessage_factory)	r8   Úgoogle.protobufrÑ   ÚGetMessageClassr   Ú_SetListenerr›   Ú_OneofListenerr^   )r   rÑ   ÚresultrD   rn   s   &  €€r)   ÚMakeSubMessageDefaultÚ?_DefaultValueConstructorForField.<locals>.MakeSubMessageDefaultÄ  st   ø€ ä�\Ð#4×5Ò5Ý3Ø×'Ñ'¨Ô5Ø×+Ñ+Ó-€fØ×Ñà×#Ñ#Ò/ô ˜ %Ó
(ô/ð €mð ×-Ñ-ô/ð €mr+   c                 ó   <€ SP                   # rc   )Údefault_valuerÇ   s   &€r)   ÚMakeScalarDefaultÚ;_DefaultValueConstructorForField.<locals>.MakeScalarDefaultÑ  s   ø€ ð ×ÑÐr+   )rp   r�   rj   Úhas_default_valuerÚ   rÂ   rt   rg   ru   rn   r   rÃ   )rD   rÈ   rÍ   r×   rÛ   rn   rÌ   s   f    @@r)   r‚   r‚   �  sá   ú€ ô �×ÒÜ& uÓ-Ð-à
××ÐØ××Ð 5×#6Ñ#6¸"Ô#<ÜÐHØ
×
Ñ
õó  ð  à‡~�~Ô)×9Ñ9Ô9ð ×'Ñ'€lõ@ð (Ð'ä"×1Ò1°%Ó8€lö
ð 'Ð&à
‡^�^Ô'×7Ñ7Ô7Ø×%Ñ%€Lö
ð !Ð õð 
Ðr+   c                ó(  € \         P                  ! 4       ^,          p\        VP                  4      ^8X  d3   \	        V4      \
        J d    \        \        V4      : RV : RV: 24      pVP                  \         P                  ! 4       ^,          4      h)zCRe-raise the currently-handled TypeError with the field name added.z for field Ú.)ÚsysÚexc_infoÚlenÚargsrf   Ú	TypeErrorr   Úwith_traceback)Úmessage_nameÚ
field_nameÚexcs   && r)   Ú_ReraiseTypeErrorWithFieldNameré   Ø  s`   € ä�Š‹�qÕ€#Üˆ�‰ƒ]�aÔœD ›I¬Ó2ä
¬C°®H³lÂJÐOÓ
P€Cð 	×Ñœ3Ÿ<š<›>¨!Õ,Ó-Ð-r+   c                óF   a a€ R oVV 3R lpRVn         RVn        W!n        R# )zAdds an __init__ method to cls.c                óÈ   € \        V\        4      '       d    V P                  V,          P                  # V#   \         d     \        RT P                  : RT: R24      hi ; i)zõConvert a string or integer enum value to an integer.

If the value is a string, it is converted to the enum value in
enum_type with the same name.  If the value is not a string, it's
returned as-is.  (No conversion or bounds-checking is done.)
z
Enum type z: unknown label "Ú")r   r   Úvalues_by_namer{   ÚKeyErrorrÂ   r   )r˜   rr   s   &&r)   Ú_GetIntegerEnumValueÚ,_AddInitMethod.<locals>._GetIntegerEnumValueæ  sb   € ô �%œ×Òð)Ø×'Ñ'¨Õ.×5Ñ5Ð5ð €Løô ô )ÝØ×Ô£ð(ó )ð 	)ð)ús	   ˜7 ·*A!c                 ó2  <€ V3R  lp^ V n         \        V4      ^ 8„  V n        / V n        / V n        RV n        RV n        \        P                  ! 4       V n	        \        V 4      V n        VP                  4        EFÅ  w  r4\        SV4      pVf   \        SP                  : RV: R24      hVf   K9  VP                   '       Ed�   VP#                  V 4      pVP$                  \&        P(                  8X  dú   \+        V4      '       d}   \-        V4      '       dZ   V FR  pWG,          p\/        V\0        4      '       d   Wg,          P2                  ! R/ VB  K;  Wg,          P5                  V4       KT  	  MÐVP7                  V4       M¾V Fe  p	\/        V	\0        4      '       d4   VP8                  P:                  \<        8w  d   VP>                  ! R/ V	B  KL  VP?                  4       p
V! WZV	4       Kg  	  MRVP$                  \&        P@                  8X  d#   V U	u. uF  p	S! VPB                  V	4      NK  	  pp	VPE                  V4       W`P                  V&   EKØ  VP$                  \&        P(                  8X  d�   VP#                  V 4      p\/        V\0        4      '       dN   VP8                  P:                  \<        8w  d/   VP8                  PF                  ! R/ VB pVP5                  V4       M
 V! WVV4       W`P                  V&   EK†  VP$                  \&        P@                  8X  d   S! VPB                  V4      p \K        WV4       EKÈ  	  R# u up	i   \         d    \I        SP                  T4        Li ; i  \         d    \I        SP                  T4        EK  i ; i)c           	      ó”  <€ \        V\        P                  4      '       d   VP                  V4       R# \        V\        4      '       dn   V P
                  P                  \        8X  dO   VP                  4        \        V4      ^8X  d   RV9   d    VP                  V4       R# VP                  V4       R# \        VR4      '       d   VP                  V4       R# \        RP                  SP                   V P                   \#        V4      P$                  4      4      h   TP                  4        TP                  ! R/ TB   R# ; i)é   r5   Ú_internal_assignzYMessage field {0}.{1} must be initialized with a dict or instance of same class, got {2}.NrH   )r   Úmessage_modÚMessageÚ	MergeFromÚdictrn   r   Ú_StructFullTypeNameÚClearrâ   ÚupdaterB   r8   rô   rä   Úformatr#   rf   rI   )rD   Úmsgrr   ra   s   &&&€r)   Úinit_wkt_or_mergeÚ7_AddInitMethod.<locals>.init.<locals>.init_wkt_or_merge÷  sò   ø€ Ü	�Eœ;×.Ñ.×	/Ò	/Ø�‰�eÖä
�UœD×
!Ò
!Ø× Ñ ×*Ñ*Ô.AÔAà�	‰	ŒÜˆu‹:˜Œ?˜x¨5Ô0ð"Ø�J‰J�uÖð
 �*‰*�UÖ
Ü�3Ð*×+Ò+Ø×Ñ˜UÖ#äð7ß7=±vØ"×'Ñ'Ø—
‘
Ü�U“×$Ñ$ó8ó
ð 	
øð"Ø�I‰IŒKØ�LŠLÑ!˜5Õ!ús   ÂD  Ä $EFNz'() got an unexpected keyword argument "rì   rH   )&rX   râ   rY   rZ   r`   r[   r\   Úmessage_listener_modÚNullMessageListenerr]   Ú	_Listenerr^   r¬   Ú_GetFieldByNamerä   r#   rj   rƒ   rt   rg   ru   rp   rw   r   rø   rB   r÷   rû   rn   r   rù   ÚaddÚCPPTYPE_ENUMr˜   Úextendr   ré   r±   )ÚselfÚkwargsrþ   rç   Úfield_valuerD   Ú
field_copyr¶   Ú
item_valueÚvalÚnew_msgÚnew_valrï   ra   s   &,          €€r)   ÚinitÚ_AddInitMethod.<locals>.initõ  sû  ø€ õ
ð8 €DÔÜ#& v£;°¡?€DÔ Ø€D„Lð €D„Lð €DÔØ!&€DÔÜ)×=Ò=Ó?€D„NÜ"+¨D£/€DÔØ#)§<¡<§>Ñˆ
ÜÐ0°*Ó=€eØ	ŠÜØ+×0Ô0³*ð>ó ?ð 	?à	Ò	áØ	×	×	Ñ	Ø×/Ñ/°Ó5ˆ
Ø�>‰>Ô-×=Ñ=Ô=Ü˜×ÒÜ! %×(Ò(Û$�#Ø(Õ-�
Ü˜j¬$×/Ò/Ø•/×*Ò*Ñ8¨ZÔ8à•/×+Ñ+¨JÖ7ò %ð ×Ñ Õ,ã"�Ü˜C¤×&Ò&Ø×$Ñ$×.Ñ.Ô2EÔEà—’Ñ% Ô%à$Ÿ.™.Ó*�Ù! %°#Ö6ò #ð �^‰^Ô/×<Ñ<Ô<á&1ó3Ù&1˜sñ 0°·±ÀÖEÙ&1ð ð 3à
×
Ñ
˜KÔ
(Ø(�‰�UÔØ�>‰>Ô-×=Ñ=Ô=Ø×/Ñ/°Ó5ˆ
Ü�k¤4×(Ò(Ø×Ñ×(Ñ(Ô,?Ô?à×&Ñ&×6Ò6ÑE¸ÑEˆ'Ø
×
Ñ
˜wÕ
'ðPÙ˜e°Ô=ð )�‰�UÔà�>‰>Ô-×:Ñ:Ô:Ù,¨U¯_©_¸kÓJˆ+ð	NÜ
�$ K×
0ók $2ùò@3øô ô PÜ*Ð+=×+BÑ+BÀJÖOðPûô ô 	NÜ
(Ð);×)@Ñ)@À*×
MÐ
Mð	Nús*   ÈMË$	M	Ì1M0Í	!M-Í,M-Í0!NÎNN)rJ   rM   rB   )ra   r"   r  rï   s   f& @r)   r<   r<   ã  s%   ù€ òöbNðH €$„/Ø€$„,Ø†,r+   c                ó„   €  V P                   V,          #   \         d     \        RT P                  : RT: R24      hi ; i)zçReturns a field descriptor by field name.

Args:
  message_descriptor: A Descriptor describing all fields in message.
  field_name: The name of the field to retrieve.
Returns:
  The field descriptor associated with the field name.
úProtocol message ú	 has no "ú" field.)rs   rî   rÂ   r#   )ra   rç   s   &&r)   r  r  ^  sD   € ð<Ø×,Ñ,¨ZÕ8Ð8øÜ	ô <Ý
Ø(×-Ô-«zð;ó <ð <ð<ús   ‚ •*?c                óŒ   € V P                    F  p\        W!4       K  	  V P                  '       d   \        R 4      Vn        R# R# )ú=Adds properties for all fields in this protocol message type.c                 ó   € \        V 4      # rc   )Ú_ExtensionDict©r  s   &r)   Ú<lambda>Ú)_AddPropertiesForFields.<locals>.<lambda>v  s	   € ¬>¸$Ô+?r+   N)r5   Ú_AddPropertiesForFieldr7   ÚpropertyÚ
Extensions)r   r"   rD   s   && r)   r=   r=   n  s<   € à× Ô €eÜ˜5Ö&ñ !ð ××Ðô Ñ?Ó@€C†Nñ r+   c                óN  € \         P                  ^
8X  g   Q hV P                  P                  4       R,           p\	        WV P
                  4       V P                  '       d   \        W4       R# V P                  \         P                  8X  d   \        W4       R# \        W4       R# )a  Adds a public property for a protocol message field.
Clients can use this property to get and (in the case
of non-repeated scalar fields) directly set the value
of a protocol message field.

Args:
  field: A FieldDescriptor for this field.
  cls: The class we're constructing.
Ú_FIELD_NUMBERN)rg   ÚMAX_CPPTYPEr#   Úupperr±   r{   rj   Ú_AddPropertiesForRepeatedFieldrt   ru   Ú*_AddPropertiesForNonRepeatedCompositeFieldÚ'_AddPropertiesForNonRepeatedScalarField)rD   r"   Úconstant_names   && r)   r  r  y  st   € ô 
×	%Ñ	%¨Ô	+Ð+Ð	+à—*‘*×"Ñ"Ó$ Õ6€-Ü	ˆ#˜eŸl™lÔ+à
××ÐÜ" 5Ö.Ø‡~�~Ô)×9Ñ9Ô9Ü.¨uÖ:ä+¨EÖ7r+   c                   ó*   a € ] tR tRt o RtR tRtV tR# )Ú_FieldPropertyi’  c                ó@   € \         P                  WW4R 7       Wn        R# )©ÚdocN)r  rB   r   )r  r   ÚgetterÚsetterr+  s   &&&&&r)   rB   Ú_FieldProperty.__init__•  s   € Ü×Ñ�d FÐÔ4Ø †Or+   )r   N)rI   rJ   rK   rL   rW   rB   rN   rO   ©rR   s   @r)   r(  r(  ’  s   ø‡ € Ø€)÷!ð !r+   r(  c                ó¼   a a€ S P                   o\        S4      pV 3R lpRVn        RS,          Vn        V3R lpRS,          p\	        W\        S W4VR7      4       R# )aì  Adds a public property for a "repeated" protocol message field.  Clients
can use this property to get the value of the field, which will be either a
RepeatedScalarFieldContainer or RepeatedCompositeFieldContainer (see
below).

Note that when clients add values to these containers, we perform
type-checking in the case of repeated scalar fields, and we also set any
necessary "has" bits as a side-effect.

Args:
  field: A FieldDescriptor for this field.
  cls: The class we're constructing.
c                 ó    <€ V P                   P                  S4      pVf.   SP                  V 4      pV P                   P                  SV4      pV# rc   ©rZ   Úgetrƒ   Ú
setdefault©r  r	  rD   s   & €r)   r,  Ú._AddPropertiesForRepeatedField.<locals>.getter«  óK   ø€ Ø—,‘,×"Ñ" 5Ó)€KØÒà×.Ñ.¨tÓ4€kð —L‘L×+Ñ+¨E°;Ó?€kØÐr+   NúGetter for %s.c                 ó(   <€ \        R S,          4      h)zIAssignment not allowed to repeated field "%s" in protocol message object.)ÚAttributeError)r  Ú	new_valuerT   s   &&€r)   r-  Ú._AddPropertiesForRepeatedField.<locals>.setter¾  s    ø€ Ü
ð <Ø>NõOó Pð Pr+   ú/Magic attribute generated for "%s" proto field.r*  ©r#   rU   rJ   rM   r±   r(  )rD   r"   Úproperty_namer,  r-  r+  rT   s   f&    @r)   r#  r#  š  s\   ù€ ð —Z‘ZÐÜÐ 0Ó1€-õð €&ÔØ#Ð&6Õ6€&„.õPð 	:Ð<LÕL€#Ü	ˆ#œn¨U°FÈÔLÖMr+   c                ój  a aaa	€ S P                   p\        V4      p\        P                  ! S 4      o	S P                  oVV 3R lpRVn        RV,          Vn        V V	3R loS P                  '       d	   V V3R lpMSpRVn        RV,          Vn        RV,          p\        W\        S WEVR7      4       R# )	a�  Adds a public property for a nonrepeated, scalar protocol message field.
Clients can use this property to get and directly set the value of the field.
Note that when the client sets the value of a field by using this property,
all necessary "has" bits are set as a side-effect, and we also perform
type-checking.

Args:
  field: A FieldDescriptor for this field.
  cls: The class we're constructing.
c                 ó<   <€ V P                   P                  SS4      # rc   )rZ   r3  )r  rÚ   rD   s   &€€r)   r,  Ú7_AddPropertiesForNonRepeatedScalarField.<locals>.getterÖ  s   ø€ ð �<‰<×Ñ˜E =Ó1Ð1r+   Nr8  c                 óˆ  <€  SP                  V4      pSP                  '       g:   \        P
                  ! T4      '       d   T P                  P                  SR4       MYP                  S&   T P                  '       g   T P                  4        R# R#   \         d$   p\        R SP                  Y3,          4      hRp?ii ; i)zCannot set %s to %.1024r: %sN)
Ú
CheckValuerä   r   r    r   ÚIsDefaultScalarValuerZ   ÚpoprY   Ú	_Modified)r  r;  ÚerD   rÌ   s   && €€r)   Úfield_setterÚ=_AddPropertiesForNonRepeatedScalarField.<locals>.field_setterÝ  s¨   ø€ ðLØ×)Ñ)¨)Ó4€ið ××Ð¤'×">Ò">¸y×"IÒ"IØ
‡l�l×Ñ�u˜dÕ#à%‡l�l�5Ñð ×'×'Ð'Ø
‡n�nÖñ (øô ô LÜØ
(¨E¯O©O¸YÐ+JÕ
JóLð LûðLús   ƒB ÂCÂB<Â<Cc                 ó:   <€ S! W4       V P                  S4       R # rc   )Ú_UpdateOneofState)r  r;  rD   rI  s   &&€€r)   r-  Ú7_AddPropertiesForNonRepeatedScalarField.<locals>.setterð  s   ø€ Ù�4Ô#Ø
×Ñ˜UÖ#r+   zSetter for %s.r=  r*  )
r#   rU   r   rÃ   rÚ   rJ   rM   r›   r±   r(  )
rD   r"   rT   r?  r,  r-  r+  rÚ   rI  rÌ   s
   f&     @@@r)   r%  r%  Æ  s¥   û€ ð —Z‘ZÐÜÐ 0Ó1€-Ü×-Ò-¨eÓ4€,Ø×%Ñ%€-ö2ð €&ÔØ#Ð&6Õ6€&„.öð$ ××Ð÷$ð €Fà€&ÔØ#Ð&6Õ6€&„.ð 	:Ð<LÕL€#Ü	ˆ#œn¨U°FÈÔLÖMr+   c                óÂ   a aa€ S P                   o\        S4      pV 3R loRSn        RS,          Sn        V VV3R lpRS,          p\	        W\        S SW4R7      4       R# )a@  Adds a public property for a nonrepeated, composite protocol message field.
A composite field is a "group" or "message" field.

Clients can use this property to get the value of the field, but cannot
assign to the property directly.

Args:
  field: A FieldDescriptor for this field.
  cls: The class we're constructing.
c                 ó    <€ V P                   P                  S4      pVf.   SP                  V 4      pV P                   P                  SV4      pV# rc   r2  r5  s   & €r)   r,  Ú:_AddPropertiesForNonRepeatedCompositeField.<locals>.getter  r7  r+   Nr8  c                 óô  <€ SP                   P                  R 8X  d-   S! V 4       V P                  S,          P                  V4       R# SP                   P                  R8X  d-   S! V 4       V P                  S,          P	                  V4       R# SP                   P                  \
        8X  dN   S! V 4       V P                  S,          P                  4        V P                  S,          P                  V4       R# SP                   P                  \        8X  dN   S! V 4       V P                  S,          P                  4        V P                  S,          P                  V4       R# \        RS,          4      h)zgoogle.protobuf.Timestampzgoogle.protobuf.DurationzJAssignment not allowed to composite field "%s" in protocol message object.N)rn   r   rZ   ÚFromDatetimeÚFromTimedeltarù   rú   rû   Ú_ListValueFullTypeNamer  r:  )r  r;  rD   r,  rT   s   &&€€€r)   r-  Ú:_AddPropertiesForNonRepeatedCompositeField.<locals>.setter!  s  ø€ Ø×Ñ×#Ñ#Ð'BÔBÙˆT„lØ
‡l�l�5Õ×&Ñ& yÖ1Ø	×	Ñ	×	%Ñ	%Ð)CÔ	CÙˆT„lØ
‡l�l�5Õ×'Ñ'¨	Ö2Ø	×	Ñ	×	%Ñ	%Ô)<Ô	<ÙˆT„lØ
‡l�l�5Õ×ÑÔ!Ø
‡l�l�5Õ× Ñ  Ö+Ø	×	Ñ	×	%Ñ	%Ô)?Ô	?ÙˆT„lØ
‡l�l�5Õ×ÑÔ!Ø
‡l�l�5Õ× Ñ  Ö+äð-Ø/?õ@óð r+   r=  r*  r>  )rD   r"   r?  r-  r+  r,  rT   s   f&   @@r)   r$  r$  þ  s[   ú€ ð —Z‘ZÐÜÐ 0Ó1€-õð €&ÔØ#Ð&6Õ6€&„.÷ð, 	:Ð<LÕL€#Ü	ˆ#œn¨U°F¸FÔLÖMr+   c                óö   € V P                   pVP                  4        F2  w  r4VP                  4       R,           p\        WVP                  4       K4  	  V P
                  e   V P
                  P                  pR# R# )r  r   N)r«   r¬   r"  r±   r{   r9   r-   )r   r"   rE   r­   r®   r&  r-   s   &&     r)   r>   r>   ;  sf   € à×,Ñ,€*Ø)3×)9Ñ)9Ö);Ñ%€nØ"×(Ñ(Ó*¨_Õ<€MÜˆC × 6Ñ 6Ö7ñ *<ð ‡_�_Ò à�?‰?×Ñ‚Dñ !r+   c                 óZ   a € R  p\        V4      S n        V 3R lp\        V4      S n        R# )c                ó   € R# )z>no-op to keep generated code <=4.23 working with new runtimes.NrH   )Ú_s   &r)   ÚRegisterExtensionÚ,_AddStaticMethods.<locals>.RegisterExtensionJ  s   € ñ 	r+   c                 ó8   <€ S! 4       pVP                  V 4       V# rc   )ÚMergeFromString)Úsr   r"   s   & €r)   Ú
FromStringÚ%_AddStaticMethods.<locals>.FromStringP  s   ø€ Ù‹e€GØ×Ñ˜AÔØ€Nr+   N)ÚstaticmethodrZ  r_  )r"   rZ  r_  s   f  r)   r?   r?   H  s+   ø€ ò	ô
 'Ð'8Ó9€#Ôõô   
Ó+€#†.r+   c                óÎ   € V ^ ,          P                   '       d   \        V ^,          4      # V ^ ,          P                  \        P                  8X  d   V ^,          P
                  # R# )z†Given a (FieldDescriptor, value) tuple from _fields, return true if the
value should be included in the list returned by ListFields().T)rj   Úboolrt   rg   ru   r\   ©Úitems   &r)   Ú
_IsPresentrf  W  sN   € ð 
ˆ!…W××ÐÜ��Q•‹=ÐØˆA…w×ÑÔ+×;Ñ;Ô;Ø��7×(Ñ(Ð(ár+   c                ó   € R pW!n         R# )ú Helper for _AddMessageMethods().c                 ó®   € V P                   P                  4        Uu. uF  p\        V4      '       g   K  VNK  	  ppVP                  R  R7       V# u upi )c                 ó(   € V ^ ,          P                   # ©é    )r{   rd  s   &r)   r  Ú:_AddListFieldsMethod.<locals>.ListFields.<locals>.<lambda>h  s   €  t¨A¥w§~¢~r+   )r¶   )rZ   r¬   rf  Úsort)r  re  Ú
all_fieldss   &  r)   Ú
ListFieldsÚ(_AddListFieldsMethod.<locals>.ListFieldsf  sI   € Ø#'§<¡<×#5Ñ#5Ô#7ÓLÑ#7˜4¼:Àd×;K—$�$Ñ#7€JÐLØ‡O�OÑ5€OÔ6ØÐùò Ms
   �AµAN)rp  )ra   r"   rp  s   && r)   Ú_AddListFieldsMethodrr  c  s   € òð
 †.r+   c                ó  a aa€ / oS P                    F:  pVP                  '       d   K  VP                  '       g   K+  VSVP                  &   K<  	  S P                   F  pVSVP                  &   K  	  VVV 3R loSVn        R# )rh  c                 óè  <€  SV,          p\        T\        P
                  4      '       d%    S! Y P                  T,          P                  4      # TP                  \        P                  8X  d4   T P                  P                  T4      pTRJ;'       d    TP                  # Y P                  9   #   \          d%   p\        R SP                  : RT: R24      ThRp?ii ; i  \          d     R# i ; i)r  z has no non-repeated field "z3" nor has presence is not available for this field.NF)rî   rÂ   r   r   Údescriptor_modÚOneofDescriptorr`   r#   rt   rg   ru   rZ   r3  r\   )r  rç   rD   rè   rr   ÚHasFieldÚhassable_fieldsra   s   &&   €€€r)   rw  Ú$_AddHasFieldMethod.<locals>.HasField~  sà   ø€ ðOØ˜jÕ)€eô �%œ×7Ñ7×8Ò8ðÙ˜Ÿl™l¨5Õ1×6Ñ6Ó7Ð7ð 
�‰Ô+×;Ñ;Ô	;Ø—‘× Ñ  Ó'ˆØ˜DÐ ×@Ð@ U×%@Ñ%@Ð@àŸ™Ñ$Ð$øô ô OÝà-×7Ô7»ðEó FàKNðOûðOûô ô Úðús(   ƒ	B0 ­"C" Â0CÂ;CÃCÃ"C1Ã0C1N)r5   rj   r    r#   Úoneofsrw  )ra   r"   rD   Úoneofrw  rx  s   f&  @@r)   Ú_AddHasFieldMethodr|  n  st   ú€ ð €/Ø!×(Ô(€eØ××ÐÙà××ÐÙØ"'€O�E—J‘JÓñ )ð "×(Ô(€eØ"'€O�E—J‘JÓñ )÷%ð( €#†,r+   c                ó    a € V 3R lpW!n         R# )rh  c           	      ó„  <€  SP                   V,          pY P                  9   d“   \        T P                  T,          R4      '       d"   T P                  T,          P                  4        T P                  T T P                  P                  TP                  R 4      TJ d   T P                  TP                   T P                  4        R #   \         dk     SP                  T,          pY P                  9   d   T P                  T,          p Lø R #   \         d     \	        RSP
                  : RT: R24      hi ; ii ; i)Nr  r  r  ÚInvalidateIterators)rs   rî   Úoneofs_by_namer`   rÂ   r#   rZ   r8   r  r3  r›   rG  )r  rç   rD   ra   s   && €r)   Ú
ClearFieldÚ(_AddClearFieldMethod.<locals>.ClearField—  s  ø€ ð@Ø ×/Ñ/°
Õ;€eð —‘Ôô 
�—‘˜eÕ$Ð&;×	<Ò	<Ø�‰�UÕ×/Ñ/Ô1ð
 �,‰,�uÐ
à	�‰×	Ñ	˜%×0Ñ0°$Ó	7¸5Ó	@Ø�L‰L˜×/Ñ/Ð0ð
 	‡N�NÖøô9 ô 	@ð@Ø"×1Ñ1°*Õ=ˆØ—L‘LÔ Ø—,‘,˜uÕ%Š%â
øÜô @ÝØ,×1Ô1³:ð?ó @ð 	@ð@úð	@ús   ƒC
 Ã
D?Ã6DÄ*D;Ä;D?N)r�  )ra   r"   r�  s   f& r)   Ú_AddClearFieldMethodrƒ  •  s   ø€ õðB †.r+   c                ó   € R pWn         R# )rh  c                 óŒ   € \         P                  ! W4       WP                  9   d   V P                  V V P                  4        R # rc   )r   Ú_VerifyExtensionHandlerZ   rG  )r  r   s   &&r)   ÚClearExtensionÚ0_AddClearExtensionMethod.<locals>.ClearExtension½  s3   € Ü×)Ò)¨$ÔAð Ÿ<™<Ô'Ø
�,‰,Ð'Ð
(Ø‡N�NÖr+   N)r‡  )r"   r‡  s   & r)   Ú_AddClearExtensionMethodr‰  »  s   € òð &Ör+   c                ó   € R pWn         R# )rh  c                 óJ  € \         P                  ! W4       VP                  '       d   \        R VP                  ,          4      hVP
                  \        P                  8X  d4   V P                  P                  V4      pVRJ;'       d    VP                  # WP                  9   # )z"%s" is repeated.N)r   r†  rj   rî   r   rt   rg   ru   rZ   r3  r\   )r  r   rr   s   && r)   ÚHasExtensionÚ,_AddHasExtensionMethod.<locals>.HasExtensionÉ  s„   € Ü×)Ò)¨$ÔAØ×#×#Ð#ÜÐ(Ð+;×+EÑ+EÕEÓFÐFà× Ñ Ô$4×$DÑ$DÔDØ�l‰l×ÑÐ/Ó0€eØ˜$Ð×>Ð> 5×#>Ñ#>Ð>à§¡Ñ-Ð-r+   N)rŒ  )r"   rŒ  s   & r)   Ú_AddHasExtensionMethodrŽ  Ç  s   € ò	.ð "Ör+   c                óB  € ^ RI Hp VP                  4       pV P                  pV'       g   R# VP	                  R4      R,          pVP
                  P                  V4      pVf   R# ^ RI Hp VP                  V4      pV! 4       pVP                  V P                  4       V# )ad  Unpacks Any message and returns the unpacked message.

This internal method is different from public Any Unpack method which takes
the target message as argument. _InternalUnpackAny method does not have
target message type and need to find the message type in descriptor pool.

Args:
  msg: An Any message to be unpacked.

Returns:
  The unpacked message.
)Úsymbol_databaseNÚ/rÐ   éÿÿÿÿ)rÒ   r�  ÚDefaultÚtype_urlÚsplitr-   ÚFindMessageTypeByNamerÑ   rÓ   ÚParseFromStringrr   )	rý   r�  Úfactoryr”  Ú	type_namer   rÑ   Úmessage_classr   s	   &        r)   Ú_InternalUnpackAnyr›  Õ  s‰   € õ" .Ø×#Ñ#Ó%€'à�\‰\€(ç	Ùð �n‰n˜SÓ! "Õ%€)Ø�|‰|×1Ñ1°)Ó<€*àÒÙõ .Ø!×1Ñ1°*Ó=€-Ù‹O€'à	×Ñ˜#Ÿ)™)Ô$Ø	€.r+   c                ó   € R pW!n         R# )rh  c                 ó"  € V P                   P                  \        8X  d(   \        V\        4      '       d   V P                  V4      # V P                   P                  \        8X  d(   \        V\        4      '       d   V P                  V4      # \        V\        P                  4      '       d   VP                   V P                   8w  d   \        # WJ d   R # V P                   P                  \        8X  d+   \        V 4      p\        V4      pV'       d   V'       d   W#8H  # V P                  4       VP                  4       8X  g   R# \	        V P                  4      pVP                  4        \	        VP                  4      pVP                  4        WE8H  # )TF)r   r   rT  r   ÚlistÚ_internal_comparerù   rø   rõ   rö   ÚNotImplementedÚ_AnyFullTypeNamer›  rp  r[   rn  )r  ÚotherÚany_aÚany_bÚunknown_fieldsÚother_unknown_fieldss   &&    r)   Ú__eq__Ú _AddEqualsMethod.<locals>.__eq__  s8  € Ø‡�× Ñ Ô$:Ô:¼zØŒt÷@ò @ð ×#Ñ# EÓ*Ð*Ø‡�× Ñ Ô$7Ô7¼JØŒt÷=ò =ð ×#Ñ# EÓ*Ð*ä�uœk×1Ñ1×2Ò2Ø×Ñ˜DŸO™OÔ+ÜÐàƒ}Ùà‡�× Ñ Ô$4Ô4Ü  Ó&€eÜ  Ó'€eß	—5Ø‰~Ðà�?‰?Ó × 0Ñ 0Ó 2Ô2Ùô ˜$×.Ñ.Ó/€NØ×ÑÔÜ × 5Ñ 5Ó6ÐØ×ÑÔØÑ1Ð1r+   N)r§  )ra   r"   r§  s   && r)   Ú_AddEqualsMethodr©     s   € ò 2ðD †*r+   c                ó   € R pW!n         R# )rh  c                 ó.   € \         P                  ! V 4      # rc   ©r   ÚMessageToStringr  s   &r)   Ú__str__Ú_AddStrMethod.<locals>.__str__)  ó   € Ü×&Ò& tÓ,Ð,r+   N)r®  )ra   r"   r®  s   && r)   Ú_AddStrMethodr±  '  s   € ò-à†+r+   c                ó   € R pW!n         R# )rh  c                 ó.   € \         P                  ! V 4      # rc   r¬  r  s   &r)   Ú__repr__Ú _AddReprMethod.<locals>.__repr__0  r°  r+   N)r´  )ra   r"   r´  s   && r)   Ú_AddReprMethodr¶  .  s   € ò-à†,r+   c                ó   € R pW!n         R# )rh  c                 óP   € \         P                  ! V R R7      P                  R4      # )T)Úas_utf8zutf-8)r   r­  Údecoder  s   &r)   Ú__unicode__Ú&_AddUnicodeMethod.<locals>.__unicode__8  s    € Ü×&Ò& t°TÔ:×AÑAÀ'ÓJÐJr+   N)r»  )Úunused_message_descriptorr"   r»  s   && r)   Ú_AddUnicodeMethodr¾  5  s   € òKà†/r+   c                 ól   € V P                   R 8X  d   R pMV P                   R8X  d   R pMR pW!n        R# )r   c                 ó   € WP                   9   # rc   )r5   )r  r¶   s   &&r)   Ú__contains__Ú(_AddContainsMethod.<locals>.__contains__@  s   € Ø—K‘KÑÐr+   r   c                 ó&   € WP                  4       9   # rc   )r¬   )r  rr   s   &&r)   rÁ  rÂ  C  s   € Ø—j‘j“lÑ"Ð"r+   c                 ó$   € V P                  V4      # rc   )rw  )r  rD   s   &&r)   rÁ  rÂ  F  s   € Ø�]‰]˜5Ó!Ð!r+   N)r   rÁ  )ra   r"   rÁ  s   && r)   Ú_AddContainsMethodrÅ  =  s7   € à×!Ñ!Ð%=Ô=ó à×#Ñ#Ð'BÔBó#ò"ð "Ör+   c                óš   €  \         P                  V,          pV! W4      #   \         d    \        P                  ! RT,          4      hi ; i)a  Returns the number of bytes needed to serialize a non-repeated element.
The returned byte count includes space for tag information and any
other additional space associated with serializing value.

Args:
  value: Value we're serializing.
  field_number: Field number of this value.  (Since the field number
    is stored as part of a varint-encoded tag, this has an impact
    on the total bytes required to serialize the value).
  field_type: The type of the field.  One of the TYPE_* constants
    within FieldDescriptor.
zUnrecognized field type: %d)r   ÚTYPE_TO_BYTE_SIZE_FNrî   rõ   ÚEncodeError)rr   Úfield_numberÚ
field_typeÚfns   &&& r)   Ú_BytesForNonRepeatedElementrÌ  L  sK   € ðNÜ	×	+Ñ	+¨JÕ	7€BÙˆlÓ"Ð"øÜ	ô NÜ
×
!Ò
!Ð"?À*Õ"LÓ
MÐMðNús	   ‚! ¡)A
c                ó"   a€ V3R lpVSn         R# )rh  c                 óœ  <€ V P                   '       g   V P                  # ^ pV P                  pVP                  '       d|   VP                  R,          p\        S	V4       VP                  V P                  4      pVP                  R,          p\        S	V4       WP                  V P                  4      ,          pMsV P                  4        F(  w  rV\        S	V4       WP                  V4      ,          pK*  	  V P                   F'  w  rxV\        V4      \        V4      ,           ,          pK)  	  Wn        RV n         RV P                  n        V# )rl  r¶   rr   F)rY   rX   r   ro   rs   r“   r�   r¶   rr   rp  r[   râ   r^   Údirty)
r  Úsizer   Ú	key_fieldrº   r   r	  r~   Úvalue_bytesr"   s
   &        €r)   ÚByteSizeÚ$_AddByteSizeMethod.<locals>.ByteSizec  s  ø€ Ø×'×'Ð'Ø×#Ñ#Ð#à€DØ—‘€JØ××Ðà×+Ñ+¨EÕ2€iÜ�s˜IÔ&Ø×Ñ˜dŸh™hÓ'€dØ×-Ñ-¨gÕ6€kÜ�s˜KÔ(Ø
× Ñ  §¡Ó,Õ,�dà+/¯?©?Ö+<Ñ
'Ð
Ü˜Ð.Ô/Ø×'Ñ'¨Ó4Õ4Šñ ,=ð %)×$8Ô$8Ñ
 ˆ)Ø”�I“¤ [Ó!1Õ1Õ1Šñ %9ð "ÔØ#(€DÔ Ø(-€D×ÑÔ%Ø€Kr+   N)rÓ  )ra   r"   rÓ  s   &f r)   Ú_AddByteSizeMethodrÕ  `  s   ø€ õð4 €#†,r+   c                ó   € R pW!n         R# )rh  c           	      óð   € V P                  4       '       gP   \        P                  ! R V P                  P                  : RRP                  V P                  4       4      : 24      hV P                  ! R/ VB # )zMessage z is missing required fields: Ú,rH   )ÚIsInitializedrõ   rÈ  r   r   ÚjoinÚFindInitializationErrorsÚSerializePartialToString)r  r  s   &,r)   ÚSerializeToStringÚ6_AddSerializeToStringMethod.<locals>.SerializeToStringƒ  sc   € à×Ñ×ÒÜ×#Ó#à
�/‰/×
#Ô
# S§X¡X¨d×.KÑ.KÓ.MÕ%NðPóQð Qð ×(Ò(Ñ2¨6Ñ2Ð2r+   N)rÝ  )ra   r"   rÝ  s   && r)   Ú_AddSerializeToStringMethodrß  €  s   € ò3ð ,Ör+   c                ó:   a€ R pVSn         RV3R llpVSn        R# )rh  c                 óp   € \        4       pV P                  ! VP                  3/ VB  VP                  4       # rc   )r   Ú_InternalSerializeÚwriteÚgetvalue)r  r  Úouts   &, r)   rÜ  ÚD_AddSerializePartialToStringMethod.<locals>.SerializePartialToString�  s,   € Ü
‹)€CØ×Ò˜CŸI™IÑ0¨Ò0Ø�<‰<‹>Ðr+   Nc                 ó6  <€ Vf   \         P                  ! 4       pM\        V4      pV P                  pVP                  '       dy   VP
                  R,          p\        S
V4       VP                  WP                  V4       VP
                  R,          p\        S
V4       VP                  WP                  V4       R # V P                  4        F#  w  rg\        S
V4       VP                  WV4       K%  	  V P                   F  w  r‰V! V4       V! V	4       K  	  R # )Nr¶   rr   )r   Ú)IsPythonDefaultSerializationDeterministicrc  r   ro   rs   r“   rˆ   r¶   rr   rp  r[   )r  Úwrite_bytesÚdeterministicr   rÑ  rº   r   r	  r~   rÒ  r"   s   &&&       €r)   ÚInternalSerializeÚ=_AddSerializePartialToStringMethod.<locals>.InternalSerialize–  sì   ø€ ØÒä
×
FÒ
FÓ
Hñ ô ˜=Ó)€mà—‘€JØ××Ðà×+Ñ+¨EÕ2€iÜ�s˜IÔ&Ø×Ñ˜§h¡h°Ô>Ø×-Ñ-¨gÕ6€kÜ�s˜KÔ(Ø×Ñ˜;¯
©
°MÖBà+/¯?©?Ö+<Ñ
'Ð
Ü˜Ð.Ô/Ø×!Ñ! +¸MÖJñ ,=ð %)×$8Ô$8Ñ
 ˆ)Ù�IÔÙ�KÖ ó %9r+   rc   )rÜ  râ  )ra   r"   rÜ  rë  s   &f  r)   Ú"_AddSerializePartialToStringMethodrí  �  s!   ø€ òð ":€#Ô÷!ð. -€#Ör+   c                ór   aaa€ R pVSn         SP                  oSP                  oRVVV3R llpVSn        R# )rh  c                 óD  € \        V4      p\        V4      p V P                  V^ V4      V8w  d   \        P                  ! R4      h V#   \
        \        3 d    \        P                  ! R4      h\        P                   d   p\        P                  ! T4      hRp?ii ; i)rl  zUnexpected end-group tag.zTruncated message.N)	Ú
memoryviewrâ   Ú_InternalParserõ   ÚDecodeErrorÚ
IndexErrorrä   ÚstructÚerror)r  Ú
serializedÚlengthrH  s   &&  r)   r]  Ú2_AddMergeFromStringMethod.<locals>.MergeFromString²  s—   € Ü˜JÓ'€JÜ�‹_€Fð	'Ø	×	Ñ	˜Z¨¨FÓ	3°vÔ	=ô ×%Ò%Ð&AÓBÐBð 
>ð €Møô œ	Ð"ô :ä×#Ò#Ð$8Ó9Ð9Ü�<‰<ô 'Ü×#Ò# AÓ&Ð&ûð'ús   ˜.A	 Á	9BÂBÂBÂBc                ó8  <€ \        V\        4      '       g   Q hV P                  4        V P                  pW#8w  Ed^   \        P
                  ! W4      w  rgSP                  VR4      w  r‰V'       d   V! WW0WT4      pKG  SP                  VR4      w  ršV	f´   V P                  '       g   . V n        \        P                  ! V4      w  r¼V^ 8X  d   \        P                  ! R4      h\        P                  ! WW;V4      w  r×VR8X  d   V# V P                  P                  WaV\        V4      ,           V P                  4       34       TpEK  \        SV	4       V	P                   V
,          pV! WW0WT4      pV	P"                  '       g   EKP  V P%                  V	4       EKd  V# )a  Create a message from serialized bytes.

Args:
  self: Message, instance of the proto message object.
  buffer: memoryview of the serialized data.
  pos: int, position to start in the serialized data.
  end: int, end position of the serialized data.

Returns:
  Message object.
zField number 0 is illegal.)NNr’  )r   rð  rG  rZ   r   ÚReadTagr3  r[   Ú	DecodeTagrõ   rò  Ú_DecodeUnknownFieldÚappendrâ   Útobytesr©   r•   r›   rL  )r  ÚbufferÚposÚendÚcurrent_depthÚ
field_dictr~   Únew_posr¥   Ú	field_desr}   rÉ  Ú	wire_typeÚdatar"   Úfields_by_tagÚmessage_set_decoders_by_tags   &&&&&         €€€r)   ÚInternalParseÚ0_AddMergeFromStringMethod.<locals>.InternalParseÅ  s}  ø€ ô �fœj×)Ò)Ð)Ð)Ø‡N�NÔØ—‘€JØ
�*Ü$Ÿ_š_¨VÓ9Ñ€yØ!<×!@Ñ!@Ø
�\ó"Ñ€m÷ 
ÙØ˜S¨
ó
ˆñ 	Ø*×.Ñ.¨y¸,ÓGÑ€iØ	Ò	Ø×#×#Ð#Ø!#ˆ$Ô
Ü")×"3Ò"3°IÓ">ÑˆØ˜1ÔÜ×'Ò'Ð(DÓEÐ
EÜ!×5Ò5Ø˜S°	ó
‰ˆð �bŒ=Øˆ*Ø×Ñ×#Ñ#Ø˜s¤S¨£^Õ3°gÐ>×FÑFÓHÐIô	
ð ‹ä˜˜iÔ(Ø!×+Ñ+¨IÕ6ˆÙØ˜S¨
ó
ˆð ×%×%Ó%Ø
×
 Ñ
  ×
+Ø€Jr+   Nrk  )r]  r/   r.   rñ  )ra   r"   r]  r
  r  r	  s   &f  @@r)   Ú_AddMergeFromStringMethodr  °  s>   ú€ òð (€#Ôà×$Ñ$€-Ø #× @Ñ @Ð÷3ñ 3ðj %€#Ör+   c                ó¦   a€ V P                    Uu. uF  pVP                  '       g   K  VNK  	  upoRV3R llpW1n        V3R lpWAn        R# u upi )zYAdds the IsInitialized and FindInitializationError methods to the
protocol message class.Nc                ó8  <€ S F}  pW P                   9  gG   VP                  \        P                  8X  g   K4  V P                   V,          P                  '       d   KY  Ve    VP                  V P                  4       4        R# 	  \        V P                   P                  4       4       Fî  w  r#VP                  \        P                  8X  g   K&  VP                  '       dg   VP                  P                  '       d   KV  V F@  pVP                  4       '       d   K  Ve    VP                  V P                  4       4         R# 	  Kž  VP                  '       g   K²  VP                  4       '       d   KÊ  Ve    VP                  V P                  4       4        R# 	  R# )zûChecks if all required fields of a message are set.

Args:
  errors:  A list which, if provided, will be populated with the field
           paths of all missing required fields.

Returns:
  True iff the specified message has all required fields set.
FT)rZ   rt   rg   ru   r\   r  rÛ  rž  r¬   rj   rn   ro   rÙ  )r  ÚerrorsrD   rr   ÚelementÚrequired_fieldss   &&   €r)   rÙ  Ú._AddIsInitializedMethod.<locals>.IsInitialized  s)  ø€ ó !ˆØ
—|‘|Ô
#Ø�>‰>Ô-×=Ñ=Ö=Ø�|‰|˜EÕ"×8×8Ò8ØÒØ
�-‰-˜×5Ñ5Ó7Ô
8Úñ !ô ˜TŸ\™\×/Ñ/Ó1Ö2‰ˆØ	�‰Ô+×;Ñ;Ö	;Ø××ÐØ× Ñ ×.×.Ð.ÙÛˆgØ×(Ñ(×*Ô*ØÒ#Ø—‘˜d×;Ñ;Ó=Ô>Ûó	 ð
 ×(×(Ò(°×1DÑ1D×1FÔ1FØÒØ�M‰M˜$×7Ñ7Ó9Ô:Úñ 3ñ r+   c                óÀ  <€ . pS FA  pV P                  VP                  4      '       d   K&  VP                  VP                  4       KC  	  V P                  4        EFo  w  r#VP                  \
        P                  8X  g   K'  VP                  '       d   RVP                  ,          pMVP                  p\        V4      '       d_   \        V4      '       dL   V FC  pW5,          pV: RV: R2pVP                  4       pY U	u. uF  q—V	,           NK  	  up	,          pKE  	  KÆ  KÈ  VP                  '       d_   \        \        V4      4       FC  p
W:,          pRWJ3,          pVP                  4       pY U	u. uF  q—V	,           NK  	  up	,          pKE  	  EK8  VR,           pVP                  4       pY U	u. uF  q—V	,           NK  	  up	,          pEKr  	  V# u up	i u up	i u up	i )z¶Finds required fields which are not initialized.

Returns:
  A list of strings.  Each string is a path to an uninitialized field from
  the top-level message, e.g. "foo.bar[5].baz".
z(%s)Ú[z].z%s[%d].rß   )rw  r#   rý  rp  rt   rg   ru   rd   r   rp   rw   rÛ  rj   Úrangerâ   )r  r  rD   rr   r#   r¶   r  ÚprefixÚ
sub_errorsrõ  Úir  s   &          €r)   rÛ  Ú9_AddIsInitializedMethod.<locals>.FindInitializationErrors,  s�  ø€ ð €Fã ˆØ�]‰]˜5Ÿ:™:×&Ô&Ø�‰�e—j‘jÖ!ñ !ð Ÿ™×)‰ˆØ	�‰Ô+×;Ñ;Ö	;Ø××ÐØ˜%Ÿ/™/Õ)‰$à—‘ˆ$ä�u×ÒÜ ×&Ò&Û�Ø�
ˆgÛ$(«#Ð.ˆfØ"×;Ñ;Ó=ˆjØ°ZÓ@±Z¨E %Ÿ˜±ZÑ@Õ@Šfó	 ñ Ø××ÐÜœ˜U›Ö$ˆaØ•hˆGØ $ Õ*ˆFØ ×9Ñ9Ó;ˆJØ°:Ó>±:¨% —~�~±:Ñ>Õ>ŠFô	 %ð ˜#•:ˆ&Ø×5Ñ5Ó7ˆ*Ø
°Ó<±¨˜e—^�^±Ñ<Õ
<‹&ñ5 *ð8 €Mùò Aùò ?ùò =s   ÄG
Å2G
Æ0Grc   )r5   ri   rÙ  rÛ  )ra   r"   rD   rÙ  rÛ  r  s   &&   @r)   Ú_AddIsInitializedMethodr  ý  sU   ø€ ð );×(AÒ(Aó 1Ñ(A˜uØ#×/Õ/÷ �UÑ(Añ 1€/÷$ðL $Ôõ*ðX ":Öùòo1s
   �A©Ac                 óz   € V P                   p\        V R V P                  4      pVR9   d   V# VR,           V,           # )rK   rß   )NÚbuiltinsÚ__builtin__)rJ   r   rI   )ÚklassÚmoduler#   s   &  r)   Ú_FullyQualifiedClassNamer   [  s<   € Ø×Ñ€&Ü	�˜¨¯©Ó	7€$ØÐ0Ô0Ø€KØ	�#�˜Õ	Ðr+   c                 óF   a a€ \         P                  oVV 3R  lpVS n        R# )c                 ó„  <€ \        VS4      '       g1   \        R \        S4      : R\        VP                  4      : R24      hWJg   Q hV P	                  4        V P
                  pVP
                  P                  4        Fé  w  r4VP                  '       d>   VP                  V4      pVf   VP                  V 4      pWRV&   VP                  V4       KT  VP                  S8X  dR   VP                  '       d>   VP                  V4      pVf   VP                  V 4      pWRV&   VP                  V4       K´  K¶  W@P
                  V&   VP                  '       g   KØ  V P                  V4       Kë  	  VP                  '       dA   V P                  '       g   . V n        V P                  P!                  VP                  4       R# R# )zBParameter to MergeFrom() must be instance of same class: expected z got rß   N)r   rä   r   r(   rG  rZ   r¬   rj   r3  rƒ   r÷   rt   r\   r›   rL  r[   r  )r  rý   r5   rD   rr   r	  ru   r"   s   &&    €€r)   r÷   Ú&_AddMergeFromMethod.<locals>.MergeFromf  su  ø€ Ü�c˜3×ÒÝä#;¸CÖ#@Ü#;¸C¿M¹MÖ#JðLóMð Mð
 ‹?Ðˆ?Ø‡N�NÔà�\‰\€FàŸ™×)Ñ)Ö+‰ˆØ	×	×	Ð	Ø—j‘j Ó'ˆØÒà×2Ñ2°4Ó8ˆ+Ø%�‰-Ø×Ñ˜eÖ$Ø�>‰>˜_Ô,Ø×&×&Ð&ØŸ
™
 5Ó)ˆ+ØÒ à×4Ñ4°TÓ:ˆKØ'�5‰MØ
×
Ñ
 Ö
&ñ 'ð $�‰�UÑØ×!×!Ò!Ø
×
 Ñ
  Ö
'ñ' ,ð* ××ÐØ×!×!Ð!Ø!ˆÔØ
×Ñ×!Ñ! #×"5Ñ"5Ö6ñ r+   N)rg   ru   r÷   )r"   r÷   ru   s   f @r)   Ú_AddMergeFromMethodr$  c  s   ù€ Ü$×4Ñ4€/ö$7ðL €#†-r+   c                 ó    a € V 3R  lpW!n         R# )c                ó  <€  SP                   V,          pT P                  P	                  TR4      pTe.   T P                  TP                  4      '       d   TP                  # R#   \         d    \        RT,          4      hi ; i)zDReturns the name of the currently set field inside a oneof, or None.z)Protocol message has no oneof "%s" field.N)r€  rî   rÂ   r`   r3  rw  r#   )r  Ú
oneof_namerD   Únested_fieldra   s   &&  €r)   Ú
WhichOneofÚ(_AddWhichOneofMethod.<locals>.WhichOneof�  s„   ø€ ðDØ ×/Ñ/°
Õ;€eð
 —<‘<×#Ñ# E¨4Ó0€LØÒ D§M¡M°,×2CÑ2C×$DÒ$DØ×ÑÐáøô ô DÜØ
5¸
Õ
BóDð DðDús   ƒA% Á%BN)r)  )ra   r"   r)  s   f& r)   Ú_AddWhichOneofMethodr+  �  s   ø€ õð †.r+   c                 óP   € / V n         RV n        / V n        V P                  4        R # )NrH   )rZ   r[   r`   rG  r  s   &r)   Ú_Clearr-  ¡  s"   € à€$„,Ø€$Ôà€$„,Ø‡.�.Ör+   c                 ó   € \        R 4      h)zbPlease use the add-on feaure unknown_fields.UnknownFieldSet(message) in unknown_fields.py instead.)ÚNotImplementedErrorr  s   &r)   Ú_UnknownFieldsr0  ª  s   € Üð 9ó 	:ð :r+   c                 óŒ  € . V n         V P                  4        F¨  w  rVP                  \        P                  8X  g   K&  \        V4      '       d5   \        V4      '       d"   V F  pW#,          P                  4        K  	  Ki  Kk  VP                  '       d   V F  pVP                  4        K  	  K˜  VP                  4        Kª  	  R # rc   )	r[   rp  rt   rg   ru   rp   rw   ÚDiscardUnknownFieldsrj   )r  rD   rr   r¶   Úsub_messages   &    r)   Ú_DiscardUnknownFieldsr4  °  s•   € Ø€$ÔØ—o‘oÖ'�l€eØ‡~�~Ô)×9Ñ9Ö9Ü	�U×	Ò	Ü˜e×$Ò$ÛˆcØ�J×+Ñ+Ö-ó ñ %ð ××ÐÛ ˆKØ
×
*Ñ
*Ö
,ó !ð 	×"Ñ"Ö$ó (r+   c                 óR   € Vf   \         P                  ! 4       V n        R # Wn        R # rc   )r   r  r]   )r  Úlisteners   &&r)   rÔ   rÔ   ¿  s   € ØÒÜ)×=Ò=Ó?€D†Nà†Nr+   c                óâ  € \        W4       \        W4       \        W4       V P                  '       d   \	        V4       \        V4       \        W4       \        W4       \        W4       \        W4       \        W4       \        W4       \        W4       \        W4       \        W4       \        W4       \!        V4       \#        W4       \$        Vn        \(        Vn        \,        Vn        R# )z3Adds implementations of all Message methods to cls.N)rr  r|  rƒ  r7   r‰  rŽ  r©  r±  r¶  r¾  rÅ  rÕ  rß  rí  r  r  r$  r+  r-  rú   r4  r2  rÔ   )ra   r"   s   &&r)   r@   r@   Æ  s»   € äÐ)Ô/ÜÐ'Ô-ÜÐ)Ô/Ø×%×%Ð%Ü˜SÔ!Ü˜3ÔÜÐ%Ô+ÜÐ"Ô(ÜÐ#Ô)ÜÐ&Ô,ÜÐ'Ô-ÜÐ'Ô-ÜÐ0Ô6Ü$Ð%7Ô=ÜÐ.Ô4ÜÐ,Ô2Ü�cÔÜÐ)Ô/ä€#„)Ü2€#ÔÜ!€#Ör+   c                ó6   € R pR pW!n         W!n        W1n        R# )z5Adds implementation of private helper methods to cls.c                ó    € V P                   '       g<   RV n         RV P                  n        RV n        V P                  P                  4        R# R# )zoSets the _cached_byte_size_dirty bit to true,
and propagates this to our listener iff this was a state change.
TN)rY   r^   rÏ  r\   r]   ÚModifiedr  s   &r)   r:  Ú*_AddPrivateHelperMethods.<locals>.Modifiedã  sC   € ð ×'×'Ð'Ø%)€dÔ"Ø*.€d×!Ñ!Ô'Ø#'€dÔ Ø
‡n�n×ÑÖñ	 (r+   c                óª   € V P                   P                  VP                  V4      pW!Jd(   V P                  V WP                   VP                  &   R# R# )z¼Sets field as the active field in its containing oneof.

Will also delete currently active field in the oneof, if it is different
from the argument. Does not mark the message as modified.
N)r`   r4  r›   rZ   )r  rD   Úother_fields   && r)   rL  Ú3_AddPrivateHelperMethods.<locals>._UpdateOneofStateò  sI   € ð —,‘,×)Ñ)¨%×*@Ñ*@À%ÓH€KØÓØ
�,‰,�{Ð
#Ø-2‡l�l�5×)Ñ)Ó*ñ  r+   N)rG  ÚSetInParentrL  )ra   r"   r:  rL  s   &&  r)   rA   rA   à  s   € ò ò	3ð „-Ø„/Ø+Ör+   c                   ó0   a € ] tR tRt o RtR tR tRtV tR# )r  i  a"  MessageListener implementation that a parent message registers with its
child message.

In order to support semantics like:

  foo.bar.baz.moo = 23
  assert foo.HasField('bar')

...child objects must have back references to their parents.
This helper class is at the heart of this support.
c                ó˜   € \        V\        P                  4      '       d   Wn        M\        P                  ! V4      V n        RV n        R# )zqArgs:
parent_message: The message whose _Modified() method we should call when
  we receive Modified() messages.
FN)r   ÚweakrefÚ	ProxyTypeÚ_parent_message_weakrefÚproxyrÏ  )r  Úparent_messages   &&r)   rB   Ú_Listener.__init__  s7   € ô �.¤'×"3Ñ"3×4Ò4Ø%3Õ"ä%,§]¢]°>Ó%B€dÔ"ð
 €D†Jr+   c                óˆ   € V P                   '       d   R #  V P                  P                  4        R #   \         d     R # i ; irc   )rÏ  rD  rG  ÚReferenceErrorr  s   &r)   r:  Ú_Listener.Modified#  s9   € Ø‡z‡z€zÙðà
×"Ñ"×,Ñ,Ö.øÜô ò ð	ús   –2 ²AÁ A)rD  rÏ  N)	rI   rJ   rK   rL   rM   rB   r:  rN   rO   r/  s   @r)   r  r    s   ø‡ € ñ
ò÷&
ð 
r+   r  c                   óB   a a€ ] tR tRt oRtV 3R ltV 3R ltRtVtV ;t	# )rÕ   i0  zCSpecial listener implementation for setting composite oneof fields.c                ó:   <€ \         \        V `  V4       W n        R# )zµArgs:
parent_message: The message whose _Modified() method we should call when
  we receive Modified() messages.
field: The descriptor of the field being set in the parent message.
N)r    rÕ   rB   Ú_field)r  rF  rD   r(   s   &&&€r)   rB   Ú_OneofListener.__init__3  s   ø€ ô 
Œ.˜$Ñ(¨Ô8Ø†Kr+   c                óœ   <€  V P                   P                  V P                  4       \        \        V `  4        R#   \         d     R# i ; i)zEAlso updates the state of the containing oneof in the parent message.N)rD  rL  rM  r    rÕ   r:  rI  )r  r(   s   &€r)   r:  Ú_OneofListener.Modified<  s?   ø€ ðØ
×"Ñ"×4Ñ4°T·[±[ÔAÜŒN˜DÑ*Ö,øÜô Ú
ðús   ƒ7< ¼AÁ
A)rM  )
rI   rJ   rK   rL   rM   rB   r:  rN   rO   rP   rQ   s   @@r)   rÕ   rÕ   0  s   ù‡ € ÙKõ÷õ r+   rÕ   )ZrM   Ú
__author__ÚdatetimeÚior   Úmathrô  rà   ÚwarningsrB  rÒ   r   ru  r   rõ   r   Úgoogle.protobuf.internalr   r   r   r	   r
   r   r   r   r   r   r   ÚFieldDescriptorrg   r¡  rù   rT  r  rf   r   rU   r   rl   rp   rw   r6   r“   r©   r   r;   r�   r‚   ré   r<   r  r=   r  r  r(  r#  r%  r$  r>   r?   rf  rr  r|  rƒ  r‰  rŽ  r›  r©  r±  r¶  r¾  rÅ  rÌ  rÕ  rß  rí  r  r  r   r$  r+  r-  r0  r4  rÔ   r@   rA   Úobjectr  rÕ   rH   r+   r)   Ú<module>rY     s¸  ðñð 3€
ã Ý Û Û Û 
Û Û å 8Ý 2Ý 'å 7Ý /Ý ,Ý ,Ý 6Ý 3Ý MÝ 2Ý 5Ý 0à!×1Ñ1Ð Ø(Ð Ø.Ð Ø4Ð Ø×.Ñ.€ôH1 4ô H1òfò:(ò&!ò,ò
Aò?ò*,ò01/òh1ò7ò#ò,8òv.òxòv<ò Aò8ô2!�Xô !ò)NòX5Nòp:Nòz ò,ò	òò$òN#òL	&ò"ò(òV$òNòò ò"òNò(ò@
,ò -òFJ%òZ[:ò|ò)òXò$ò:ò%òò"ò4,ôD+�ô +ô\�Yö r+   