§
    ‘Mºf¹H ã                   ó  — d dl mZ d dlZddlmZmZmZmZ dZd Z	dZ
dZdZdZdZd	„ Zd
„ Zd„ Zd„ Zd„ Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d „ d!e¦  «        Z G d"„ d#e¦  «        Z G d$„ d%e¦  «        Z  G d&„ d'e ¦  «        Z! G d(„ d)e¦  «        Z" G d*„ d+e#¦  «        Z$ e$e	d,¬-¦  «        e$_%        e&d.k    r e'd/¦  «         e$j%        Z( e'e(¦  «          G d0„ d1e$¦  «        Z)e&d.k    �r e)¦   «         Z( e'e(¦  «          e)d2dd3d4¬5¦  «        Z( e'e(¦  «          e)¦   «         Z(e( *                    d¦  «         +                    d2¦  «         ,                    d3¦  «         -                    d4¦  «          e'e(¦  «          e'e( .                    ¦   «         ¦  «          e'e( /                    ¦   «         ¦  «          e'e( 0                    ¦   «         ¦  «          e'e( 1                    ¦   «         ¦  «          G d6„ d7e)¦  «        Z2 G d8„ d9e#¦  «        Z3 G d:„ d;e#¦  «        Z4 G d<„ d=e4¦  «        Z5 G d>„ d?e#¦  «        Z6 G d@„ dAe#¦  «        Z7 G dB„ dCe#¦  «        Z8 G dD„ dEe7¦  «        Z9 G dF„ dGe7¦  «        Z: G dH„ dIe:¦  «        Z; G dJ„ dK¦  «        Z< G dL„ dMe#¦  «        Z= G dN„ dOe7¦  «        Z> G dP„ dQ¦  «        Z? G dR„ dSe#¦  «        Z@dT„ ZAdU„ ZB G dV„ dWe#¦  «        ZC G dX„ dYe#¦  «        ZD G dZ„ d[e#¦  «        ZE G d\„ d]eE¦  «        ZF G d^„ d_e#¦  «        ZG G d`„ dae#¦  «        ZHdb„ ZIdc„ ZJ G dd„ dee#¦  «        ZK G df„ dgeK¦  «        ZL G dh„ dieK¦  «        ZM G dj„ dkeM¦  «        ZN G dl„ dmeN¦  «        ZO G dn„ doe#¦  «        ZP G dp„ dqe#¦  «        ZQ G dr„ dse#¦  «        ZR eL¦   «         ZSdt„ ZTdu„ ZUdv„ ZVdw„ ZWdS )xé    )Úprint_functionNé   )ÚlongÚ
basestringÚ	int_typesÚxrangeéÿÿÿÿé   é   Ú c                  ó   — ddddddœ} | S )NÚ2Ú7Ú5r   z2.7.5)ÚmajorÚminorÚmicroÚpatchÚversion© )Úrs    úI/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/xlwt/antlr.pyr   r   G   s$   € àØØØØð	
ð 	
€Að €Hó    c                 óN   — | r"t          d| t          |¦  «        z  ¦  «         d S d S )Núerror: )ÚprintÚtuple)ÚfmtÚargss     r   Úerrorr    R   s5   € Ø
ð ,Ýˆi˜�u T™{œ{Ñ*Ñ+Ô+Ð+Ð+Ð+ð,ð ,r   c                 ó   — | r|}n|}|S ©Nr   )ÚcondÚ_thenÚ_elser   s       r   Úifelser&   V   s   € Øð ØˆˆàˆØ€Hr   c                 ó*   — t          t          ¦  «        S r"   )Ú
isinstancer   ©Úxs    r   Úis_string_typer+   ]   s   € õ •jÑ!Ô!Ð!r   c                 ó(   — t          | ¦  «        sJ ‚d S r"   )r+   r)   s    r   Úassert_string_typer-   b   s   € Ý˜!ÑÔÐÐÐØ€Dr   c                   ó   — e Zd Zd„ ZdS )ÚANTLRExceptionc                 ó*   — t          j        | g|¢R Ž  d S r"   )Ú	ExceptionÚ__init__©Úselfr   s     r   r2   zANTLRException.__init__l   s!   € ÝÔ˜4Ð' $Ð'Ð'Ð'Ð'Ð'Ð'r   N©Ú__name__Ú
__module__Ú__qualname__r2   r   r   r   r/   r/   j   s#   € € € € € ð(ð (ð (ð (ð (r   r/   c                   ó   — e Zd Zd„ Zd„ ZeZdS )ÚRecognitionExceptionc                 ó  — t          j        | g|¢R Ž  d | _        d| _        d| _        t          |¦  «        dk    r|d         | _        t          |¦  «        dk    r|d         | _        t          |¦  «        dk    r|d         | _        d S d S )Nr	   é   r   r
   r   )r/   r2   ÚfileNameÚlineÚcolumnÚlenr3   s     r   r2   zRecognitionException.__init__r   s‰   € ÝÔ Ð, tÐ,Ð,Ð,Ð,ØˆŒØˆŒ	ØˆŒÝˆt‰9Œ9˜Š>ˆ>Ø  œGˆDŒMÝˆt‰9Œ9˜Š>ˆ>Ø˜QœˆDŒIÝˆt‰9Œ9˜Š>ˆ>Ø˜qœ'ˆDŒKˆKˆKð ˆ>r   c                 óî  — dg}| j         r|                     | j         dz   ¦  «         | j        dk    r�| j         s|                     d¦  «         |                     t          | j        ¦  «        ¦  «         | j        dk    r*|                     dt          | j        ¦  «        z   ¦  «         |                     d¦  «         |                     d¦  «         t          d¦  «                             |¦  «        S )Nr   ú:r	   zline ú )r=   Úappendr>   Ústrr?   Újoin)r4   Úbufs     r   Ú__str__zRecognitionException.__str__~   sÑ   € ØˆdˆØŒ=ð 	,Ø�JŠJ�t”} sÑ*Ñ+Ô+Ð+ØŒ9˜Š?ˆ?Ø”=ð $Ø—
’
˜7Ñ#Ô#Ð#Ø�JŠJ•s˜4œ9‘~”~Ñ&Ô&Ð&ØŒ{˜bÒ Ð Ø—
’
˜3¥ T¤[Ñ!1Ô!1Ñ1Ñ2Ô2Ð2Ø�JŠJ�s‰OŒOˆOØ�
Š
�3‰ŒˆÝ�2‰wŒw�|Š|˜CÑ Ô Ð r   N©r6   r7   r8   r2   rH   Ú__repr__r   r   r   r:   r:   p   s3   € € € € € ð
"ð 
"ð 
"ð!ð !ð !ð €H€H€Hr   r:   c                   ó   — e Zd Zd„ Zd„ ZeZdS )ÚNoViableAltExceptionc                 ó  — t          j        | g|¢R Ž  d | _        d | _        t	          |d         t
          ¦  «        r|d         | _        d S t	          |d         t          ¦  «        r|d         | _        d S t          d¦  «        ‚)Nr   z3NoViableAltException requires Token or AST argument)r:   r2   ÚtokenÚnoder(   ÚASTÚTokenÚ	TypeErrorr3   s     r   r2   zNoViableAltException.__init__‘   s„   € ÝÔ% dÐ2¨TÐ2Ð2Ð2Ð2ØˆŒ
ØˆŒ	Ý�d˜1”g�cÑ"Ô"ð 	SØ˜QœˆDŒIˆIˆIÝ˜˜Qœ¥Ñ&Ô&ð 	SØ˜aœˆDŒJˆJˆJåÐQÑRÔRÐRr   c                 ó,  — | j         rW| j                              ¦   «         }| j                              ¦   «         }| j                              ¦   «         }d|›d|›d|›d�S | j        t
          k    rdS | j        sJ ‚d| j                             ¦   «         z  S )Nzunexpected symbol at line z	 (column z): "ú"zunexpected end of subtreezunexpected node: %s)rN   ÚgetLineÚ	getColumnÚgetTextrO   ÚASTNULL)r4   r>   ÚcolÚtexts       r   rH   zNoViableAltException.__str__œ   sž   € ØŒ:ð 	XØ”:×%Ò%Ñ'Ô'ˆDØ”:×'Ò'Ñ)Ô)ˆCØ”:×%Ò%Ñ'Ô'ˆDˆDØIMÈÈÈcÈcÈcÐRVÐRVÐRVÐWÐWØŒ9�ÒÐØ.Ð.ØŒyÐÐÐà$¨¬	×(9Ò(9Ñ(;Ô(;Ñ<Ð<r   NrI   r   r   r   rL   rL   �   s6   € € € € € ð	Sð 	Sð 	Sð
=ð 
=ð 
=ð €H€H€Hr   rL   c                   ó   — e Zd Zd„ Zd„ ZeZdS )ÚNoViableAltForCharExceptionc                 óü  — d | _         t          |¦  «        dk    rk|d         | _         |d         }t                               | d|                     ¦   «         |                     ¦   «         |                     ¦   «         ¦  «         d S t          |¦  «        dk    rE|d         | _         |d         }|d         }|d         }t                               | d|||¦  «         d S t                               | dddd¦  «         d S )	Nr<   r   r   ÚNoViableAltr   r
   r   r	   )Ú	foundCharr@   r:   r2   ÚgetFilenamerU   rV   )r4   r   Úscannerr=   r>   r?   s         r   r2   z$NoViableAltForCharException.__init__­   s  € ØˆŒÝˆt‰9Œ9˜Š>ˆ>Ø! !œWˆDŒNØ˜1”gˆGÝ ×)Ò)¨$°Ø*1×*=Ò*=Ñ*?Ô*?Ø*1¯/ª/Ñ*;Ô*;Ø*1×*;Ò*;Ñ*=Ô*=ñ?ô ?ð ?ð ?ð ?õ �‰YŒY˜!Š^ˆ^Ø! !œWˆDŒNØ˜A”wˆHØ˜”7ˆDØ˜!”WˆFÝ ×)Ò)¨$°Ø*2°D¸&ñBô Bð Bð Bð Bõ !×)Ò)¨$°Ø*,¨b°"ñ6ô 6ð 6ð 6ð 6r   c                 óô   — d}| j         dk    r| j         dk    r|d| j         z   dz   z  }nN| j         rB|dt          t          | j         ¦  «        ¦  «                             ¦   «         dd …         z   z  }n|dz  }|S )Nzunexpected char: rC   ú~ú'Ú0xr<   z<None>)r_   ÚhexÚordÚupper)r4   Úmesgs     r   rH   z#NoViableAltForCharException.__str__Á   s‰   € Ø"ˆØŒ>˜SÒ Ð  T¤^°sÒ%:Ð%:Ø�C˜$œ.Ñ(¨3Ñ.Ñ.ˆDˆDØŒ^ð 	Ø�D�3�s 4¤>Ñ2Ô2Ñ3Ô3×9Ò9Ñ;Ô;¸A¸B¸BÔ?Ñ?Ñ?ˆDˆDà�HÑˆDØˆr   NrI   r   r   r   r\   r\   «   s3   € € € € € ð6ð 6ð 6ð(ð ð ð €H€H€Hr   r\   c                   ó   — e Zd Zd„ ZdS )ÚSemanticExceptionc                 ó*   — t          j        | g|¢R Ž  d S r"   )r:   r2   r3   s     r   r2   zSemanticException.__init__Ð   ó!   € ÝÔ% dÐ2¨TÐ2Ð2Ð2Ð2Ð2Ð2r   Nr5   r   r   r   rk   rk   Î   ó#   € € € € € ð3ð 3ð 3ð 3ð 3r   rk   c                   ó@   — e Zd ZdZdZdZdZdZdZdZ	d„ Z
d	„ Zd
„ ZeZdS )ÚMismatchedCharExceptionr   r   r<   r
   r   é   é   c                 ó¢  — || _         t          |¦  «        dk    rÄ|d         rt          j        | _        nt          j        | _        |d         | _        |d         | _        |d         | _        |d         | _	        t                               | d| j	                             ¦   «         | j	                             ¦   «         | j	                             ¦   «         ¦  «         d S t          |¦  «        dk    rÌt          |d         ¦  «        r·|d         rt          j        | _        nt          j        | _        |d         | _        |d         | _        |d         | _	        t                               | d| j	                             ¦   «         | j	                             ¦   «         | j	                             ¦   «         ¦  «         d S t          |¦  «        dk    rÒt%          |d         t&          ¦  «        r·|d         rt          j        | _        nt          j        | _        |d         | _        |d         | _        |d         | _	        t                               | d	| j	                             ¦   «         | j	                             ¦   «         | j	                             ¦   «         ¦  «         d S t          j        | _        t                               | d¦  «         d S )
Nrq   r
   r   r   r<   r   zMismatched char rangezMismatched charzMismatched char set)r   r@   rp   Ú	NOT_RANGEÚmismatchTypeÚRANGEr_   Ú	expectingrh   ra   r:   r2   r`   rU   rV   r+   ÚNOT_CHARÚCHARr(   ÚBitSetÚNOT_SETÚSETÚsetÚNONEr3   s     r   r2   z MismatchedCharException.__init__Þ   sƒ  € ØˆŒ	Ýˆt‰9Œ9˜Š>ˆ>à�AŒwð BÝ$;Ô$E�Ô!Ð!å$;Ô$A�Ô!Ø! !œWˆDŒNØ! !œWˆDŒNØ˜aœˆDŒJØ œ7ˆDŒLÝ ×)Ò)¨$Ð0GØ*.¬,×*BÒ*BÑ*DÔ*DØ*.¬,×*>Ò*>Ñ*@Ô*@Ø*.¬,×*@Ò*@Ñ*BÔ*BñDô Dð Dð Dð Dõ �‰YŒY˜!Š^ˆ^¥¨t°A¬wÑ 7Ô 7ˆ^à�AŒwð AÝ$;Ô$D�Ô!Ð!å$;Ô$@�Ô!Ø! !œWˆDŒNØ! !œWˆDŒNØ œ7ˆDŒLÝ ×)Ò)¨$Ð0AØ*.¬,×*BÒ*BÑ*DÔ*DØ*.¬,×*>Ò*>Ñ*@Ô*@Ø*.¬,×*@Ò*@Ñ*BÔ*BñDô Dð Dð Dð Dõ �‰YŒY˜!Š^ˆ^¥
¨4°¬7µFÑ ;Ô ;ˆ^à�AŒwð @Ý$;Ô$C�Ô!Ð!å$;Ô$?�Ô!Ø! !œWˆDŒNØ˜A”wˆDŒHØ œ7ˆDŒLÝ ×)Ò)¨$Ð0EØ*.¬,×*BÒ*BÑ*DÔ*DØ*.¬,×*>Ò*>Ñ*@Ô*@Ø*.¬,×*@Ò*@Ñ*BÔ*BñDô Dð Dð Dð Dõ
 !8Ô <ˆDÔÝ ×)Ò)¨$Ð0AÑBÔBÐBÐBÐBr   c                 ó(  — |r|dk    r|                      d¦  «         d S |dk    r|                      d¦  «         d S |dk    r|                      d¦  «         d S |dk    r|                      d¦  «         d S |                      d	|z   d	z   ¦  «         d S )
Niÿÿ  z'<EOF>'ú
z'\n'úz'\r'ú	z'\t'rd   )rD   )r4   ÚsbÚcs      r   ÚappendCharNamez&MismatchedCharException.appendCharName  s­   € Øð 
	'�A˜’J�Jà�IŠI�iÑ Ô Ð Ð Ð Ø�$ŠYˆYØ�IŠI�gÑÔÐÐÐØ�$ŠYˆYØ�IŠI�gÑÔÐÐÐØ�$ŠYˆYØ�IŠI�gÑÔÐÐÐà�IŠI�d˜Q‘h ‘oÑ&Ô&Ð&Ð&Ð&r   c                 ó  — dg}|                      t                               | ¦  «        ¦  «         | j        t          j        k    rb|                      d¦  «         |                      || j        ¦  «         |                      d¦  «         |                      || j        ¦  «         �n3| j        t          j	        k    rG|                      d¦  «         |                      || j        ¦  «         |                      d¦  «         �n×| j        t          j
        t          j        fv rÐ|                      d¦  «         | j        t          j        k    r|                      d¦  «         |                      d¦  «         |                      || j        ¦  «         |                      d	¦  «         |                      || j        ¦  «         |                      d¦  «         |                      || j        ¦  «         nè| j        t          j        t          j        fv rÉ|                      d¦  «         | j        t          j        k    r|                      d¦  «         |                      d
¦  «         t          t!          | j        ¦  «        ¦  «        D ]#}|                      || j        |         ¦  «         Œ$|                      d¦  «         |                      || j        ¦  «         t%          ¦   «                              |¦  «                             ¦   «         S )Nr   ú
expecting ú, found úexpecting anything but 'ú'; got it anywayzexpecting char úNOT ú
in range: ú..úone of (ú	), found )rD   r:   rH   ru   rp   ry   r…   rw   r_   rx   rv   rt   rh   r|   r{   Úranger@   r}   rE   rF   Ústrip©r4   rƒ   Úis      r   rH   zMismatchedCharException.__str__  s¡  € ØˆTˆØ
�	Š	Õ&×.Ò.¨tÑ4Ô4Ñ5Ô5Ð5àÔÕ 7Ô <Ò<Ð<Ø�IŠI�lÑ#Ô#Ð#Ø×Ò  D¤NÑ3Ô3Ð3Ø�IŠI�jÑ!Ô!Ð!Ø×Ò  D¤NÑ3Ô3Ð3Ñ3ØÔÕ"9Ô"BÒBÐBØ�IŠIÐ0Ñ1Ô1Ð1Ø×Ò  D¤NÑ3Ô3Ð3Ø�IŠIÐ(Ñ)Ô)Ð)Ñ)ØÔÕ#:Ô#@ÕBYÔBcÐ"dÐdÐdØ�IŠIÐ'Ñ(Ô(Ð(ØÔ Õ$;Ô$EÒEÐEØ—	’	˜&Ñ!Ô!Ð!Ø�IŠI�lÑ#Ô#Ð#Ø×Ò  D¤NÑ3Ô3Ð3Ø�IŠI�d‰OŒOˆOØ×Ò  D¤JÑ/Ô/Ð/Ø�IŠI�jÑ!Ô!Ð!Ø×Ò  D¤NÑ3Ô3Ð3Ð3ØÔÕ#:Ô#>Õ@WÔ@_Ð"`Ð`Ð`Ø�IŠI�lÑ#Ô#Ð#ØÔ Õ$;Ô$CÒCÐCØ—	’	˜&Ñ!Ô!Ð!Ø�IŠI�jÑ!Ô!Ð!Ý�3˜tœx™=œ=Ñ)Ô)ð 5ð 5�Ø×#Ò# B¨¬°¬Ñ4Ô4Ð4Ð4Ø�IŠI�kÑ"Ô"Ð"Ø×Ò  D¤NÑ3Ô3Ð3å‰uŒu�zŠz˜"‰~Œ~×#Ò#Ñ%Ô%Ð%r   N)r6   r7   r8   r~   ry   rx   rv   rt   r|   r{   r2   r…   rH   rJ   r   r   r   rp   rp   Ô   sj   € € € € € à€DØ€DØ€HØ€EØ€IØ
€CØ€Gð,Cð ,Cð ,Cðb'ð 'ð 'ð !&ð !&ð !&ðF €H€H€Hr   rp   c                   ó@   — e Zd ZdZdZdZdZdZdZdZ	d„ Z
d	„ Zd
„ ZeZdS )ÚMismatchedTokenExceptionr   r   r<   r
   r   rq   rr   c                 ó(  — || _         g | _        d | _        d| _        d | _        t          |¦  «        dk    ra|d         rt          j        | _        nt          j	        | _        |d         | _        |d         | _
        |d         | _        |d         | _        �nt          |¦  «        dk    rat          |d         t          ¦  «        rF|d         rt          j        | _        nt          j        | _        |d         | _        |d         | _
        n£t          |¦  «        dk    rat          |d         t"          ¦  «        rF|d         rt          j        | _        nt          j        | _        |d         | _        |d         | _        n/t          j        | _        t,                               | dd	d
d
¦  «         t          |¦  «        dk    �rOt          |d         t0          ¦  «        r~|d         | _        | j                             ¦   «         | _        t,                               | d| j        | j                             ¦   «         | j                             ¦   «         ¦  «         d S t          |d         t8          ¦  «        rt|d         | _        t;          | j        ¦  «        | _        t,                               | dd	| j                             ¦   «         | j                             ¦   «         ¦  «         d S d| _        t,                               | dd	d
d
¦  «         d S d S )Nr   rr   r
   r   r<   rq   r   z(Mismatched Token: expecting any AST nodez<AST>r	   r   zMismatched Tokenz<empty tree>)r   Ú
