
    dafc                     V    d Z ddlZddddddd	d
ddd
Zd Zd Zd Zedk(  r e        yy)z<Safely evaluate Python string literals without using eval().    N
	'"\)
abfnrtvr
   r   r   c                    | j                  dd      \  }}|j                  d      sJ t        j                  |      }||S |j                  d      r9|dd  }t	        |      dk  rt        d|z        	 t        |d      }t        |      S 	 t        |d      }t        |      S # t
        $ r t        d|z        d w xY w# t
        $ r t        d	|z        d w xY w)
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taileschexesis         1/root/Python-3.12.4/Lib/lib2to3/pgen2/literals.pyescaper)      s    1IC>>$


T
"C

sQRu:>ADHII	TE2A q6M		VD!A q6M  	TADHItS	T
  	VCdJKQUU	Vs   5B$ C  $B= Cc                    | j                  d      s$| j                  d      sJ t        | d d              | d   }| d d |dz  k(  r|dz  }| j                  |      sJ t        | t        |       d               t        |       dt        |      z  k\  sJ | t        |      t        |        } t	        j
                  dt        |       S )Nr
   r   r   r      r   z)\\(\'|\"|\\|[abfnrtv]|x.{0,2}|[0-7]{1,3}))r   reprendswithr   resubr)   )sqs     r(   
evalStringr2   (   s    <<S 1>4"1;>1	!A!u!|aC::a=+$q#a&{++=q6Qs1vX	#a&#a&A66>JJ    c                      t        d      D ]7  } t        |       }t        |      }t        |      }||k7  s*t	        | |||       9 y )N   )ranger!   r,   r2   print)r'   cr0   es       r(   testr:   2   sE    3Z FGqM6!Q1r3   __main__)__doc__r.   r   r)   r2   r:   __name__ r3   r(   <module>r?      sW    C 		*K zF r3   