§
    L˜ºhP‹  ã                   óð  — d Z dZddlZddlmZ ddlZddlZddlmZ ddl	Z	ddl
Z
ddlmZ ddlmZ ddlmZ d	Z eej        j        ej        j        ej        j        ej        j        g¦  «        Z eej        j        ej        j        g¦  «        Z eej        j        ej        j        g¦  «        Zd
ZdZdZ e	j        d¦  «        Z  e	j        d¦  «        Z! G d„ de"¦  «        Z# G d„ de#¦  «        Z$ G d„ de#¦  «        Z%	 	 	 	 	 	 	 	 d4d„Z&	 	 	 	 	 d5d„Z'd„ Z( G d„ de)¦  «        Z*d„ Z+d„ Z,d„ Z-	 	 	 d6d!„Z.	 	 	 d6d"„Z/e0e1fZ2 G d#„ d$e)¦  «        Z3d7d%„Z4d&„ Z5d'„ Z6d(„ Z7d)d*gd+d,gd+d,gd-d.gd/d0gd+d,gd1d2gd3œZ8dS )8at  Contains routines for printing protocol messages in JSON format.

Simple usage example:

  # Create a proto object and serialize it to a json format string.
  message = my_proto_pb2.MyMessage(foo='bar')
  json_string = json_format.MessageToJson(message)

  # Parse a json format string to proto object.
  message = json_format.Parse(json_string, my_proto_pb2.MyMessage())
zjieluo@google.com (Jie Luo)é    N)ÚOrderedDict)Úmethodcaller)Útype_checkers)Ú
descriptor)Úsymbol_databasez%Y-%m-%dT%H:%M:%SÚInfinityz	-InfinityÚNaNu.   [í €-í¯¿](?![í°€-í¿¿])|(?<![í €-í¯¿])[í°€-í¿¿]z\[[a-zA-Z0-9\._]*\]$c                   ó   — e Zd ZdZdS )ÚErrorz'Top-level module error for json_format.N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úc/var/www/html/services/rag-service/venv/lib/python3.11/site-packages/google/protobuf/json_format.pyr   r   N   s   € € € € € Ø/Ð/Ð/Ð/r   r   c                   ó   — e Zd ZdZdS )ÚSerializeToJsonErrorz&Thrown if serialization to JSON fails.Nr   r   r   r   r   r   R   s   € € € € € Ø.Ð.Ð.Ð.r   r   c                   ó   — e Zd ZdZdS )Ú
ParseErrorz Thrown in case of parsing error.Nr   r   r   r   r   r   V   s   € € € € € Ø(Ð(Ð(Ð(r   r   Fé   Tc	                 óZ   — t          |||||¬¦  «        }	|	                     | |||¦  «        S )aÖ  Converts protobuf message to JSON format.

  Args:
    message: The protocol buffers message instance to serialize.
    including_default_value_fields: If True, singular primitive fields,
        repeated fields, and map fields will always be serialized.  If
        False, only serialize non-empty fields.  Singular message fields
        and oneof fields are not affected by this option.
    preserving_proto_field_name: If True, use the original proto field
        names as defined in the .proto file. If False, convert the field
        names to lowerCamelCase.
    indent: The JSON object will be pretty-printed with this indent level.
        An indent level of 0 or negative will only insert newlines.
    sort_keys: If True, then the output will be sorted by field names.
    use_integers_for_enums: If true, print integers instead of enum names.
    descriptor_pool: A Descriptor Pool for resolving types. If None use the
        default.
    float_precision: If set, use this to specify float field valid digits.
    ensure_ascii: If True, strings with non-ASCII characters are escaped.
        If False, Unicode strings are returned unchanged.

  Returns:
    A string containing the JSON formatted protocol buffer message.
  ©Úfloat_precision)Ú_PrinterÚToJsonString)
ÚmessageÚincluding_default_value_fieldsÚpreserving_proto_field_nameÚindentÚ	sort_keysÚuse_integers_for_enumsÚdescriptor_poolr   Úensure_asciiÚprinters
             r   ÚMessageToJsonr'   Z   sD   € õD Ø$Ø!ØØØ%ð'ñ 'ô '€'ð 
×	Ò	˜g v¨y¸,Ñ	GÔ	GÐGr   c                 óT   — t          |||||¬¦  «        }|                     | ¦  «        S )a¿  Converts protobuf message to a dictionary.

  When the dictionary is encoded to JSON, it conforms to proto3 JSON spec.

  Args:
    message: The protocol buffers message instance to serialize.
    including_default_value_fields: If True, singular primitive fields,
        repeated fields, and map fields will always be serialized.  If
        False, only serialize non-empty fields.  Singular message fields
        and oneof fields are not affected by this option.
    preserving_proto_field_name: If True, use the original proto field
        names as defined in the .proto file. If False, convert the field
        names to lowerCamelCase.
    use_integers_for_enums: If true, print integers instead of enum names.
    descriptor_pool: A Descriptor Pool for resolving types. If None use the
        default.
    float_precision: If set, use this to specify float field valid digits.

  Returns:
    A dict representation of the protocol buffer message.
  r   )r   Ú_MessageToJsonObject)r   r   r    r#   r$   r   r&   s          r   ÚMessageToDictr*   …   s=   € õ8 Ø$Ø!ØØØ%ð'ñ 'ô '€'ð 