tokenNamesrN   Ú	tokenTextrO   r@   r•   rt   ru   rv   rw   rh   r=   r(   ÚintÚ	NOT_TOKENÚTOKENrz   r{   r|   r}   r~   r:   r2   rQ   rW   rU   rV   rP   rE   r3   s     r   r2   z!MismatchedTokenException.__init__O  sÌ  € ØˆŒ	ØˆŒØˆŒ
ØˆŒØˆŒ	Ýˆt‰9Œ9˜Š>ˆ>à�AŒwð CÝ$<Ô$F�Ô!Ð!å$<Ô$B�Ô!Ø" 1œgˆDŒOØ! !œWˆDŒNØ˜aœˆDŒJØ  œGˆDŒM‰Må�‰YŒY˜!Š^ˆ^¥
¨4°¬7µCÑ 8Ô 8ˆ^à�AŒwð CÝ$<Ô$F�Ô!Ð!å$<Ô$B�Ô!Ø" 1œgˆDŒOØ! !œWˆDŒNˆNå�‰YŒY˜!Š^ˆ^¥
¨4°¬7µFÑ ;Ô ;ˆ^à�AŒwð AÝ$<Ô$D�Ô!Ð!å$<Ô$@�Ô!Ø" 1œgˆDŒOØ˜A”wˆDŒHˆHõ !9Ô =ˆDÔÝ ×)Ò)¨$Ð0ZÐ\cÐegÐikÑlÔlÐlåˆt‰9Œ9˜Š>‰>Ý˜$˜qœ'¥%Ñ(Ô(ð ?Ø! !œW�”
Ø!%¤×!3Ò!3Ñ!5Ô!5�”Ý$×-Ò-¨dÐ4FØ.2¬mØ.2¬j×.@Ò.@Ñ.BÔ.BØ.2¬j×.BÒ.BÑ.DÔ.DñFô Fð Fð Fð Fõ ˜D œG¥CÑ(Ô(ð 
?Ø  œG�”	Ý!$ T¤Y¡¤�”Ý$×-Ò-¨dÐ4FØ.5Ø.2¬i×.?Ò.?Ñ.AÔ.AØ.2¬i×.AÒ.AÑ.CÔ.CñEô Eð Eð Eð Eð
 "0�”Ý$×-Ò-¨dÐ4FØ.5°r¸2ñ?ô ?ð ?ð ?ð ?ð# ˆ>r   c                 ó  — |t           k    r|                     d¦  «         d S |dk     s|t          | j        ¦  «        k    r*|                     dt	          |¦  «        z   dz   ¦  «         d S |                     | j        |         ¦  «         d S )Nz<Set of tokens>r   ú<ú>)ÚINVALID_TYPErD   r@   r—   rE   )r4   rƒ   Ú	tokenTypes      r   ÚappendTokenNamez(MismatchedTokenException.appendTokenNameŠ  sŠ   € Ø�Ò$Ð$Ø�IŠIÐ'Ñ(Ô(Ð(Ð(Ð(Ø˜Š]ˆ]˜i­3¨t¬Ñ+?Ô+?Ò?Ð?Ø�IŠI�c�C 	™NœNÑ*¨SÑ0Ñ1Ô1Ð1Ð1Ð1à�IŠI�d”o iÔ0Ñ1Ô1Ð1Ð1Ð1r   c                 óª  — dg}|                      t                               | ¦  «        ¦  «         | j        t          j        k    rO|                      d¦  «         |                      || j        ¦  «         |                      d| j        z   ¦  «         �n| j        t          j	        k    rG|                      d¦  «         |                      || j        ¦  «         |                      d¦  «         �n±| j        t          j
        t          j        fv r½|                      d¦  «         | j        t          j        k    r|                      d¦  «         |                      d¦  «         |                      || j        ¦  «         |                      d	¦  «         |                      || j        ¦  «         |                      d| j        z   ¦  «         nÕ| j        t          j        t          j        fv r¶|                      d¦  «         | j        t          j        k    r|                      d¦  «         |                      d
¦  «         t          t!          | j        ¦  «        ¦  «        D ]#}|                      || j        |         ¦  «         Œ$|                      d| j        z   ¦  «         t%          ¦   «                              |¦  «                             ¦   «         S )Nr   r‡   rˆ   r‰   rŠ   zexpecting token r‹   rŒ   r�   rŽ   r�   )rD   r:   rH   ru   r•   r›   r¡   rw   r˜   rš   rv   rt   rh   r|   r{   r�   r@   r}   rE   rF   r‘   r’   s      r   rH   z MismatchedTokenException.__str__•  sn  € ØˆTˆØ
�	Š	Õ&×.Ò.¨tÑ4Ô4Ñ5Ô5Ð5àÔÕ 8Ô >Ò>Ð>Ø�IŠI�lÑ#Ô#Ð#Ø× Ò   T¤^Ñ4Ô4Ð4Ø�IŠI�j 4¤>Ñ1Ñ2Ô2Ð2Ñ2ØÔÕ":Ô"DÒDÐDØ�IŠIÐ0Ñ1Ô1Ð1Ø× Ò   T¤^Ñ4Ô4Ð4Ø�IŠIÐ(Ñ)Ô)Ð)Ñ)ØÔÕ#;Ô#AÕC[ÔCeÐ"fÐfÐfØ�IŠIÐ(Ñ)Ô)Ð)ØÔ Õ$<Ô$FÒFÐFØ—	’	˜&Ñ!Ô!Ð!Ø�IŠI�lÑ#Ô#Ð#Ø× Ò   T¤^Ñ4Ô4Ð4Ø�IŠI�d‰OŒOˆOØ× Ò   T¤ZÑ0Ô0Ð0Ø�IŠI�j 4¤>Ñ1Ñ2Ô2Ð2Ð2ØÔÕ#;Ô#?ÕAYÔAaÐ"bÐbÐbØ�IŠI�lÑ#Ô#Ð#ØÔ Õ$<Ô$DÒDÐDØ—	’	˜&Ñ!Ô!Ð!Ø�IŠI�jÑ!Ô!Ð!Ý�3˜tœx™=œ=Ñ)Ô)ð 6ð 6�Ø×$Ò$ R¨¬°!¬Ñ5Ô5Ð5Ð5Ø�IŠI�k D¤NÑ2Ñ3Ô3Ð3å‰uŒu�zŠz˜"‰~Œ~×#Ò#Ñ%Ô%Ð%r   N)r6   r7   r8   r~   r›   rš   rv   rt   r|   r{   r2   r¡   rH   rJ   r   r   r   r•   r•   E  sg   € € € € € à€DØ€EØ€IØ€EØ€IØ
€CØ€Gð9?ð 9?ð 9?ðv2ð 2ð 2ð&ð &ð &ð@ €H€H€Hr   r•   c                   ó   — e Zd Zd„ ZdS )ÚTokenStreamExceptionc                 ó*   — t          j        | g|¢R Ž  d S r"   ©r/   r2   r3   s     r   r2   zTokenStreamException.__init__º  ó!   € ÝÔ Ð, tÐ,Ð,Ð,Ð,Ð,Ð,r   Nr5   r   r   r   r¤   r¤   ¸  ó#   € € € € € ð-ð -ð -ð -ð -r   r¤   c                   ó   — e Zd Zd„ ZdS )ÚTokenStreamIOExceptionc                 óä   — |rTt          |d         t          ¦  «        r9|d         }t                               | t	          |¦  «        ¦  «         || _        d S t          j        | g|¢R Ž  | | _        d S ©Nr   )r(   r1   r¤   r2   rE   Úio©r4   r   r­   s      r   r2   zTokenStreamIOException.__init__Á  ss   € Øð 	•J˜t Aœw­	Ñ2Ô2ð 	Ø�a”ˆBÝ ×)Ò)¨$µ°B±´Ñ8Ô8Ð8ØˆDŒGˆGˆGå Ô)¨$Ð6°Ð6Ð6Ð6Ð6ØˆDŒGˆGˆGr   Nr5   r   r   r   rª   rª   ¿  ó#   € € € € € ðð ð ð ð r   rª   c                   ó   — e Zd Zd„ Zd„ ZeZdS )ÚTokenStreamRecognitionExceptionc                 óÌ   — |rTt          |d         t          ¦  «        r9|d         }t                               | t	          |¦  «        ¦  «         || _        d S t          d¦  «        ‚)Nr   zFTokenStreamRecognitionException requires RecognitionException argument)r(   r:   r¤   r2   rE   ÚrecogrR   )r4   r   r³   s      r   r2   z(TokenStreamRecognitionException.__init__Î  sa   € Øð 	f•J˜t AœwÕ(<Ñ=Ô=ð 	fØ˜”GˆEÝ ×)Ò)¨$µ°E±
´
Ñ;Ô;Ð;ØˆDŒJˆJˆJåÐdÑeÔeÐer   c                 ó*   — t          | j        ¦  «        S r"   )rE   r³   ©r4   s    r   rH   z'TokenStreamRecognitionException.__str__Ö  s   € Ý�4”:‰ŒÐr   NrI   r   r   r   r±   r±   Ì  s6   € € € € € ðfð fð fðð ð ð €H€H€Hr   r±   c                   ó   — e Zd Zd„ ZdS )ÚTokenStreamRetryExceptionc                 ó*   — t          j        | g|¢R Ž  d S r"   )r¤   r2   r3   s     r   r2   z"TokenStreamRetryException.__init__Þ  rm   r   Nr5   r   r   r   r·   r·   Ü  rn   r   r·   c                   ó   — e Zd Zd„ ZdS )ÚCharStreamExceptionc                 ó*   — t          j        | g|¢R Ž  d S r"   r¦   r3   s     r   r2   zCharStreamException.__init__ä  r§   r   Nr5   r   r   r   rº   rº   â  r¨   r   rº   c                   ó   — e Zd Zd„ ZdS )ÚCharStreamIOExceptionc                 óä   — |rTt          |d         t          ¦  «        r9|d         }t                               | t	          |¦  «        ¦  «         || _        d S t          j        | g|¢R Ž  | | _        d S r¬   )r(   r1   rº   r2   rE   r­   r®   s      r   r2   zCharStreamIOException.__init__ë  ss   € Øð 	•J˜t Aœw­	Ñ2Ô2ð 	Ø�a”ˆBÝ×(Ò(¨­s°2©w¬wÑ7Ô7Ð7ØˆDŒGˆGˆGåÔ(¨Ð5°Ð5Ð5Ð5Ð5ØˆDŒGˆGˆGr   Nr5   r   r   r   r½   r½   é  r¯   r   r½   c                   ó   — e Zd ZdS )ÚTryAgainN)r6   r7   r8   r   r   r   rÀ   rÀ   õ  s   € € € € € Ø€Dr   rÀ   c                   ó|   — e Zd ZdZdZdZdZdZdZd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZeZeZdS )rQ   r	   r   r   r
   r   c                 ó„   — 	 |d         | _         n#  t          | _         Y nxY w	 |d         | _        d S #  d| _        Y d S xY w)NÚtyperZ   ú	<no text>)rÃ   rŸ   rZ   ©r4   Úargvs     r   r2   zToken.__init__  sR   € ð	%Ø˜VœˆDŒIˆIøð	%Ý$ˆDŒIˆIˆIøøøð	$Ø˜VœˆDŒIˆIˆIøð	$Ø#ˆDŒIˆIˆIˆIøøøs   ‚ � ¤3 ³	?c                 ó"   — | j         t          k    S r"   )rÃ   ÚEOF_TYPErµ   s    r   ÚisEOFzToken.isEOF  s   € Ø”	�XÒ%Ð&r   c                 ó   — dS r¬   r   rµ   s    r   rV   zToken.getColumn  ó   € Øˆqr   c                 ó   — dS r¬   r   rµ   s    r   rU   zToken.getLine  rË   r   c                 ó   — d S r"   r   rµ   s    r   r`   zToken.getFilename  ó   € Øˆtr   c                 ó   — | S r"   r   )r4   Únames     r   ÚsetFilenamezToken.setFilename  ó   € Øˆr   c                 ó   — dS )NrÄ   r   rµ   s    r   rW   zToken.getText  ó   € Øˆ{r   c                 óD   — t          |¦  «        rnt          d¦  «        ‚| S )Nz&Token.setText requires string argument)r+   rR   ©r4   rZ   s     r   ÚsetTextzToken.setText!  s*   € Ý˜$ÑÔð 	FØåÐDÑEÔEÐEØˆr   c                 ó   — | S r"   r   )r4   r?   s     r   Ú	setColumnzToken.setColumn(  rÒ   r   c                 ó   — | S r"   r   ©r4   r>   s     r   ÚsetLinezToken.setLine+  rÒ   r   c                 ó   — | j         S r"   )rÃ   rµ   s    r   ÚgetTypezToken.getType.  ó
   € ØŒyÐr   c                 ó^   — t          |t          ¦  «        r|| _        nt          d¦  «        ‚| S )Nz'Token.setType requires integer argument)r(   r™   rÃ   rR   )r4   rÃ   s     r   ÚsetTypezToken.setType1  s2   € Ý�d�3ÑÔð 	GØˆDŒIˆIåÐEÑFÔFÐFØˆr   c                 ó’   — | j         }|dk    rd}n|dk    rd}n|dk    rd}n|dk    rd}n|}d	|                      ¦   «         ›d
