+
     hx  c                   s:   R t ^ RIt/ tR]^	&   R]^
&   R]^&   R]^"&   R]^'&   R]^\&   ]! ^ R4       U u. uF  p ]! V 4      NK  	  up t]P                  4        F  w  tt]]]&   K  	  ]! ^ ^ 4       U u. uF  p R	V ,          NK  	  up ]! ^ ^4       U u. uF  p ]! V 4      NK  	  up ,           ]! ^R4       U u. uF  p R	V ,          NK  	  up ,           t	]P                  4        F  w  tt]]	]&   K  	  AAR
 t
]P                  ! R4      tR tR# u up i u up i u up i u up i )zEncoding related utilities.Nz\tz\nz\rz\"z\'z\\i   z\%03oc                s  a \        V \        4      pV'       d   V'       d   V P                  \        4      # V'       d   \        MR oV'       d   RP                  V3R lV  4       4      # RP                  V3R lV  4       4      # )a]  Escape a bytes string for use in an text protocol buffer.

Args:
  text: A byte string to be escaped.
  as_utf8: Specifies if result may contain non-ASCII characters.
      In Python 3 this allows unescaped non-ASCII Unicode characters.
      In Python 2 the return value will be valid UTF-8 rather than only ASCII.
Returns:
  Escaped string (str).
c                 s    V # N) )Zx   &B/usr/lib/python3.14/site-packages/google/protobuf/text_encoding.pyZ<lambda>ZCEscape.<locals>.<lambda>M   s    q    Z c              3   J   <"   T F  p\         S! V4      ,          x  K  	  R # 5ir    )_cescape_unicode_to_strZ.0Zcord_   & r   	<genexpr>CEscape.<locals>.<genexpr>O   s     BT*4733T    #c              3   r   r    )_cescape_byte_to_strr   r   r   r	   r
   P   s     =1%d1g..r   )Z
isinstanceZstrZ	translate_cescape_chr_to_symbol_mapZordZjoin)textZas_utf8Ztext_is_unicoder   s   && @r   CEscaper   8   s\    " tS)/>>455[$77BTBBB	==	==r   z"(\\+)x([0-9a-fA-F])(?![0-9a-fA-F])c                s    R p\         P                  W4      pVP                  R4      P                  R4      P                  R4      # )zUnescape a text string with C-style escape sequences to UTF-8 bytes.

Args:
  text: The data to parse in a str.
Returns:
  A byte string.
c                 s    \        V P                  ^4      4      ^,          '       d/   V P                  ^4      R,           V P                  ^4      ,           # V P                  ^ 4      # )i   Zx0)ZlenZgroup)Zmr   r   
ReplaceHexZCUnescape.<locals>.ReplaceHex`   sI     1771:WWQZ$++771:r   zutf-8Zunicode_escapeZraw_unicode_escape)_CUNESCAPE_HEXZsubZencodeZdecode)r   r   Zresults   &  r   	CUnescaper   V   s@     j/&
--
 6"#6&')r   )Z__doc__Zrer   ZrangeZchrr   ZitemsZbyteZstringr   r   Zcompiler   r   )Zis   0r   <module>r      sU  > " 	  % 1 !& 2 !& 2 !& 2 !& 2 !& 2  ,1C=9=a3q6=9 .446LD&"($ 7 05Q|<|!A|<).r38AQ89/4S#?!A?@  /446LD&%t 7&>6 AB)W :
 =8?s   D	0DD3D