£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
a
    XC?hc                     @   sP   d Z ddlZddddddd	d
ddd
Zdd Zdd Zdd ZedkrLe  dS )z<Safely evaluate Python string literals without using eval().    N
	'"\)
abfnrtvr	   r
   r   c                 C   s   |  dd\}}|dsJ t|}|d ur4|S |dr|dd  }t|dk rbtd| zt|d}W q ty   td| d Y q0 n0zt|d}W n  ty   td	| d Y n0 t|S )
Nr      r   x   z!invalid hex string escape ('\%s')      z#invalid octal string escape ('\%s'))group
startswithsimple_escapesgetlen
ValueErrorintchr)malltailZescZhexesi r$   ;/opt/alt/python39/lib64/python3.9/lib2to3/pgen2/literals.pyescape   s$    

r&   c                 C   s   |  ds(|  ds(J t| d d | d }| d d |d krL|d }| |spJ t| t| d  t| dt| ksJ | t|t|  } tdt| S )Nr	   r
   r   r      r   z)\\(\'|\"|\\|[abfnrtv]|x.{0,2}|[0-7]{1,3}))r   reprendswithr   resubr&   )sqr$   r$   r%   
evalString(   s    ($r.   c                  C   s@   t dD ]2} t| }t|}t|}||krt| ||| qd S )N   )ranger   r(   r.   print)r#   cr,   er$   r$   r%   test2   s    r4   __main__)__doc__r*   r   r&   r.   r4   __name__r$   r$   r$   r%   <module>   s"   
	