|›d�S )Nr
   ÚNULL_TREE_LOOKAHEADr   rÈ   r   rŸ   r	   ÚSKIPz["z",<z>])rÃ   rW   )r4   Útype_Útvals      r   ÚtoStringzToken.toString8  sj   € à”	ˆØ�AŠ:ˆ:Ø(ˆDˆDØ�aŠZˆZØˆDˆDØ�aŠZˆZØ!ˆDˆDØ�bŠ[ˆ[ØˆDˆDàˆDøØ $§¢¡¤  ¨t¨t¨tÐ4Ð4r   N)r6   r7   r8   rä   rŸ   rÈ   ÚEOFrã   ÚMIN_USER_TYPEr2   rÉ   rV   rU   r`   rÑ   rW   r×   rÙ   rÜ   rÞ   rá   rç   rH   rJ   r   r   r   rQ   rQ   ý  sü   € € € € € Ø€DØ€LØ€HØ€CØÐØ€Mð$ð $ð $ð'ð 'ð 'ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð5ð 5ð 5ð €GØ€H€H€Hr   rQ   rÄ   )rÃ   rZ   Ú__main__z
testing ..c                   óF   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
e
Ze
Zd	S )
ÚCommonTokenc                 óž   — t          j        | fi |¤Ž d| _        d| _        	 |d         | _        n#  Y nxY w	 |d         | _        d S #  Y d S xY w)Nr   r>   rY   )rQ   r2   r>   rY   rÅ   s     r   r2   zCommonToken.__init__X  sl   € ÝŒ�tÐ#Ð#˜dÐ#Ð#Ð#ØˆŒ	ØˆŒð	Ø˜VœˆDŒIˆIøð	ØˆDøøøð	Ø˜E”{ˆDŒHˆHˆHøð	ØˆDˆDøøøs   ¢0 °4¸A ÁAc                 ó   — | j         S r"   ©r>   rµ   s    r   rU   zCommonToken.getLinee  rß   r   c                 ó   — | j         S r"   ©rZ   rµ   s    r   rW   zCommonToken.getTexth  rß   r   c                 ó   — | j         S r"   ©rY   rµ   s    r   rV   zCommonToken.getColumnk  s	   € ØŒxˆr   c                 ó   — || _         | S r"   rï   rÛ   s     r   rÜ   zCommonToken.setLinen  ó   € ØˆŒ	Øˆr   c                 ó   — || _         | S r"   rñ   rÖ   s     r   r×   zCommonToken.setTextr  rõ   r   c                 ó   — || _         | S r"   ró   )r4   rY   s     r   rÙ   zCommonToken.setColumnv  s   € ØˆŒØˆr   c                 ó–   — | j         }|dk    rd}n|dk    rd}n|dk    rd}n|dk    rd}n|}| j        || j        | j        d	œ}d
}||z  S )Nr
   rã   r   rÈ   r   rŸ   r	   rä   )rZ   rÃ   r>   Úcolmz2["%(text)s",<%(type)s>,line=%(line)s,col=%(colm)s])rÃ   rZ   r>   rY   )r4   rå   ræ   Údr   s        r   rç   zCommonToken.toStringz  s}   € à”	ˆØ�AŠ:ˆ:Ø(ˆDˆDØ�aŠZˆZØˆDˆDØ�aŠZˆZØ!ˆDˆDØ�bŠ[ˆ[ØˆDˆDàˆDà”IØØ”IØ”Hð	ð ˆð CˆØ�Q‰wˆr   N)r6   r7   r8   r2   rU   rW   rV   rÜ   r×   rÙ   rç   rH   rJ   r   r   r   rì   rì   V  s’   € € € € € ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð. €GØ€H€H€Hr   rì   é   z	some textrq   )rY   r>   rZ   rÃ   c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚCommonHiddenStreamTokenc                 óF   — t          j        | g|¢R Ž  d | _        d | _        d S r"   )rì   r2   ÚhiddenBeforeÚhiddenAfterr3   s     r   r2   z CommonHiddenStreamToken.__init__§  s1   € ÝÔ˜TÐ( 4Ð(Ð(Ð(Ð(Ø ˆÔØ ˆÔÐÐr   c                 ó   — | j         S r"   ©r   rµ   s    r   ÚgetHiddenAfterz&CommonHiddenStreamToken.getHiddenAfter¬  ó   € ØÔÐr   c                 ó   — | j         S r"   ©rÿ   rµ   s    r   ÚgetHiddenBeforez'CommonHiddenStreamToken.getHiddenBefore¯  ó   € ØÔ Ð r   c                 ó   — || _         d S r"   r  ©r4   Úts     r   ÚsetHiddenAfterz&CommonHiddenStreamToken.setHiddenAfter²  s   € ØˆÔÐÐr   c                 ó   — || _         d S r"   r  r
  s     r   ÚsetHiddenBeforez'CommonHiddenStreamToken.setHiddenBeforeµ  s   € ØˆÔÐÐr   N)r6   r7   r8   r2   r  r  r  r  r   r   r   rý   rý   ¦  s_   € € € € € ð!ð !ð !ð
 ð  ð  ð!ð !ð !ðð ð ðð ð ð ð r   rý   c                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚQueuec                 ó   — g | _         d S r"   ©Úbufferrµ   s    r   r2   zQueue.__init__¿  ó   € ØˆŒˆˆr   c                 ó:   — | j                              |¦  «         d S r"   )r  rD   ©r4   Úitems     r   rD   zQueue.appendÂ  s   € ØŒ×Ò˜4Ñ Ô Ð Ð Ð r   c                 ó   — | j         |         S r"   r  )r4   Úindexs     r   Ú	elementAtzQueue.elementAtÅ  s   € ØŒ{˜5Ô!Ð!r   c                 ó   — g | _         d S r"   r  rµ   s    r   ÚresetzQueue.resetÈ  r  r   c                 ó:   — | j                              d¦  «         d S r¬   )r  Úpoprµ   s    r   ÚremoveFirstzQueue.removeFirstË  s   € ØŒ�Š˜ÑÔÐÐÐr   c                 ó*   — t          | j        ¦  «        S r"   )r@   r  rµ   s    r   ÚlengthzQueue.lengthÎ  ó   € Ý�4”;ÑÔÐr   c                 ó*   — t          | j        ¦  «        S r"   )rE   r  rµ   s    r   rH   zQueue.__str__Ñ  r"  r   N)
r6   r7   r8   r2   rD   r  r  r  r!  rH   r   r   r   r  r  ½  s}   € € € € € ðð ð ð!ð !ð !ð"ð "ð "ðð ð ðð ð ð ð  ð  ð ð  ð  ð  ð  r   r  c                   ób   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚInputBufferc                 óV   — d| _         d| _        d| _        t          ¦   «         | _        d S r¬   )ÚnMarkersÚmarkerOffsetÚnumToConsumer  Úqueuerµ   s    r   r2   zInputBuffer.__init__Ù  s(   € ØˆŒØˆÔØˆÔÝ‘W”WˆŒ
ˆ
ˆ
r   c           	      óH   — d| j         ›d| j        ›d| j        ›d| j        ›d�	S ©Nú(ú,ú))r'  r(  r)  r*  rµ   s    r   rH   zInputBuffer.__str__ß  s8   € € àŒ=ˆ=ˆ=ØÔÐÐØÔÐÐØŒ:ˆ:ˆ:ð	ð 	r   c                 ó    — t          | ¦  «        S r"   ©rE   rµ   s    r   rJ   zInputBuffer.__repr__æ  ó   € Ý�4‰yŒyÐr   c                 ó&   — | xj         dz  c_         d S ©Nr   ©r'  rµ   s    r   ÚcommitzInputBuffer.commité  s   € ØˆŒ˜ÑˆŒˆˆr   c                 ó&   — | xj         dz  c_         d S r4  ©r)  rµ   s    r   ÚconsumezInputBuffer.consumeì  ó   € ØÐÔ˜QÑÐÔÐÐr   c                 óœ   — | j         }| j                             ¦   «         }d}||k     r#|| j                             |¦  «        z  }||k     °#|S ©Nr   )r(  r*  r!  r  )r4   r“   ÚnÚss       r   Ú
getLACharszInputBuffer.getLACharsò  sU   € ØÔˆØŒJ×ÒÑÔˆØˆØ�ŠcˆcØ�”×%Ò% aÑ(Ô(Ñ(ˆAð �Šcˆcàˆr   c                 ón   — d}d}| j         }||k     r#|| j                             |¦  «        z  }||k     °#|S )Nr   r   )r(  r*  r  )r4   r>  r“   r=  s       r   ÚgetMarkedCharszInputBuffer.getMarkedCharsü  sG   € ØˆØˆØÔˆØ�ŠcˆcØ�”×%Ò% aÑ(Ô(Ñ(ˆAð �Šcˆcàˆr   c                 ó   — | j         dk    S r¬   r5  rµ   s    r   ÚisMarkedzInputBuffer.isMarked  s   € ØŒ} Ò!Ð!r   c                 ó   — t          ¦   «         ‚r"   ©ÚNotImplementedError©r4   Úks     r   ÚfillzInputBuffer.fill  s   € å!Ñ#Ô#Ð#r   c                 óv   — |                       |¦  «         | j                             | j        |z   dz
  ¦  «        S r4  ©rI  r*  r  r(  rG  s     r   ÚLAzInputBuffer.LA  ó4   € Ø�	Š	�!‰ŒˆØŒz×#Ò# DÔ$5¸Ñ$9¸AÑ$=Ñ>Ô>Ð>r   c                 óX   — |                       ¦   «          | xj        dz  c_        | j        S r4  ©ÚsyncConsumer'  r(  rµ   s    r   ÚmarkzInputBuffer.mark  ó-   € Ø×ÒÑÔÐØˆŒ˜ÑˆŒØÔ Ð r   c                 ó\   — |                       ¦   «          || _        | xj        dz  c_        d S r4  ©rP  r(  r'  ©r4   rQ  s     r   ÚrewindzInputBuffer.rewind  ó0   € Ø×ÒÑÔÐØ ˆÔØˆŒ˜ÑˆŒˆˆr   c                 ób   — d| _         d| _        d| _        | j                             ¦   «          d S r¬   ©r'  r(  r)  r*  r  rµ   s    r   r  zInputBuffer.reset  ó3   € ØˆŒØˆÔØˆÔØŒ
×ÒÑÔÐÐÐr   c                 óÀ   — | j         dk    rR| j        dk    r| xj        dz  c_        n| j                             ¦   «          | xj         dz  c_         | j         dk    °Pd S d S ©Nr   r   ©r)  r'  r(  r*  r  rµ   s    r   rP  zInputBuffer.syncConsume  óz   € ØÔ !Ò#Ð#ØŒ}˜qÒ Ð àÐ!Ô! QÑ&Ð!Ô!Ð!ð ”
×&Ò&Ñ(Ô(Ð(ØÐÔ Ñ"ÐÔð Ô !Ò#Ð#Ð#Ð#Ð#Ð#r   N)r6   r7   r8   r2   rH   rJ   r6  r9  r?  rA  rC  rI  rL  rQ  rV  r  rP  r   r   r   r%  r%  Ø  sæ   € € € € € ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð"ð "ð "ð$ð $ð $ð?ð ?ð ?ð!ð !ð !ð
ð ð ð
ð ð ð#ð #ð #ð #ð #r   r%  c                   ó.   ‡ — e Zd Zˆ fd„Zˆ fd„Zd„ Zˆ xZS )Ú
CharBufferc                 ód   •— t          t          | ¦  «                             ¦   «          || _        d S r"   )Úsuperr`  r2   Úinput)r4   ÚreaderÚ	__class__s     €r   r2   zCharBuffer.__init__.  s,   ø€ å�j˜ÑÔ×'Ò'Ñ)Ô)Ð)ð ˆŒ
ˆ
ˆ
r   c                 ó†   •— t          t          | ¦  «                             ¦   «         }d|›dt          t          ¦  «        ›�S )NzCharBuffer{r.  )rb  r`  rH   rE   rc  )r4   Úbasere  s     €r   rH   zCharBuffer.__str__5  s7   ø€ Ý•Z Ñ%Ô%×-Ò-Ñ/Ô/ˆˆØ%) T T­#­e©*¬*¨*Ð5Ð5r   c                 óä  — 	 |                       ¦   «          | j                             ¦   «         || j        z   k     r”| j                             d¦  «        }t          |¦  «        dk    st          |¦  «        dk    sJ ‚t          |¦  «        sJ ‚| j                             |¦  «         | j                             ¦   «         || j        z   k     °’d S d S # t          $ r}t          |¦  «        ‚d }~ww xY w©Nr   r   )rP  r*  r!  r(  rc  Úreadr@   r+   rD   r1   r½   )r4   Úamountr„   Úes       r   rI  zCharBuffer.fill9  sþ   € ð	+Ø×ÒÑÔÐØ”*×#Ò#Ñ%Ô%¨°$Ô2CÑ)CÒDÐDð ”J—O’O AÑ&Ô&�õ ˜1‘v”v ’{�{¥c¨!¡f¤f°¢k k k kõ & aÑ(Ô(Ð(Ð(Ð(ð ”
×!Ò! !Ñ$Ô$Ð$ð/ ”*×#Ò#Ñ%Ô%¨°$Ô2CÑ)CÒDÐDÐDÐDÐDÐDøõ0 ð 	+ð 	+ð 	+Ý'¨Ñ*Ô*Ð*øøøøð	+øøøs   ‚CC Ã
C/ÃC*Ã*C/)r6   r7   r8   r2   rH   rI  Ú__classcell__©re  s   @r   r`  r`  -  s`   ø€ € € € € ðð ð ð ð ð6ð 6ð 6ð 6ð 6ð+ð +ð +ð +ð +ð +ð +r   r`  c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚLexerSharedInputStatec                 ó–   — t          |t          ¦  «        sJ ‚|| _        d| _        d| _        d| _        d| _        d| _        d | _        d S ri  )	r(   r%  rc  r?   r>   ÚtokenStartColumnÚtokenStartLineÚguessingÚfilename)r4   Úibufs     r   r2   zLexerSharedInputState.__init___  sO   € Ý˜$�{Ñ+Ô+Ð+Ð+Ð+ØˆŒ
ØˆŒØˆŒ	Ø !ˆÔØˆÔØˆŒØˆŒˆˆr   c                 óŒ   — d| _         d| _        d| _        d| _        d| _        d | _        | j                             ¦   «          d S ri  )r?   r>   rr  rs  rt  ru  rc  r  rµ   s    r   r  zLexerSharedInputState.reseti  sH   € ØˆŒØˆŒ	Ø !ˆÔØˆÔØˆŒØˆŒØŒ
×ÒÑÔÐÐÐr   c                 ó6   — | j                              |¦  «        S r"   )rc  rL  rG  s     r   rL  zLexerSharedInputState.LAr  s   € ØŒz�}Š}˜QÑÔÐr   N)r6   r7   r8   r2   r  rL  r   r   r   rp  rp  ^  sA   € € € € € ðð ð ðð ð ð ð  ð  ð  ð  r   rp  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTokenStreamc                 ó   — d S r"   r   rµ   s    r   Ú	nextTokenzTokenStream.nextTokenz  ó   € Øˆr   c                 ó    — t          | ¦  «        S r"   )ÚTokenStreamIteratorrµ   s    r   Ú__iter__zTokenStream.__iter__}  ó   € Ý" 4Ñ(Ô(Ð(r   N)r6   r7   r8   r|  r€  r   r   r   rz  rz  y  s2   € € € € € ðð ð ð)ð )ð )ð )ð )r   rz  c                   ó   — e Zd Zd„ Zd„ ZdS )r  c                 ó\   — t          |t          ¦  «        r	|| _        d S t          d¦  «        ‚)Nz/TokenStreamIterator requires TokenStream object)r(   rz  ÚinstrR   ©r4   r„  s     r   r2   zTokenStreamIterator.__init__…  ó/   € Ý�d�;Ñ'Ô'ð 	ØˆDŒIØˆFÝÐIÑJÔJÐJr   c                 ó’   — | j         sJ ‚| j                              ¦   «         }|r|                     ¦   «         rt          ¦   «         ‚|S r"   ©r„  r|  rÉ   ÚStopIterationr  s     r   ÚnextzTokenStreamIterator.next‹  óI   € ØŒyÐÐÐØŒy×"Ò"Ñ$Ô$ˆØð 	"�t—z’z‘|”|ð 	"Ý‘/”/Ð!Øˆr   N©r6   r7   r8   r2   rŠ  r   r   r   r  r  „  s5   € € € € € ðKð Kð Kðð ð ð ð r   r  c                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )ÚTokenStreamSelectorc                 ó0   — d | _         i | _        g | _        d S r"   )Ú_inputÚ_stmapÚ_stackrµ   s    r   r2   zTokenStreamSelector.__init__˜  s   € ØˆŒØˆŒØˆŒˆˆr   c                 ó   — || j         |<   d S r"   )r‘  )r4   ÚstreamÚkeys      r   ÚaddInputStreamz"TokenStreamSelector.addInputStream�  s   € Ø!ˆŒ�CÑÐÐr   c                 ó   — | j         S r"   )r�  rµ   s    r   ÚgetCurrentStreamz$TokenStreamSelector.getCurrentStream   ó
   € ØŒ{Ðr   c                 óX   — 	 | j         |         }n#  t          d|z   dz   ¦  «        ‚xY w|S )NzTokenStream z
 not found)r‘  Ú
ValueError)r4   Úsnamer”  s      r   Ú	getStreamzTokenStreamSelector.getStream£  s=   € ð	EØ”[ Ô'ˆFˆFøð	EÝ˜^¨eÑ3°lÑBÑCÔCÐCøøøØˆs   ‚ �'c                 óZ   — 	 	 | j                              ¦   «         S # t          $ r Y nw xY wŒ+r"   )r�  r|  r·   rµ   s    r   r|  zTokenStreamSelector.nextTokenª  sE   € ð	ðØ”{×,Ò,Ñ.Ô.Ð.øÝ,ð ð ð à�ðøøøð	s   ƒ œ
)¨)c                 ób   — | j                              ¦   «         }|                      |¦  «         |S r"   )r’  r  Úselect©r4   r”  s     r   r  zTokenStreamSelector.pop²  s*   € Ø”—’Ñ"Ô"ˆØ�Š�FÑÔÐØˆr   c                 ón   — | j                              | j        ¦  «         |                      |¦  «         d S r"   )r’  rD   r�  r   ©r4   Úargs     r   ÚpushzTokenStreamSelector.push·  s2   € ØŒ×Ò˜4œ;Ñ'Ô'Ð'Ø�Š�CÑÔÐÐÐr   c                 ó   — t          ¦   «         ‚r"   )r·   rµ   s    r   ÚretryzTokenStreamSelector.retry»  s   € Ý'Ñ)Ô)Ð)r   c                 ó²   — t          |t          ¦  «        r	|| _        d S t          |¦  «        r|                      |¦  «        | _        d S t          d¦  «        ‚)NzBTokenStreamSelector.select requires TokenStream or string argument)r(   rz  r�  r+   r�  rR   r£  s     r   r   zTokenStreamSelector.select¾  s_   € Ý�c�+Ñ&Ô&ð 	ØˆDŒKØˆFÝ˜#ÑÔð 	ØŸ.š.¨Ñ-Ô-ˆDŒKØˆFÝð 9ñ :ô :ð 	:r   N)r6   r7   r8   r2   r–  r˜  r�  r|  r  r¥  r§  r   r   r   r   rŽ  rŽ  –  s›   € € € € € ðð ð ð
"ð "ð "ðð ð ðð ð ðð ð ðð ð ð
ð ð ð*ð *ð *ð:ð :ð :ð :ð :r   rŽ  c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTokenStreamBasicFilterc                 ó:   — || _         t          ¦   «         | _        d S r"   )rc  rz   ÚdiscardMask©r4   rc  s     r   r2   zTokenStreamBasicFilter.__init__Î  s   € àˆŒ
Ý!™8œ8ˆÔÐÐr   c                 ó¾   — t          |t          ¦  «        r| j                             |¦  «         d S t          |t          ¦  «        r	|| _        d S t          d¦  «        ‚)NzATokenStreamBasicFilter.discard requiresinteger or BitSet argument)r(   r™   r¬  Úaddrz   ÚdiscardMarkrR   r£  s     r   ÚdiscardzTokenStreamBasicFilter.discardÓ  sf   € Ý�c�#ÑÔð 	ØÔ× Ò  Ñ%Ô%Ð%ØˆFÝ�c�&Ñ!Ô!ð 	Ø"ˆDÔØˆFÝð 5ñ 6ô 6ð 	6r   c                 ó"  — | j                              ¦   «         }|rs| j                             |                     ¦   «         ¦  «        rG| j                              ¦   «         }|r,| j                             |                     ¦   «         ¦  «        °G|S r"   )rc  r|  r¬  ÚmemberrÞ   )r4   Útoks     r   r|  z TokenStreamBasicFilter.nextTokenÝ  s   € ØŒj×"Ò"Ñ$Ô$ˆØð 	)�dÔ&×-Ò-¨c¯kªk©m¬mÑ<Ô<ð 	)Ø”*×&Ò&Ñ(Ô(ˆCð ð 	)�dÔ&×-Ò-¨c¯kªk©m¬mÑ<Ô<ð 	)àˆ
r   N)r6   r7   r8   r2   r±  r|  r   r   r   rª  rª  Ì  sA   € € € € € ð$ð $ð $ð
6ð 6ð 6ðð ð ð ð r   rª  c                   óP   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ ZdS )ÚTokenStreamHiddenTokenFilterc                 óŒ   — t                                | |¦  «         t          ¦   «         | _        d | _        d | _        d | _        d S r"   )rª  r2   rz   ÚhideMaskÚnextMonitoredTokenÚlastHiddenTokenÚfirstHiddenr­  s     r   r2   z%TokenStreamHiddenTokenFilter.__init__é  sA   € Ý×'Ò'¨¨UÑ3Ô3Ð3Ý™œˆŒØ"&ˆÔØ#ˆÔØˆÔÐÐr   c                 óB   — | j                              ¦   «         | _        d S r"   )rc  r|  r¹  rµ   s    r   r9  z$TokenStreamHiddenTokenFilter.consumeð  s   € Ø"&¤*×"6Ò"6Ñ"8Ô"8ˆÔÐÐr   c                 óþ  — |                       ¦   «          d }| j                             |                      d¦  «                             ¦   «         ¦  «        s@| j                             |                      d¦  «                             ¦   «         ¦  «        �rg| j                             |                      d¦  «                             ¦   «         ¦  «        r’|s|                      d¦  «        }ne|                     |                      d¦  «        ¦  «         |                      d¦  «                             |¦  «         |                      d¦  «        }|| _        | j	        s|| _	        |                       ¦   «          | j                             |                      d¦  «                             ¦   «         ¦  «        �°%| j                             |                      d¦  «                             ¦   «         ¦  «        �°ed S d S r4  )
r9  r¸  r³  rL  rÞ   r¬  r  r  rº  r»  )r4   Úps     r   ÚconsumeFirstz)TokenStreamHiddenTokenFilter.consumeFirstó  sž  € Ø�Š‰ŒˆàˆØŒm×"Ò" 4§7¢7¨1¡:¤:×#5Ò#5Ñ#7Ô#7Ñ8Ô8ð 	ØÔ×%Ò% d§g¢g¨a¡j¤j×&8Ò&8Ñ&:Ô&:Ñ;Ô;ñ	àŒ}×#Ò# D§G¢G¨A¡J¤J×$6Ò$6Ñ$8Ô$8Ñ9Ô9ð 	)Øð #ØŸš ™
œ
�A�Aà×$Ò$ T§W¢W¨Q¡Z¤ZÑ0Ô0Ð0Ø—G’G˜A‘J”J×.Ò.¨qÑ1Ô1Ð1ØŸš ™
œ
�AØ'(�Ô$ØÔ'ð )Ø'(�DÔ$Ø�LŠL‰NŒNˆNð Œm×"Ò" 4§7¢7¨1¡:¤:×#5Ò#5Ñ#7Ô#7Ñ8Ô8ñ 	ØÔ×%Ò% d§g¢g¨a¡j¤j×&8Ò&8Ñ&:Ô&:Ñ;Ô;ñ	ð 	ð 	ð 	ð 	r   c                 ó   — | j         S r"   )r¬  rµ   s    r   ÚgetDiscardMaskz+TokenStreamHiddenTokenFilter.getDiscardMask  r  r   c                 ó*   — |                      ¦   «         S r"   )r  r
  s     r   r  z+TokenStreamHiddenTokenFilter.getHiddenAfter  s   € Ø×ÒÑ!Ô!Ð!r   c                 ó*   — |                      ¦   «         S r"   )r  r
  s     r   r  z,TokenStreamHiddenTokenFilter.getHiddenBefore  s   € Ø× Ò Ñ"Ô"Ð"r   c                 ó   — | j         S r"   )r¸  rµ   s    r   ÚgetHideMaskz(TokenStreamHiddenTokenFilter.getHideMask  s
   € ØŒ}Ðr   c                 ó   — | j         S r"   )r»  rµ   s    r   ÚgetInitialHiddenTokenz2TokenStreamHiddenTokenFilter.getInitialHiddenToken  r  r   c                 ó¢   — t          |t          ¦  «        r| j                             |¦  «         d S t          |j        ¦  «        r	|| _        d S d S r"   )r(   r™   r¸  r¯  ÚBitMask)r4   Úms     r   Úhidez!TokenStreamHiddenTokenFilter.hide  sW   € Ý�a�ÑÔð 	ØŒM×Ò˜aÑ Ô Ð ØˆFÝ�a”iÑ Ô ð 	ØˆDŒMØˆFð	ð 	r   c                 ó   — | j         S r"   )r¹  ©r4   r“   s     r   rL  zTokenStreamHiddenTokenFilter.LA  s   € ØÔ&Ð&r   c                 óx  — |                       d¦  «        s|                      ¦   «          |                       d¦  «        }|                     | j        ¦  «         d | _        |                      ¦   «          |}| j                             |                       d¦  «                             ¦   «         ¦  «        s@| j                             |                       d¦  «                             ¦   «         ¦  «        �rE| j                             |                       d¦  «                             ¦   «         ¦  «        rr| 	                    |                       d¦  «        ¦  «         ||k    r(|                       d¦  «                             |¦  «         |                       d¦  «        x}| _        |                      ¦   «          | j                             |                       d¦  «                             ¦   «         ¦  «        �°| j                             |                       d¦  «                             ¦   «         ¦  «        �°E|S r4  )
rL  r¿  r  rº  r9  r¸  r³  rÞ   r¬  r  )r4   Ú	monitoredr¾  s      r   r|  z&TokenStreamHiddenTokenFilter.nextToken  sÁ  € Ø�wŠw�q‰zŒzð 	 Ø×ÒÑÔÐà—G’G˜A‘J”Jˆ	à×!Ò! $Ô"6Ñ7Ô7Ð7Ø#ˆÔà�Š‰ŒˆØˆàŒm×"Ò" 4§7¢7¨1¡:¤:×#5Ò#5Ñ#7Ô#7Ñ8Ô8ð 	ØÔ×%Ò% d§g¢g¨a¡j¤j×&8Ò&8Ñ&:Ô&:Ñ;Ô;ñ	àŒ}×#Ò# D§G¢G¨A¡J¤J×$6Ò$6Ñ$8Ô$8Ñ9Ô9ð 6Ø× Ò  §¢¨¡¤Ñ,Ô,Ð,Ø˜	’>�>Ø—G’G˜A‘J”J×.Ò.¨qÑ1Ô1Ð1Ø+/¯7ª7°1©:¬:Ð5��DÔ(Ø�LŠL‰NŒNˆNð Œm×"Ò" 4§7¢7¨1¡:¤:×#5Ò#5Ñ#7Ô#7Ñ8Ô8ñ 	ØÔ×%Ò% d§g¢g¨a¡j¤j×&8Ò&8Ñ&:Ô&:Ñ;Ô;ñ	ð Ðr   N)r6   r7   r8   r2   r9  r¿  rÁ  r  r  rÅ  rÇ  rË  rL  r|  r   r   r   r¶  r¶  ç  s¹   € € € € € ð ð  ð  ð9ð 9ð 9ðð ð ð$ ð  ð  ð"ð "ð "ð#ð #ð #ðð ð ð ð  ð  ðð ð ð'ð 'ð 'ðð ð ð ð r   r¶  c                   ó:   — e Zd Zdd„Zd„ Zd„ Zd„ Zd	d„ZeZd„ Z	dS )
ÚStringBufferNc                 óD   — |rt          |¦  «        | _        d S g | _        d S r"   )ÚlistrZ   )r4   Ústrings     r   r2   zStringBuffer.__init__:  s&   € Øð 	Ý˜V™œˆDŒIˆIˆIàˆDŒIˆIˆIr   c                 óˆ   — |s	g | _         d S |dk    sJ ‚||                      ¦   «         k    rd S | j         d|…         | _         d S r¬   )rZ   r!  )r4   Úszs     r   Ú	setLengthzStringBuffer.setLength@  sP   € Øð 	ØˆDŒIØˆFØ�!ŠtˆtˆtˆtØ�—’‘”ÒÐØˆFà”I˜a ˜d”OˆŒ	ˆ	ˆ	r   c                 ó*   — t          | j        ¦  «        S r"   ©r@   rZ   rµ   s    r   r!  zStringBuffer.lengthJ  ó   € Ý�4”9‰~Œ~Ðr   c                 ó:   — | j                              |¦  «         d S r"   )rZ   rD   ©r4   r„   s     r   rD   zStringBuffer.appendM  s   € ØŒ	×Ò˜ÑÔÐÐÐr   c                 óð   — |sd}|dk    sJ ‚|t          | j        ¦  «        k    rdS |s| j        |d …         }n1||z   t          | j        ¦  «        k    sJ ‚||z   }| j        ||…         }d}|D ]}||z  }Œ|S )Nr   r   rÙ  )r4   Úar!  ÚLÚbr>  r*   s          r   Ú	getStringzStringBuffer.getStringT  s¡   € Øð 	ØˆAØ�!ŠtˆtˆtˆtØ�s�4”9‰~Œ~ÒÐØ�2àð 	à”	˜!˜"˜"”ˆAˆAà�f‘H¥ T¤Y¡¤Ò/Ð/Ð/Ð/Ø�F‘
ˆAØ”	˜!˜A˜#”ˆAØˆØÐÐˆA�Q˜!‘V�Q�QØˆr   c                 ó*   — t          | j        ¦  «        S r"   ©rE   rZ   rµ   s    r   rH   zStringBuffer.__str__h  rÚ  r   r"   )NN)
r6   r7   r8   r2   r×  r!  rD   rá  rç   rH   r   r   r   rÑ  rÑ  9  s   € € € € € ðð ð ð ð$ð $ð $ðð ð ðð ð ðð ð ð ð$ €Hðð ð ð ð r   rÑ  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚReaderc                 ó"   — || _         g | _        d S r"   )ÚcinrG   r¡  s     r   r2   zReader.__init__x  s   € ØˆŒØˆŒˆˆr   c                 ó|  — |dk    sJ ‚t          | j        ¦  «        r| j                             ¦   «         S | j                             d¦  «        }|rt          |¦  «        dk    r|S t          |¦  «        }|                     ¦   «          |D ]}| j                             |¦  «         Œ|                      d¦  «        S r4  )r@   rG   r  rç  rj  rÓ  ÚreverserD   )r4   Únumr„   rß  r*   s        r   rj  zReader.read|  s¯   € Ø�AŠvˆvˆvˆvåˆtŒx‰=Œ=ð 	"Ø”8—<’<‘>”>Ð!ð ŒH�MŠM˜!ÑÔˆàð 	•C˜‘F”F˜A’I�IØˆHå�‰GŒGˆØ	�	Š	‰ŒˆØð 	ð 	ˆAØŒH�OŠO˜AÑÔÐÐð �yŠy˜‰|Œ|Ðr   N)r6   r7   r8   r2   rj  r   r   r   rå  rå  w  s2   € € € € € ðð ð ðð ð ð ð r   rå  c                   óh  ‡ — e Zd ZdZdZˆ fd„Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d:d#„Z%d$„ Z&d%„ Z'd&„ Z(d'„ Z)d(„ Z*d)„ Z+d*„ Z,d+„ Z-d,„ Z.d-„ Z/d.„ Z0d/„ Z1d0„ Z2d1„ Z3d2„ Z4d3„ Z5d4„ Z6d5„ Z7d6„ Z8d;d8„Z9d9„ Z:ˆ xZ;S )<ÚCharScannerr   r   c                 ój  •— t          t          | ¦  «                             ¦   «          d| _        d | _        d| _        d| _        d | _        d| _        d | _	        d| _
        d| _        t          ¦   «         | _        t          | ¦  «        | _        |                      t"          ¦  «          | j        |Ž  d S )NTé   Fr   )rb  rì  r2   ÚsaveConsumedInputÚ
tokenClassÚcaseSensitiveÚcaseSensitiveLiteralsÚliteralsÚtabsizeÚ_returnTokenÚcommitToPathÚ
traceDepthrÑ  rZ   ÚhashÚ
hashStringÚsetTokenObjectClassrì   ÚsetInput)r4   rÆ   Úkwargsre  s      €r   r2   zCharScanner.__init__š  s¤   ø€ Ý�k˜4Ñ Ô ×)Ò)Ñ+Ô+Ð+Ø!%ˆÔØˆŒØ!ˆÔØ%)ˆÔ"ØˆŒØˆŒØ ˆÔØ!ˆÔØˆŒÝ ‘N”NˆŒ	Ý˜t™*œ*ˆŒØ× Ò ¥Ñ-Ô-Ð-ØˆŒ�tÐÐÐÐr   c                 ó    — t          | ¦  «        S r"   )ÚCharScannerIteratorrµ   s    r   r€  zCharScanner.__iter__ª  r�  r   c                 ó´  — |s dd l }|                      |j        ¦  «         d S |d         }t          |¦  «        r<t	          |d¦  «        }|                      |¦  «         |                      |¦  «         d S t          |t          ¦  «        r$|                      t          |¦  «        ¦  «         d S t          |t          ¦  «        r	|| _
        d S t          |t          ¦  «        r$|                      t          |¦  «        ¦  «         d S 	 |j        r4t          |¦  «        }t          |¦  «        }t          |¦  «        }|| _
        d S #  Y nxY wt          |¦  «        ‚)Nr   Úrb)Úsysrû  Ústdinr+   ÚopenrÑ   r(   Úfiler`  rp  Ú
