£Á°è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>
U
    if                     @   s\   d dl Z ddlmZ G dd deZdZi Ze D ]"Zer4e	 \Z
Zeeeee
< q4dS )    N   )tokenc                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )Grammarc                 C   s<   i | _ i | _g | _i | _dg| _i | _i | _i | _d| _d S )N)r   ZEMPTY   )	symbol2numbernumber2symbolstatesdfaslabelskeywordstokenssymbol2labelstart)self r   :/opt/alt/python38/lib64/python3.8/lib2to3/pgen2/grammar.py__init__L   s    zGrammar.__init__c              	   C   s,   t |d}t| j|tj W 5 Q R X d S )Nwb)openpickledump__dict__ZHIGHEST_PROTOCOL)r   filenamefr   r   r   r   W   s    zGrammar.dumpc              	   C   s0   t |d}t|}W 5 Q R X | j| d S )Nrb)r   r   loadr   update)r   r   r   dr   r   r   r   \   s    zGrammar.loadc                 C   s   | j t| d S )N)r   r   r   loads)r   Zpklr   r   r   r   b   s    zGrammar.loadsc                 C   sT   |   }dD ]}t||t| |  q| jd d  |_| jd d  |_| j|_|S )N)r   r   r	   r   r   r   )	__class__setattrgetattrcopyr
   r   r   )r   newZ	dict_attrr   r   r   r"   f   s    zGrammar.copyc                 C   sv   ddl m } td || j td || j td || j td || j td || j td| j d S )	Nr   )pprintZs2nZn2sr   r	   r
   r   )r$   printr   r   r   r	   r
   r   )r   r$   r   r   r   reports   s    




zGrammar.reportN)	__name__
__module____qualname__r   r   r   r   r"   r&   r   r   r   r   r      s   6r   a  
( LPAR
) RPAR
[ LSQB
] RSQB
: COLON
, COMMA
; SEMI
+ PLUS
- MINUS
* STAR
/ SLASH
| VBAR
& AMPER
< LESS
> GREATER
= EQUAL
. DOT
% PERCENT
` BACKQUOTE
{ LBRACE
} RBRACE
@ AT
@= ATEQUAL
== EQEQUAL
!= NOTEQUAL
<> NOTEQUAL
<= LESSEQUAL
>= GREATEREQUAL
~ TILDE
^ CIRCUMFLEX
<< LEFTSHIFT
>> RIGHTSHIFT
** DOUBLESTAR
+= PLUSEQUAL
-= MINEQUAL
*= STAREQUAL
/= SLASHEQUAL
%= PERCENTEQUAL
&= AMPEREQUAL
|= VBAREQUAL
^= CIRCUMFLEXEQUAL
<<= LEFTSHIFTEQUAL
>>= RIGHTSHIFTEQUAL
**= DOUBLESTAREQUAL
// DOUBLESLASH
//= DOUBLESLASHEQUAL
-> RARROW
:= COLONEQUAL
)r    r   objectr   Z	opmap_rawZopmap
splitlineslinesplitopnamer!   r   r   r   r   <module>   s   o3