×	%Ò	% gÑ	.Ô	.Ð.r   c                 óŠ   — | j         t          j        j        k    o)| j        j        o| j                             ¦   «         j        S ©N)Útyper   ÚFieldDescriptorÚTYPE_MESSAGEÚmessage_typeÚhas_optionsÚ
GetOptionsÚ	map_entry)Úfields    r   Ú_IsMapEntryr5   «   s?   € Ø
Œ*�
Ô2Ô?Ò
?ð 4Ø
Ô
Ô
(ð4à
Ô
×
'Ò
'Ñ
)Ô
)Ô
3ð5r   c                   ó`   — e Zd Z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S )r   z)JSON format printer for protocol message.FNc                 óˆ   — || _         || _        || _        || _        |rd                     |¦  «        | _        d S d | _        d S )Nz.{}g)r   r    r#   r$   ÚformatÚfloat_format)Úselfr   r    r#   r$   r   s         r   Ú__init__z_Printer.__init__´   sU   € ð +I€DÔ'Ø'B€DÔ$Ø"8€DÔØ*€DÔØð Ø Ÿ-š-¨Ñ8Ô8€dÔÐÐà€dÔÐÐr   c                 ó\   — |                       |¦  «        }t          j        ||||¬¦  «        S )N)r!   r"   r%   )r)   ÚjsonÚdumps)r:   r   r!   r"   r%   Újss         r   r   z_Printer.ToJsonStringÄ   s;   € Ø	×	"Ò	" 7Ñ	+Ô	+€BÝŒ:Ø
�6 Y¸\ðKñ Kô Kð Kr   c                 óü   — |j         }|j        }t          |¦  «        r|                      |¦  «        S |t          v r* t          t          |         d         |¦  «        | ¦  «        S i }|                      ||¦  «        S )zEConverts message to an object according to Proto3 JSON Specification.r   )Ú
DESCRIPTORÚ	full_nameÚ_IsWrapperMessageÚ_WrapperMessageToJsonObjectÚ_WKTJSONMETHODSr   Ú_RegularMessageToJsonObject)r:   r   Úmessage_descriptorrB   r?   s        r   r)   z_Printer._MessageToJsonObjectÉ   s‚   € à Ô+ÐØ"Ô,€IÝÐ+Ñ,Ô,ð 7Ø×-Ò-¨gÑ6Ô6Ð6Ø•OÐ#Ð#ØA�\�/¨)Ô4°QÔ7¸ÑAÔAÀ$ÑGÔGÐGØ	€BØ×+Ò+¨G°RÑ8Ô8Ð8r   c                 óB  ‡ ‡— |                      ¦   «         }	 |D �]\  Š}‰ j        r‰j        }n‰j        }t	          ‰¦  «        rj‰j        j        d         }i }|D ]M}t          |t          ¦  «        r|rd}	nd}	nt          |¦  «        }	‰  
                    |||         ¦  «        ||	<   ŒN|||<   Œ•‰j        t          j        j        k    rˆˆ fd„|D ¦   «         ||<   ŒÂ‰j        r$d‰j        z  }‰  
                    ‰|¦  «        ||<   Œí‰  
                    ‰|¦  «        ||<   �Œ‰ j        r»|j        }
|
j        D ]¬Š‰j        t          j        j        k    r‰j        t          j        j        k    s‰j        rŒ>‰ j        r‰j        }n‰j        }||v rŒYt	          ‰¦  «        ri ||<   Œn‰j        t          j        j        k    rg ||<   ŒŽ‰  
                    ‰‰j        ¦  «        ||<   Œ­n:# t0          $ r-}t3          d                     ‰j        |¦  «        ¦  «        ‚d}~ww xY w|S )z?Converts normal message according to Proto3 JSON Specification.ÚvalueÚtrueÚfalsec                 ó<   •— g | ]}‰                      ‰|¦  «        ‘ŒS r   )Ú_FieldToJsonObject)Ú.0Úkr4   r:   s     €€r   ú
<listcomp>z8_Printer._RegularMessageToJsonObject.<locals>.<listcomp>ï   s9   ø€ ð &ð &ð &Øð ×-Ò-¨e°QÑ7Ô7ð &ð &ð &r   z[%s]z#Failed to serialize {0} field: {1}.N)Ú
ListFieldsr    ÚnameÚ	json_namer5   r0   Úfields_by_nameÚ
isinstanceÚboolÚstrrM   Úlabelr   r.   ÚLABEL_REPEATEDÚis_extensionrB   r   rA   ÚfieldsÚcpp_typeÚCPPTYPE_MESSAGEÚcontaining_oneofÚdefault_valueÚ
ValueErrorr   r8   )r:   r   r?   r[   rI   rR   Úv_fieldÚjs_mapÚkeyÚrecorded_keyrG   Úer4   s   `           @r   rF   z$_Printer._RegularMessageToJsonObjectÔ   s¨  øø€ à×ÒÑ!Ô!€Fð8GØ ð ;ñ ;‰,ˆ%�ØÔ+ð 	!Ø”ˆ$ˆ$à”ˆ$Ý�uÑÔð 	;àÔ&Ô5°gÔ>ˆ'Øˆ&Øð 	%ð 	%ˆcÝ˜#�tÑ$Ô$ð &Øð 'Ø%��à&��å  ™XœXˆlØ#'×#:Ò#:Ø˜˜sœñ$%ô $%ˆF�<Ñ Ð àˆ"ˆT‰(ˆ(ØŒ[�JÔ6ÔEÒEÐEð&ð &ð &ð &ð &Ø$ð&ñ &ô &ˆ"ˆT‰(ˆ(àÔð 	;Ø˜%œ/Ñ)ˆ$Ø×,Ò,¨U°EÑ:Ô:ˆ"ˆT‰(ˆ(à×,Ò,¨U°EÑ:Ô:ˆ"ˆT‰(‰(ð 
Ô	,ð KØ$Ô/ÐØ'Ô.ð 	Kð 	KˆEàŒ{�jÔ8ÔGÒGÐGØŒ~¥Ô!;Ô!KÒKÐKØÔ$ð LàØÔ-ð #Ø”:ˆDˆDà”?ˆDØ�RˆZˆZàÝ˜ÑÔð KØˆBˆt‰HˆHØŒ{�jÔ8ÔGÒGÐGØˆBˆt‰HˆHà×.Ò.¨u°eÔ6IÑJÔJˆBˆt‰HˆHøøåð Gð Gð GÝ Ø
/×
6Ò
6°u´zÀ1Ñ
EÔ
EñGô Gð GøøøøðGøøøð €Is   ˜GG% Ç%
HÇ/(HÈHc                 óø  — |j         t          j        j        k    r|                      |¦  «        S |j         t          j        j        k    re| j        r|S |j        j        dk    rdS |j        j	         
                    |d¦  «        }|�|j        S |j        j        dk    r|S t          d¦  «        ‚|j         t          j        j        k    rC|j        t          j        j        k    r't%          j        |¦  «                             d¦  «        S |S |j         t          j        j        k    rt-          |¦  «        S |j         t.          v rt1          |¦  «        S |j         t2          v ršt5          j        |¦  «        r|dk     rt8          S t:          S t5          j        |¦  «        rt>          S |j         t          j        j         k    r=| j!        r"tE          tG          || j!        ¦  «        ¦  «        S tI          j%        |¦  «        S |S )z<Converts field value according to Proto3 JSON Specification.úgoogle.protobuf.NullValueNÚproto3zKEnum field contains an integer value which can not mapped to an enum value.úutf-8g        )&r\   r   r.   r]   r)   ÚCPPTYPE_ENUMr#   Ú	enum_typerB   Úvalues_by_numberÚgetrR   ÚfileÚsyntaxr   ÚCPPTYPE_STRINGr-   Ú