inputStater%  rj  rå  rR   )r4   rÆ   r  Úarg1ÚfÚrdÚcbÚsss           r   rû  zCharScanner.setInput­  se  € ð ð 	ØˆJˆJˆJØ�MŠM˜#œ)Ñ$Ô$Ð$ØˆFð �AŒwˆõ ˜$ÑÔð 	Ý�T˜$‘”ˆAØ�MŠM˜!ÑÔÐØ×Ò˜TÑ"Ô"Ð"ØˆFõ �d�4Ñ Ô ð 	Ø�MŠM�* TÑ*Ô*Ñ+Ô+Ð+ØˆFõ
 �dÕ0Ñ1Ô1ð 	Ø"ˆDŒOØˆFõ �d�;Ñ'Ô'ð 	Ø�MŠMÕ/°Ñ5Ô5Ñ6Ô6Ð6ØˆFð
	ØŒyð %Ý˜D‘\”\�Ý ‘^”^�Ý*¨2Ñ.Ô.�Ø"$�”ØˆFøð	ØˆDøøøõ ˜‰oŒoÐs   Ä;E ÅEc                 ó   — || _         d S r"   ©rô  )r4   Úsizes     r   Ú
setTabSizezCharScanner.setTabSizeì  s   € ØˆŒˆˆr   c                 ó   — | j         S r"   r  rµ   s    r   Ú
getTabSizezCharScanner.getTabSizeï  s
   € ØŒ|Ðr   c                 ó   — || _         d S r"   ©rñ  r
  s     r   ÚsetCaseSensitivezCharScanner.setCaseSensitiveò  s   € ØˆÔÐÐr   c                 ó   — || _         d S r"   ©rö  )r4   r6  s     r   ÚsetCommitToPathzCharScanner.setCommitToPathõ  s   € Ø"ˆÔÐÐr   c                 ó   — || j         _        d S r"   ©r  ru  ©r4   r  s     r   rÑ   zCharScanner.setFilenameø  ó   € Ø#$ˆŒÔ Ð Ð r   c                 ó   — || j         _        d S r"   ©r  r>   rÛ   s     r   rÜ   zCharScanner.setLineû  s   € Ø#ˆŒÔÐÐr   c                 ób   — |                       ¦   «          | j                             |¦  «         d S r"   )Ú	resetTextrZ   rD   ©r4   r>  s     r   r×   zCharScanner.setTextþ  s.   € Ø�ŠÑÔÐØŒ	×Ò˜ÑÔÐÐÐr   c                 ó   — | j         S r"   r  rµ   s    r   ÚgetCaseSensitivezCharScanner.getCaseSensitive  s   € ØÔ!Ð!r   c                 ó   — | j         S r"   )rò  rµ   s    r   ÚgetCaseSensitiveLiteralsz$CharScanner.getCaseSensitiveLiterals  s   € ØÔ)Ð)r   c                 ó   — | j         j        S r"   ©r  r?   rµ   s    r   rV   zCharScanner.getColumn  s   € ØŒÔ%Ð%r   c                 ó   — || j         _        d S r"   r%  rÜ  s     r   rÙ   zCharScanner.setColumn  s   € Ø!"ˆŒÔÐÐr   c                 ó   — | j         S r"   r  rµ   s    r   ÚgetCommitToPathzCharScanner.getCommitToPath  r  r   c                 ó   — | j         j        S r"   r  rµ   s    r   r`   zCharScanner.getFilename  ó   € ØŒÔ'Ð'r   c                 ó   — | j         j        S r"   ©r  rc  rµ   s    r   ÚgetInputBufferzCharScanner.getInputBuffer  s   € ØŒÔ$Ð$r   c                 ó   — | j         S r"   ©r  rµ   s    r   ÚgetInputStatezCharScanner.getInputState  ó
   € ØŒÐr   c                 óB   — t          |t          ¦  «        sJ ‚|| _        d S r"   )r(   rp  r  ©r4   Ústates     r   ÚsetInputStatezCharScanner.setInputState  s$   € Ý˜%Õ 5Ñ6Ô6Ð6Ð6Ð6ØˆŒˆˆr   c                 ó   — | j         j        S r"   r  rµ   s    r   rU   zCharScanner.getLine  s   € ØŒÔ#Ð#r   c                 ó*   — t          | j        ¦  «        S r"   rã  rµ   s    r   rW   zCharScanner.getText!  rÚ  r   c                 ó   — | j         S r"   )rõ  rµ   s    r   ÚgetTokenObjectzCharScanner.getTokenObject$  r  r   c                 ó†   — | j         j                             |¦  «        }| j        s|j                             |¦  «        }|S r"   )r  rc  rL  rñ  re  Úlower)r4   r“   r„   s      r   rL  zCharScanner.LA'  s?   € ØŒOÔ!×$Ò$ QÑ'Ô'ˆØÔ!ð 	%à”×!Ò! !Ñ$Ô$ˆAØˆr   c                 ó8  — 	 | j         sJ ‚|                       ¦   «         }|                     |¦  «         |                     | j        j        ¦  «         |                     | j        j        ¦  «         |S #  |                      d¦  «         Y nxY wt          j	        S )Nzunable to create new token)
rð  rá   rÙ   r  rr  rÜ   rs  ÚpanicrQ   ÚbadToken)r4   rÃ   r´  s      r   Ú	makeTokenzCharScanner.makeToken.  s“   € ð		5à”?Ð"Ð"Ð"Ø—/’/Ñ#Ô#ˆCØ�KŠK˜ÑÔÐØ�MŠM˜$œ/Ô:Ñ;Ô;Ð;Ø�KŠK˜œÔ6Ñ7Ô7Ð7ØˆJøð	5Ø�JŠJÐ3Ñ4Ô4Ð4Ð4Ð4øøøÝŒ~Ðs   ‚A1A4 Á4Bc                 ó>   — | j         j                             ¦   «         S r"   ©r  rc  rQ  rµ   s    r   rQ  zCharScanner.mark;  ó   € ØŒÔ$×)Ò)Ñ+Ô+Ð+r   c                 óÈ   — |                      |                      d¦  «        ¦  «        r|                      ¦   «          d S t          |                      d¦  «        |d| ¦  «        ‚©Nr   F)r³  rL  r9  rp   ©r4   rà  s     r   Ú_match_bitsetzCharScanner._match_bitset>  sP   € Ø�8Š8�D—G’G˜A‘J”JÑÔð 	FØ�LŠL‰NŒNˆNˆNˆNå)¨$¯'ª'°!©*¬*°a¸ÀÑEÔEÐEr   c                 ó´   — |D ]T}|                       d¦  «        |k    r|                      ¦   «          Œ0t          |                       d¦  «        |d| ¦  «        ‚d S rD  ©rL  r9  rp   )r4   r>  r„   s      r   Ú_match_stringzCharScanner._match_stringD  s_   € Øð 	Jð 	JˆAØ�wŠw�q‰zŒz˜QŠˆØ—’‘”��å-¨d¯gªg°a©j¬j¸!¸UÀDÑIÔIÐIð		Jð 	Jr   c                 ót   — t          |¦  «        r|                      |¦  «        S |                      |¦  «        S r"   )r+   rI  rF  r  s     r   ÚmatchzCharScanner.matchK  s:   € Ý˜$ÑÔð 	,Ø×%Ò% dÑ+Ô+Ð+à×%Ò% dÑ+Ô+Ð+r   c                 óª   — |                       d¦  «        |k    r|                      ¦   «          d S t          |                       d¦  «        |d| ¦  «        ‚©Nr   TrH  rÜ  s     r   ÚmatchNotzCharScanner.matchNotQ  sD   € Ø�7Š7�1‰:Œ:˜Š?ˆ?Ø�LŠL‰NŒNˆNˆNˆNå)¨$¯'ª'°!©*¬*°a¸¸tÑDÔDÐDr   c                 óÞ   — |                       d¦  «        |k     s|                       d¦  «        |k    r&t          |                       d¦  «        ||d| ¦  «        ‚|                      ¦   «          d S rD  )rL  rp   r9  )r4   Úc1Úc2s      r   Ú
matchRangezCharScanner.matchRangeW  sX   € Ø�7Š7�1‰:Œ:˜Š?ˆ?˜dŸgšg a™jœj¨2šo˜oÝ)¨$¯'ª'°!©*¬*°b¸"¸eÀTÑJÔJÐJà�LŠL‰NŒNˆNˆNˆNr   c                 óH   — | j         xj        dz  c_        d| j         _        d S r4  )r  r>   r?   rµ   s    r   ÚnewlinezCharScanner.newline]  s(   € ØŒÐÔ Ñ!ÐÔØ!"ˆŒÔÐÐr   c                 óŽ   — |                       ¦   «         }|dz
  | j        z  dz   | j        z  dz   }|                      |¦  «         d S r4  )rV   rô  rÙ   )r4   r„   Úncs      r   ÚtabzCharScanner.taba  sJ   € Ø�NŠNÑÔˆØ�1‘�d”lÑ" aÑ'¨4¬<Ñ7¸!Ñ;ˆØ�Š�rÑÔÐÐÐr   c                 óR   — t          d|z   ¦  «         t          j        d¦  «         d S )NzCharScanner: panic: r   )r   r  Úexitr  s     r   r=  zCharScanner.panicf  s'   € ÝÐ$ qÑ(Ñ)Ô)Ð)ÝŒ�‰Œˆˆˆr   c                 óØ   — |                       ¦   «         s!t          dt          |¦  «        z   ¦  «         d S t          |                       ¦   «         dz   t          |¦  «        z   ¦  «         d S )Nr   z	: error: ©r`   r   rE   r  s     r   ÚreportErrorzCharScanner.reportErrorj  se   € Ø×ÒÑ!Ô!ð 	=Ý�)�c !™fœfÑ$Ñ%Ô%Ð%Ð%Ð%å�$×"Ò"Ñ$Ô$ {Ñ2µS¸±V´VÑ;Ñ<Ô<Ð<Ð<Ð<r   c                 óØ   — |                       ¦   «         s!t          dt          |¦  «        z   ¦  «         d S t          |                       ¦   «         dz   t          |¦  «        z   ¦  «         d S )Nz	warning: z: warning: r[  r  s     r   ÚreportWarningzCharScanner.reportWarningp  se   € Ø×ÒÑ!Ô!ð 	?Ý�+¥ A¡¤Ñ&Ñ'Ô'Ð'Ð'Ð'å�$×"Ò"Ñ$Ô$ }Ñ4µs¸1±v´vÑ=Ñ>Ô>Ð>Ð>Ð>r   c                 ó’   — | j                              d¦  «         | j        j        | j        _        | j        j        | j        _        d S r¬   )rZ   r×  r  r?   rr  r>   rs  rµ   s    r   r  zCharScanner.resetTextv  s<   € ØŒ	×Ò˜AÑÔÐØ+/¬?Ô+AˆŒÔ(Ø)-¬Ô)=ˆŒÔ&Ð&Ð&r   c                 óD   — | j         j                             |¦  «         d S r"   ©r  rc  rV  ©r4   Úposs     r   rV  zCharScanner.rewind{  ó!   € ØŒÔ×$Ò$ SÑ)Ô)Ð)Ð)Ð)r   c                 ó   — || _         d S r"   )rð  ©r4   Úcls     r   rú  zCharScanner.setTokenObjectClass~  s   € ØˆŒˆˆr   c                 óH  — |sd S t          |t          ¦  «        sJ ‚|                     ¦   «         }|t          t          t
          t          fv rd S |                     ¦   «         }|sd S t          |¦  «        sJ ‚|  	                    ||¦  «        }| 
                    |¦  «         |S r"   )r(   rQ   rÞ   rä   rŸ   rÈ   rã   rW   r+   ÚtestLiteralsTablerá   )r4   rN   Ú_typeÚ_texts       r   ÚtestForLiteralzCharScanner.testForLiteral�  s¨   € Øð 	ØˆFÝ˜%¥Ñ&Ô&Ð&Ð&Ð&à—’‘”ˆð •T�,¥xÕ0CÐDÐDÐDØˆFà—’‘”ˆØð 	ØˆFå˜eÑ$Ô$Ð$Ð$Ð$Ø×&Ò& u¨UÑ3Ô3ˆØ�Š�eÑÔÐØˆr   c                 ó’  — t          |d         ¦  «        r|d         }|d         }n!| j                             ¦   «         }|d         }t          |t          ¦  «        st          |t          ¦  «        sJ ‚t          | j        t          ¦  «        sJ ‚	 | j        s|j         	                    |¦  «        }| j        |         }n#  Y nxY w|S r\  )
