
    h,                         U d Z ddlZddddddd	d
ddd
Zeeef   ed<   dej                  e   defdZdedefdZd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   simple_escapesmreturnc                    | j                  dd      \  }}|j                  d      sJ t        j                  |      }||S |j                  d      r:|dd  }t	        |      dk  rt        d| d      	 t        |d      }t        |      S 	 t        |d	      }t        |      S # t
        $ r t        d| d      d w xY w# t
        $ r t        d
| d      d w xY w)Nr      r   x   zinvalid hex string escape ('\z')      zinvalid octal string escape ('\)group
startswithr   getlen
ValueErrorintchr)r   alltaileschexesis         J/var/www/html/immo/lib/python3.12/site-packages/blib2to3/pgen2/literals.pyescaper*      s   1IC>>$


T
"C

sQRu:>=dV2FGG	RE2A q6M		TD!A q6M  	R=dV2FGTQ	R
  	T?vRHItS	Ts   6B% C %B?Csc                    | 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*   )r+   qs     r)   
evalStringr3   ,   s    <<S 1>4"1;>1	!A!uA~E::a=,$q#a&|,,=q6QQZ	#a&CF7A66>JJ    c                      t        d      D ]7  } t        |       }t        |      }t        |      }||k7  s*t	        | |||       9 y )N   )ranger#   r.   r3   print)r(   cr+   es       r)   testr;   7   sE    3Z FGqM6!Q1r4   __main__)r   N)__doc__r0   r   dictstr__annotations__Matchr*   r3   r;   __name__ r4   r)   <module>rD      s    C 	 
								
"S#X bhhsm  ,K# K# K zF r4   