ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     U
    e5d8m                     @   s   d Z ddlZddlmZ dZi add ZG dd deZG d	d
 d
eZ	G dd deZ
dd ZG dd deZG dd deZG dd deZG dd deZG dd deZdd ZdS )z#Guido van Rossum <guido@python.org>    N)StringIOic                 C   sD   t s8ddlm} |j D ]\}}t|tkr|t |< qt | | S )N   )python_symbols)_type_reprsZpygramr   __dict__itemstypeint
setdefault)Ztype_numr   nameval r   &/usr/lib64/python3.8/lib2to3/pytree.py	type_repr   s     
r   c                   @   s   e Zd ZdZdZdZdZdZdd Zdd Z	dZ
dd	 Zd
d Zdd Zdd Zdd Zdd Zdd Zdd Zedd Zedd Zdd Zdd Zd d! Zejd"k rd#d$ ZdS )%BaseNr   Fc                 O   s
   t | S Nobject__new__clsargskwdsr   r   r   r   1   s    zBase.__new__c                 C   s   | j |j k	rtS | |S r   )	__class__NotImplemented_eqselfotherr   r   r   __eq__6   s    zBase.__eq__c                 C   s   t d S r   NotImplementedErrorr   r   r   r   r   B   s    	zBase._eqc                 C   s   t d S r   r    r   r   r   r   cloneM   s    z
Base.clonec                 C   s   t d S r   r    r"   r   r   r   
post_orderU   s    zBase.post_orderc                 C   s   t d S r   r    r"   r   r   r   	pre_order]   s    zBase.pre_orderc                 C   s~   t |ts|g}g }d}| jjD ].}|| krD|d k	r>|| d}q || q | j  || j_|D ]}| j|_qfd | _d S NFT)
isinstancelistparentchildrenextendappendchanged)r   newZ
l_childrenfoundchxr   r   r   replacee   s    



zBase.replacec                 C   s*   | }t |ts$|jsd S |jd }q|jS Nr   )r'   Leafr*   linenor   noder   r   r   
get_lineno|   s    
zBase.get_linenoc                 C   s   | j r| j   d| _d S NT)r)   r-   was_changedr"   r   r   r   r-      s    
zBase.changedc                 C   sJ   | j rFt| j jD ]2\}}|| kr| j   | j j|= d | _ |  S qd S r   )r)   	enumerater*   r-   )r   ir7   r   r   r   remove   s    