r+   rZ   rá  r(   r™   ró  Údictrò  re  r;  )r4   r   r>  r“   s       r   ri  zCharScanner.testLiteralsTable•  sÐ   € Ý˜$˜qœ'Ñ"Ô"ð 	Ø�Q”ˆAØ�Q”ˆAˆAà”	×#Ò#Ñ%Ô%ˆAØ�Q”ˆAõ ˜!�CÑ Ô ð 	%Ý˜a¥Ñ$Ô$Ð$Ð$Ð$õ ˜$œ-­Ñ-Ô-Ð-Ð-Ð-ð	àÔ-ð )Ø”K×%Ò% aÑ(Ô(�Ø”˜aÔ ˆAˆAøð	ØˆDøøøØˆs   Â.C  Ã Cc                 ó4   — |j                              ¦   «         S r"   )re  r;  rÜ  s     r   ÚtoLowerzCharScanner.toLower¬  s   € ØŒ{× Ò Ñ"Ô"Ð"r   c                 ó4   — t          d| j        z  ¦  «         d S ©NrC   ©r   r÷  rµ   s    r   ÚtraceIndentzCharScanner.traceIndent¯  ó   € Ýˆc�D”OÑ#Ñ$Ô$Ð$Ð$Ð$r   c                 óž   — | xj         dz  c_         |                      ¦   «          t          d|›d|                      d¦  «        ›�¦  «         d S )Nr   z> lexer ú c== )r÷  rt  r   rL  ©r4   Úrnames     r   ÚtraceInzCharScanner.traceIn²  sO   € ØˆŒ˜1ÑˆŒØ×ÒÑÔÐÝˆ U U U¨4¯7ª7°1©:¬:¨:Ð6Ñ7Ô7Ð7Ð7Ð7r   c                 óž   — |                       ¦   «          t          d|›d|                      d¦  «        ›�¦  «         | xj        dz  c_        d S )Nz< lexer rw  r   )rt  r   rL  r÷  rx  s     r   ÚtraceOutzCharScanner.traceOut·  sM   € Ø×ÒÑÔÐÝˆ U U U¨4¯7ª7°1©:¬:¨:Ð6Ñ7Ô7Ð7ØˆŒ˜1ÑˆŒˆˆr   c                 ó   — d S r"   r   rµ   s    r   ÚuponEOFzCharScanner.uponEOF¼  r}  r   c                 óL   — | j         r| j                             |¦  «         d S d S r"   )rï  rZ   rD   rÜ  s     r   rD   zCharScanner.append¿  s3   € ØÔ!ð 	 ØŒI×Ò˜QÑÔÐÐÐð	 ð 	 r   c                 óB   — | j         j                             ¦   «          d S r"   )r  rc  r6  rµ   s    r   r6  zCharScanner.commitÃ  s   € ØŒÔ×$Ò$Ñ&Ô&Ð&Ð&Ð&r   c                 ó†  — | j         j        s–|                      d¦  «        }| j        r|                      |¦  «         n4| j         j                             d¦  «        }|                      |¦  «         |r|dv r|                      ¦   «          n| j         xj        dz  c_        | j         j                             ¦   «          d S )Nr   r‚   )	r  rt  rL  rñ  rD   rc  rW  r?   r9  rÜ  s     r   r9  zCharScanner.consumeÆ  sµ   € ØŒÔ'ð 	,Ø—’˜‘
”
ˆAØÔ!ð Ø—’˜A‘”��ð ”_Ô*×-Ò-¨aÑ0Ô0�Ø—’˜A‘”�àð ,�Q˜$�Y�YØ—’‘
”
�
�
à”Ð&Ô&¨!Ñ+Ð&Ô&ØŒÔ×%Ò%Ñ'Ô'Ð'Ð'Ð'r   c                 ó  — |                       d¦  «        t          k    rf|                       d¦  «        |k    rQ|                      ¦   «          |                       d¦  «        t          k    r|                       d¦  «        |k    °Kd S d S d S d S r4  )rL  ÚEOF_CHARr9  rÜ  s     r   ÚconsumeUntil_charzCharScanner.consumeUntil_charØ  ss   € Ø�gŠg�a‰jŒj�HÒ$Ð$¨¯ª°©¬°qª¨Ø�LŠL‰NŒNˆNð �gŠg�a‰jŒj�HÒ$Ð$¨¯ª°©¬°qª¨¨¨Ð$Ð$Ð$Ð$¨¨r   c                 óf  — |                       d¦  «        t          k    rŽ| j                             |                       d¦  «        ¦  «        se|                      ¦   «          |                       d¦  «        t          k    r1| j                             |                       d¦  «        ¦  «        ¯_d S d S d S d S r4  )rL  rƒ  r}   r³  r9  )r4   Úbitsets     r   ÚconsumeUntil_bitsetzCharScanner.consumeUntil_bitsetÝ  s�   € Ø�gŠg�a‰jŒj�HÒ$Ð$¨T¬X¯_ª_¸T¿WºWÀQ¹Z¼ZÑ-HÔ-HÐ$Ø�LŠL‰NŒNˆNð �gŠg�a‰jŒj�HÒ$Ð$¨T¬X¯_ª_¸T¿WºWÀQ¹Z¼ZÑ-HÔ-HÐ$Ð$Ð$Ð$Ð$Ð$Ð$Ð$Ð$r   c                 óž   — |s5|                       ¦   «          |                      t          ¦  «        | _        d S |                      |¦  «         d S r"   )r~  r?  rÈ   rõ  Úraise_NoViableAlt)r4   Úla1s     r   ÚdefaultzCharScanner.defaultã  sK   € Øð 	(Ø�LŠL‰NŒNˆNØ $§¢­xÑ 8Ô 8ˆDÔÐÐà×"Ò" 3Ñ'Ô'Ð'Ð'Ð'r   c                 óª  — |s5|                       ¦   «          |                      t          ¦  «        | _        d S |s"|                      ¦   «          t          ¦   «         ‚|                      ¦   «          	 |d         } ||dd …         Ž  n@# t          $ r3}|                      |¦  «         |                      ¦   «          Y d }~nd }~ww xY wt          ¦   «         ‚r\  )	r~  r?  rÈ   rõ  r9  rÀ   r6  r:   r\  )r4   rŠ  r   Úfuncrl  s        r   ÚfilterdefaultzCharScanner.filterdefaultê  s×   € Øð 	Ø�LŠL‰NŒNˆNØ $§¢­xÑ 8Ô 8ˆDÔØˆFàð 	Ø�LŠL‰NŒNˆNÝ‘*”*Ðð �KŠK‰MŒMˆMð Ø˜!”W�Ø��d˜1˜2˜2”h���øÝ'ð  ð  ð  à× Ò  Ñ#Ô#Ð#Ø—’‘”������øøøøð øøøõ ‘*”*Ðs   Á1B Â
CÂ)B?Â?CNc                 óÌ   — |s|                       d¦  «        }|                      ¦   «         }|                      ¦   «         }|                      ¦   «         }t	          ||||¦  «        ‚r4  )rL  r`   rU   rV   r\   )r4   rŠ  Úfnamer>   rY   s        r   r‰  zCharScanner.raise_NoViableAltÿ  sW   € ØÐ$˜$Ÿ'š' !™*œ*�CØ× Ò Ñ"Ô"ˆØ—’‘”ˆØ—’Ñ Ô ˆÝ)¨#¨e°D¸Ñ=Ô=Ð=r   c                 óº   — |rQ|sO|t           k    sD| j                             |¦  «        }|                      |¦  «        }|                     |¦  «         || _        |S r"   )rä   rZ   rá  r?  r×   rõ  )r4   Ú_createÚ_tokenÚ_ttypeÚ_offsetrÔ  s         r   Úset_return_tokenzCharScanner.set_return_token  s^   € Øð 	#˜6ð 	#¨6µTª>¨>Ø”Y×(Ò(¨Ñ1Ô1ˆFØ—^’^ FÑ+Ô+ˆFØ�NŠN˜6Ñ"Ô"Ð"Ø"ˆÔØˆr   )r   r"   )<r6   r7   r8   ÚNO_CHARrƒ  r2   r€  rû  r  r  r  r  rÑ   rÜ   r×   r!  r#  rV   rÙ   r(  r`   r-  r0  r5  rU   rW   r9  rL  r?  rQ  rF  rI  rK  rN  rR  rT  rW  r=  r\  r^  r  rV  rú  rl  ri  rp  rt  rz  r|  r~  rD   r6  r9  r„  r‡  r‹  rŽ  r‰  r–  rm  rn  s   @r   rì  rì  •  sq  ø€ € € € € à€GØ€Hðð ð ð ð ð )ð )ð )ð=ð =ð =ð~ð ð ðð ð ðð ð ð#ð #ð #ð%ð %ð %ð$ð $ð $ðð ð ð"ð "ð "ð*ð *ð *ð&ð &ð &ð#ð #ð #ð!ð !ð !ð(ð (ð (ð%ð %ð %ðð ð ð ð  ð  ð$ð $ð $ðð ð ð!ð !ð !ðð ð ðð ð ð,ð ,ð ,ðFð Fð FðJð Jð Jð,ð ,ð ,ðEð Eð Eðð ð ð#ð #ð #ðð ð ð
ð ð ð ð=ð =ð =ð?ð ?ð ?ð>ð >ð >ð
*ð *ð *ðð ð ðð ð ð(ð ð ð.#ð #ð #ð%ð %ð %ð8ð 8ð 8ð
ð ð ð
ð ð ð ð  ð  ð'ð 'ð 'ð(ð (ð (ð$ð ð ð
ð ð ð(ð (ð (ðð ð ð*>ð >ð >ð >ðð ð ð ð ð ð r   rì  c                   ó   — e Zd Zd„ Zd„ ZdS )rþ  c                 ó\   — t          |t          ¦  «        r	|| _        d S t          d¦  «        ‚)Nz/CharScannerIterator requires CharScanner object)r(   rì  r„  rR   r…  s     r   r2   zCharScannerIterator.__init__  r†  r   c                 ó’   — | j         sJ ‚| j                              ¦   «         }|r|                     ¦   «         rt          ¦   «         ‚|S r"   rˆ  r  s     r   rŠ  zCharScannerIterator.next  r‹  r   NrŒ  r   r   r   rþ  rþ    s5   € € € € € ðKð Kð Kðð ð ð ð r   rþ  c                   ód   — e Zd ZdZdZdZedz
  Zdd„Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zdd„ZeZdd„Zd„ ZdS )rz   é@   r   rr   r   Nc                 óü  — |s+t                                | t          d¦  «        g¦  «         d S t          |t          ¦  «        r+t                                | t          |¦  «        g¦  «         d S t          |t          ¦  «        rt                                | |g¦  «         d S t          |t
          ¦  «        st          d¦  «        ‚|D ]-}t          |t          ¦  «        st          | dd|z  z   ¦  «        ‚Œ.|| _        d S )Nr   z/BitSet requires integer, long, or list argumentzList argument item is znot a long: %s)	rz   r2   r   r(   r™   rÓ  rR   r   Údata)r4   rž  r*   s      r   r2   zBitSet.__init__/  s  € Øð 	Ý�OŠO˜D¥$ q¡'¤' Ñ+Ô+Ð+ØˆFÝ�d�3ÑÔð 	Ý�OŠO˜D¥$ t¡*¤* Ñ.Ô.Ð.ØˆFÝ�d�4Ñ Ô ð 	Ý�OŠO˜D $ Ñ(Ô(Ð(ØˆFÝ˜$�tÑ$Ô$ð 	-Ýð ,ñ -ô -ð -àð 	8ð 	8ˆAÝ˜a¥Ñ+Ô+ð 8Ý Ð%=Ø 0°AÑ 6ñ&7ñ 8ô 8ð 8ð8ð ˆŒ	ˆ	ˆ	r   c                 óØ   — t          | j        ¦  «        t          j        z  }d}t	          d|¦  «        D ]5}|                      |¦  «        r|dz  }n|dz  }|dz   dz  s|d|dz   z  z  }Œ6|S )Nr   r   Ú1Úor   é
   z|%s|)r@   rž  rz   ÚBITSr   Úat)r4   Úbitsr>  r“   s       r   rH   zBitSet.__str__B  s€   € Ý�4”9‰~Œ~¥¤Ñ+ˆØˆÝ˜˜$‘”ð 	$ð 	$ˆAØ�wŠw�q‰zŒzð Ø�S‘��à�S‘�Ø�q‘S˜B‘Jð $Ø�V˜q ™s‘^Ñ#�øØˆr   c                 ó    — t          | ¦  «        S r"   r1  rµ   s    r   rJ   zBitSet.__repr__N  r2  r   c                 ó6  — |sdS t          |t          ¦  «        r|                      |¦  «        S t          |¦  «        st	          | d|z  ¦  «        ‚t          |¦  «        dk    rt	          | d|z  ¦  «        ‚t          |¦  «        }|                      |¦  «        S )NFzchar or unichar expected: %sr   zchar expected: %s)r(   r™   r¤  r+   rR   r@   rg   )r4   r  rê  s      r   r³  zBitSet.memberQ  sž   € Øð 	Ø�5å�d�3ÑÔð 	!Ø—7’7˜4‘=”=Ð å˜dÑ#Ô#ð 	JÝ˜DÐ!?À4Ñ!HÑIÔIÐIõ
 ˆt‰9Œ9˜Š>ˆ>Ý˜DÐ!4¸Ñ!=Ñ>Ô>Ð>õ �$‰iŒiˆð �wŠw�s‰|Œ|Ðr   c                 ó    — |t           j        z	  S r"   )rz   ÚLOG_BITS)r4   Úbits     r   Ú
wordNumberzBitSet.wordNumberg  s   € Ø•f”oÑ%Ð%r   c                 ó*   — |t           j        z  }d|z  S r4  )rz   ÚMOD_MASK)r4   rª  rc  s      r   ÚbitMaskzBitSet.bitMaskj  s   € Ø•F”OÑ#ˆØ�S‘Ðr   Tc                 ó°  — |                       |¦  «        }|                      |¦  «        }|t          | j        ¦  «        k    rd|t          | j        ¦  «        z
  dz   }t	          d|¦  «        D ]}| j                             d¦  «         Œt          | j        ¦  «        |dz   k    sJ ‚|r| j        |xx         |z  cc<   d S | j        |xx         | z  cc<   d S ri  )r«  r®  r@   rž  r   rD   )r4   rª  Úonr“   Úmaskrú   r*   s          r   r}   z
BitSet.setn  sÝ   € à�OŠO˜CÑ Ô ˆØ�|Š|˜CÑ Ô ˆØ�c�$”)‰nŒnÒÐØ•C˜œ	‘N”NÑ" QÑ&ˆAÝ˜A˜a‘[”[ð $ð $�Ø”	× Ò  Ñ#Ô#Ð#Ð#Ý�t”y‘>”> Q q¡SÒ(Ð(Ð(Ð(Øð 	$ØŒI�aˆLˆLŒL˜TÑ!ˆLˆL‰LˆLˆLàŒI�aˆLˆLŒL˜d˜UÑ#ˆLˆL‰LˆLˆLr   c                 ó4   — |                       || ¦  «         d S r"   )r}   )r4   rª  Úoffs      r   r³  z
BitSet.off  s   € Ø�Š�˜�WÑÔÐÐÐr   c                 óz   — |                       |¦  «        }| j        |         }|                      |¦  «        }||z  S r"   )r«  rž  r®  )r4   rª  r“   ÚvrÊ  s        r   r¤  z	BitSet.at‚  s8   € Ø�OŠO˜CÑ Ô ˆØŒI�aŒLˆØ�LŠL˜ÑÔˆØ�1‰uˆr   r"   )T)r6   r7   r8   r£  ÚNIBBLEr©  r­  r2   rH   rJ   r³  r«  r®  r}   r¯  r³  r¤  r   r   r   rz   rz   )  sÉ   € € € € € Ø€DØ€FØ€HØ�Q‰w€Hðð ð ð ð&
ð 
ð 
ðð ð ðð ð ð,&ð &ð &ðð ð ð$ð $ð $ð $ð €Cðð ð ð ðð ð ð ð r   rz   c                 ó0   — t          d| j        z  ¦  «        ‚©Nz1%s is only valid if parser is built for debugging)r›  Ú	func_name©r�  s    r   Úillegalarg_exr»  �  s!   € Ý
Ø:ØŒññô ð r   c                 ó0   — t          d| j        z  ¦  «        ‚r¸  )ÚRuntimeErrorr¹  rº  s    r   Ú
runtime_exr¾  ’  s!   € Ý
Ø:ØŒññô ð r   c                   óV   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ ZdS )ÚTokenBufferc                 ód   — || _         d| _        d| _        d| _        t	          ¦   «         | _        d S r¬   )rc  r'  r(  r)  r  r*  r¡  s     r   r2   zTokenBuffer.__init__œ  s/   € ØˆŒ
ØˆŒØˆÔØˆÔÝ‘W”WˆŒ
ˆ
ˆ
r   c                 ób   — d| _         d| _        d| _        | j                             ¦   «          d S r¬   rY  rµ   s    r   r  zTokenBuffer.reset£  rZ  r   c                 ó&   — | xj         dz  c_         d S r4  r8  rµ   s    r   r9  zTokenBuffer.consume©  r:  r   c                 ó(  — |                       ¦   «          | j                             ¦   «         || j        z   k     rX| j                             | j                             ¦   «         ¦  «         | j                             ¦   «         || j        z   k     °Vd S d S r"   )rP  r*  r!  r(  rD   rc  r|  )r4   rk  s     r   rI  zTokenBuffer.fill¬  sˆ   € Ø×ÒÑÔÐØŒj×ÒÑ!Ô! V¨dÔ.?Ñ%?Ò@Ð@ØŒJ×Ò˜dœj×2Ò2Ñ4Ô4Ñ5Ô5Ð5ð Œj×ÒÑ!Ô! V¨dÔ.?Ñ%?Ò@Ð@Ð@Ð@Ð@Ð@r   c                 ó   — | j         S r"   )rc  rµ   s    r   ÚgetInputzTokenBuffer.getInput±  ó
   € ØŒzÐr   c                 ó€   — |                       |¦  «         | j                             | j        |z   dz
  ¦  «        j        S r4  )rI  r*  r  r(  rÃ   rG  s     r   rL  zTokenBuffer.LA´  s7   € Ø�	Š	�!‰ŒˆØŒz×#Ò# DÔ$5¸Ñ$9¸AÑ$=Ñ>Ô>ÔCÐCr   c                 óv   — |                       |¦  «         | j                             | j        |z   dz
  ¦  «        S r4  rK  rG  s     r   ÚLTzTokenBuffer.LT¸  rM  r   c                 óX   — |                       ¦   «          | xj        dz  c_        | j        S r4  rO  rµ   s    r   rQ  zTokenBuffer.mark¼  rR  r   c                 ó\   — |                       ¦   «          || _        | xj        dz  c_        d S r4  rT  rU  s     r   rV  zTokenBuffer.rewindÁ  rW  r   c                 óÀ   — | j         dk    rR| j        dk    r| xj        dz  c_        n| j                             ¦   «          | xj         dz  c_         | j         dk    °Pd S d S r\  r]  rµ   s    r   rP  zTokenBuffer.syncConsumeÆ  r^  r   c                 óX   — d| j         ›d| j        ›d| j        ›d| j        ›d| j        ›d�S r,  )rc  r'  r(  r)  r*  rµ   s    r   rH   zTokenBuffer.__str__Ð  sA   € € àŒ:ˆ:ˆ:ØŒ=ˆ=ˆ=ØÔÐÐØÔÐÐØŒ:ˆ:ˆ:ðð 	r   c                 ó    — t          | ¦  «        S r"   r1  rµ   s    r   rJ   zTokenBuffer.__repr__Ø  r2  r   N)r6   r7   r8   r2   r  r9  rI  rÆ  rL  rÊ  rQ  rV  rP  rH   rJ   r   r   r   rÀ  rÀ  ›  sË   € € € € € ðð ð ðð ð ðð ð ð6ð 6ð 6ð