TYPE_BYTESÚbase64Ú	b64encodeÚdecodeÚCPPTYPE_BOOLrV   Ú_INT64_TYPESrW   Ú_FLOAT_TYPESÚmathÚisinfÚ_NEG_INFINITYÚ	_INFINITYÚisnanÚ_NANÚCPPTYPE_FLOATr9   Úfloatr8   r   ÚToShortestFloat)r:   r4   rI   Ú
enum_values       r   rM   z_Printer._FieldToJsonObject  sÖ  € à„~�Ô3ÔCÒCÐCØ×&Ò& uÑ-Ô-Ð-Ø	Œ�:Ô5ÔBÒ	BÐ	BØ	Ô	$ð ØˆØ	ŒÔ	"Ð&AÒ	AÐ	AØˆtØ”?Ô3×7Ò7¸¸tÑDÔD€jØ	Ð	ØŒÐàŒ:Ô Ò(Ð(Øˆ,Ý"ð $Lñ Mô Mð 	Mà	Œ�:Ô5ÔDÒ	DÐ	DØ	Œ•zÔ1Ô<Ò	<Ð	<åÔ Ñ&Ô&×-Ò-¨gÑ6Ô6Ð6àˆØ	Œ�:Ô5ÔBÒ	BÐ	BÝ�%‰[Œ[ÐØ	Œ�<Ð	'Ð	'Ý�‰ZŒZÐØ	Œ�<Ð	'Ð	'Ý	Œ�EÑ	Ô	ð Ø�3Š;ˆ;ÝÐ
åÐ
Ý	Œ�EÑ	Ô	ð ÝˆØ	Œ�:Ô5ÔCÒ	CÐ	CØÔð 	6Ý•v˜e TÔ%6Ñ7Ô7Ñ8Ô8Ð
8åÔ.¨uÑ5Ô5Ð
5à€Lr   c                 óÊ  — |                      ¦   «         si S t          ¦   «         }|j        }||d<   t          || j        ¦  «        }|                     |j        ¦  «         |j        }|j        }t          |¦  «        r|  
                    |¦  «        |d<   |S |t          v r/ t          t          |         d         |¦  «        | ¦  «        |d<   |S |                      ||¦  «        S )z<Converts Any message according to Proto3 JSON Specification.ú@typerI   r   )rQ   r   Útype_urlÚ_CreateMessageFromTypeUrlr$   ÚParseFromStringrI   rA   rB   rC   rD   rE   r   rF   )r:   r   r?   r„   Úsub_messagerG   rB   s          r   Ú_AnyMessageToJsonObjectz _Printer._AnyMessageToJsonObject?  sô   € à×ÒÑÔð Ø€iå	‰Œ€BØÔ€HØ€B€w�KÝ+¨H°dÔ6JÑKÔK€KØ×Ò ¤Ñ.Ô.Ð.Ø$Ô/ÐØ"Ô,€IÝÐ+Ñ,Ô,ð Ø×4Ò4°[ÑAÔA€bˆ�kØ€iØ•OÐ#Ð#ð.•L¥°Ô!;¸AÔ!>Ø!,ñ.ô .Ø.2ñ4ô 4€bˆ�kà€iØ×+Ò+¨K¸Ñ<Ô<Ð<r   c                 ó*   — |                      ¦   «         S )z8Converts message according to Proto3 JSON Specification.)r   ©r:   r   s     r   Ú_GenericMessageToJsonObjectz$_Printer._GenericMessageToJsonObjectT  s   € ð ×ÒÑ!Ô!Ð!r   c                 ó  — |                      d¦  «        }|�|dk    rdS |dk    r|                      |j        ¦  «        S |dk    r|j        }nt	          ||¦  «        }|j        j        |         }|                      ||¦  «        S )z>Converts Value message according to Proto3 JSON Specification.ÚkindNÚ
null_valueÚ
list_valueÚstruct_value)Ú
WhichOneofÚ_ListValueMessageToJsonObjectr�   r�   ÚgetattrrA   rT   rM   )r:   r   ÚwhichrI   Úoneof_descriptors        r   Ú_ValueMessageToJsonObjectz"_Printer._ValueMessageToJsonObjectZ  s™   € à×Ò˜vÑ&Ô&€Eð €}˜ Ò-Ð-ØˆTØ�ÒÐØ×/Ò/°Ô0BÑCÔCÐCØ�ÒÐØÔ"€e€eå�g˜uÑ%Ô%€eØÔ)Ô8¸Ô?ÐØ×"Ò"Ð#3°UÑ;Ô;Ð;r   c                 ó*   ‡ — ˆ fd„|j         D ¦   «         S )zBConverts ListValue message according to Proto3 JSON Specification.c                 ó:   •— g | ]}‰                      |¦  «        ‘ŒS r   )r–   )rN   rI   r:   s     €r   rP   z:_Printer._ListValueMessageToJsonObject.<locals>.<listcomp>l  s7   ø€ ð )ð )ð )Øð ×*Ò*¨5Ñ1Ô1ð )ð )ð )r   )ÚvaluesrŠ   s   ` r   r’   z&_Printer._ListValueMessageToJsonObjectj  s0   ø€ ð)ð )ð )ð )Ø œð)ñ )ô )ð )r   c                 ó^   — |j         }i }|D ] }|                      ||         ¦  «        ||<   Œ!|S )z?Converts Struct message according to Proto3 JSON Specification.)r[   r–   )r:   r   r[   Úretrc   s        r   Ú_StructMessageToJsonObjectz#_Printer._StructMessageToJsonObjecto  s?   € àŒ^€FØ
€CØð =ð =ˆØ×/Ò/°°s´Ñ<Ô<€cˆ#�h€hØ€Jr   c                 óX   — |                       |j        j        d         |j        ¦  «        S )NrI   )rM   rA   rT   rI   rŠ   s     r   rD   z$_Printer._WrapperMessageToJsonObjectw  s/   € Ø×"Ò"ØÔÔ)¨'Ô2°G´MñCô Cð Cr   ©FFFNN)r   r   r   r   r;   r   r)   rF   rM   rˆ   r‹   r–   r’   rœ   rD   r   r   r   r   r   ±   sß   € € € € € Ø1Ð1ð &+Ø"'Ø"ØØðð ð ð ð Kð Kð Kð
	9ð 	9ð 	9ð>ð >ð >ð@)ð )ð )ðV=ð =ð =ð*"ð "ð "ð<ð <ð <ð )ð )ð )ð
ð ð ðCð Cð Cð Cð Cr   r   c                 ó"   — | j         j        dk    S )Nzgoogle/protobuf/wrappers.proto)rn   rR   )rG   s    r   rC   rC   |  s   € Ø	Ô	 Ô	%Ð)IÒ	IÐIr   c                 óp   — i }| D ]0\  }}||v r"t          d                     |¦  «        ¦  «        ‚|||<   Œ1|S )Nz'Failed to load JSON: duplicate key {0}.)r   r8   )r?   ÚresultrR   rI   s       r   Ú_DuplicateCheckerr¢   €  sP   € Ø€&Øð ð �k€dˆEØˆv€~€~ÝÐ@×GÒGÈÑMÔMÑNÔNÐNØ€Fˆ4�L€LØ	€-r   c                 ó@  — t          j        ¦   «         }|€|j        n|}|                      d¦  «        d         }	 |                     |¦  «        }n0# t
          $ r# t          d                     | ¦  «        ¦  «        ‚w xY w|                     |¦  «        } |¦   «         S )z"Creates a message from a type URL.Nú/éÿÿÿÿz0Can not find message descriptor by type_url: {0})	r   ÚDefaultÚpoolÚsplitÚFindMessageTypeByNameÚKeyErrorÚ	TypeErrorr8   ÚGetPrototype)r„   r$   Údbr§   Ú	type_namerG   Úmessage_classs          r   r…   r…   ‰  s¸   € åÔÑ Ô €"Ø#Ð+ˆŒˆ°€$Ø�nŠn˜SÑ!Ô! "Ô%€)ðMØ×3Ò3°IÑ>Ô>ÐÐøÝ	ð Mð Mð MÝ