zBase.removec              	   C   s`   | j d krd S t| j jD ]@\}}|| krz| j j|d  W   S  tk
rX   Y  d S X qd S )Nr   )r)   r;   r*   
IndexErrorr   r<   childr   r   r   next_sibling   s    
zBase.next_siblingc                 C   sR   | j d krd S t| j jD ]2\}}|| kr|dkr8 d S | j j|d    S qd S Nr   r   )r)   r;   r*   r?   r   r   r   prev_sibling   s    
zBase.prev_siblingc                 c   s   | j D ]}| E d H  qd S r   )r*   leavesr   r@   r   r   r   rD      s    
zBase.leavesc                 C   s   | j d krdS d| j   S rB   )r)   depthr"   r   r   r   rF      s    
z
Base.depthc                 C   s   | j }|d krdS |jS N )rA   prefix)r   Znext_sibr   r   r   
get_suffix   s    zBase.get_suffix   r   c                 C   s   t | dS )Nascii)strencoder"   r   r   r   __str__   s    zBase.__str__)__name__
__module____qualname__r   r)   r*   r:   Zwas_checkedr   r   __hash__r   r#   r$   r%   r2   r8   r-   r=   propertyrA   rC   rD   rF   rJ   sysversion_inforP   r   r   r   r   r      s2   
	



r   c                   @   s   e Zd ZdddZdd Zdd Zejdkr0eZd	d
 Z	dd Z
dd Zdd Zedd Zejdd Zdd Zdd Zdd ZdS )NodeNc                 C   sN   || _ t|| _| jD ]
}| |_q|d k	r0|| _|rD|d d  | _nd | _d S r   )r   r(   r*   r)   rI   fixers_applied)r   r   r*   contextrI   rY   r0   r   r   r   __init__   s    

zNode.__init__c                 C   s   d| j jt| j| jf S )Nz
%s(%s, %r))r   rQ   r   r   r*   r"   r   r   r   __repr__   s    zNode.__repr__c                 C   s   d tt| jS rG   )joinmaprN   r*   r"   r   r   r   __unicode__   s    zNode.__unicode__rK   c                 C   s   | j | jf|j |jfkS r   )r   r*   r   r   r   r   r      s    zNode._eqc                 C   s   t | jdd | jD | jdS )Nc                 S   s   g | ]}|  qS r   )r#   ).0r0   r   r   r   
<listcomp>  s     zNode.clone.<locals>.<listcomp>rY   )rX   r   r*   rY   r"   r   r   r   r#     s    z
Node.clonec                 c   s$   | j D ]}| E d H  q| V  d S r   )r*   r$   rE   r   r   r   r$     s    
zNode.post_orderc                 c   s$   | V  | j D ]}| E d H  qd S r   )r*   r%   rE   r   r   r   r%     s    
zNode.pre_orderc                 C   s   | j s
dS | j d jS )NrH   r   r*   rI   r"   r   r   r   rI     s    zNode.prefixc                 C   s   | j r|| j d _d S r3   rc   r   rI   r   r   r   rI     s    c                 C   s(   | |_ d | j| _ || j|< |   d S r   )r)   r*   r-   r?   r   r   r   	set_child   s    
zNode.set_childc                 C   s    | |_ | j|| |   d S r   )r)   r*   insertr-   r?   r   r   r   insert_child*  s    zNode.insert_childc                 C   s   | |_ | j| |   d S r   )r)   r*   r,   r-   rE   r   r   r   append_child3  s    zNode.append_child)NNN)rQ   rR   rS   r[   r\   r_   rV   rW   rP   r   r#   r$   r%   rU   rI   setterre   rg   rh   r   r   r   r   rX      s&      




	rX   c                   @   s   e Zd ZdZdZdZddg fddZdd Zdd	 Ze	j
d
krBeZdd Zdd Zdd Zdd Zdd Zedd Zejdd ZdS )r4   rH   r   Nc                 C   sF   |d k	r|\| _ \| _| _|| _|| _|d k	r4|| _ |d d  | _d S r   )_prefixr5   columnr   valuerY   )r   r   rl   rZ   rI   rY   r   r   r   r[   F  s    zLeaf.__init__c                 C   s   d| j j| j| jf S )Nz
%s(%r, %r))r   rQ   r   rl   r"   r   r   r   r\   Y  s    zLeaf.__repr__c                 C   s   | j t| j S r   )rI   rN   rl   r"   r   r   r   r_   _  s    zLeaf.__unicode__rK   c                 C   s   | j | jf|j |jfkS r   )r   rl   r   r   r   r   r   j  s    zLeaf._eqc                 C   s$   t | j| j| j| j| jff| jdS )Nrb   )r4   r   rl   rI   r5   rk   rY   r"   r   r   r   r#   n  s    
z
Leaf.clonec                 c   s
   | V  d S r   r   r"   r   r   r   rD   t  s    zLeaf.leavesc                 c   s
   | V  d S r   r   r"   r   r   r   r$   w  s    zLeaf.post_orderc                 c   s
   | V  d S r   r   r"   r   r   r   r%   {  s    zLeaf.pre_orderc                 C   s   | j S r   )rj   r"   r   r   r   rI     s    zLeaf.prefixc                 C   s   |    || _d S r   )r-   rj   rd   r   r   r   rI     s    )rQ   rR   rS   rj   r5   rk   r[   r\   r_   rV   rW   rP   r   r#   rD   r$   r%   rU   rI   ri   r   r   r   r   r4   =  s(   


r4   c                 C   sN   |\}}}}|s|| j kr<t|dkr.|d S t|||dS t|||dS d S )Nr   r   )rZ   )Znumber2symbollenrX   r4   )ZgrZraw_noder   rl   rZ   r*   r   r   r   convert  s    rn   c                   @   sL   e Zd ZdZdZdZdd Zdd Zdd Zddd	Z	dd
dZ
dd ZdS )BasePatternNc                 O   s
   t | S r   r   r   r   r   r   r     s    zBasePattern.__new__c                 C   sH   t | j| j| jg}|r,|d d kr,|d= qd| jjdtt|f S )Nz%s(%s)z, )	r   r   contentr   r   rQ   r]   r^   repr)r   r   r   r   r   r\     s    zBasePattern.__repr__c                 C   s   | S r   r   r"   r   r   r   optimize  s    zBasePattern.optimizec                 C   sn   | j d k	r|j | j krdS | jd k	rRd }|d k	r4i }| ||sDdS |rR|| |d k	rj| jrj||| j< dS r&   )r   rq   	_submatchupdater   )r   r7   resultsrr   r   r   match  s    


zBasePattern.matchc                 C   s    t |dkrdS | |d |S )Nr   Fr   )rm   rx   )r   nodesrv   r   r   r   	match_seq  s    zBasePattern.match_seqc                 c   s&   i }|r"|  |d |r"d|fV  d S rB   )rx   )r   ry   rw   r   r   r   generate_matches  s    zBasePattern.generate_matches)N)N)rQ   rR   rS   r   rq   r   r   r\   rs   rx   rz   r{   r   r   r   r   ro     s   


ro   c                   @   s*   e Zd ZdddZd	ddZd
ddZdS )LeafPatternNc                 C   s&   |d k	r|d k	r|| _ || _|| _d S r   )r   rq   r   )r   r   rq   r   r   r   r   r[     s
    zLeafPattern.__init__c                 C   s   t |tsdS t| ||S NF)r'   r4   ro   rx   r   r7   rv   r   r   r   rx   
  s    
zLeafPattern.matchc                 C   s   | j |jkS r   )rq   rl   r~   r   r   r   rt     s    zLeafPattern._submatch)NNN)N)N)rQ   rR   rS   r[   rx   rt   r   r   r   r   r|     s   

r|   c                   @   s$   e Zd ZdZdddZdddZdS )	NodePatternFNc                 C   sP   |d k	r|d k	r:t |}t|D ]\}}t|tr d| _q || _|| _|| _d S r9   )r(   r;   r'   WildcardPattern	wildcardsr   rq   r   )r   r   rq   r   r<   itemr   r   r   r[   $  s    
zNodePattern.__init__c                 C   s   | j rHt| j|jD ].\}}|t|jkr|d k	r<||  dS qdS t| jt|jkr`dS t| j|jD ]\}}|||sn dS qndS NTF)r   r{   rq   r*   rm   ru   ziprx   )r   r7   rv   crw   
subpatternr@   r   r   r   rt   A  s    
zNodePattern._submatch)NNN)N)rQ   rR   rS   r   r[   rt   r   r   r   r   r      s   
r   c                   @   sZ   e Zd ZddedfddZdd ZdddZdd	d
Zdd Zdd Z	dd Z
dd ZdS )r   Nr   c                 C   s<   |d k	r t tt |}|D ]}q|| _|| _|| _|| _d S r   )tupler^   rq   minmaxr   )r   rq   r   r   r   altr   r   r   r[   k  s    zWildcardPattern.__init__c                 C   s   d }| j d k	r<t| j dkr<t| j d dkr<| j d d }| jdkr| jdkr| j d krft| jdS |d k	r| j|jkr| S | jdkrt|tr|jdkr| j|jkrt|j | j|j | j|j |jS | S )Nr   r   )r   )	rq   rm   r   r   r   r   rs   r'   r   )r   r   r   r   r   rs     s.    