ð ð ðDð Dð Dð?ð ?ð ?ð!ð !ð !ð
ð ð ð
#ð #ð #ðð ð ðð ð ð ð r   rÀ  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚParserSharedInputStatec                 ó<   — d | _         |                      ¦   «          d S r"   )rc  r  rµ   s    r   r2   zParserSharedInputState.__init__á  s   € ØˆŒ
Ø�
Š
‰Œˆˆˆr   c                 óf   — d| _         d | _        | j        r| j                             ¦   «          d S d S r¬   )rt  ru  rc  r  rµ   s    r   r  zParserSharedInputState.resetå  s>   € ØˆŒØˆŒØŒ:ð 	ØŒJ×ÒÑÔÐÐÐð	ð 	r   N)r6   r7   r8   r2   r  r   r   r   rÑ  rÑ  ß  s2   € € € € € ðð ð ðð ð ð ð r   rÑ  c                   ó@  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%d$„ Z&d%„ Z'd&„ Z(d'„ Z)d(„ Z*d)„ Z+d*„ Z,d+„ Z-d,„ Z.d-„ Z/d.„ Z0d/„ Z1d0„ Z2d1„ Z3d2„ Z4d3„ Z5d4S )5ÚParserc                 óÔ   — d | _         d | _        d | _        i | _        d| _        d| _        |st          ¦   «         | _        d S |d         }t          |t          ¦  «        sJ ‚|| _        d S )NFr   )	r—   Ú	returnASTÚ
astFactoryÚtokenTypeToASTClassMapÚignoreInvalidDebugCallsr÷  rÑ  r  r(   )r4   r   rü  Úarg0s       r   r2   zParser.__init__ñ  st   € ØˆŒØˆŒØˆŒØ&(ˆÔ#Ø',ˆÔ$ØˆŒØð 	Ý4Ñ6Ô6ˆDŒOØˆFØ�AŒwˆÝ˜$Õ5Ñ6Ô6Ð6Ð6Ð6ØˆŒØˆr   c                 ó   — | j         S r"   )rÙ  rµ   s    r   ÚgetTokenTypeToASTClassMapz Parser.getTokenTypeToASTClassMap   s   € ØÔ*Ð*r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r»  ÚaddMessageListener©r4   Úls     r   rß  zParser.addMessageListener  s.   € ØÔ+ð 	3Ý˜$Ô1Ñ2Ô2Ð2Ð2Ð2ð	3ð 	3r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r»  ÚaddParserListenerrà  s     r   rã  zParser.addParserListener  s.   € ØÔ,ð 	2Ý˜$Ô0Ñ1Ô1Ð1Ð1Ð1ð	2ð 	2r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r»  ÚaddParserMatchListenerrà  s     r   rå  zParser.addParserMatchListener  ó.   € ØÔ,ð 	7Ý˜$Ô5Ñ6Ô6Ð6Ð6Ð6ð	7ð 	7r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r»  ÚaddParserTokenListenerrà  s     r   rè  zParser.addParserTokenListener  ræ  r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r»  ÚaddSemanticPredicateListenerrà  s     r   rê  z#Parser.addSemanticPredicateListener  s.   € ØÔ,ð 	=Ý˜$Ô;Ñ<Ô<Ð<Ð<Ð<ð	=ð 	=r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r»  ÚaddSyntacticPredicateListenerrà  s     r   rì  z$Parser.addSyntacticPredicateListener  s.   € ØÔ,ð 	>Ý˜$Ô<Ñ=Ô=Ð=Ð=Ð=ð	>ð 	>r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r»  ÚaddTraceListenerrà  s     r   rî  zParser.addTraceListener  s.   € ØÔ,ð 	1Ý˜$Ô/Ñ0Ô0Ð0Ð0Ð0ð	1ð 	1r   c                 ó   — t          ¦   «         ‚r"   rE  rµ   s    r   r9  zParser.consume   ó   € Ý!Ñ#Ô#Ð#r   c                 ó  — |                       d¦  «        t          k    rf|                       d¦  «        |k    rQ|                      ¦   «          |                       d¦  «        t          k    r|                       d¦  «        |k    °Kd S d S d S d S r4  )rL  rÈ   r9  )r4   r    s     r   Ú_consumeUntil_typezParser._consumeUntil_type#  s{   € Ø�gŠg�a‰jŒj�HÒ$Ð$¨¯ª°©¬°yÒ)@Ð)@Ø�LŠL‰NŒNˆNð �gŠg�a‰jŒj�HÒ$Ð$¨¯ª°©¬°yÒ)@Ð)@Ð)@Ð)@Ð$Ð$Ð$Ð$Ð)@Ð)@r   c                 óR  — |                       d¦  «        t          k    r„|                     |                       d¦  «        ¦  «        s`|                      ¦   «          |                       d¦  «        t          k    r,|                     |                       d¦  «        ¦  «        ¯Zd S d S d S d S r4  )rL  rÈ   r³  r9  ©r4   r}   s     r   Ú_consumeUntil_bitsetzParser._consumeUntil_bitset'  s‰   € Ø�gŠg�a‰jŒj�HÒ$Ð$¨S¯ZªZ¸¿ºÀ¹
¼
Ñ-CÔ-CÐ$Ø�LŠL‰NŒNˆNð �gŠg�a‰jŒj�HÒ$Ð$¨S¯ZªZ¸¿ºÀ¹
¼
Ñ-CÔ-CÐ$Ð$Ð$Ð$Ð$Ð$Ð$Ð$Ð$r   c                 óˆ   — t          |t          ¦  «        r|                      |¦  «         d S |                      |¦  «         d S r"   )r(   r™   rò  rõ  r£  s     r   ÚconsumeUntilzParser.consumeUntil+  sH   € Ý�c�#ÑÔð 	+Ø×#Ò# CÑ(Ô(Ð(Ð(Ð(à×%Ò% cÑ*Ô*Ð*Ð*Ð*r   c                 ó   — d S r"   r   rµ   s    r   ÚdefaultDebuggingSetupzParser.defaultDebuggingSetup1  r}  r   c                 ó   — | j         S r"   ©r×  rµ   s    r   ÚgetASTzParser.getAST4  ó
   € ØŒ~Ðr   c                 ó   — | j         S r"   ©rØ  rµ   s    r   ÚgetASTFactoryzParser.getASTFactory7  r1  r   c                 ó   — | j         j        S r"   r  rµ   s    r   r`   zParser.getFilename:  r*  r   c                 ó   — | j         S r"   r/  rµ   s    r   r0  zParser.getInputState=  r1  r   c                 ó   — || _         d S r"   r/  r3  s     r   r5  zParser.setInputState@  s   € ØˆŒˆˆr   c                 ó   — | j         |         S r"   ©r—   ©r4   rê  s     r   ÚgetTokenNamezParser.getTokenNameC  ó   € ØŒ˜sÔ#Ð#r   c                 ó   — | j         S r"   r  rµ   s    r   ÚgetTokenNameszParser.getTokenNamesF  r1  r   c                 ó   — | j         S r"   )Úfalserµ   s    r   ÚisDebugModezParser.isDebugModeI  rÇ  r   c                 ó   — t          ¦   «         ‚r"   rE  rÍ  s     r   rL  z	Parser.LAL  rð  r   c                 ó   — t          ¦   «         ‚r"   rE  rÍ  s     r   rÊ  z	Parser.LTO  rð  r   c                 ó>   — | j         j                             ¦   «         S r"   rA  rµ   s    r   rQ  zParser.markR  rB  r   c                 óÚ   — |                       d¦  «        |k    r=t          | j        |                      d¦  «        |d|                      ¦   «         ¦  «        ‚|                      ¦   «          d S rD  ©rL  r•   r—   rÊ  r`   r9  r
  s     r   Ú
_match_intzParser._match_intU  s`   € Ø�GŠG�A‰JŒJ˜!ŠOˆOÝ*ØŒ §¢¨¡
¤
¨A¨u°d×6FÒ6FÑ6HÔ6HñJô Jð Jð �LŠL‰NŒNˆNˆNˆNr   c                 óø   — |                      |                      d¦  «        ¦  «        s=t          | j        |                      d¦  «        |d|                      ¦   «         ¦  «        ‚|                      ¦   «          d S rD  )r³  rL  r•   r—   rÊ  r`   r9  rE  s     r   Ú
_match_setzParser._match_set\  sk   € Ø—’˜Ÿš ™œÑ$Ô$ð 	Ý*ØŒ˜tŸwšw q™zœz¨1¨e°T×5EÒ5EÑ5GÔ5GñIô Ið Ið �LŠL‰NŒNˆNˆNˆNr   c                 óÐ   — t          |t          ¦  «        r|                      |¦  «         d S t          |t          ¦  «        r|                      |¦  «         d S t          d¦  «        ‚)Nz0Parser.match requires integer ot BitSet argument)r(   r™   r  rz   r  rR   rô  s     r   rK  zParser.matchc  sc   € Ý�c�#ÑÔð 	Ø�OŠO˜CÑ Ô Ð ØˆFÝ�c�&Ñ!Ô!ð 	Ø�OŠO˜CÑ Ô Ð ØˆFÝÐJÑKÔKÐKr   c                 óÚ   — |                       d¦  «        |k    r=t          | j        |                      d¦  «        |d|                      ¦   «         ¦  «        ‚|                      ¦   «          d S rM  r  r
  s     r   rN  zParser.matchNotl  s`   € Ø�7Š7�1‰:Œ:˜Š?ˆ?Ý*ØŒ §¢¨¡
¤
¨A¨t°T×5EÒ5EÑ5GÔ5GñIô Ið Ið �LŠL‰NŒNˆNˆNˆNr   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  ÚremoveMessageListenerrà  s     r   r  zParser.removeMessageListeners  s.   € ØÔ,ð 	3Ý�tÔ1Ñ2Ô2Ð2Ð2Ð2ð	3ð 	3r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  ÚremoveParserListenerrà  s     r   r  zParser.removeParserListenerw  s.   € ØÔ,ð 	2Ý�tÔ0Ñ1Ô1Ð1Ð1Ð1ð	2ð 	2r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  ÚremoveParserMatchListenerrà  s     r   r  z Parser.removeParserMatchListener{  ó.   € ØÔ,ð 	7Ý�tÔ5Ñ6Ô6Ð6Ð6Ð6ð	7ð 	7r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  ÚremoveParserTokenListenerrà  s     r   r   z Parser.removeParserTokenListener  r  r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  ÚremoveSemanticPredicateListenerrà  s     r   r"  z&Parser.removeSemanticPredicateListenerƒ  s.   € ØÔ,ð 	=Ý�tÔ;Ñ<Ô<Ð<Ð<Ð<ð	=ð 	=r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  Ú removeSyntacticPredicateListenerrà  s     r   r$  z'Parser.removeSyntacticPredicateListener‡  s.   € ØÔ,ð 	>Ý�tÔ<Ñ=Ô=Ð=Ð=Ð=ð	>ð 	>r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  ÚremoveTraceListenerrà  s     r   r&  zParser.removeTraceListener‹  s.   € ØÔ,ð 	1Ý�tÔ/Ñ0Ô0Ð0Ð0Ð0ð	1ð 	1r   c                 óŠ  — d}|                       ¦   «         }|rd|z  |z   }t          |t          ¦  «        rd|                     ¦   «         }|                     ¦   «         }|                     ¦   «         }|dz   }t          ||||fz  t          j        ¬¦  «         d S t          |t          |¦  «        t          j        ¬¦  «         d S )Nzsyntax error:z%s:z/unexpected symbol at line %s (column %s) : "%s"©r  )
r`   r(   rQ   rV   rU   rW   r   r  ÚstderrrE   )r4   r*   r   r  r>   rY   rZ   s          r   r\  zParser.reportError�  s»   € ØˆØ×ÒÑÔˆØð 	$Ø˜1‘9 Ñ#ˆCÝ�a�ÑÔð 	/Ø—;’;‘=”=ˆDØ—9’9‘;”;ˆCØ—9’9‘;”;ˆDØÐJÑJˆCÝ�#˜˜c $˜Ñ'­c¬jÐ9Ñ9Ô9Ð9Ð9Ð9å�#•c˜!‘f”f¥3¤:Ð.Ñ.Ô.Ð.Ð.Ð.r   c                 ó¶   — |                       ¦   «         }|r#t          |›dt          |¦  «        ›�¦  «         d S t          dt          |¦  «        z  ¦  «         d S )Nz
:warning: zwarning: %sr[  )r4   r>  r  s      r   r^  zParser.reportWarning�  s_   € Ø×ÒÑÔˆØð 	,Ý a a a­¨A©¬¨Ð/Ñ0Ô0Ð0Ð0Ð0å�-¥3 q¡6¤6Ñ*Ñ+Ô+Ð+Ð+Ð+r   c                 óD   — | j         j                             |¦  «         d S r"   ra  rb  s     r   rV  zParser.rewind¤  rd  r   c                 ó   — || _         d S r"   rÿ  r  s     r   ÚsetASTFactoryzParser.setASTFactory§  ó   € ØˆŒˆˆr   c                 ó:   — | j                              |¦  «         d S r"   ©rØ  ÚsetASTNodeTyperf  s     r   ÚsetASTNodeClasszParser.setASTNodeClassª  s   € ØŒ×&Ò& rÑ*Ô*Ð*Ð*Ð*r   c                 ó0   — |                       |¦  «         d S r"   ©r2  ©r4   ÚnodeTypes     r   r1  zParser.setASTNodeType­  ó   € Ø×Ò˜XÑ&Ô&Ð&Ð&Ð&r   c                 ó@   — | j         st          | j        ¦  «         d S d S r"   )rÚ  r¾  ÚsetDebugMode)r4   Ú	debugModes     r   r9  zParser.setDebugMode°  s.   € ØÔ,ð 	*Ý�tÔ(Ñ)Ô)Ð)Ð)Ð)ð	*ð 	*r   c                 ó   — || j         _        d S r"   r  r  s     r   rÑ   zParser.setFilename´  r  r   c                 ó   — || _         d S r"   )rÚ  )r4   Úvalues     r   ÚsetIgnoreInvalidDebugCallsz!Parser.setIgnoreInvalidDebugCalls·  s   € Ø',ˆÔ$Ð$Ð$r   c                 ó   — || j         _        d S r"   r,  r
  s     r   ÚsetTokenBufferzParser.setTokenBufferº  s   € Ø !ˆŒÔÐÐr   c                 ó4   — t          d| j        z  ¦  «         d S rr  rs  rµ   s    r   rt  zParser.traceIndent½  ru  r   c                 óR   — | xj         dz  c_         |                      d|¦  «         d S ©Nr   ú> ©r÷  Útracerx  s     r   rz  zParser.traceInÀ  ó,   € ØˆŒ˜1ÑˆŒØ�
Š
�4˜ÑÔÐÐÐr   c                 óR   — |                       d|¦  «         | xj        dz  c_        d S ©Nú< r   ©rF  r÷  rx  s     r   r|  zParser.traceOutÄ  ó*   € Ø�
Š
�4˜ÑÔÐØˆŒ˜1ÑˆŒˆˆr   c                 óÚ   — |sd S |j         s||_         n<|j        s|j                              |¦  «         n|j                             |¦  «         ||_        |                     ¦   «          d S r"   ©ÚrootÚchildÚsetFirstChildÚsetNextSiblingÚadvanceChildToEnd©r4   Ú
currentASTrP  s      r   ÚaddASTChildzParser.addASTChildÉ  ó}   € Øð 	ØˆFØŒð 	3Ø#ˆJŒOˆOØÔ!ð 	3ØŒO×)Ò)¨%Ñ0Ô0Ð0Ð0àÔ×+Ò+¨EÑ2Ô2Ð2Ø ˆ
ÔØ×$Ò$Ñ&Ô&Ð&Ð&Ð&r   c                 ó�   — |rC|                      |j        ¦  «         |j        |_        |                     ¦   «          ||_        d S d S r"   ©ÚaddChildrO  rP  rS  ©r4   rU  rO  s      r   ÚmakeASTRootzParser.makeASTRootÖ  óO   € Øð 	#à�MŠM˜*œ/Ñ*Ô*Ð*à)œˆJÔØ×(Ò(Ñ*Ô*Ð*à"ˆJŒOˆOˆOð	#ð 	#r   N)6r6   r7   r8   r2   rÝ  rß  rã  rå  rè  rê  rì  rî  r9  rò  rõ  r÷  rù  rü  r   r`   r0  r5  r  r
  r  rL  rÊ  rQ  r  r  rK  rN  r  r  r  r   r"  r$  r&  r\  r^  rV  r-  r2  r1  r9  rÑ   r>  r@  rt  rz  r|  rV  r\  r   r   r   rÕ  rÕ  ï  s  € € € € € ðð ð ð+ð +ð +ð3ð 3ð 3ð2ð 2ð 2ð7ð 7ð 7ð7ð 7ð 7ð=ð =ð =ð>ð >ð >ð1ð 1ð 1ð$ð $ð $ðð ð ðð ð ð+ð +ð +ðð ð ðð ð ðð ð ð(ð (ð (ðð ð ð ð  ð  ð$ð $ð $ðð ð ðð ð ð$ð $ð $ð$ð $ð $ð,ð ,ð ,ðð ð ðð ð ðLð Lð Lðð ð ð3ð 3ð 3ð2ð 2ð 2ð7ð 7ð 7ð7ð 7ð 7ð=ð =ð =ð>ð >ð >ð1ð 1ð 1ð/ð /ð /ð,ð ,ð ,ð*ð *ð *ðð ð ð+ð +ð +ð'ð 'ð 'ð*ð *ð *ð%ð %ð %ð-ð -ð -ð"ð "ð "ð%ð %ð %ð ð  ð  ðð ð ð

'ð 
'ð 
'ð#ð #ð #ð #ð #r   rÕ  c                   óH   ‡ — e Zd Zˆ fd„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
ˆ xZS )	Ú	LLkParserc                 ó  •— 	 |d         }n	#  d}Y nxY wt          |t          ¦  «        r0t          t          | ¦  «                             ¦   «          || _        d S t          |t          ¦  «        r8t          t          | ¦  «                             |¦  «          | j        dg|¢R Ž  d S t          |t          ¦  «        rLt          t          | ¦  «                             ¦   «          |  	                    |¦  «          | j        dg|¢R Ž  d S t          |t          ¦  «        r[t          t          | ¦  «                             ¦   «          t          |¦  «        }|  	                    |¦  «          | j        dg|¢R Ž  d S t          d¦  «        ‚)Nr   r   zKLLkParser requires integer, ParserSharedInputStream or TokenStream argument)r(   r™   rb  r_  r2   rH  rÑ  Úset_krÀ  r@  rz  rR   )r4   r   rü  r  ÚtokenBufre  s        €r   r2   zLLkParser.__init__æ  s›  ø€ ð	Ø˜”7ˆDˆDøð	ØˆDˆDˆDøøøå�d�3ÑÔð 	Ý•)˜DÑ!Ô!×*Ò*Ñ,Ô,Ð,ØˆDŒFØˆFå�dÕ1Ñ2Ô2ð 	Ý•)˜DÑ!Ô!×*Ò*¨4Ñ0Ô0Ð0ØˆDŒJ�qÐ˜$ÐÐÐÐØˆFå�d�;Ñ'Ô'ð 	Ý•)˜DÑ!Ô!×*Ò*Ñ,Ô,Ð,Ø×Ò Ñ%Ô%Ð%ØˆDŒJ�qÐ˜$ÐÐÐÐØˆFå�d�;Ñ'Ô'ð 	Ý•)˜DÑ!Ô!×*Ò*Ñ,Ô,Ð,Ý" 4Ñ(Ô(ˆHØ×Ò Ñ)Ô)Ð)ØˆDŒJ�qÐ˜$ÐÐÐÐØˆFõ ð Jñ Kô Kð 	Ks   ƒ Œc                 óB   — | j         j                             ¦   «          d S r"   )r  rc  r9  rµ   s    r   r9  zLLkParser.consume  s   € ØŒÔ×%Ò%Ñ'Ô'Ð'Ð'Ð'r   c                 ó@   — | j         j                             |¦  «        S r"   )r  rc  rL  rÍ  s     r   rL  zLLkParser.LA
  ó   € ØŒÔ$×'Ò'¨Ñ*Ô*Ð*r   c                 ó@   — | j         j                             |¦  «        S r"   )r  rc  rÊ  rÍ  s     r   rÊ  zLLkParser.LT  re  r   c                 ó@   — 	 ||         | _         d S #  d| _         Y d S xY wr4  )rH  )r4   r  r   s      r   ra  zLLkParser.set_k  s,   € ð	Ø˜%”[ˆDŒFˆFˆFøð	ØˆDŒFˆFˆFˆFøøøs   ‚ ‘	c                 óÞ  — t          t          | ¦  «        ¦  «         |                      ¦   «          d}| j        j        dk    rd}t          ||z   |z   ¦  «         t          d| j        dz   ¦  «        D ]k}|dk    rt          d¦  «         |                      |¦  «        r(|                      |¦  «                             ¦   «         }nd}t          d|›d|›�¦  «         Œlt          d	¦  «         d S )