Ø:×AÒAÀ(ÑKÔKñMô Mð MðMøøøð —/’/Ð"4Ñ5Ô5€-Ø	ˆ‰ŒÐs   »A Á-A>éd   c                 ó8  — t          | t          ¦  «        s|                      d¦  «        } 	 t          j        | t
          ¬¦  «        }nA# t          $ r4}t          d                     t          |¦  «        ¦  «        ¦  «        ‚d}~ww xY wt          |||||¦  «        S )al  Parses a JSON representation of a protocol message into a message.

  Args:
    text: Message JSON representation.
    message: A protocol buffer message to merge into.
    ignore_unknown_fields: If True, do not raise errors for unknown fields.
    descriptor_pool: A Descriptor Pool for resolving types. If None use the
      default.
    max_recursion_depth: max recursion depth of JSON message to be
      deserialized. JSON messages over this depth will fail to be
      deserialized. Default value is 100.

  Returns:
    The same message passed as argument.

  Raises::
    ParseError: On JSON parsing problems.
  ri   )Úobject_pairs_hookzFailed to load JSON: {0}.N)
rU   rW   rt   r=   Úloadsr¢   r`   r   r8   Ú	ParseDict)Útextr   Úignore_unknown_fieldsr$   Úmax_recursion_depthr?   re   s          r   ÚParser¸   —  s¨   € õ. 
�D�#Ñ	Ô	ð  Ø�;Š;�wÑÔ€DðAÝ	Œ�DÕ,=Ð	>Ñ	>Ô	>€B€BøÝ	ð Að Að AÝ
Ð0×7Ò7½¸A¹¼Ñ?Ô?Ñ
@Ô
@Ð@øøøøðAøøøå	�2�wÐ 5°Ø&ñ
(ô 
(ð (s   ¬A Á
BÁ/BÂBc                 óV   — t          |||¦  «        }|                     | |d¦  «         |S )a8  Parses a JSON dictionary representation into a message.

  Args:
    js_dict: Dict representation of a JSON message.
    message: A protocol buffer message to merge into.
    ignore_unknown_fields: If True, do not raise errors for unknown fields.
    descriptor_pool: A Descriptor Pool for resolving types. If None use the
      default.
    max_recursion_depth: max recursion depth of JSON message to be
      deserialized. JSON messages over this depth will fail to be
      deserialized. Default value is 100.

  Returns:
    The same message passed as argument.
  Ú )Ú_ParserÚConvertMessage)Újs_dictr   r¶   r$   r·   Úparsers         r   r´   r´   ¸  s4   € õ( Ð(¨/Ð;NÑOÔO€&Ø×Ò˜ ¨"Ñ-Ô-Ð-Ø	€.r   c                   óN   — e 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S )r»   z(JSON format parser for protocol message.c                 ó>   — || _         || _        || _        d| _        d S )Nr   )r¶   r$   r·   Úrecursion_depth)r:   r¶   r$   r·   s       r   r;   z_Parser.__init__×  s(   € à!6€DÔØ*€DÔØ2€DÔØ€DÔÐÐr   c                 óÊ  — | xj         dz  c_         | j         | j        k    r't          d                     | j        ¦  «        ¦  «        ‚|j        }|j        }|s|j        }t          |¦  «        r|                      |||¦  «         nM|t          v r- t          t          |         d         |||¦  «        | ¦  «         n|                      |||¦  «         | xj         dz  c_         dS )a  Convert a JSON object into a message.

    Args:
      value: A JSON object.
      message: A WKT or regular protocol message to record the data.
      path: parent path to log parse error info.

    Raises:
      ParseError: In case of convert problems.
    é   z,Message too deep. Max recursion depth is {0}N)rÁ   r·   r   r8   rA   rB   rR   rC   Ú_ConvertWrapperMessagerE   r   Ú_ConvertFieldValuePair)r:   rI   r   ÚpathrG   rB   s         r   r¼   z_Parser.ConvertMessageÞ  s	  € ð 	ÐÔ˜AÑÐÔØÔ˜dÔ6Ò6Ð6ÝÐE×LÒLØ
Ô
"ñ$ô $ñ %ô %ð %à Ô+ÐØ"Ô,€IØð %ØÔ$€dÝÐ+Ñ,Ô,ð 8Ø
×!Ò! %¨°$Ñ7Ô7Ð7Ð7Ø	•oÐ	%Ð	%ØG…l•? 9Ô-¨aÔ0°%¸À$ÑGÔGÈÑMÔMÐMÐMà
×!Ò! %¨°$Ñ7Ô7Ð7ØÐÔ˜AÑÐÔÐÐr   c                 óÎ  — g }|j         }t          d„ |j        D ¦   «         ¦  «        }|D �]9}	 |                     |d¦  «        }|s|j                             |d¦  «        }|s¹t
                               |¦  «        rŸ|j        s(t          d 	                    |j
        |¦  «        ¦  «        ‚|dd…         }	|j                             |	¦  «        }|sJd                     |	                     d¦  «        dd…         ¦  «        }	|j                             |	¦  «        }|sA| j        rŒüt          d 	                    |j
        ||d„ |j        D ¦   «         ¦  «        ¦  «        ‚||v r.t          d	 	                    |j         j
        ||¦  «        ¦  «        ‚|                     |¦  «         ||         }
|j        �U|
�S|j        j        }||v r.t          d
 	                    |j         j
        ||¦  «        ¦  «        ‚|                     |¦  «         |
€¤|j        t(          j        j        k    r-|j        j
        dk    rt1          ||j        ¦  «        }d|_        n[|j        t(          j        j        k    r'|j        j
        dk    rt9          ||j        d¦  «         n|                     |j        ¦  «         �Œ†t=          |¦  «        rH|                     |j        ¦  «         |                      |
||d 	                    ||¦  «        ¦  «         �n¢|j         t(          j        j!        k    �r•|                     |j        ¦  «         tE          |
tF          ¦  «        s$t          d 	                    ||
|¦  «        ¦  «        ‚|j        t(          j        j        k    r tI          |
¦  «        D ]Ž\  }}t1          ||j        ¦  «         %                    ¦   «         }|€4|j         j
        dk    r$t          d 	                    |||¦  «        ¦  «        ‚|  &                    ||d 	                    |||¦  «        ¦  «         Œ��nztI          |
¦  «        D ]w\  }}|€$t          d 	                    |||¦  «        ¦  «        ‚t1          ||j        ¦  «                             tO          ||d 	                    |||¦  «        ¦  «        ¦  «         Œxnò|j        t(          j        j        k    rj|j(        r|j        |         }nt1          ||j        ¦  «        }| )                    ¦   «          |  &                    |
|d 	                    ||¦  «        ¦  «         nn|j(        r.tO          |
|d 	                    ||¦  «        ¦  «        |j        |<   n9t9          ||j        tO          |
|d 	                    ||¦  «        ¦  «        ¦  «         �Œ�# t          $ rM}|r*|j        €#t          d 	                    ||¦  «        ¦  «        ‚t          tU          |¦  «        ¦  «        ‚d}~wtV          $ r(}t          d 	                    ||¦  «        ¦  «        ‚d}~wtX          $ r(}t          d 	                    ||¦  «        ¦  «        ‚d}~ww xY wdS )a'  Convert field value pairs into regular message.

    Args:
      js: A JSON object to convert the field value pairs.
      message: A regular protocol message to record the data.
      path: parent path to log parse error info.

    Raises:
      ParseError: In case of problems converting.
    c              3   ó(   K  — | ]}|j         |fV — Œd S r,   ©rS   ©rN   Úfs     r   ú	<genexpr>z1_Parser._ConvertFieldValuePair.<locals>.<genexpr>  sE   è è € ð Cð CØ#$ð !"¤¨QÐ/ð Cð Cð Cð Cð Cð Cr   Nz0Message type {0} does not have extensions at {1}rÃ   r¥   ú.zaMessage type "{0}" has no field named "{1}" at "{2}".
 Available Fields(except extensions): "{3}"c                 ó   — g | ]	}|j         ‘Œ
S r   rÉ   rÊ   s     r   rP   z2_Parser._ConvertFieldValuePair.<locals>.<listcomp>$  s   € ÐCÐCÐC A�A”KÐCÐCÐCr   zBMessage type "{0}" should not have multiple "{1}" fields at "{2}".zHMessage type "{0}" should not have multiple "{1}" oneof fields at "{2}".úgoogle.protobuf.Valuer   rg   ú{0}.{1}z4repeated field {0} must be in [] which is {1} at {2}zPnull is not allowed to be used as an element in a repeated field at {0}.{1}[{2}]z{0}.{1}[{2}]zFailed to parse {0} field: {1}.)-rA   Údictr[   rm   rT   Ú_VALID_EXTENSION_NAMEÚmatchÚis_extendabler   r8   rB   Ú
ExtensionsÚ_FindExtensionByNameÚjoinr¨   r¶   Úappendr^   rR   r\   r   r.   r]   r0   r“   rŽ   rj   rk   ÚsetattrÚ
ClearFieldr5   Ú_ConvertMapFieldValuerX   rY   rU   ÚlistÚ	enumerateÚaddr¼   Ú_ConvertScalarFieldValuerZ   ÚSetInParentrW   r`   r«   )r:   r?   r   rÆ   ÚnamesrG   Úfields_by_json_namerR   r4   Ú
identifierrI   Ú
oneof_namer‡   ÚindexÚitemre   s                   r   rÅ   z_Parser._ConvertFieldValuePairù  sY  € ð €EØ Ô+ÐÝð Cð CØ(:Ô(AðCñ Cô Cñ Cô CÐàð qLñ qLˆðpLØ#×'Ò'¨¨dÑ3Ô3ˆØð 	DØ$Ô3×7Ò7¸¸dÑCÔCˆ%Øð 	HÕ.×4Ò4°TÑ:Ô:ð 	HØ#Ô1ð 9ÝØB×IÒIØ&Ô0°$ñ8ô 8ñ9ô 9ð 9ð ˜A˜b˜D”zˆ*àÔ$×9Ò9¸*ÑEÔEˆ%àð Hð Ÿš *×"2Ò"2°3Ñ"7Ô"7¸¸¸Ô"<Ñ=Ô=ˆJàÔ&×;Ò;¸JÑGÔGˆEàð 	FØÔ'ð ØÝð=ß>DºfØ%Ô/°°tØCÐCÐ);Ô)BÐCÑCÔCñ?Eô ?EñFô Fð Fð
 �5ˆ=ˆ=Ýð 4ß4:²FØ&Ô1Ô;¸TÀ4ñ5Iô 5IñJô Jð Jð 	�Š�TÑÔÐØ�4”ˆàÔ!Ð-°%Ð2CØÔ-Ô2ˆ*Ø˜5Ð Ð Ýð <ß<BºFØ!(Ô!3Ô!=¸zØ!%ñ='ô ='ñ(ô (ð (ð �,Š,�zÑ
"Ô
"Ð
"àˆ=ØŒn¥
Ô :Ô JÒJÐJØÔ$Ô.Ð2IÒIÐIÝ! '¨5¬:Ñ6Ô6ˆKØ%&ˆKÔ"Ð"Ø”¥*Ô"<Ô"IÒIÐIØ”OÔ-Ð1LÒLÐLÝ�G˜UœZ¨Ñ+Ô+Ð+Ð+à×Ò˜uœzÑ*Ô*Ð*Ù
õ �uÑÔð .	HØ
×
Ò
˜UœZÑ
(Ô
(Ð
(Ø
×
$Ò
$ U¨G°UØ%.×%5Ò%5°d¸DÑ%AÔ%AñCô Cð Cñ CàŒ[�JÔ6ÔEÒEÑEØ
×
Ò
˜UœZÑ
(Ô
(Ð
(Ý˜E¥4Ñ(Ô(ð EÝð *ß*0ª&°°u¸dÑ*CÔ*CñEô Eð EàŒ^�zÔ9ÔIÒIÐIå(¨Ñ/Ô/ð 	Lð 	L‘��tÝ# G¨U¬ZÑ8Ô8×<Ò<Ñ>Ô>ˆkà�,ØÔ(Ô2Ð6MÒMÐMÝ ð "HßHNÊØ%)¨4°ñI8ô I8ñ9ô 9ð 9ð ×!Ò! $¨Ø"0×"7Ò"7¸¸dÀEÑ"JÔ"JñLô Lð Lð Lñ	Lõ  )¨Ñ/Ô/ð Nð N‘��tØ�Ý ð "HßHNÊØ%)¨4°ñI8ô I8ñ9ô 9ð 9õ �g˜uœzÑ*Ô*×1Ò1Ý*Ø˜E >×#8Ò#8¸¸tÀUÑ#KÔ#KñMô MñNô Nð Nð NðNð Œ^�zÔ9ÔIÒIÐIØÔð 7Ø!Ô,¨UÔ3ˆKˆKå! '¨5¬:Ñ6Ô6ˆKØ
×
!Ò
!Ñ
#Ô
#Ð
#Ø
×
Ò
˜e [°)×2BÒ2BÀ4ÈÑ2NÔ2NÑ
OÔ
OÐ
OÐ
OàÔð HÝ(@Ø�u˜i×.Ò.¨t°TÑ:Ô:ñ)<ô )<ˆGÔ˜uÑ%Ð%õ Ø˜œÝ(¨°Ø)2×)9Ò)9¸$ÀÑ)EÔ)EñGô GñHô Hð Hùøõ ð #ð #ð #Øð 	#�UÔ+Ð3ÝÐ<×CÒCÀDÈ!ÑLÔLÑMÔMÐ
Må�3˜q™6œ6Ñ"Ô"Ð
"øøøøÝð Lð Lð LÝÐ:×AÒAÀ$ÈÑJÔJÑKÔKÐKøøøøÝð Lð Lð LÝÐ:×AÒAÀ$ÈÑJÔJÑKÔKÐKøøøøðLøøøðaqLð qLs?   ®C7V+Ä&FV+Ê0K9V+Ö+
Y"Ö5AW=×=Y"Ø
#X-Ø-Y"Ø:#YÙY"c           	      óü  — t          |t          ¦  «        r|sdS 	 |d         }n0# t          $ r# t          d                     |¦  «        ¦  «        ‚w xY w	 t          || j        ¦  «        }n5# t          $ r(}t          d                     ||¦  «        ¦  «        ‚d}~ww xY w|j        }|j	        }t          |¦  «        r1|                      |d         |d                     |¦  «        ¦  «         nn|t          v rF t          t          |         d         |d         |d                     |¦  «        ¦  «        | ¦  «         n|d= |                      |||¦  «         ||d<   |                     ¦   «         |_        ||_        dS )z/Convert a JSON representation into Any message.Nrƒ   z0@type is missing when parsing any message at {0}ú
{0} at {1}rI   ú	{0}.valuerÃ   )rU   rÑ   rª   r   r8   r…   r$   r«   rA   rB   rC   rÄ   rE   r   rÅ   ÚSerializeToStringrI   r„   )	r:   rI   r   rÆ   r„   r‡   re   rG   rB   s	            r   Ú_ConvertAnyMessagez_Parser._ConvertAnyMessage{  sÇ  € å�%�ÑÔð  uð Ø€fðKØ�w”€h€høÝð Kð Kð KÝØ
<×
CÒ
CÀDÑ
IÔ
IñKô Kð KðKøøøð5Ý-¨h¸Ô8LÑMÔM€k€køÝð 5ð 5ð 5Ý�|×*Ò*¨1¨dÑ3Ô3Ñ4Ô4Ð4øøøøð5øøøà$Ô/ÐØ"Ô,€IÝÐ+Ñ,Ô,ð 
 Ø
×!Ò! %¨¤.°+Ø"-×"4Ò"4°TÑ":Ô":ñ<ô <ð <ð <à	•oÐ	%Ð	%ð-…l•? 9Ô-¨aÔ0°%¸´.À+Ø×%Ò% dÑ+Ô+ñ-ô -àñô ð ð ð �ˆ.Ø
×!Ò! %¨°dÑ;Ô;Ð;Ø€eˆG�nà×1Ò1Ñ3Ô3€G„MØ€GÔÐÐs!   ›$ ¤-AÁA+ Á+
BÁ5#BÂBc                 óœ   — 	 |                      |¦  «         dS # t          $ r(}t          d                     ||¦  «        ¦  «        ‚d}~ww xY w)z?Convert a JSON representation into message with FromJsonString.rè   N)ÚFromJsonStringr`   r   r8   )r:   rI   r   rÆ   re   s        r   Ú_ConvertGenericMessagez_Parser._ConvertGenericMessageš  s^   € ð5Ø×Ò˜UÑ#Ô#Ð#Ð#Ð#øÝð 5ð 5ð 5Ý�|×*Ò*¨1¨dÑ3Ô3Ñ4Ô4Ð4øøøøð5øøøs   ‚ ™
A£#AÁAc                 óú  — t          |t          ¦  «        r|                      ||j        |¦  «         dS t          |t          ¦  «        r|                      ||j        |¦  «         dS |€	d|_        dS t          |t          ¦  «        r	||_	        dS t          |t          ¦  «        r	||_        dS t          |t          ¦  «        r	||_        dS t          d                     |t!          |¦  «        |¦  «        ¦  «        ‚)z1Convert a JSON representation into Value message.Nr   z(Value {0} has unexpected type {1} at {2})rU   rÑ   Ú_ConvertStructMessager�   rÜ   Ú_ConvertListValueMessager�   rŽ   rV   Ú
bool_valuerW   Ústring_valueÚ_INT_OR_FLOATÚnumber_valuer   r8   r-   )r:   rI   r   rÆ   s       r   Ú_ConvertValueMessagez_Parser._ConvertValueMessage£  s  € å�%�ÑÔð %Ø
× Ò  ¨Ô(<¸dÑCÔCÐCÐCÐCÝ	�E�4Ñ	 Ô	 ð %Ø
×#Ò# E¨7Ô+=¸tÑDÔDÐDÐDÐDØ	ˆØ€gÔÐÐÝ	�E�4Ñ	 Ô	 ð %Ø €gÔÐÐÝ	�E�3Ñ	Ô	ð %Ø"€gÔÐÐÝ	�E�=Ñ	)Ô	)ð %Ø"€gÔÐÐåÐA×HÒHØ
•�e‘”˜dñ$ô $ñ %ô %ð %r   c           	      óN  — t          |t          ¦  «        s#t          d                     ||¦  «        ¦  «        ‚|                     d¦  «         t          |¦  «        D ]G\  }}|                      ||j                             ¦   «         d                     ||¦  «        ¦  «         ŒHdS )z5Convert a JSON representation into ListValue message.z+ListValue must be in [] which is {0} at {1}r™   ú{0}[{1}]N)	rU   rÜ   r   r8   rÚ   rÝ   rö   r™   rÞ   )r:   rI   r   rÆ   rå   ræ   s         r   rñ   z _Parser._ConvertListValueMessageµ  sÁ   € å�e�TÑ"Ô"ð ÝÐD×KÒKØ
�ñô ñ ô ð à×Ò�xÑ Ô Ð Ý  Ñ'Ô'ð @ð @‰ˆˆtØ
×Ò  g¤n×&8Ò&8Ñ&:Ô&:Ø *× 1Ò 1°$¸Ñ >Ô >ñ@ô @ð @ð @ð@ð @r   c           	      ó   — t          |t          ¦  «        s#t          d                     ||¦  «        ¦  «        ‚|                     ¦   «          |D ]>}|                      ||         |j        |         d                     ||¦  «        ¦  «         Œ?dS )z2Convert a JSON representation into Struct message.z,Struct must be in a dict which is {0} at {1}rÐ   N)rU   rÑ   r   r8   ÚClearrö   r[   )r:   rI   r   rÆ   rc   s        r   rð   z_Parser._ConvertStructMessage¿  s    € å�e�TÑ"Ô"ð ÝÐE×LÒLØ
�ñô ñ ô ð ð ‡M‚M�O„O€OØð =ð =ˆØ
×Ò  c¤
¨G¬N¸3Ô,?Ø )× 0Ò 0°°sÑ ;Ô ;ñ=ô =ð =ð =à
€Fr   c                 ó’   — |j         j        d         }t          |dt          ||d                     |¦  «        ¬¦  «        ¦  «         dS )z3Convert a JSON representation into Wrapper message.rI   ré   ©rÆ   N)rA   rT   rÙ   rß   r8   )r:   rI   r   rÆ   r4   s        r   rÄ   z_Parser._ConvertWrapperMessageÌ  sX   € àÔÔ-¨gÔ6€EÝØ�Ý  ¨°K×4FÒ4FÀtÑ4LÔ4LÐMÑMÔMñOô Oð Oð Oð Or   c           	      ól  — t          |t          ¦  «        s)t          d                     |j        ||¦  «        ¦  «        ‚|j        j        d         }|j        j        d         }|D ]Î}t          ||d                     |¦  «        d¦  «        }|j        t          j
        j        k    rK|                      ||         t          ||j        ¦  «        |         d                     ||¦  «        ¦  «         ŒŒt          ||         |d                     ||¦  «        ¬¦  «        t          ||j        ¦  «        |<   ŒÏdS )	af  Convert map field value for a message map field.

    Args:
      value: A JSON object to convert the map field value.
      message: A protocol message to record the converted data.
      field: The descriptor of the map field to be converted.
      path: parent path to log parse error info.

    Raises:
      ParseError: In case of convert problems.
    z3Map field {0} must be in a dict which is {1} at {2}rc   rI   z{0}.keyTrø   rü   N)rU   rÑ   r   r8   rR   r0   rT   rß   r\   r   r.   r]   r¼   r“   )	r:   rI   r   r4   rÆ   Ú	key_fieldÚvalue_fieldrc   Ú	key_values	            r   rÛ   z_Parser._ConvertMapFieldValueÓ  sV  € õ �e�TÑ"Ô"ð (ÝØ
?×
FÒ
FØŒj˜% ñ'ô 'ñ(ô (ð (ð Ô"Ô1°%Ô8€IØÔ$Ô3°GÔ<€KØð 	Nð 	NˆÝ*¨3°	Ø+4×+;Ò+;¸DÑ+AÔ+AÀ4ñIô I€ià	Ô	¥Ô!;Ô!KÒ	KÐ	KØ×Ò˜E #œJÝ# G¨U¬ZÑ8Ô8¸ÔCØ&×-Ò-¨d°IÑ>Ô>ñ	@ô 	@ð 	@ð 	@õ 3KØ�#ŒJ˜¨*×*;Ò*;¸DÀ)Ñ*LÔ*Lð3Nñ 3Nô 3N��˜œÑ$Ô$ YÑ/Ð/ð	Nð 	Nr   N)r   r   r   r   r;   r¼   rÅ   rë   rî   rö   rñ   rð   rÄ   rÛ   r   r   r   r»   r»   Ô  sÂ   € € € € € Ø0Ð0ðð ð ðð ð ð6@Lð @Lð @LðD ð  ð  ð>5ð 5ð 5ð%ð %ð %ð$@ð @ð @ðð ð ðOð Oð OðNð Nð Nð Nð Nr   r»   c                 ó’  — 	 |j         t          v rt          | ¦  «        S |j         t          v rt	          | |¦  «        S |j         t
          j        j        k    rt          | |¦  «        S |j         t
          j        j	        k    r¡|j
        t
          j        j        k    r\t          | t          ¦  «        r|                      d¦  «        }n| }|ddt          |¦  «        dz  z
  z  z   }t!          j        |¦  «        S t$                               | ¦  «        rt)          d¦  «        ‚| S |j         t
          j        j        k    rÖ|j        j                             | d¦  «        }|€­	 t3          | ¦  «        }|j        j                             |d¦  «        }n;# t6          $ r. t)          d                     | |j        j        ¦  «        ¦  «        ‚w xY w|€?|j        j        dk    r|S t)          d                     | |j        j        ¦  «        ¦  «        ‚|j         S dS # t(          $ r(}t)          d                     ||¦  «        ¦  «        ‚d}~ww xY w)	aq  Convert a single scalar field value.

  Args:
    value: A scalar value to convert the scalar field value.
    field: The descriptor of the field to convert.
    path: parent path to log parse error info.
    require_str: If True, the field value must be a str.

  Returns:
    The converted scalar field value

  Raises:
    ParseError: In case of convert problems.
  ri   ó   =é   zUnpaired surrogateNz(Invalid enum value {0} for enum type {1}rh   rè   )!r\   Ú
