£Á°è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>

j fO                 @   s   d  Z  d d l Z i
 d d 6d d 6d d 6d	 d
 6d d 6d d 6d d 6d d 6d d 6d d 6Z d d   Z d d   Z d d   Z e d k r e   n  d S)z<Safely evaluate Python string literals without using eval().    Nabf
nr	tv'"\c             C   s  |  j  d d  \ } } | j d  s- t  t j |  } | d  k	 rL | S| j d  r | d d   } t |  d k  r t d |   n  y t | d  } Wqt k
 r t d |   YqXn8 y t | d  } Wn" t k
 rt d	 |   Yn Xt |  S)
Nr      r   x   z!invalid hex string escape ('\%s')      z#invalid octal string escape ('\%s'))	group
startswithAssertionErrorsimple_escapesgetlen
ValueErrorintchr)malltailescZhexesi r&   ;/opt/alt/python34/lib64/python3.4/lib2to3/pgen2/literals.pyescape   s$    r(   c             C   s   |  j  d  s: |  j  d  s: t t |  d  d     |  d } |  d  d  | d k rk | d } n  |  j |  s t t |  t |  d      t |   d t |  k s t  |  t |  t |   }  t j d t |   S)Nr   r   r   r      r   z)\\(\'|\"|\\|[abfnrtv]|x.{0,2}|[0-7]{1,3}))r   r   reprendswithr   resubr(   )sqr&   r&   r'   
evalString(   s    :
2"r0   c              C   sa   xZ t  d  D]L }  t |   } t |  } t |  } | | k r t |  | | |  q q Wd  S)N   )ranger    r*   r0   print)r%   cr.   er&   r&   r'   test2   s    r6   __main__)__doc__r,   r   r(   r0   r6   __name__r&   r&   r&   r'   <module>   s    


	