zWildcardPattern.optimizec                 C   s   |  |g|S r   )rz   r~   r   r   r   rx     s    zWildcardPattern.matchc                 C   sP   |  |D ]@\}}|t|kr
|d k	rD|| | jrDt||| j<  dS q
dS r   )r{   rm   ru   r   r(   )r   ry   rv   r   rw   r   r   r   rz     s    
zWildcardPattern.match_seqc              	   c   s,  | j d krTt| jdtt|| j D ]*}i }| jrF|d | || j< ||fV  q&n| jdkrl| |V  nttdrtj	}t
 t_	zz<| |dD ]*\}}| jr|d | || j< ||fV  qW nL tk
r   | |D ]*\}}| jr|d | || j< ||fV  qY nX W 5 ttdr&|t_	X d S )Nr   Z	bare_namegetrefcountr   )rq   ranger   rm   r   r   _bare_name_matcheshasattrrV   stderrr   _recursive_matchesRuntimeError_iterative_matches)r   ry   countrw   Zsave_stderrr   r   r   r{     s.    
 

z WildcardPattern.generate_matchesc                 c   s   t |}d| jkrdi fV  g }| jD ]0}t||D ] \}}||fV  |||f q4q&|rg }|D ]\}}	||k rd|| jkrd| jD ]`}t|||d  D ]H\}
}|
dkri }||	 || ||
 |fV  |||
 |f qqqd|}qXd S r3   )rm   r   rq   r{   r,   r   ru   )r   ry   Znodelenrv   r   r   rw   Znew_resultsc0r0c1r1r   r   r   r     s*    






z"WildcardPattern._iterative_matchesc                 C   sp   d}i }d}t |}|sV||k rVd}| jD ](}|d || |r*|d7 }d} qq*q|d | || j< ||fS )Nr   FTr   )rm   rq   rx   r   )r   ry   r   rw   Zdoner   Zleafr   r   r   r     s    
z"WildcardPattern._bare_name_matchesc           	      c   s   || j krdi fV  || jk r| jD ]`}t||D ]P\}}| ||d  |d D ].\}}i }|| || || |fV  qRq2q$d S rB   )r   r   rq   r{   r   ru   )	r   ry   r   r   r   r   r   r   rw   r   r   r   r   
  s    



 