_INT_TYPESÚ_ConvertIntegerrw   Ú_ConvertFloatr   r.   ru   Ú_ConvertBoolrp   r-   rq   rU   rW   ÚencodeÚlenrr   Úurlsafe_b64decodeÚ_UNPAIRED_SURROGATE_PATTERNÚsearchr   rj   rk   Úvalues_by_namerm   Úintrl   r`   r8   rB   rn   ro   Únumber)	rI   r4   rÆ   Úrequire_strÚencodedÚpadded_valuer�   r  re   s	            r   rß   rß   ñ  sT  € ð(3Ø„~�Ð#Ð#Ý˜UÑ#Ô#Ð#Ø	Œ�<Ð	'Ð	'Ý˜5 %Ñ(Ô(Ð(Ø	Œ�:Ô5ÔBÒ	BÐ	BÝ˜% Ñ-Ô-Ð-Ø	Œ�:Ô5ÔDÒ	DÐ	DØ	Œ•zÔ1Ô<Ò	<Ð	<Ý�e�SÑ!Ô!ð 	Ø—L’L Ñ)Ô)ˆ'ˆ'àˆ'à ¨­S°©\¬\¸AÑ-=Ñ)=Ñ!>Ñ>ˆÝÔ'¨Ñ5Ô5Ð5õ '×-Ò-¨eÑ4Ô4ð 	1ÝÐ/Ñ0Ô0Ð
0ØˆØ	Œ�:Ô5ÔBÒ	BÐ	Bà”?Ô1×5Ò5°e¸TÑBÔB€jØ	Ð	ð	1Ý�u‘:”:ˆ&Ø”Ô7×;Ò;¸FÀDÑIÔIˆ*ˆ*øÝð 	1ð 	1ð 	1ÝÐE×LÒLØ�U”_Ô.ñ0ô 0ñ 1ô 1ð 1ð	1øøøð ÐØŒZÔ (Ò*Ð*àˆMÝÐE×LÒLØ�U”_Ô.ñ0ô 0ñ 1ô 1ð 1àÔÐð! 
CÐ	Bøõ" 
ð 3ð 3ð 3Ý
�\×(Ò(¨¨DÑ1Ô1Ñ
2Ô
2Ð2øøøøð3øøøsR   ‚H ŸH ½)H Á'BH Ã7*H Ä"<H Å/F ÆH Æ8GÇH Ç3H È
IÈ#IÉIc                 óÄ  — t          | t          ¦  «        r6|                      ¦   «         s"t          d                     | ¦  «        ¦  «        ‚t          | t
          ¦  «        r;|                      d¦  «        dk    r"t          d                     | ¦  «        ¦  «        ‚t          | t          ¦  «        r"t          d                     | ¦  «        ¦  «        ‚t          | ¦  «        S )z§Convert an integer.

  Args:
    value: A scalar value to convert.

  Returns:
    The integer value.

  Raises:
    ParseError: If an integer couldn't be consumed.
  zCouldn't parse integer: {0}ú r¥   zCouldn't parse integer: "{0}"z2Bool value {0} is not acceptable for integer field)	rU   r   Ú
is_integerr   r8   rW   ÚfindrV   r  )rI   s    r   r  r  +  sÎ   € õ �•uÑÔð C e×&6Ò&6Ñ&8Ô&8ð CÝ
Ð3×:Ò:¸5ÑAÔAÑ
BÔ
BÐBå�•sÑÔð E §
¢
¨3¡¤°2Ò 5Ð 5Ý
Ð5×<Ò<¸UÑCÔCÑ
DÔ
DÐDå�•tÑÔð 4Ý
ð %ß%+¢V¨E¡]¤]ñ4ô 4ð 4õ 
ˆU‰ŒÐr   c                 óä  — t          | t          ¦  «        r³t          j        | ¦  «        rt	          d¦  «        ‚t          j        | ¦  «        r$| dk    rt	          d¦  «        ‚t	          d¦  «        ‚|j        t          j        j	        k    r>| t          j        k    rt	          d¦  «        ‚| t          j        k     rt	          d¦  «        ‚| dk    rt	          d¦  «        ‚	 t          | ¦  «        S # t          $ rw | t          k    rt          d	¦  «        cY S | t          k    rt          d
¦  «        cY S | t           k    rt          d¦  «        cY S t	          d                     | ¦  «        ¦  «        ‚w xY w)z!Convert an floating point number.z,Couldn't parse NaN, use quoted "NaN" insteadr   zICouldn't parse Infinity or value too large, use quoted "Infinity" insteadzKCouldn't parse -Infinity or value too small, use quoted "-Infinity" insteadzFloat value too largezFloat value too smallÚnanz-Couldn't parse float "nan", use "NaN" insteadz-infÚinfzCouldn't parse float: {0})rU   r   rx   r|   r   ry   r\   r   r.   r~   r   Ú
_FLOAT_MAXÚ
_FLOAT_MINr`   rz   r{   r}   r8   )rI   r4   s     r   r  r  D  s‰  € å�•uÑÔð 2Ý„z�%ÑÔð HÝÐFÑGÔGÐGÝ„z�%ÑÔð ;Ø	�ŠˆÝð 9ñ :ô :ð 	:õ ð :ñ ;ô ;ð 	;à„~�Ô3ÔAÒAÐAà	•Ô)Ò	)Ð	)ÝÐ0Ñ1Ô1Ð1à	•Ô)Ò	)Ð	)ÝÐ0Ñ1Ô1Ð1Ø
ˆe‚^€^Ý
ÐEÑ
FÔ
FÐFðCå�‰<Œ<ÐøÝ	ð 	Cð 	Cð 	Cà•ÒÐÝ�6‰]Œ]ÐÐÐØ	•)Ò	Ð	Ý�5‰\Œ\ÐÐÐØ	•$ŠˆÝ�5‰\Œ\ÐÐÐåÐ3×:Ò:¸5ÑAÔAÑBÔBÐBð	Cøøøs   ÃC. Ã.$E/ÄE/Ä0E/Å#E/c                 ó¶   — |r2| dk    rdS | dk    rdS t          d                     | ¦  «        ¦  «        ‚t          | t          ¦  «        st          d¦  «        ‚| S )zÞConvert a boolean value.

  Args:
    value: A scalar value to convert.
    require_str: If True, value must be a str.

  Returns:
    The bool parsed.

  Raises:
    ParseError: If a boolean value couldn't be consumed.
  rJ   TrK   Fz#Expected "true" or "false", not {0}z%Expected true or false without quotes)r   r8   rU   rV   )rI   r  s     r   r  r  h  sn   € ð ð LØ�‚€ØˆTØ	�'Ò	Ð	ØˆUåÐ<×CÒCÀEÑJÔJÑKÔKÐKå	�E�4Ñ	 Ô	 ð >Ý