Nr   r   z [guessing]r   z, ÚnullzLA(z) == r€   )	r   rÃ   rt  r  rt  r   rH  rÊ  rW   )r4   Úeery  Úguessr“   rµ  s         r   rF  zLLkParser.trace  sí   € Ý�d�4‰jŒjÑÔÐØ×ÒÑÔÐØˆØŒ?Ô# aÒ'Ð'Ø!ˆEÝˆr�E‰z˜EÑ!Ñ#Ô#Ð#Ý˜˜$œ& ™(Ñ#Ô#ð 	*ð 	*ˆAØ�AŠvˆvÝ�d‘”�Ø�wŠw�q‰zŒzð Ø—G’G˜A‘J”J×&Ò&Ñ(Ô(��à�ÝˆE A A A a aÐ(Ñ)Ô)Ð)Ð)Ýˆd‰Œˆˆˆr   c                 óR   — | xj         dz  c_         |                      d|¦  «         d S rC  rE  rx  s     r   rz  zLLkParser.traceIn'  rG  r   c                 óR   — |                       d|¦  «         | xj        dz  c_        d S rI  rK  rx  s     r   r|  zLLkParser.traceOut+  rL  r   )r6   r7   r8   r2   r9  rL  rÊ  ra  rF  rz  r|  rm  rn  s   @r   r_  r_  ä  s§   ø€ € € € € ðKð Kð Kð Kð KðB(ð (ð (ð+ð +ð +ð+ð +ð +ðð ð ðð ð ð"!ð !ð !ðð ð ð ð ð ð r   r_  c                   ó   — e Zd Zd„ ZdS )ÚTreeParserSharedInputStatec                 ó   — d| _         d S r¬   )rt  rµ   s    r   r2   z#TreeParserSharedInputState.__init__4  s   € ØˆŒˆˆr   Nr5   r   r   r   ro  ro  3  s#   € € € € € ðð ð ð ð r   ro  c                   ót   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )Ú
TreeParserc                 óŠ   — t          ¦   «         | _        d | _        g | _        d | _        t          ¦   «         | _        d| _        d S r¬   )ro  r  Ú_retTreer—   r×  Ú
ASTFactoryrØ  r÷  )r4   r   rü  s      r   r2   zTreeParser.__init__=  s:   € Ý4Ñ6Ô6ˆŒØˆŒØˆŒØˆŒÝ$™,œ,ˆŒØˆŒˆˆr   c                 ó   — | j         S r"   rû  rµ   s    r   rü  zTreeParser.getASTE  rý  r   c                 ó   — | j         S r"   rÿ  rµ   s    r   r   zTreeParser.getASTFactoryH  r1  r   c                 ó   — | j         |         S r"   r  r  s     r   r  zTreeParser.getTokenNameK  r  r   c                 ó   — | j         S r"   r  rµ   s    r   r
  zTreeParser.getTokenNamesN  r1  r   c                 ó  — t          |t          ¦  «        st          |t          ¦  «        sJ ‚|r|t          k    r$t	          |                      ¦   «         ||d¦  «        ‚t          |t          ¦  «        r<|                     ¦   «         |k    r$t	          |                      ¦   «         ||d¦  «        ‚t          |t          ¦  «        r>|                     |j        ¦  «        s&t	          |                      ¦   «         ||d¦  «        ‚d S d S ©NF)r(   r™   rz   rX   r•   r
  rÞ   r³  )r4   r  r}   s      r   rK  zTreeParser.matchQ  sþ   € Ý˜#�cÑ"Ô"Ð<¥j°µVÑ&<Ô&<Ð<Ð<Ð<Øð 	O�A�’L�LÝ*¨4×+=Ò+=Ñ+?Ô+?ÀÀ3ÈÑNÔNÐNå�c�#ÑÔð 	O 1§9¢9¡;¤;°#Ò#5Ð#5Ý*¨4×+=Ò+=Ñ+?Ô+?ÀÀ3ÈÑNÔNÐNå�c�&Ñ!Ô!ð 	O¨#¯*ª*°Q´YÑ*?Ô*?ð 	OÝ*¨4×+=Ò+=Ñ+?Ô+?ÀÀ3ÈÑNÔNÐNð	Oð 	Oð 	Oð 	Or   c                 ó˜   — |r#|t           k    s|                     ¦   «         |k    r$t          |                      ¦   «         ||d¦  «        ‚d S ©NT)rX   rÞ   r•   r
  )r4   r  Úttypes      r   rN  zTreeParser.matchNot\  sM   € Øð 	Q�Q�'’\�\ q§y¢y¡{¤{°eÒ';Ð';Ý*¨4×+=Ò+=Ñ+?Ô+?ÀÀEÈ4ÑPÔPÐPð (<Ð';r   c                 ó>   — t          d|t          j        ¬¦  «         d S )Nzerror:r(  )r   r  r)  )r4   Úexs     r   r\  zTreeParser.reportError`  s   € Ýˆh�r¥¤
Ð+Ñ+Ô+Ð+Ð+Ð+r   c                 ó&   — t          d|¦  «         d S )Nzwarning:)r   r  s     r   r^  zTreeParser.reportWarningc  s   € Ýˆj˜ÑÔÐÐÐr   c                 ó   — || _         d S r"   rÿ  r  s     r   r-  zTreeParser.setASTFactoryf  r.  r   c                 ó0   — |                       |¦  «         d S r"   r4  r5  s     r   r1  zTreeParser.setASTNodeTypei  r7  r   c                 ó:   — | j                              |¦  «         d S r"   r0  r5  s     r   r2  zTreeParser.setASTNodeClassl  s   € ØŒ×&Ò& xÑ0Ô0Ð0Ð0Ð0r   c                 ó4   — t          d| j        z  ¦  «         d S rr  rs  rµ   s    r   rt  zTreeParser.traceIndento  ru  r   c           	      óü   — | xj         dz  c_         |                      ¦   «          t          d|z   dz   t          |t	          |¦  «        d¦  «        z   dz   t          | j        j        dk    dd¦  «        z   ¦  «         d S )	Nr   rD  r-  ri  r/  r   ú
[guessing]r   )r÷  rt  r   r&   rE   r  rt  ©r4   ry  r  s      r   rz  zTreeParser.traceInr  s‘   € ØˆŒ˜1ÑˆŒØ×ÒÑÔÐÝˆt�e‰|˜cÑ!Ý�Q•s˜1‘v”v˜fÑ%Ô%ñ&Ø(+ñ,å�T”_Ô-¨aÒ/°¸RÑ@Ô@ñAñ 	Cô 	Cð 	Cð 	Cð 	Cr   c           	      óü   — |                       ¦   «          t          d|z   dz   t          |t          |¦  «        d¦  «        z   dz   t          | j        j        dk    dd¦  «        z   ¦  «         | xj        dz  c_        d S )	NrJ  r-  ri  r/  r   r‡  r   r   )rt  r   r&   rE   r  rt  r÷  rˆ  s      r   r|  zTreeParser.traceOuty  s‹   € Ø×ÒÑÔÐÝˆt�e‰|˜cÑ!Ý�Q•s˜1‘v”v˜fÑ%Ô%ñ&Ø(+ñ,å�T”_Ô-¨aÒ/°¸RÑ@Ô@ñAñ 	Cô 	Cð 	Cð 	ˆŒ˜1ÑˆŒˆˆr   c                 óÚ   — |sd S |j         s||_         n<|j        s|j                              |¦  «         n|j                             |¦  «         ||_        |                     ¦   «          d S r"   rN  rT  s      r   rV  zTreeParser.addASTChild�  rW  r   c                 ó�   — |rC|                      |j        ¦  «         |j        |_        |                     ¦   «          ||_        d S d S r"   rY  r[  s      r   r\  zTreeParser.makeASTRootŽ  r]  r   N)r6   r7   r8   r2   rü  r   r  r
  rK  rN  r\  r^  r-  r1  r2  rt  rz  r|  rV  r\  r   r   r   rr  rr  ;  s  € € € € € ðð ð ðð ð ðð ð ð$ð $ð $ðð ð ð	Oð 	Oð 	OðQð Qð Qð,ð ,ð ,ðð ð ðð ð ð'ð 'ð 'ð1ð 1ð 1ð%ð %ð %ðCð Cð Cðð ð ð
'ð 
'ð 
'ð#ð #ð #ð #ð #r   rr  c                 ó4   — | r| j         r| j         } | j         °| S r"   ©Úright)Úasts    r   Ú	rightmostr�  œ  s,   € Ø
ð ØŒið 	Ø”)ˆCð Œið 	à€Jr   c                 ó.  — | r||rz|                       |¦  «        sdS t          |                      ¦   «         |                     ¦   «         |¦  «        sdS |                      ¦   «         } |                     ¦   «         }| r|°zt	          || |  o| ¦  «        }|S r{  )ÚequalsÚcmptreeÚgetFirstChildÚgetNextSiblingr&   )r>  r  Úpartialr   s       r   r“  r“  ¢  s¬   € Ø
ð 
�ð 
à�xŠx˜‰{Œ{ð 	Ø�5õ �q—’Ñ(Ô(¨¯ªÑ):Ô):¸7ÑCÔCð 	Ø�5à×ÒÑÔˆØ×ÒÑÔˆð ð 
�ð 
õ 	ˆw˜1�u ˜U˜_¨1 uÑ-Ô-€AØ€Hr   c                   ó¢   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZeZd„ Zd„ ZdS )rP   c                 ó   — d S r"   r   rµ   s    r   r2   zAST.__init__·  r}  r   c                 ó   — d S r"   r   rÜ  s     r   rZ  zAST.addChildº  r}  r   c                 ó   — dS r{  r   r
  s     r   r’  z
AST.equals½  ó   € Øˆur   c                 ó   — dS r{  r   r
  s     r   Ú
equalsListzAST.equalsListÀ  r›  r   c                 ó   — dS r{  r   r
  s     r   ÚequalsListPartialzAST.equalsListPartialÃ  r›  r   c                 ó   — dS r{  r   r
  s     r   Ú
equalsTreezAST.equalsTreeÆ  r›  r   c                 ó   — dS r{  r   r
  s     r   ÚequalsTreePartialzAST.equalsTreePartialÉ  r›  r   c                 ó   — d S r"   r   )r4   Útrees     r   ÚfindAllzAST.findAllÌ  rÎ   r   c                 ó   — d S r"   r   )r4   Úsubtrees     r   ÚfindAllPartialzAST.findAllPartialÏ  rÎ   r   c                 ó   — | S r"   r   rµ   s    r   r”  zAST.getFirstChildÒ  rÒ   r   c                 ó   — | S r"   r   rµ   s    r   r•  zAST.getNextSiblingÕ  rÒ   r   c                 ó   — dS r<  r   rµ   s    r   rW   zAST.getTextØ  ó   € Øˆrr   c                 ó   — t           S r"   )rŸ   rµ   s    r   rÞ   zAST.getTypeÛ  s   € ÝÐr   c                 ó   — dS r¬   r   rµ   s    r   rU   zAST.getLineÞ  rË   r   c                 ó   — dS r¬   r   rµ   s    r   rV   zAST.getColumná  rË   r   c                 ó   — dS r¬   r   rµ   s    r   ÚgetNumberOfChildrenzAST.getNumberOfChildrenä  rË   r   c                 ó   — d S r"   r   r
  s     r   Ú
initializezAST.initializeç  r}  r   c                 ó   — d S r"   r   rÜ  s     r   rQ  zAST.setFirstChildê  r}  r   c                 ó   — d S r"   r   ©r4   r=  s     r   rR  zAST.setNextSiblingí  r}  r   c                 ó   — d S r"   r   rÖ   s     r   r×   zAST.setTextð  r}  r   c                 ó   — d S r"   r   ©r4   r~  s     r   rá   zAST.setTypeó  r}  r   c                 ó.   — |                       ¦   «          d S r"   ©rW   rµ   s    r   rç   zAST.toStringö  s   € Ø�Š‰Œˆˆˆr   c                 ó*   — |                       ¦   «         S r"   r¼  rµ   s    r   ÚtoStringListzAST.toStringListû  ó   € Ø�|Š|‰~Œ~Ðr   c                 ó*   — |                       ¦   «         S r"   r¼  rµ   s    r   ÚtoStringTreezAST.toStringTreeþ  r¿  r   N)r6   r7   r8   r2   rZ  r’  r�  rŸ  r¡  r£  r¦  r©  r”  r•  rW   rÞ   rU   rV   r²  r´  rQ  rR  r×   rá   rç   rH   r¾  rÁ  r   r   r   rP   rP   ¶  sƒ  € € € € € ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð €Gðð ð ðð ð ð ð r   rP   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚASTNULLTypec                 ó:   — t                                | ¦  «         d S r"   )rP   r2   rµ   s    r   r2   zASTNULLType.__init__	  s   € Ý�Š�TÑÔÐØˆr   c                 ó   — dS )Nz	<ASTNULL>r   rµ   s    r   rW   zASTNULLType.getText	  rÔ   r   c                 ó   — t           S r"   )rã   rµ   s    r   rÞ   zASTNULLType.getType	  s   € Ý"Ð"r   N)r6   r7   r8   r2   rW   rÞ   r   r   r   rÃ  rÃ  	  sA   € € € € € ðð ð ðð ð ð#ð #ð #ð #ð #r   rÃ  c                   óÒ   — e Zd ZdZdZd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z ee¦  «        Zd„ Zd„ Zd„ ZeZ d„ Z!dS )ÚBaseASTFNc                 ó"   — d | _         d | _        d S r"   ©ÚdownrŽ  rµ   s    r   r2   zBaseAST.__init__	  s   € ØˆŒ	ØˆŒ
ˆ
ˆ
r   c                 ól   — |r1t          | j        ¦  «        }|r	||_        d S | j        rJ ‚|| _        d S d S r"   )r�  rË  rŽ  )r4   rO   r  s      r   rZ  zBaseAST.addChild	  sO   € Øð 	!Ý˜$œ)Ñ$Ô$ˆAØð !Ø�”��àœ9Ð$Ð$Ð$Ø �”	�	�	ð	!ð 	!r   c                 ó8   — | j         }d}|r|dz  }|j        }|°|S r\  rÊ  )r4   r  r=  s      r   r²  zBaseAST.getNumberOfChildren(	  s7   € ØŒIˆØˆØð 	Ø�‰FˆAØ”ˆAð ð 	ð ˆr   c                 ót  — | }|r³|o|                      |¦  «        }|r|                     |¦  «         n/| o|                     |¦  «        }|r|                     |¦  «         |                     ¦   «         r)|                     ¦   «                              |||¦  «         |                     ¦   «         }|°±d S d S r"   )r£  rD   r¡  r”  ÚdoWorkForFindAllr•  )r4   rµ  ÚtargetÚpartialMatchÚsiblingrP  rQ  s          r   rÏ  zBaseAST.doWorkForFindAll0	  sã   € Øˆàð 	/ØÐC '×";Ò";¸FÑ"CÔ"CˆBØð &Ø—’˜Ñ!Ô!Ð!Ð!à%Ð%ÐD¨'×*<Ò*<¸VÑ*DÔ*D�Øð &Ø—H’H˜WÑ%Ô%Ð%ð ×$Ò$Ñ&Ô&ð PØ×%Ò%Ñ'Ô'×8Ò8¸¸6À,ÑOÔOÐOà×,Ò,Ñ.Ô.ˆGð ð 	/ð 	/ð 	/ð 	/ð 	/r   c                 ó²   — |sdS |                       ¦   «         |                      ¦   «         k    o)|                      ¦   «         |                     ¦   «         k    S r{  )rW   rÞ   r
  s     r   r’  zBaseAST.equalsC	  sD   € Øð 	Ø�5Ø�|Š|‰~Œ~ §¢¡¤Ò,ÐN°·²±´À1Ç9Â9Á;Ä;Ò1NÐNr   c                 ó&   — t          | |d¬¦  «        S ©NF©r–  ©r“  r
  s     r   r�  zBaseAST.equalsListK	  s   € Ý�t˜Q¨Ð.Ñ.Ô.Ð.r   c                 ó&   — t          | |d¬¦  «        S ©NTrÖ  r×  r
  s     r   rŸ  zBaseAST.equalsListPartialQ	  s   € Ý�t˜A dÐ+Ñ+Ô+Ð+r   c                 ó˜   — |                       |¦  «        o5t          |                      ¦   «         |                     ¦   «         d¬¦  «        S rÕ  ©r’  r“  r”  r
  s     r   r¡  zBaseAST.equalsTreeW	  sC   € Ø�{Š{˜1‰~Œ~ð OÝ�t×)Ò)Ñ+Ô+¨Q¯_ª_Ñ->Ô->ÈÐNÑNÔNð	Or   c                 ó    — |sdS |                       |¦  «        o5t          |                      ¦   «         |                     ¦   «         d¬¦  «        S rÙ  rÛ  r
  s     r   r£  zBaseAST.equalsTreePartial^	  sY   € Øð 	Ø�4Ø�{Š{˜1‰~Œ~ð B¥'Ø×ÒÑÔ §¢Ñ!2Ô!2¸Dð#Bñ #Bô #Bð 	Br   c                 ó@   — g }|sd S |                       ||d¦  «         |S r{  ©rÏ  )r4   rÐ  Úrootss      r   r¦  zBaseAST.findAllg	  s3   € Øˆð ð 	Ø�4à×Ò˜e V¨UÑ3Ô3Ð3Øˆr   c                 ó@   — g }|sd S |                       ||d¦  «         |S r}  rÞ  )r4   Úsubrß  s      r   r©  zBaseAST.findAllPartialt	  s3   € Øˆð ð 	Ø�4à×Ò˜e S¨$Ñ/Ô/Ð/Øˆr   c                 ó   — | j         S r"   ©rË  rµ   s    r   r”  zBaseAST.getFirstChild	  rß   r   c                 ó   — | j         S r"   r�  rµ   s    r   r•  zBaseAST.getNextSiblingƒ	  rÇ  r   c                 ó   — dS r<  r   rµ   s    r   rW   zBaseAST.getText‡	  r­  r   c                 ó   — dS r¬   r   rµ   s    r   rÞ   zBaseAST.getType‹	  rË   r   c                 ó   — dS r¬   r   rµ   s    r   rU   zBaseAST.getLineŽ	  rË   r   c                 ó   — dS r¬   r   rµ   s    r   rV   zBaseAST.getColumn‘	  rË   r   c                 ó   — d | _         d S r"   rã  rµ   s    r   ÚremoveChildrenzBaseAST.removeChildren•	  s   € ØˆŒ	ˆ	ˆ	r   c                 ó   — || _         d S r"   rã  rÜ  s     r   rQ  zBaseAST.setFirstChild˜	  s   € ØˆŒ	ˆ	ˆ	r   c                 ó   — || _         d S r"   r�  r·  s     r   rR  zBaseAST.setNextSibling›	  s   € ØˆŒ
ˆ
ˆ
r   c                 ó   — d S r"   r   rÖ   s     r   r×   zBaseAST.setTextŸ	  r}  r   c                 ó   — d S r"   r   rº  s     r   rá   zBaseAST.setType£	  r}  r   c                 ó   — | }|}d S r"   r   )ÚverboseÚnamesÚverboseStringConversionr—   s       r   ÚsetVerboseStringConversionz"BaseAST.setVerboseStringConversion§	  s   € Ø")ÐØˆ
ˆ
ˆ
r   c                  ó   — t           S r"   r  r   r   r   r
  zBaseAST.getTokenNames®	  s   € ÝÐr   c                 ó*   — |                       ¦   «         S r"   r¼  rµ   s    r   rç   zBaseAST.toString±	  r¿  r   c                 óˆ   — |                       ¦   «         }|                      ¦   «         }|r||                     ¦   «         z  }|S r"   )rÁ  r•  r¾  )r4   ÚtsÚsibs      r   r¾  zBaseAST.toStringListµ	  sG   € Ø×ÒÑ Ô ˆØ×!Ò!Ñ#Ô#ˆØð 	%Ø�#×"Ò"Ñ$Ô$Ñ$ˆBØˆ	r   c                 ó°   — d}|                       ¦   «         }|r|dz  }|d|                      ¦   «         z   z  }|r||                     ¦   «         z  }|dz  }|S )Nr   z (rC   z ))r”  rç   r¾  )r4   r÷  Úkids      r   rÁ  zBaseAST.toStringTree¿	  sl   € ØˆØ× Ò Ñ"Ô"ˆØð 	Ø�$‰JˆBØ
ˆc�D—M’M‘O”OÑ#Ñ#ˆØð 	Ø�#×"Ò"Ñ$Ô$Ñ$ˆBØ�$‰JˆBØˆ	r   )"r6   r7   r8   rò  r—   r2   rZ  r²  rÏ  r’  r�  rŸ  r¡  r£  r¦  r©  r”  r•  rW   rÞ   rU   rV   rê  rQ  rR  r×   rá   ró  Ústaticmethodr
  rç   r¾  rH   rÁ  r   r   r   rÈ  rÈ  	  s×  € € € € € à#ÐØ€Jðð ð ð!ð !ð !ðð ð ð/ð /ð /ð&Oð Oð Oð/ð /ð /ð,ð ,ð ,ðOð Oð OðBð Bð Bðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð ". Ð.HÑ!IÔ!IÐðð ð ðð ð ðð ð ð €Gð	ð 	ð 	ð 	ð 	r   rÈ  c                   óJ   ‡ — e Zd Zd
ˆ fd„	Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
ˆ xZS )Ú	CommonASTNc                 óÂ   •— t          t          | ¦  «                             ¦   «          t          | _        d| _        d| _        d| _        |                      |¦  «         d S )NrÄ   r   )	rb  rý  r2   rŸ   r~  rZ   r>   r?   r´  )r4   rN   re  s     €r   r2   zCommonAST.__init__Ð	  sS   ø€ Ý�i˜ÑÔ×&Ò&Ñ(Ô(Ð(Ý!ˆŒ
Ø ˆŒ	ØˆŒ	ØˆŒØ�Š˜ÑÔÐÐÐr   c                 ó   — | j         S r"   rñ   rµ   s    r   rW   zCommonAST.getTextÚ	  rß   r   c                 ó   — | j         S r"   )r~  rµ   s    r   rÞ   zCommonAST.getTypeÞ	  rÇ  r   c                 ó   — | j         S r"   rï   rµ   s    r   rU   zCommonAST.getLineâ	  rß   r   c                 ó   — | j         S r"   )r?   rµ   s    r   rV   zCommonAST.getColumnæ	  r™  r   c                 ó  — |sd S |d         }t          |t          ¦  «        r4|d         }|                      |¦  «         |                      |¦  «         d S t          |t          ¦  «        st          |t
          ¦  «        r‚|                      |                     ¦   «         ¦  «         |                      |                     ¦   «         ¦  «         |                     ¦   «         | _	        | 
                    ¦   «         | _        d S d S r\  )r(   r™   rá   r×   rP   rQ   rW   rÞ   rU   r>   rV   r?   )r4   r   rÛ  r  s       r   r´  zCommonAST.initializeé	  sâ   € Øð 	ØˆFà�AŒwˆå�d�3ÑÔð 	Ø˜”7ˆDØ�LŠL˜ÑÔÐØ�LŠL˜ÑÔÐØˆFå�d�3ÑÔð 	¥:¨dµ5Ñ#9Ô#9ð 	Ø�LŠL˜Ÿš™œÑ(Ô(Ð(Ø�LŠL˜Ÿš™œÑ(Ô(Ð(ØŸš™œˆDŒIØŸ.š.Ñ*Ô*ˆDŒKØˆFð	ð 	r   c                 ó6   — t          |¦  «        sJ ‚|| _        d S r"   )r+   rZ   )r4   Útext_s     r   r×   zCommonAST.setTextý	  s!   € Ý˜eÑ$Ô$Ð$Ð$Ð$ØˆŒ	ˆ	ˆ	r   c                 óB   — t          |t          ¦  «        sJ ‚|| _        d S r"   )r(   r™   r~  )r4   Úttype_s     r   rá   zCommonAST.setType
  s#   € Ý˜&¥Ñ%Ô%Ð%Ð%Ð%ØˆŒ
ˆ
ˆ
r   r"   )r6   r7   r8   r2   rW   rÞ   rU   rV   r´  r×   rá   rm  rn  s   @r   rý  rý  Ï	  s¦   ø€ € € € € ðð ð ð ð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð(ð ð ð
ð ð ð ð ð ð r   rý  c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚCommonASTWithHiddenTokensc                 óF   — t          j        | g|¢R Ž  d | _        d | _        d S r"   )rý  r2   rÿ   r   r3   s     r   r2   z"CommonASTWithHiddenTokens.__init__
  s1   € ÝÔ˜4Ð& Ð&Ð&Ð&Ð&Ø ˆÔØ ˆÔÐÐr   c                 ó   — | j         S r"   r  rµ   s    r   r  z(CommonASTWithHiddenTokens.getHiddenAfter
  r  r   c                 ó   — | j         S r"   r  rµ   s    r   r  z)CommonASTWithHiddenTokens.getHiddenBefore
  r  r   c                 ó"  — t          j        | g|¢R Ž  |rxt          |d         t          ¦  «        r_t          |d         t          ¦  «        sJ ‚|d                              ¦   «         | _        |d                              ¦   «         | _        d S d S d S r¬   )	rý  r´  r(   rQ   rý   r  rÿ   r  r   r3   s     r   r´  z$CommonASTWithHiddenTokens.initialize
  s�   € ÝÔ˜TÐ( 4Ð(Ð(Ð(Ð(Øð 	9•J˜t Aœw¥uÑ-Ô-ð 	9Ý˜d 1œgÕ&=Ñ>Ô>Ð>Ð>Ð>Ø $ Q¤× 7Ò 7Ñ 9Ô 9ˆDÔØ $ Q¤× 6Ò 6Ñ 8Ô 8ˆDÔÐÐð	9ð 	9ð 	9ð 	9r   N)r6   r7   r8   r2   r  r  r´  r   r   r   r	  r	  

  sP   € € € € € ð!ð !ð !ð
 ð  ð  ð!ð !ð !ð9ð 9ð 9ð 9ð 9r   r	  c                   ó.   — e Zd Zd„ Zd„ Zd„ Zd„ ZeZeZdS )ÚASTPairc                 ó"   — d | _         d | _        d S r"   )rO  rP  rµ   s    r   r2   zASTPair.__init__#
  s   € ØˆŒ	ØˆŒ
ˆ
ˆ
r   c                 ó¼   — | j         rR| j                              ¦   «         r;| j                              ¦   «         | _         | j                              ¦   «         °7d S d S d S r"   )rP  r•  rµ   s    r   rS  zASTPair.advanceChildToEnd(
  sm   € ØŒ:ð 	9Ø”*×+Ò+Ñ-Ô-ð 9Ø!œZ×6Ò6Ñ8Ô8�”
ð ”*×+Ò+Ñ-Ô-ð 9ð 9ð 9ð	9ð 	9ð9ð 9r   c                 óR   — t          ¦   «         }| j        |_        | j        |_        |S r"   )r  rO  rP  )r4   Útmps     r   ÚcopyzASTPair.copy.
  s"   € Ý‰iŒiˆØ”9ˆŒØ”JˆŒ	Øˆ
r   c                 óÌ   — t          t           d| j                             ¦   «         ¦  «        }t          t           d| j                             ¦   «         ¦  «        }d|›d|›d�S )Nri  ú[r.  ú])r&   rO  rW   rP  )r4   r   r„   s      r   rç   zASTPair.toString4
  sY   € Ý•t�8˜F 4¤9×#4Ò#4Ñ#6Ô#6Ñ7Ô7ˆÝ•u�9˜V D¤J×$6Ò$6Ñ$8Ô$8Ñ9Ô9ˆˆØ˜A˜A˜a˜a˜aÐ Ð r   N)	r6   r7   r8   r2   rS  r  rç   rH   rJ   r   r   r   r  r  "
  sV   € € € € € ðð ð ð
9ð 9ð 9ðð ð ð!ð !ð !ð
 €GØ€H€H€Hr   r  c                   ób   — e Zd Zdd„Zd„ Zdd„ZeZd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ ZeZdS )ru  Nc                 ó@   — d | _         t          ||d ¦  «        | _        d S r"   )Ú_classr&   Ú	_classmap)r4   Útables     r   r2   zASTFactory.__init__B
  s    € ØˆŒÝ  e¨DÑ1Ô1ˆŒˆˆr   c                 ó¸  — |s|                       t          ¦  «        S |d         }d }d }	 |d         }|d         }n#  Y nxY wt          |t          ¦  «        rU|sS|                      |¦  «        }|                       |¦  «        }|r%|                     |t          ||d¦  «        ¦  «         |S t          |t          ¦  «        r1|r/|                       |¦  «        }|r|                     ||¦  «         |S t          |t          ¦  «        r@|                       |                     ¦   «         ¦  «        }|r|                     |¦  «         |S t          |t          ¦  «        r[|sY|                     ¦   «         }t          |t          ¦  «        sJ ‚|                       |¦  «        }|r|                     |¦  «         |S t          |t          ¦  «        rV|rTt          |t          ¦  «        sJ ‚t          |t          ¦  «        sJ ‚ ||¦  «        }|rt          |t          ¦  «        sJ ‚|S t          |t          ¦  «        r# |¦   «         }t          |t          ¦  «        sJ ‚|S d S )Nr   r   r<   r   )ÚcreaterŸ   r(   r™   ÚgetASTNodeTyper´  r&   rP   rÞ   rQ   rÃ   Ú
issubclass)r4   r   rÛ  r  Úarg2r„   r  r~  s           r   r  zASTFactory.createF
  s�  € Øð 	-Ø—;’;�|Ñ,Ô,Ð,à�AŒwˆØˆØˆð	Ø˜”7ˆDØ˜”7ˆDˆDøð	ØˆDøøøõ �d�3ÑÔð 	¨ð 	à×#Ò# DÑ)Ô)ˆAØ—’˜A‘”ˆAØð 9Ø—’˜T¥6¨$¨t°BÑ#7Ô#7Ñ8Ô8Ð8ØˆHõ �d�3ÑÔð 	 Dð 	Ø—’˜DÑ!Ô!ˆAØð (Ø—’˜T $Ñ'Ô'Ð'ØˆHõ �d�3ÑÔð 	Ø—’˜DŸLšL™NœNÑ+Ô+ˆAØð #Ø—’˜TÑ"Ô"Ð"ØˆHõ �d�5Ñ!Ô!ð 	¨$ð 	Ø—L’L‘N”NˆEÝ˜e¥CÑ(Ô(Ð(Ð(Ð(Ø—’˜EÑ"Ô"ˆAØð #Ø—’˜TÑ"Ô"Ð"ØˆHõ �d�5Ñ!Ô!ð 	 dð 	Ý˜d¥4Ñ(Ô(Ð(Ð(Ð(Ý˜d¥3Ñ'Ô'Ð'Ð'Ð'ð ��T‘
”
ˆAØÐ*� A¥cÑ*Ô*Ð*Ð*Ð*ØˆHõ �d�4Ñ Ô ð 	à�‘”ˆAÝ˜a¥Ñ$Ô$Ð$Ð$Ð$ØˆHð		ð 	s   ª; »?c                 óx   — |sd S t          |t          ¦  «        sJ ‚t          |t          ¦  «        sJ ‚|| _        d S r"   )r(   rÃ   r   rP   r  )r4   Ú	classNames     r   r2  zASTFactory.setASTNodeClass†
  sF   € Øð 	ØˆFÝ˜)¥DÑ)Ô)Ð)Ð)Ð)Ý˜)¥CÑ(Ô(Ð(Ð(Ð(ØˆŒˆˆr   c                 ó   — | j         S r"   )r  rµ   s    r   ÚgetASTNodeClasszASTFactory.getASTNodeClass�
  r™  r   c                 ó   — | j         S r"   ©r  rµ   s    r   rÝ  z$ASTFactory.getTokenTypeToASTClassMap•
  rý  r   c                 ó   — || _         d S r"   r'  )r4   Úamaps     r   ÚsetTokenTypeToASTClassMapz$ASTFactory.setTokenTypeToASTClassMap˜
  s   € ØˆŒˆˆr   c                 ó:   — dd l }t          ||j        ¬¦  «         d S )Nr   r(  )r  r   r)  )r4   rl  r  s      r   r    zASTFactory.error›
  s&   € Øˆ
ˆ
ˆ
Ýˆa�c”jÐ!Ñ!Ô!Ð!Ð!Ð!r   c                 ó¼   — | j         si | _         |s	 | j         |= dS #  Y dS xY wt          |t          ¦  «        sJ ‚t          |t          ¦  «        sJ ‚|| j         |<   dS )zK
        Specify a mapping between a token type and a (AST) class.
        N)r  r(   rÃ   r   rP   )r4   r    r#  s      r   ÚsetTokenTypeASTNodeTypez"ASTFactory.setTokenTypeASTNodeTypeŸ
  s‚   € ð Œ~ð 	 ØˆDŒNàð 	2ðØ”N 9Ð-Ð-Ð-øðØ��øøøõ ˜i­Ñ-Ô-Ð-Ð-Ð-Ý˜i­Ñ,Ô,Ð,Ð,Ð,à(1ˆDŒN˜9Ñ%Ð%Ð%s   ’ œ!c                 ón   — | j         r	 | j         |         }|r|S n#  Y nxY w| j        r| j        S t          S )zµ
        For a given token type return the AST node type. First we
        lookup a mapping table, second we try _class
        and finally we resolve to "antlr.CommonAST".
        )r  r  rý  )r4   r    r„   s      r   r  zASTFactory.getASTNodeTypeµ
  sY   € ð Œ>ð 	ðØ”N 9Ô-�Øð Ø�HðøðØ�øøøàŒ;ð 	Ø”;Ðõ Ðs   ‰ ›c                 ó"   — t          || ¦  «        S r"   )Údupr
  s     r   r0  zASTFactory.dupÍ
  s   € Ý�1�T‰{Œ{Ðr   c                 ó"   — t          || ¦  «        S r"   )ÚdupListr
  s     r   r2  zASTFactory.dupListÐ
  ó   € Ý�q˜‰ŒÐr   c                 ó"   — t          || ¦  «        S r"   )ÚdupTreer
  s     r   r5  zASTFactory.dupTreeÓ
  r3  r   r"   )r6   r7   r8   r2   r  r2  r1  r%  rÝ  r*  r    r-  r  r0  r2  r5  Úmaptyper   r   r   ru  ru  A
  sÛ   € € € € € ð2ð 2ð 2ð 2ð=ð =ð =ð@ ð  ð  ð  ð %€Nðð ð ð
ð ð ðð ð ð"ð "ð "ð2ð 2ð 2ð,ð ð ð0ð ð ðð ð ðð ð ð &€G€G€Gr   ru  c                   ó   — e Zd Zd„ Zd„ ZdS )Ú
ASTVisitorc                 ó   — d S r"   r   r3   s     r   r2   zASTVisitor.__init__â
  r}  r   c                 ó   — d S r"   r   )r4   r�  s     r   ÚvisitzASTVisitor.visitå
  r}  r   N)r6   r7   r8   r2   r;  r   r   r   r8  r8  á
  s2   € € € € € ðð ð ðð ð ð ð r   r8  c                  óx  — | sd S t          dt          | ¦  «        ¦  «        D ]#}| |         }|rt          |t          ¦  «        sJ ‚Œ$| d         }d }|r|                     d ¦  «         t          dt          | ¦  «        ¦  «        D ]µ}| |         sŒ|s| |         x}}na|s0|                     | |         ¦  «         |                     ¦   «         }n/|                     | |         ¦  «         |                     ¦   «         }|                     ¦   «         r(|                     ¦   «         }|                     ¦   «         °(Œ¶|S r\  )r   r@   r(   rP   rQ  r”  rR  r•  )Únodesr“   rO   rO  Útails        r   Úmaker?  ð
  se  € Øð Øˆtå�A•c˜%‘j”jÑ!Ô!ð (ð (ˆØ�QŒxˆØð 	(Ý˜d¥3Ñ'Ô'Ð'Ð'Ð'øà�Œ8€DØ€DØð !Ø×Ò˜4Ñ Ô Ð å�A•c˜%‘j”jÑ!Ô!ð )ð )ˆØ�QŒxð 	ØØð 	)Ø œ(Ð"ˆD�4�4Øð 	)Ø×Ò˜u QœxÑ(Ô(Ð(Ø×%Ò%Ñ'Ô'ˆDˆDà×Ò  a¤Ñ)Ô)Ð)Ø×&Ò&Ñ(Ô(ˆDð ×!Ò!Ñ#Ô#ð 	)Ø×&Ò&Ñ(Ô(ˆDð ×!Ò!Ñ#Ô#ð 	)øà€Kr   c                 ó�   — | sd S |r|                      | j        ¦  «        }nt          d¦  «        ‚|                     | ¦  «         |S )Nz)dup function requires ASTFactory argument)r  re  rR   r´  )r  ÚfactoryÚdup_ts      r   r0  r0    sU   € Øð Øˆtàð EØ—’˜qœ{Ñ+Ô+ˆˆåÐCÑDÔDÐDØ	×Ò�QÑÔÐØ€Lr   c                 óÈ   — t          | |¦  «        }|}| rM|                      ¦   «         } |                     t          | |¦  «        ¦  «         |                     ¦   «         }| °M|S r"   )r5  r•  rR  )r  rA  ÚresultÚnts       r   r2  r2    so   € Ý�Q�wÑÔ€FØ	€BØ
ð !à×ÒÑÔˆØ
×Ò�' ! GÑ,Ô,Ñ-Ô-Ð-Ø×ÒÑ Ô ˆð	 ð !ð
 €Mr   c                 ó”   — t          | |¦  «        }| r5|                     t          |                      ¦   «         |¦  «        ¦  «         |S r"   )r0  rQ  r2  r”  )r  rA  rD  s      r   r5  r5  $  sE   € Ý��7‰^Œ^€FØð AØ×Ò�W Q§_¢_Ñ%6Ô%6°wÑ?Ô?Ñ@Ô@Ð@Ø€Mr   )XÚ
__future__r   r  Úcompatr   r   r   r   rä   rŸ   rÈ   rè   rã   ré   rƒ  r   r    r&   r+   r-   r1   r/   r:   rL   r\   rk   rp   r•   r¤   rª   r±   r·   rº   r½   rÀ   ÚobjectrQ   r>  r6   r   ÚTrì   rÜ   rÙ   r×   rá   rU   rV   rW   rÞ   rý   r  r%  r`  rp  rz  r  rŽ  rª  r¶  rÑ  rå  rì  rþ  rz   r»  r¾  rÀ  rÑ  rÕ  r_  ro  rr  r�  r“  rP   rÃ  rÈ  rý  r	  r  ru  r8  rX   r?  r0  r2  r5  r   r   r   ú<module>rK     sp
  ðØ %Ð %Ð %Ð %Ð %Ð %ðX €