z"WildcardPattern._recursive_matches)N)N)rQ   rR   rS   HUGEr[   rs   rx   rz   r{   r   r   r   r   r   r   r   r   ]  s   #

-r   c                   @   s.   e Zd Zd
ddZdd Zdd Zdd	 ZdS )NegatedPatternNc                 C   s   |d k	r|| _ d S r   )rq   )r   rq   r   r   r   r[     s    	zNegatedPattern.__init__c                 C   s   dS r}   r   r6   r   r   r   rx   (  s    zNegatedPattern.matchc                 C   s   t |dkS r3   )rm   )r   ry   r   r   r   rz   ,  s    zNegatedPattern.match_seqc                 c   sJ   | j d kr"t|dkrFdi fV  n$| j |D ]\}} d S di fV  d S r3   )rq   rm   r{   )r   ry   r   rw   r   r   r   r{   0  s    
zNegatedPattern.generate_matches)N)rQ   rR   rS   r[   rx   rz   r{   r   r   r   r   r     s   
r   c           	      c   s   | sdi fV  n|| d | dd   }}| |D ]Z\}}|sH||fV  q0t |||d  D ].\}}i }|| || || |fV  qZq0d S rB   )r{   ru   )	Zpatternsry   prestr   r   r   r   rw   r   r   r   r{   <  s    

r{   )
__author__rV   ior   r   r   r   r   r   rX   r4   rn   ro   r|   r   r   r   r{   r   r   r   r   <module>   s"   
 1nNV,= =#