Ð<Ñ
=Ô
=Ð=Ø	€,r   rˆ   rë   r‹   rî   r’   rñ   rœ   rð   r–   rö   )zgoogle.protobuf.Anyzgoogle.protobuf.Durationzgoogle.protobuf.FieldMaskzgoogle.protobuf.ListValuezgoogle.protobuf.Structzgoogle.protobuf.TimestamprÏ   )FFr   FFNNTrž   )FNr°   )F)9r   Ú
__author__rr   Úcollectionsr   r=   rx   Úoperatorr   ÚreÚsysÚgoogle.protobuf.internalr   Úgoogle.protobufr   r   Ú_TIMESTAMPFOMATÚ	frozensetr.   ÚCPPTYPE_INT32ÚCPPTYPE_UINT32ÚCPPTYPE_INT64ÚCPPTYPE_UINT64r  rv   r~   ÚCPPTYPE_DOUBLErw   r{   rz   r}   Úcompiler  rÒ   Ú	Exceptionr   r   r   r'   r*   r5   Úobjectr   rC   r¢   r…   r¸   r´   r  r   rô   r»   rß   r  r  r  rE   r   r   r   ú<module>r.     sð  ðð>
ð 
ð +€
ð €€€Ø #Ð #Ð #Ð #Ð #Ð #Ø €€€Ø €€€Ø !Ð !Ð !Ð !Ð !Ð !Ø 	€	€	€	Ø 
€
€
€
à 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø &Ð &Ð &Ð &Ð &Ð &Ø +Ð +Ð +Ð +Ð +Ð +ð &€ØˆY˜
Ô2Ô@Ø"Ô2ÔAØ"Ô2Ô@Ø"Ô2ÔAðCñ Dô D€
ð ˆy˜*Ô4ÔBØ$Ô4ÔCðEñ Fô F€àˆy˜*Ô4ÔBØ$Ô4ÔCðEñ Fô F€à€	Ø€Ø€à(˜bœjØMñOô OÐ ð #˜œ
Ð#:Ñ;Ô;Ð ð0ð 0ð 0ð 0ð 0ˆIñ 0ô 0ð 0ð/ð /ð /ð /ð /˜5ñ /ô /ð /ð)ð )ð )ð )ð )�ñ )ô )ð )ð $)Ø %ØØØ ØØØð(Hð (Hð (Hð (HðZ $)Ø %Ø ØØð#/ð #/ð #/ð #/ðL5ð 5ð 5ðHCð HCð HCð HCð HCˆvñ HCô HCð HCðVJð Jð Jðð ð ðð ð ð  !&ØØ!ð	(ð (ð (ð (ðF %*Ø"Ø"%ð	ð ð ð ð2 �e�€ðZNð ZNð ZNð ZNð ZNˆfñ ZNô ZNð ZNðz73ð 73ð 73ð 73ðtð ð ð2!Cð !Cð !CðHð ð ð4 6Ø0ð2à!>Ø!9ð!;à"?Ø":ð"<à"AØ"<ð">à;Ø6ð8à"?Ø":ð"<à9Ø4ð6ðð €€€r   