€
€
à 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7ð €Ø€Ø€Ø€ØÐ Ø€ð €ðð ð ð,ð ,ð ,ðð ð ð"ð "ð "ð
	ð 	ð 	ð(ð (ð (ð (ð (�Yñ (ô (ð (ðð ð ð ð ˜>ñ ô ð ð>ð ð ð ð Ð/ñ ô ð ð8 ð  ð  ð  ð  Ð"6ñ  ô  ð  ðF3ð 3ð 3ð 3ð 3Ð,ñ 3ô 3ð 3ðnð nð nð nð nÐ2ñ nô nð nðbpð pð pð pð pÐ3ñ pô pð pðf-ð -ð -ð -ð -˜>ñ -ô -ð -ð	ð 	ð 	ð 	ð 	Ð1ñ 	ô 	ð 	ðð ð ð ð Ð&:ñ ô ð ð 3ð 3ð 3ð 3ð 3Ð 4ñ 3ô 3ð 3ð-ð -ð -ð -ð -˜.ñ -ô -ð -ð	ð 	ð 	ð 	ð 	Ð/ñ 	ô 	ð 	ð	ð 	ð 	ð 	ð 	ˆyñ 	ô 	ð 	ðKð Kð Kð Kð KˆFñ Kô Kð Kð\ �˜\°Ð<Ñ<Ô<€„àˆzÒÐØ	€Eˆ,ÑÔÐØŒ€AØ	€Eˆ!�H„H€Hð<ð <ð <ð <ð <�%ñ <ô <ð <ð~ ˆzÒÑØˆ‰Œ€AØ	€Eˆ!�H„H€HØˆ˜  {¸Ð;Ñ;Ô;€AØ	€Eˆ!�H„H€HØˆ‰Œ€AØ‡I‚Iˆa�L„L×Ò˜2ÑÔ×&Ò& {Ñ3Ô3×;Ò;¸AÑ>Ô>Ð>Ø	€Eˆ!�H„H€HØ	€Eˆ!�)Š)‰+Œ+ÑÔÐØ	€Eˆ!�+Š+‰-Œ-ÑÔÐØ	€Eˆ!�)Š)‰+Œ+ÑÔÐØ	€Eˆ!�)Š)‰+Œ+ÑÔÐðð ð ð ð ˜kñ ô ð ð. ð  ð  ð  ð  ˆFñ  ô  ð  ð6O#ð O#ð O#ð O#ð O#�&ñ O#ô O#ð O#ðj(+ð (+ð (+ð (+ð (+�ñ (+ô (+ð (+ðb ð  ð  ð  ð  ˜Fñ  ô  ð  ð6)ð )ð )ð )ð )�&ñ )ô )ð )ðð ð ð ð ˜&ñ ô ð ð$0:ð 0:ð 0:ð 0:ð 0:˜+ñ 0:ô 0:ð 0:ðlð ð ð ð ˜[ñ ô ð ð6Lð Lð Lð Lð LÐ#9ñ Lô Lð Lðd0ð 0ð 0ð 0ð 0ñ 0ô 0ð 0ð|ð ð ð ð ˆVñ ô ð ð<wð wð wð wð w�+ñ wô wð wðzð ð ð ð ñ ô ð ð.]ð ]ð ]ð ]ð ]ˆVñ ]ô ]ð ]ðHð ð ð
ð ð ð>ð >ð >ð >ð >�&ñ >ô >ð >ðH
ð 
ð 
ð 
ð 
˜Vñ 
ô 
ð 
ð o#ð o#ð o#ð o#ð o#ˆVñ o#ô o#ð o#ðjIð Ið Ið Ið I�ñ Iô Ið Ið^ð ð ð ð  ñ ô ð ð[#ð [#ð [#ð [#ð [#�ñ [#ô [#ð [#ðBð ð ðð ð ð(Ið Ið Ið Ið Iˆ&ñ Iô Ið Ið`	#ð 	#ð 	#ð 	#ð 	#�#ñ 	#ô 	#ð 	#ð rð rð rð rð rˆcñ rô rð rðr5ð 5ð 5ð 5ð 5�ñ 5ô 5ð 5ðv9ð 9ð 9ð 9ð 9 	ñ 9ô 9ð 9ð0ð ð ð ð ˆfñ ô ð ð>Z&ð Z&ð Z&ð Z&ð Z&�ñ Z&ô Z&ð Z&ð@ð ð ð ð �ñ ô ð ð ˆ+‰-Œ-€ðð ð ð>	ð 	ð 	ðð ð ðð ð ð ð r   