Ë
    ”2Úi¹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$jJ                  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(jU                  d«      jW                  d2«      jY                  d3«      j[                  d4«        e'e(«        e'e(j]                  «       «        e'e(j_                  «       «        e'e(ja                  «       «        e'e(jc                  «       «        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„ ZWy)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    úA/var/www/html/acx/venv/lib/python3.12/site-packages/xlwt/antlr.pyr   r   G   s   € àØØØØñ	
€Að €Hó    c                 ó:   — | rt        d| t        |«      z  «       y y )Núerror: )ÚprintÚtuple)ÚfmtÚargss     r   Úerrorr    R   s   € Ù
Üˆi˜œu T›{Ñ*Õ+ð r   c                 ó   — | r|}|S |}|S ©Nr   )ÚcondÚ_thenÚ_elser   s       r   Úifelser&   V   s   € ÙØˆð €Hð ˆØ€Hr   c                 ó    — t        t        «      S r"   )Ú
isinstancer   ©Úxs    r   Úis_string_typer+   ]   s   € ô ”jÓ!Ð!r   c                 ó   — t        | «      sJ ‚y r"   )r+   r)   s    r   Úassert_string_typer-   b   s   € Ü˜!ÔÐÐØr   c                   ó   — e Zd Zd„ Zy)ÚANTLRExceptionc                 ó0   — t        j                  | g|¢­Ž  y 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y)ÚRecognitionExceptionc                 óì   — t        j                  | g|¢­Ž  d | _        d| _        d| _        t        |«      dk\  r
|d   | _        t        |«      dk\  r
|d   | _        t        |«      dk\  r|d   | _        y y )Nr	   é   r   r
   r   )r/   r2   ÚfileNameÚlineÚcolumnÚlenr3   s     r   r2   zRecognitionException.__init__r   sq   € Ü×Ñ Ð, tÓ,ØˆŒØˆŒ	ØˆŒÜˆt‹9˜Š>Ø  ™GˆDŒMÜˆt‹9˜Š>Ø˜Q™ˆDŒIÜˆt‹9˜Š>Ø˜q™'ˆD�Kð r   c                 óà  — dg}| j                   r|j                  | j                   dz   «       | j                  dk7  rˆ| j                   s|j                  d«       |j                  t        | j                  «      «       | j                  dk7  r'|j                  dt        | j                  «      z   «       |j                  d«       |j                  d«       t        d«      j                  |«      S )Nr   ú:r	   zline ú )r=   Úappendr>   Ústrr?   Újoin)r4   Úbufs     r   Ú__str__zRecognitionException.__str__~   s¦   € ØˆdˆØ�=Š=Ø�J‰J�t—}‘} sÑ*Ô+Ø�9‰9˜Š?Ø—=’=Ø—
‘
˜7Ô#Ø�J‰J”s˜4Ÿ9™9“~Ô&Ø�{‰{˜bÒ Ø—
‘
˜3¤ T§[¡[Ó!1Ñ1Ô2Ø�J‰J�sŒOØ�
‰
�3ŒÜ�2‹w�|‰|˜CÓ Ð r   N©r6   r7   r8   r2   rH   Ú__repr__r   r   r   r:   r:   p   s   „ ò
"ò!ð �Hr   r:   c                   ó   — e Zd Zd„ Zd„ ZeZy)ÚNoViableAltExceptionc                 óØ   — t        j                  | g|¢­Ž  d | _        d | _        t	        |d   t
        «      r|d   | _        y t	        |d   t        «      r|d   | _        y t        d«      ‚)Nr   z3NoViableAltException requires Token or AST argument)r:   r2   ÚtokenÚnoder(   ÚASTÚTokenÚ	TypeErrorr3   s     r   r2   zNoViableAltException.__init__‘   sa   € Ü×%Ñ% dÐ2¨TÓ2ØˆŒ
ØˆŒ	Ü�d˜1‘gœcÔ"Ø˜Q™ˆD�IÜ˜˜Q™¤Ô&Ø˜a™ˆD�JäÐQÓRÐRr   c                 óL  — | j                   rZ| j                   j                  «       }| j                   j                  «       }| j                   j                  «       }d|›d|›d|›d�S | j                  t
        k(  ry| j                  sJ ‚d| j                  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€   € Ø�:Š:Ø—:‘:×%Ñ%Ó'ˆDØ—:‘:×'Ñ'Ó)ˆCØ—:‘:×%Ñ%Ó'‰DÚIMÊcÒRVÐWÐWØ�9‰9œÒØ.Ø�yŠyÐˆyà$¨¯	©	×(9Ñ(9Ó(;Ñ<Ð<r   NrI   r   r   r   rL   rL   �   s   „ ò	Sò
=ð �Hr   rL   c                   ó   — e Zd Zd„ Zd„ ZeZy)ÚNoViableAltForCharExceptionc                 óˆ  — d | _         t        |«      dk(  rS|d   | _         |d   }t        j                  | d|j	                  «       |j                  «       |j                  «       «       y t        |«      dk(  r3|d   | _         |d   }|d   }|d   }t        j                  | d|||«       y t        j                  | dddd«       y )	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˜Š>Ø! !™WˆDŒNØ˜1‘gˆGÜ ×)Ñ)¨$°Ø*1×*=Ñ*=Ó*?Ø*1¯/©/Ó*;Ø*1×*;Ñ*;Ó*=õ?ô �‹Y˜!Š^Ø! !™WˆDŒNØ˜A‘wˆHØ˜‘7ˆDØ˜!‘WˆFÜ ×)Ñ)¨$°Ø*2°D¸&õBô !×)Ñ)¨$°Ø*,¨b°"õ6r   c                 ó  — d}| j                   dk\  r&| j                   dk  r|d| j                   z   dz   z  }|S | j                   r7|dt        t        | j                   «      «      j                  «       dd  z   z  }|S |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œ3œs 4§>¡>Ó2Ó3×9Ñ9Ó;¸A¸BÐ?Ñ?Ñ?ˆDð ˆð �HÑˆDØˆr   NrI   r   r   r   r\   r\   «   s   „ ò6ò(ð �Hr   r\   c                   ó   — e Zd Zd„ Zy)ÚSemanticExceptionc                 ó0   — t        j                  | g|¢­Ž  y r"   )r:   r2   r3   s     r   r2   zSemanticException.__init__Ð   ó   € Ü×%Ñ% dÐ2¨TÔ2r   Nr5   r   r   r   rk   rk   Î   ó   „ ó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y)ÚMismatchedCharExceptionr   r   r<   r
   r   é   é   c                 ó2  — || _         t        |«      dk(  rº|d   rt        j                  | _        nt        j
                  | _        |d   | _        |d   | _        |d   | _        |d   | _	        t        j                  | d| j                  j                  «       | j                  j                  «       | j                  j                  «       «       y t        |«      dk(  r¾t        |d   «      r°|d   rt        j                   | _        nt        j"                  | _        |d   | _        |d   | _        |d   | _	        t        j                  | d| j                  j                  «       | j                  j                  «       | j                  j                  «       «       y t        |«      dk(  rÃt%        |d   t&        «      r°|d   rt        j(                  | _        nt        j*                  | _        |d   | _        |d   | _        |d   | _	        t        j                  | d	| j                  j                  «       | j                  j                  «       | j                  j                  «       «       y t        j.                  | _        t        j                  | d«       y )
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˜Š>à�AŠwÜ$;×$EÑ$E�Õ!ä$;×$AÑ$A�Ô!Ø! !™WˆDŒNØ! !™WˆDŒNØ˜a™ˆDŒJØ ™7ˆDŒLÜ ×)Ñ)¨$Ð0GØ*.¯,©,×*BÑ*BÓ*DØ*.¯,©,×*>Ñ*>Ó*@Ø*.¯,©,×*@Ñ*@Ó*BõDô �‹Y˜!Š^¤¨t°A©wÔ 7à�AŠwÜ$;×$DÑ$D�Õ!ä$;×$@Ñ$@�Ô!Ø! !™WˆDŒNØ! !™WˆDŒNØ ™7ˆDŒLÜ ×)Ñ)¨$Ð0AØ*.¯,©,×*BÑ*BÓ*DØ*.¯,©,×*>Ñ*>Ó*@Ø*.¯,©,×*@Ñ*@Ó*BõDô �‹Y˜!Š^¤
¨4°©7´FÔ ;à�AŠwÜ$;×$CÑ$C�Õ!ä$;×$?Ñ$?�Ô!Ø! !™WˆDŒNØ˜A‘wˆDŒHØ ™7ˆDŒLÜ ×)Ñ)¨$Ð0EØ*.¯,©,×*BÑ*BÓ*DØ*.¯,©,×*>Ñ*>Ó*@Ø*.¯,©,×*@Ñ*@Ó*BõDô
 !8× <Ñ <ˆDÔÜ ×)Ñ)¨$Ð0AÕBr   c                 óî   — |r|dk(  r|j                  d«       y |dk(  r|j                  d«       y |dk(  r|j                  d«       y |dk(  r|j                  d«       y |j                  d	|z   d	z   «       y )
Niÿÿ  z'<EOF>'ú
z'\n'úz'\r'ú	z'\t'rd   )rD   )r4   ÚsbÚcs      r   ÚappendCharNamez&MismatchedCharException.appendCharName  sd   € Ù�A˜’Jà�I‰I�iÕ Ø�$ŠYØ�I‰I�gÕØ�$ŠYØ�I‰I�gÕØ�$ŠYØ�I‰I�gÕà�I‰I�d˜Q‘h ‘oÕ&r   c                 ó  — dg}|j                  t        j                  | «      «       | j                  t        j
                  k(  r\|j                  d«       | j                  || j                  «       |j                  d«       | j                  || j                  «       �n;| j                  t        j                  k(  r@|j                  d«       | j                  || j                  «       |j                  d«       �nÞ| j                  t        j                  t        j                  fv rÇ|j                  d«       | j                  t        j                  k(  r|j                  d«       |j                  d«       | j                  || j                  «       |j                  d	«       | j                  || j                  «       |j                  d«       | j                  || j                  «       në| j                  t        j                  t        j                  fv r¿|j                  d«       | j                  t        j                  k(  r|j                  d«       |j                  d
«       t        t!        | j"                  «      «      D ]!  }| j                  || j"                  |   «       Œ# |j                  d«       | j                  || j                  «       t%        «       j'                  |«      j)                  «       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Ô5à×ÑÔ 7× <Ñ <Ò<Ø�I‰I�lÔ#Ø×Ñ  D§N¡NÔ3Ø�I‰I�jÔ!Ø×Ñ  D§N¡NÖ3Ø×ÑÔ"9×"BÑ"BÒBØ�I‰IÐ0Ô1Ø×Ñ  D§N¡NÔ3Ø�I‰IÐ(Ö)Ø×ÑÔ#:×#@Ñ#@ÔBY×BcÑBcÐ"dÑdØ�I‰IÐ'Ô(Ø× Ñ Ô$;×$EÑ$EÒEØ—	‘	˜&Ô!Ø�I‰I�lÔ#Ø×Ñ  D§N¡NÔ3Ø�I‰I�dŒOØ×Ñ  D§J¡JÔ/Ø�I‰I�jÔ!Ø×Ñ  D§N¡NÕ3Ø×ÑÔ#:×#>Ñ#>Ô@W×@_Ñ@_Ð"`Ñ`Ø�I‰I�lÔ#Ø× Ñ Ô$;×$CÑ$CÒCØ—	‘	˜&Ô!Ø�I‰I�jÔ!Üœ3˜tŸx™x›=Ó)ò 5�Ø×#Ñ# B¨¯©°©Õ4ð5à�I‰I�kÔ"Ø×Ñ  D§N¡NÔ3ä‹u�z‰z˜"‹~×#Ñ#Ó%Ð%r   N)r6   r7   r8   r~   ry   rx   rv   rt   r|   r{   r2   r…   rH   rJ   r   r   r   rp   rp   Ô   s>   „ à€DØ€DØ€HØ€EØ€IØ
€CØ€Gò,Còb'ò !&ðF �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y)ÚMismatchedTokenExceptionr   r   r<   r
   r   rq   rr   c                 óŽ  — || _         g | _        d | _        d| _        d | _        t        |«      dk(  rY|d   rt        j                  | _        nt        j                  | _        |d   | _        |d   | _
        |d   | _        |d   | _        nút        |«      dk(  rXt        |d   t        «      rE|d   rt        j                  | _        nt        j                   | _        |d   | _        |d   | _
        n”t        |«      dk(  rXt        |d   t"        «      rE|d   rt        j$                  | _        nt        j&                  | _        |d   | _        |d   | _        n.t        j*                  | _        t,        j/                  | dd	d
d
«       t        |«      dk\  �r2t        |d   t0        «      r}|d   | _        | j                  j3                  «       | _        t,        j/                  | d| j                  | j                  j5                  «       | j                  j7                  «       «       y t        |d   t8        «      rn|d   | _        t;        | j                  «      | _        t,        j/                  | dd	| j                  j5                  «       | j                  j7                  «       «       y d| _        t,        j/                  | dd	d
d
«       y y )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  sG  € ØˆŒ	ØˆŒØˆŒ
ØˆŒØˆŒ	Üˆt‹9˜Š>à�AŠwÜ$<×$FÑ$F�Õ!ä$<×$BÑ$B�Ô!Ø" 1™gˆDŒOØ! !™WˆDŒNØ˜a™ˆDŒJØ  ™GˆD�Mä�‹Y˜!Š^¤
¨4°©7´CÔ 8à�AŠwÜ$<×$FÑ$F�Õ!ä$<×$BÑ$B�Ô!Ø" 1™gˆDŒOØ! !™WˆD�Nä�‹Y˜!Š^¤
¨4°©7´FÔ ;à�AŠwÜ$<×$DÑ$D�Õ!ä$<×$@Ñ$@�Ô!Ø" 1™gˆDŒOØ˜A‘wˆD�Hô !9× =Ñ =ˆDÔÜ ×)Ñ)¨$Ð0ZÐ\cÐegÐikÔläˆt‹9˜‹>Ü˜$˜q™'¤%Ô(Ø! !™W�”
Ø!%§¡×!3Ñ!3Ó!5�”Ü$×-Ñ-¨dÐ4FØ.2¯m©mØ.2¯j©j×.@Ñ.@Ó.BØ.2¯j©j×.BÑ.BÓ.DõFô ˜D ™G¤CÔ(Ø  ™G�”	Ü!$ T§Y¡Y£�”Ü$×-Ñ-¨dÐ4FØ.5Ø.2¯i©i×.?Ñ.?Ó.AØ.2¯i©i×.AÑ.AÓ.CõEð
 "0�”Ü$×-Ñ-¨dÐ4FØ.5°r¸2õ?ð# r   c                 óò   — |t         k(  r|j                  d«       y |dk  s|t        | j                  «      k\  r!|j                  dt	        |«      z   dz   «       y |j                  | j                  |   «       y )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Ñ*¨SÑ0Õ1à�I‰I�d—o‘o iÑ0Õ1r   c                 ó¬  — dg}|j                  t        j                  | «      «       | j                  t        j
                  k(  rM|j                  d«       | j                  || j                  «       |j                  d| j                  z   «       �n| j                  t        j                  k(  r@|j                  d«       | j                  || j                  «       |j                  d«       �nÀ| j                  t        j                  t        j                  fv r¸|j                  d«       | j                  t        j                  k(  r|j                  d«       |j                  d«       | j                  || j                  «       |j                  d	«       | j                  || j                  «       |j                  d| j                  z   «       nÜ| j                  t        j                  t        j                  fv r°|j                  d«       | j                  t        j                  k(  r|j                  d«       |j                  d
«       t        t!        | j"                  «      «      D ]!  }| j                  || j"                  |   «       Œ# |j                  d| j                  z   «       t%        «       j'                  |«      j)                  «       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__•  s  € ØˆTˆØ
�	‰	Ô&×.Ñ.¨tÓ4Ô5à×ÑÔ 8× >Ñ >Ò>Ø�I‰I�lÔ#Ø× Ñ   T§^¡^Ô4Ø�I‰I�j 4§>¡>Ñ1Ö2Ø×ÑÔ":×"DÑ"DÒDØ�I‰IÐ0Ô1Ø× Ñ   T§^¡^Ô4Ø�I‰IÐ(Ö)Ø×ÑÔ#;×#AÑ#AÔC[×CeÑCeÐ"fÑfØ�I‰IÐ(Ô)Ø× Ñ Ô$<×$FÑ$FÒFØ—	‘	˜&Ô!Ø�I‰I�lÔ#Ø× Ñ   T§^¡^Ô4Ø�I‰I�dŒOØ× Ñ   T§Z¡ZÔ0Ø�I‰I�j 4§>¡>Ñ1Õ2Ø×ÑÔ#;×#?Ñ#?ÔAY×AaÑAaÐ"bÑbØ�I‰I�lÔ#Ø× Ñ Ô$<×$DÑ$DÒDØ—	‘	˜&Ô!Ø�I‰I�jÔ!Üœ3˜tŸx™x›=Ó)ò 6�Ø×$Ñ$ R¨¯©°!©Õ5ð6à�I‰I�k D§N¡NÑ2Ô3ä‹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  s=   „ à€DØ€EØ€IØ€EØ€IØ
€CØ€Gò9?òv2ò&ð@ �Hr   r•   c                   ó   — e Zd Zd„ Zy)ÚTokenStreamExceptionc                 ó0   — t        j                  | g|¢­Ž  y 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y)ÚTokenStreamIOExceptionc                 óÀ   — |r?t        |d   t        «      r,|d   }t        j                  | t	        |«      «       || _        y t        j                  | g|¢­Ž  | | _        y ©Nr   )r(   r1   r¤   r2   rE   Úio©r4   r   r­   s      r   r2   zTokenStreamIOException.__init__Á  sP   € Ù”J˜t A™w¬	Ô2Ø�a‘ˆBÜ ×)Ñ)¨$´°B³Ô8ØˆD�Gä ×)Ñ)¨$Ð6°Ó6ØˆD�Gr   Nr5   r   r   r   rª   rª   ¿  ó   „ ór   rª   c                   ó   — e Zd Zd„ Zd„ ZeZy)ÚTokenStreamRecognitionExceptionc                 óš   — |r?t        |d   t        «      r,|d   }t        j                  | t	        |«      «       || _        y t        d«      ‚)Nr   zFTokenStreamRecognitionException requires RecognitionException argument)r(   r:   r¤   r2   rE   ÚrecogrR   )r4   r   r³   s      r   r2   z(TokenStreamRecognitionException.__init__Î  sC   € Ù”J˜t A™wÔ(<Ô=Ø˜‘GˆEÜ ×)Ñ)¨$´°E³
Ô;ØˆD�JäÐdÓ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±   Ì  s   „ òfòð �Hr   r±   c                   ó   — e Zd Zd„ Zy)ÚTokenStreamRetryExceptionc                 ó0   — t        j                  | g|¢­Ž  y 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y)ÚCharStreamExceptionc                 ó0   — t        j                  | g|¢­Ž  y 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y)ÚCharStreamIOExceptionc                 óÀ   — |r?t        |d   t        «      r,|d   }t        j                  | t	        |«      «       || _        y t        j                  | g|¢­Ž  | | _        y r¬   )r(   r1   rº   r2   rE   r­   r®   s      r   r2   zCharStreamIOException.__init__ë  sP   € Ù”J˜t A™w¬	Ô2Ø�a‘ˆBÜ×(Ñ(¨¬s°2«wÔ7ØˆD�Gä×(Ñ(¨Ð5°Ó5ØˆD�Gr   Nr5   r   r   r   r½   r½   é  r¯   r   r½   c                   ó   — e Zd Zy)ÚTryAgainN)r6   r7   r8   r   r   r   rÀ   rÀ   õ  s   „ Ør   rÀ   c                   óz   — 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y)rQ   r	   r   r   r
   r   c                 óp   — 	 |d   | _         	 |d   | _        y #  t        | _         Y ŒxY w#  d| _        Y y xY w)NÚtyperZ   ú	<no text>)rÃ   rŸ   rZ   ©r4   Úargvs     r   r2   zToken.__init__  s=   € ð	%Ø˜V™ˆDŒIð	$Ø˜V™ˆD�Iøð	%Ü$ˆDŽIûð	$Ø#ˆDŽIús   ‚
 �
* ˜'ª	5c                 ó(   — | j                   t        k(  S r"   )rÃ   ÚEOF_TYPErµ   s    r   ÚisEOFzToken.isEOF  s   € Ø—	‘	œXÑ%Ð&r   c                  ó   — yr¬   r   rµ   s    r   rV   zToken.getColumn  ó   € Ør   c                  ó   — yr¬   r   rµ   s    r   rU   zToken.getLine  rË   r   c                  ó   — y r"   r   rµ   s    r   r`   zToken.getFilename  ó   € Ør   c                 ó   — | S r"   r   )r4   Únames     r   ÚsetFilenamezToken.setFilename  ó   € Øˆr   c                  ó   — y)NrÄ   r   rµ   s    r   rW   zToken.getText  ó   € Ør   c                 ó4   — t        |«      r	 | S t        d«      ‚)Nz&Token.setText requires string argument)r+   rR   ©r4   rZ   s     r   ÚsetTextzToken.setText!  s"   € Ü˜$ÔØð ˆô ÐDÓEÐEr   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‰yÐr   c                 óJ   — t        |t        «      r	|| _        | S t        d«      ‚)Nz'Token.setType requires integer argument)r(   r™   rÃ   rR   )r4   rÃ   s     r   ÚsetTypezToken.setType1  s(   € Ü�dœ3ÔØˆDŒIð ˆô ÐEÓFÐFr   c                 óŒ   — | j                   }|dk(  rd}n|dk(  rd}n|dk(  rd}n
|dk(  rd}n|}d	| j                  «       ›d
|›d�S )Nr
   ÚNULL_TREE_LOOKAHEADr   rÈ   r   rŸ   r	   ÚSKIPz["z",<z>])rÃ   rW   )r4   Útype_Útvals      r   ÚtoStringzToken.toString8  sR   € à—	‘	ˆØ�AŠ:Ø(‰DØ�aŠZØ‰DØ�aŠZØ!‰DØ�bŠ[Ø‰DàˆDøØ $§¡¥ª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   ý  sn   „ Ø€DØ€LØ€HØ€CØÐØ€Mò$ò'òòòòòòòòòòò5ð €GØ�Hr   rQ   rÄ   )rÃ   rZ   Ú__main__z
testing ..c                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
e
Ze
Zy	)
ÚCommonTokenc                 ó”   — t        j                  | fi |¤Ž d| _        d| _        	 |d   | _        	 |d   | _        y #  Y ŒxY w#  Y y xY w)Nr   r>   rY   )rQ   r2   r>   rY   rÅ   s     r   r2   zCommonToken.__init__X  sT   € Ü�‰�tÑ#˜dÒ#ØˆŒ	ØˆŒð	Ø˜V™ˆDŒIð	Ø˜E‘{ˆD�Høð	Ùûð	Ùús   ¦
< ±
A ¼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‰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  sp   € à—	‘	ˆØ�AŠ:Ø(‰DØ�aŠZØ‰DØ�aŠZØ!‰DØ�bŠ[Ø‰DàˆDà—I‘IØØ—I‘IØ—H‘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  s6   „ òòòòòòòòð. €GØ�Hr   rì   é   z	some textrq   )rY   r>   rZ   rÃ   c                   ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚCommonHiddenStreamTokenc                 óL   — t        j                  | g|¢­Ž  d | _        d | _        y r"   )rì   r2   ÚhiddenBeforeÚhiddenAfterr3   s     r   r2   z CommonHiddenStreamToken.__init__§  s%   € Ü×Ñ˜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                 ó   — || _         y r"   r  ©r4   Úts     r   ÚsetHiddenAfterz&CommonHiddenStreamToken.setHiddenAfter²  s
   € ØˆÕr   c                 ó   — || _         y 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                   ó6   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚQueuec                 ó   — g | _         y r"   ©Úbufferrµ   s    r   r2   zQueue.__init__¿  ó	   € Øˆ�r   c                 ó:   — | j                   j                  |«       y 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 | _         y r"   r  rµ   s    r   ÚresetzQueue.resetÈ  r  r   c                 ó:   — | j                   j                  d«       y 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                   ó`   — 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y)ÚInputBufferc                 óL   — d| _         d| _        d| _        t        «       | _        y r¬   )ÚnMarkersÚmarkerOffsetÚnumToConsumer  Úqueuerµ   s    r   r2   zInputBuffer.__init__Ù  s"   € ØˆŒØˆÔØˆÔÜ“Wˆ�
r   c           	      óp   — d| j                   ›d| j                  ›d| j                  ›d| j                  ›d�	S ©Nú(ú,ú))r'  r(  r)  r*  rµ   s    r   rH   zInputBuffer.__str__ß  s,   � à�=‹=Ø×ÓØ×ÓØ�:‹:ð	ð 	r   c                 ó   — t        | «      S r"   ©rE   rµ   s    r   rJ   zInputBuffer.__repr__æ  ó   € Ü�4‹yÐr   c                 ó.   — | xj                   dz  c_         y ©Nr   ©r'  rµ   s    r   ÚcommitzInputBuffer.commité  s   € Ø�Š˜ÑŽr   c                 ó.   — | xj                   dz  c_         y r4  ©r)  rµ   s    r   ÚconsumezInputBuffer.consumeì  ó   € Ø×Ò˜QÑÖr   c                 ó¨   — | j                   }| j                  j                  «       }d}||k  r$|| j                  j                  |«      z  }||k  rŒ$|S ©Nr   )r(  r*  r!  r  )r4   r“   ÚnÚss       r   Ú
getLACharszInputBuffer.getLACharsò  sR   € Ø×ÑˆØ�J‰J×ÑÓˆØˆØ�ŠcØ�—‘×%Ñ% aÓ(Ñ(ˆAð �‹càˆr   c                 óx   — d}d}| j                   }||k  r$|| j                  j                  |«      z  }||k  rŒ$|S )Nr   r   )r(  r*  r  )r4   r>  r“   r=  s       r   ÚgetMarkedCharszInputBuffer.getMarkedCharsü  sE   € ØˆØˆØ×ÑˆØ�ŠcØ�—‘×%Ñ% aÓ(Ñ(ˆAð �‹càˆr   c                 ó    — | j                   dk7  S r¬   r5  rµ   s    r   ÚisMarkedzInputBuffer.isMarked  s   € Ø�}‰} Ñ!Ð!r   c                 ó   — t        «       ‚r"   ©ÚNotImplementedError©r4   Úks     r   ÚfillzInputBuffer.fill  s   € ä!Ó#Ð#r   c                 óz   — | j                  |«       | j                  j                  | j                  |z   dz
  «      S r4  ©rI  r*  r  r(  rG  s     r   ÚLAzInputBuffer.LA  ó2   € Ø�	‰	�!ŒØ�z‰z×#Ñ# D×$5Ñ$5¸Ñ$9¸AÑ$=Ó>Ð>r   c                 ód   — | j                  «        | xj                  dz  c_        | j                  S r4  ©ÚsyncConsumer'  r(  rµ   s    r   ÚmarkzInputBuffer.mark  ó(   € Ø×ÑÔØ�Š˜Ñ�Ø× Ñ Ð r   c                 ó\   — | j                  «        || _        | xj                  dz  c_        y r4  ©rP  r(  r'  ©r4   rQ  s     r   ÚrewindzInputBuffer.rewind  ó$   € Ø×ÑÔØ ˆÔØ�Š˜ÑŽr   c                 ób   — d| _         d| _        d| _        | j                  j	                  «        y r¬   ©r'  r(  r)  r*  r  rµ   s    r   r  zInputBuffer.reset  ó)   € ØˆŒØˆÔØˆÔØ�
‰
×ÑÕr   c                 óì   — | j                   dkD  re| j                  dkD  r| xj                  dz  c_        n| j                  j	                  «        | xj                   dz  c_         | j                   dkD  rŒdy y ©Nr   r   ©r)  r'  r(  r*  r  rµ   s    r   rP  zInputBuffer.syncConsume  ó`   € Ø×Ñ !Ò#Ø�}‰}˜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%  Ø  sH   „ òòòòòòòò"ò$ò?ò!ò
ò
ó#r   r%  c                   ó.   ‡ — e Zd Zˆ fd„Zˆ fd„Zd„ Zˆ xZS )Ú
CharBufferc                 ó8   •— t         t        | �  «        || _        y r"   )Úsuperr`  r2   Úinput)r4   ÚreaderÚ	__class__s     €r   r2   zCharBuffer.__init__.  s   ø€ äŒj˜Ñ'Ô)ð ˆ�
r   c                 óR   •— t         t        | �  «       }d|›dt        t        «      ›�S )NzCharBuffer{r.  )rb  r`  rH   rE   rc  )r4   Úbasere  s     €r   rH   zCharBuffer.__str__5  s!   ø€ Ü”Z Ñ-Ó/‰Ú%)¬#¬e¬*Ð5Ð5r   c                 óÌ  — 	 | j                  «        | j                  j                  «       || j                  z   k  r�| j                  j                  d«      }t        |«      dk(  st        |«      dk(  sJ ‚t        |«      sJ ‚| j                  j                  |«       | j                  j                  «       || j                  z   k  rŒŒy y # 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Ñ2CÑ)CÒDð —J‘J—O‘O AÓ&�ô ˜1“v ’{¤c¨!£f°¢kÐ1Ð1ô & aÔ(Ð(Ð(ð —
‘
×!Ñ! !Ô$ð/ —*‘*×#Ñ#Ó%¨°$×2CÑ2CÑ)CÕDøô0 ò 	+Ü'¨Ó*Ð*ûð	+ús   ‚CC
 Ã
	C#ÃCÃC#)r6   r7   r8   r2   rH   rI  Ú__classcell__©re  s   @r   r`  r`  -  s   ø„ ôô6ö+r   r`  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚLexerSharedInputStatec                 óŠ   — t        |t        «      sJ ‚|| _        d| _        d| _        d| _        d| _        d| _        d | _        y ri  )	r(   r%  rc  r?   r>   ÚtokenStartColumnÚtokenStartLineÚguessingÚfilename)r4   Úibufs     r   r2   zLexerSharedInputState.__init___  sE   € Ü˜$œ{Ô+Ð+Ð+ØˆŒ
ØˆŒØˆŒ	Ø !ˆÔØˆÔØˆŒØˆ�r   c                 óŒ   — d| _         d| _        d| _        d| _        d| _        d | _        | j                  j                  «        y ri  )r?   r>   rr  rs  rt  ru  rc  r  rµ   s    r   r  zLexerSharedInputState.reseti  s>   € ØˆŒØˆŒ	Ø !ˆÔØˆÔØˆŒØˆŒØ�
‰
×ÑÕr   c                 ó8   — | j                   j                  |«      S r"   )rc  rL  rG  s     r   rL  zLexerSharedInputState.LAr  s   € Ø�z‰z�}‰}˜QÓÐr   N)r6   r7   r8   r2   r  rL  r   r   r   rp  rp  ^  s   „ òòó r   rp  c                   ó   — e Zd Zd„ Zd„ Zy)ÚTokenStreamc                  ó   — y 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  s   „ òó)r   rz  c                   ó   — e Zd Zd„ Zd„ Zy)r  c                 óH   — t        |t        «      r|| _        y t        d«      ‚)Nz/TokenStreamIterator requires TokenStream object)r(   rz  ÚinstrR   ©r4   r„  s     r   r2   zTokenStreamIterator.__init__…  ó"   € Ü�dœ;Ô'ØˆDŒIØÜÐIÓJÐJr   c                 óŽ   — | j                   sJ ‚| j                   j                  «       }|r|j                  «       r
t        «       ‚|S r"   ©r„  r|  rÉ   ÚStopIterationr  s     r   ÚnextzTokenStreamIterator.next‹  ó8   € Ø�yŠyÐˆyØ�y‰y×"Ñ"Ó$ˆÙ�t—z‘z”|Ü“/Ð!Øˆr   N©r6   r7   r8   r2   rŠ  r   r   r   r  r  „  s   „ òKó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y
)ÚTokenStreamSelectorc                 ó.   — d | _         i | _        g | _        y r"   )Ú_inputÚ_stmapÚ_stackrµ   s    r   r2   zTokenStreamSelector.__init__˜  s   € ØˆŒØˆŒØˆ�r   c                 ó"   — || j                   |<   y 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                 óR   — 	 | j                   |   }|S #  t        d|z   dz   «      ‚xY w)NzTokenStream z
 not found)r‘  Ú
ValueError)r4   Úsnamer”  s      r   Ú	getStreamzTokenStreamSelector.getStream£  s:   € ð	EØ—[‘[ Ñ'ˆFð ˆøð	EÜ˜^¨eÑ3°lÑBÓCÐCús   ‚ “&c                 óZ   — 	 	 | j                   j                  «       S # t        $ r Y nw xY wŒ+r"   )r�  r|  r·   rµ   s    r   r|  zTokenStreamSelector.nextTokenª  s4   € ØðØ—{‘{×,Ñ,Ó.Ð.øÜ,ò áðúð s   ƒ �	)¨)c                 ó\   — | j                   j                  «       }| j                  |«       |S r"   )r’  r  Úselect©r4   r”  s     r   r  zTokenStreamSelector.pop²  s#   € Ø—‘—‘Ó"ˆØ�‰�FÔØˆr   c                 óp   — | j                   j                  | j                  «       | j                  |«       y r"   )r’  rD   r�  r   ©r4   Úargs     r   ÚpushzTokenStreamSelector.push·  s$   € Ø�‰×Ñ˜4Ÿ;™;Ô'Ø�‰�CÕr   c                 ó   — t        «       ‚r"   )r·   rµ   s    r   ÚretryzTokenStreamSelector.retry»  s   € Ü'Ó)Ð)r   c                 óŒ   — t        |t        «      r|| _        y t        |«      r| j	                  |«      | _        y t        d«      ‚)NzBTokenStreamSelector.select requires TokenStream or string argument)r(   rz  r�  r+   r�  rR   r£  s     r   r   zTokenStreamSelector.select¾  sC   € Ü�cœ+Ô&ØˆDŒKØÜ˜#ÔØŸ.™.¨Ó-ˆDŒKØÜð 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y)ÚTokenStreamBasicFilterc                 ó0   — || _         t        «       | _        y r"   )rc  rz   ÚdiscardMask©r4   rc  s     r   r2   zTokenStreamBasicFilter.__init__Î  s   € àˆŒ
Ü!›8ˆÕr   c                 ó    — t        |t        «      r| j                  j                  |«       y t        |t        «      r|| _        y t        d«      ‚)NzATokenStreamBasicFilter.discard requiresinteger or BitSet argument)r(   r™   r¬  Úaddrz   ÚdiscardMarkrR   r£  s     r   ÚdiscardzTokenStreamBasicFilter.discardÓ  sJ   € Ü�cœ#ÔØ×Ñ× Ñ  Ô%ØÜ�cœ&Ô!Ø"ˆDÔØÜð 5ó 6ð 	6r   c                 ó  — | j                   j                  «       }|ro| j                  j                  |j	                  «       «      rF| j                   j                  «       }|r*| j                  j                  |j	                  «       «      rŒF|S r"   )rc  r|  r¬  ÚmemberrÞ   )r4   Útoks     r   r|  z TokenStreamBasicFilter.nextTokenÝ  se   € Ø�j‰j×"Ñ"Ó$ˆÙ�d×&Ñ&×-Ñ-¨c¯k©k«mÔ<Ø—*‘*×&Ñ&Ó(ˆCñ �d×&Ñ&×-Ñ-¨c¯k©k«mÕ<àˆ
r   N)r6   r7   r8   r2   r±  r|  r   r   r   rª  rª  Ì  s   „ ò$ò
6ór   rª  c                   óN   — 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y)ÚTokenStreamHiddenTokenFilterc                 óx   — t         j                  | |«       t        «       | _        d | _        d | _        d | _        y r"   )rª  r2   rz   ÚhideMaskÚnextMonitoredTokenÚlastHiddenTokenÚfirstHiddenr­  s     r   r2   z%TokenStreamHiddenTokenFilter.__init__é  s3   € Ü×'Ñ'¨¨UÔ3Ü›ˆŒØ"&ˆÔØ#ˆÔØˆÕr   c                 óB   — | j                   j                  «       | _        y r"   )rc  r|  r¹  rµ   s    r   r9  z$TokenStreamHiddenTokenFilter.consumeð  s   € Ø"&§*¡*×"6Ñ"6Ó"8ˆÕr   c                 ó‚  — | j                  «        d }| j                  j                  | j                  d«      j	                  «       «      s9| j
                  j                  | j                  d«      j	                  «       «      �r<| j                  j                  | j                  d«      j	                  «       «      r|s| j                  d«      }nQ|j                  | j                  d«      «       | j                  d«      j                  |«       | j                  d«      }|| _        | j                  s|| _	        | j                  «        | j                  j                  | j                  d«      j	                  «       «      r�Œ| j
                  j                  | j                  d«      j	                  «       «      r�Œ;y y r4  )
r9  r¸  r³  rL  rÞ   r¬  r  r  rº  r»  )r4   Úps     r   ÚconsumeFirstz)TokenStreamHiddenTokenFilter.consumeFirstó  s3  € Ø�‰ŒàˆØ�m‰m×"Ñ" 4§7¡7¨1£:×#5Ñ#5Ó#7Ô8Ø×Ñ×%Ñ% d§g¡g¨a£j×&8Ñ&8Ó&:Õ;Ø�}‰}×#Ñ# D§G¡G¨A£J×$6Ñ$6Ó$8Ô9ÙØŸ™ ›
‘Aà×$Ñ$ T§W¡W¨Q£ZÔ0Ø—G‘G˜A“J×.Ñ.¨qÔ1ØŸ™ ›
�AØ'(�Ô$Ø×'Ò'Ø'(�DÔ$Ø�L‰LŒNð �m‰m×"Ñ" 4§7¡7¨1£:×#5Ñ#5Ó#7Ö8Ø×Ñ×%Ñ% d§g¡g¨a£j×&8Ñ&8Ó&:×;Ð;r   c                 ó   — | j                   S r"   )r¬  rµ   s    r   ÚgetDiscardMaskz+TokenStreamHiddenTokenFilter.getDiscardMask  r  r   c                 ó"   — |j                  «       S r"   )r  r
  s     r   r  z+TokenStreamHiddenTokenFilter.getHiddenAfter  s   € Ø×ÑÓ!Ð!r   c                 ó"   — |j                  «       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                  j                  |«       y t        |j                  «      r|| _        y y r"   )r(   r™   r¸  r¯  ÚBitMask)r4   Úms     r   Úhidez!TokenStreamHiddenTokenFilter.hide  s<   € Ü�aœÔØ�M‰M×Ñ˜aÔ ØÜ�a—i‘iÔ ØˆDŒMØð !r   c                 ó   — | j                   S r"   )r¹  ©r4   r“   s     r   rL  zTokenStreamHiddenTokenFilter.LA  s   € Ø×&Ñ&Ð&r   c                 óä  — | j                  d«      s| j                  «        | j                  d«      }|j                  | j                  «       d | _        | j	                  «        |}| j
                  j                  | j                  d«      j                  «       «      s9| j                  j                  | j                  d«      j                  «       «      �r| j
                  j                  | j                  d«      j                  «       «      r]|j                  | j                  d«      «       ||k7  r | j                  d«      j                  |«       | j                  d«      x}| _        | j	                  «        | j
                  j                  | j                  d«      j                  «       «      rŒÞ| j                  j                  | j                  d«      j                  «       «      r�Œ|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Ø×ÑÔà—G‘G˜A“Jˆ	à×!Ñ! $×"6Ñ"6Ô7Ø#ˆÔà�‰ŒØˆà�m‰m×"Ñ" 4§7¡7¨1£:×#5Ñ#5Ó#7Ô8Ø×Ñ×%Ñ% d§g¡g¨a£j×&8Ñ&8Ó&:Õ;Ø�}‰}×#Ñ# D§G¡G¨A£J×$6Ñ$6Ó$8Ô9Ø× Ñ  §¡¨£Ô,Ø˜	’>Ø—G‘G˜A“J×.Ñ.¨qÔ1Ø+/¯7©7°1«:Ð5��DÔ(Ø�L‰LŒNð �m‰m×"Ñ" 4§7¡7¨1£:×#5Ñ#5Ó#7Õ8Ø×Ñ×%Ñ% d§g¡g¨a£j×&8Ñ&8Ó&:Ö;ð Ðr   N)r6   r7   r8   r2   r9  r¿  rÁ  r  r  rÅ  rÇ  rË  rL  r|  r   r   r   r¶  r¶  ç  s9   „ ò ò9òò$ ò"ò#òò òò'ór   r¶  c                   ó8   — e Zd Zdd„Zd„ Zd„ Zd„ Zd	d„ZeZd„ Z	y)
ÚStringBufferNc                 ó8   — |rt        |«      | _        y g | _        y r"   )ÚlistrZ   )r4   Ústrings     r   r2   zStringBuffer.__init__:  s   € ÙÜ˜V›ˆD�IàˆD�Ir   c                 óv   — |sg | _         y |dkD  sJ ‚|| j                  «       k\  ry | j                   d| | _         y r¬   )rZ   r!  )r4   Úszs     r   Ú	setLengthzStringBuffer.setLength@  s<   € ÙØˆDŒIØØ�!ŠtˆˆtØ�—‘“ÒØà—I‘I˜a �Oˆ�	r   c                 ó,   — t        | j                  «      S r"   ©r@   rZ   rµ   s    r   r!  zStringBuffer.lengthJ  ó   € Ü�4—9‘9‹~Ðr   c                 ó:   — | j                   j                  |«       y r"   )rZ   rD   ©r4   r„   s     r   rD   zStringBuffer.appendM  s   € Ø�	‰	×Ñ˜Õr   c                 óð   — |sd}|dk\  sJ ‚|t        | j                  «      k\  ry|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ØŒs�4—9‘9‹~ÒØáà—	‘	˜!˜"�‰Aà�f‘H¤ T§Y¡Y£Ò/Ð/Ð/Ø�F‘
ˆAØ—	‘	˜!˜A�ˆAØˆØÒˆA�Q˜!‘V‘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y)ÚReaderc                 ó    — || _         g | _        y r"   )ÚcinrG   r¡  s     r   r2   zReader.__init__x  s   € ØˆŒØˆ�r   c                 ód  — |dk(  sJ ‚t        | j                  «      r| j                  j                  «       S | j                  j	                  d«      }|rt        |«      dk(  r|S t        |«      }|j                  «        |D ]  }| j                  j                  |«       Œ | 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äˆt�x‰xŒ=Ø—8‘8—<‘<“>Ð!ð �H‰H�M‰M˜!Óˆá”C˜“F˜A’IØˆHä�‹GˆØ	�	‰	ŒØò 	ˆAØ�H‰H�O‰O˜AÕð	ð �y‰y˜‹|Ðr   N)r6   r7   r8   r2   rj  r   r   r   rå  rå  w  s   „ òó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$d9d#„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:d7„Z9d8„ Z:ˆ xZ;S );ÚCharScannerr   r   c                 ó.  •— t         t        | �  «        d| _        d | _        d| _        d| _        d | _        d| _        d | _	        d| _
        d| _        t        «       | _        t        | «      | _        | j!                  t"        «        | j$                  |Ž  y )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ˆŒ	Ü˜t›*ˆŒØ× Ñ ¤Ô-Øˆ�‰�tÒr   c                 ó   — t        | «      S r"   )ÚCharScannerIteratorrµ   s    r   r€  zCharScanner.__iter__ª  r�  r   c                 ó.  — |s dd l }| j                  |j                  «       y |d   }t        |«      r/t	        |d«      }| j                  |«       | j                  |«       y t        |t        «      r| j                  t        |«      «       y t        |t        «      r|| _
        y t        |t        «      r| j                  t        |«      «       y 	 |j                  r(t        |«      }t        |«      }t        |«      }|| _
        y #  Y t        |«      ‚xY w)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­  sú   € ñ ÛØ�M‰M˜#Ÿ)™)Ô$Øð �A‰wˆô ˜$ÔÜ�T˜$“ˆAØ�M‰M˜!ÔØ×Ñ˜TÔ"Øô �dœ4Ô Ø�M‰Mœ* TÓ*Ô+Øô
 �dÔ0Ô1Ø"ˆDŒOØô �dœ;Ô'Ø�M‰MÔ/°Ó5Ô6Øð
	Ø�yŠyÜ˜D“\�Ü “^�Ü*¨2Ó.�Ø"$�”Øøð	Øô ˜‹oÐús   Ã4D ÄDc                 ó   — || _         y r"   ©rô  )r4   Úsizes     r   Ú
setTabSizezCharScanner.setTabSizeì  s	   € Øˆ�r   c                 ó   — | j                   S r"   r  rµ   s    r   Ú
getTabSizezCharScanner.getTabSizeï  s   € Ø�|‰|Ðr   c                 ó   — || _         y r"   ©rñ  r
  s     r   ÚsetCaseSensitivezCharScanner.setCaseSensitiveò  s
   € ØˆÕr   c                 ó   — || _         y r"   ©rö  )r4   r6  s     r   ÚsetCommitToPathzCharScanner.setCommitToPathõ  s
   € Ø"ˆÕr   c                 ó&   — || j                   _        y r"   ©r  ru  ©r4   r  s     r   rÑ   zCharScanner.setFilenameø  ó   € Ø#$ˆ�‰Õ r   c                 ó&   — || j                   _        y r"   ©r  r>   rÛ   s     r   rÜ   zCharScanner.setLineû  s   € Ø#ˆ�‰Õr   c                 óZ   — | j                  «        | j                  j                  |«       y 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                   _        y 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                 ó6   — t        |t        «      sJ ‚|| _        y r"   )r(   rp  r  ©r4   Ústates     r   ÚsetInputStatezCharScanner.setInputState  s   € Ü˜%Ô 5Ô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                  |«      }| j                  s|j                  j                  |«      }|S r"   )r  rc  rL  rñ  re  Úlower)r4   r“   r„   s      r   rL  zCharScanner.LA'  s>   € Ø�O‰O×!Ñ!×$Ñ$ QÓ'ˆØ×!Ò!à—‘×!Ñ! !Ó$ˆAØˆr   c                 óH  — 	 | j                   sJ ‚| j                  «       }|j                  |«       |j                  | j                  j                  «       |j                  | j                  j                  «       |S #  | j                  d«       Y t        j                  S xY w)Nzunable to create new token)
rð  rá   rÙ   r  rr  rÜ   rs  ÚpanicrQ   ÚbadToken)r4   rÃ   r´  s      r   Ú	makeTokenzCharScanner.makeToken.  sz   € ð		5à—?’?Ð"�?Ø—/‘/Ó#ˆCØ�K‰K˜ÔØ�M‰M˜$Ÿ/™/×:Ñ:Ô;Ø�K‰K˜Ÿ™×6Ñ6Ô7ØˆJøð	5Ø�J‰JÐ3Õ4Ü�~‰~Ðús   ‚A:A= Á=B!c                 óJ   — | j                   j                  j                  «       S r"   ©r  rc  rQ  rµ   s    r   rQ  zCharScanner.mark;  ó   € Ø�‰×$Ñ$×)Ñ)Ó+Ð+r   c                 óž   — |j                  | j                  d«      «      r| j                  «        y t        | j                  d«      |d| «      ‚©Nr   F)r³  rL  r9  rp   ©r4   rà  s     r   Ú_match_bitsetzCharScanner._match_bitset>  s8   € Ø�8‰8�D—G‘G˜A“JÔØ�L‰L�Nä)¨$¯'©'°!«*°a¸ÀÓEÐEr   c                 ó”   — |D ]C  }| j                  d«      |k(  r| j                  «        Œ(t        | j                  d«      |d| «      ‚ y rD  ©rL  r9  rp   )r4   r>  r„   s      r   Ú_match_stringzCharScanner._match_stringD  sD   € Øò 	JˆAØ�w‰w�q‹z˜QŠØ—‘•ä-¨d¯g©g°a«j¸!¸UÀDÓIÐIñ		Jr   c                 ó\   — t        |«      r| j                  |«      S | j                  |«      S r"   )r+   rI  rF  r  s     r   ÚmatchzCharScanner.matchK  s,   € Ü˜$ÔØ×%Ñ% dÓ+Ð+à×%Ñ% dÓ+Ð+r   c                 ó†   — | j                  d«      |k7  r| j                  «        y t        | j                  d«      |d| «      ‚©Nr   TrH  rÜ  s     r   ÚmatchNotzCharScanner.matchNotQ  s3   € Ø�7‰7�1‹:˜Š?Ø�L‰L�Nä)¨$¯'©'°!«*°a¸¸tÓDÐDr   c                 ó°   — | j                  d«      |k  s| j                  d«      |kD  rt        | j                  d«      ||d| «      ‚| j                  «        y rD  )rL  rp   r9  )r4   Úc1Úc2s      r   Ú
matchRangezCharScanner.matchRangeW  sC   € Ø�7‰7�1‹:˜Š?˜dŸg™g a›j¨2šoÜ)¨$¯'©'°!«*°b¸"¸eÀTÓJÐJà�L‰L�Nr   c                 ód   — | j                   xj                  dz  c_        d| j                   _        y r4  )r  r>   r?   rµ   s    r   ÚnewlinezCharScanner.newline]  s#   € Ø�‰×Ò Ñ!ÕØ!"ˆ�‰Õr   c                 ó�   — | j                  «       }|dz
  | j                  z  dz   | j                  z  dz   }| j                  |«       y r4  )rV   rô  rÙ   )r4   r„   Úncs      r   ÚtabzCharScanner.taba  s?   € Ø�N‰NÓˆØ�1‘�d—l‘lÑ" aÑ'¨4¯<©<Ñ7¸!Ñ;ˆØ�‰�rÕr   c                 óJ   — t        d|z   «       t        j                  d«       y )NzCharScanner: panic: r   )r   r  Úexitr  s     r   r=  zCharScanner.panicf  s   € ÜÐ$ qÑ(Ô)Ü�‰��r   c                 ó¤   — | j                  «       st        dt        |«      z   «       y t        | j                  «       dz   t        |«      z   «       y )Nr   z	: error: ©r`   r   rE   r  s     r   ÚreportErrorzCharScanner.reportErrorj  s>   € Ø×ÑÔ!Ü�)œc !›fÑ$Õ%ä�$×"Ñ"Ó$ {Ñ2´S¸³VÑ;Õ<r   c                 ó¤   — | j                  «       st        dt        |«      z   «       y t        | j                  «       dz   t        |«      z   «       y )Nz	warning: z: warning: r[  r  s     r   ÚreportWarningzCharScanner.reportWarningp  s>   € Ø×ÑÔ!Ü�+¤ A£Ñ&Õ'ä�$×"Ñ"Ó$ }Ñ4´s¸1³vÑ=Õ>r   c                 óÎ   — | j                   j                  d«       | j                  j                  | j                  _        | j                  j
                  | j                  _        y r¬   )rZ   r×  r  r?   rr  r>   rs  rµ   s    r   r  zCharScanner.resetTextv  s@   € Ø�	‰	×Ñ˜AÔØ+/¯?©?×+AÑ+Aˆ�‰Ô(Ø)-¯©×)=Ñ)=ˆ�‰Õ&r   c                 óN   — | j                   j                  j                  |«       y r"   ©r  rc  rV  ©r4   Úposs     r   rV  zCharScanner.rewind{  ó   € Ø�‰×Ñ×$Ñ$ SÕ)r   c                 ó   — || _         y r"   )rð  ©r4   Úcls     r   rú  zCharScanner.setTokenObjectClass~  s	   € Øˆ�r   c                 ó  — |sy t        |t        «      sJ ‚|j                  «       }|t        t        t
        t        fv ry |j                  «       }|sy t        |«      sJ ‚| j                  ||«      }|j                  |«       |S r"   )r(   rQ   rÞ   rä   rŸ   rÈ   rã   rW   r+   ÚtestLiteralsTablerá   )r4   rN   Ú_typeÚ_texts       r   ÚtestForLiteralzCharScanner.testForLiteral�  s|   € ÙØÜ˜%¤Ô&Ð&Ð&à—‘“ˆð ”Tœ,¤xÔ0CÐDÑDØà—‘“ˆÙØä˜eÔ$Ð$Ð$Ø×&Ñ& u¨UÓ3ˆØ�‰�eÔØˆr   c                 óp  — t        |d   «      r|d   }|d   }n| j                  j                  «       }|d   }t        |t        «      st        |t        «      sJ ‚t        | j
                  t        «      sJ ‚	 | j                  s|j                  j                  |«      }| j
                  |   }|S #  Y |S xY w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Ø�Q‘ˆAô ˜!œCÔ Ü˜a¤Ô$Ð$Ð$ô ˜$Ÿ-™-¬Ô-Ð-Ð-ð	à×-Ò-Ø—K‘K×%Ñ% aÓ(�Ø—‘˜aÑ ˆAð ˆøð	ØØˆús   Á86B0 Â0B5c                 ó6   — |j                   j                  «       S r"   )re  r;  rÜ  s     r   ÚtoLowerzCharScanner.toLower¬  s   € Ø�{‰{× Ñ Ó"Ð"r   c                 ó4   — t        d| j                  z  «       y ©NrC   ©r   r÷  rµ   s    r   ÚtraceIndentzCharScanner.traceIndent¯  ó   € Üˆc�D—O‘OÑ#Õ$r   c                 óŽ   — | xj                   dz  c_         | j                  «        t        d|›d| j                  d«      ›�«       y )Nr   z> lexer ú c== )r÷  rt  r   rL  ©r4   Úrnames     r   ÚtraceInzCharScanner.traceIn²  s1   € Ø�Š˜1Ñ�Ø×ÑÔÝ¢U¨4¯7©7°1¬:Ð6Õ7r   c                 óŽ   — | j                  «        t        d|›d| j                  d«      ›�«       | xj                  dz  c_        y )Nz< lexer rw  r   )rt  r   rL  r÷  rx  s     r   ÚtraceOutzCharScanner.traceOut·  s1   € Ø×ÑÔÝ¢U¨4¯7©7°1¬:Ð6Ô7Ø�Š˜1ÑŽr   c                  ó   — y r"   r   rµ   s    r   ÚuponEOFzCharScanner.uponEOF¼  r}  r   c                 óT   — | j                   r| j                  j                  |«       y y r"   )rï  rZ   rD   rÜ  s     r   rD   zCharScanner.append¿  s"   € Ø×!Ò!Ø�I‰I×Ñ˜QÕð "r   c                 óL   — | j                   j                  j                  «        y r"   )r  rc  r6  rµ   s    r   r6  zCharScanner.commitÃ  s   € Ø�‰×Ñ×$Ñ$Õ&r   c                 ó®  — | j                   j                  s›| j                  d«      }| j                  r| j	                  |«       n6| j                   j
                  j                  d«      }| j	                  |«       |r|dv r| j                  «        n| j                   xj                  dz  c_        | j                   j
                  j                  «        y )Nr   r‚   )	r  rt  rL  rñ  rD   rc  rW  r?   r9  rÜ  s     r   r9  zCharScanner.consumeÆ  s”   € Ø�‰×'Ò'Ø—‘˜“
ˆAØ×!Ò!Ø—‘˜A•ð —_‘_×*Ñ*×-Ñ-¨aÓ0�Ø—‘˜A”á�Q˜$‘YØ—‘•
à—‘×&Ò&¨!Ñ+Õ&Ø�‰×Ñ×%Ñ%Õ'r   c                 óÜ   — | j                  d«      t        k7  rT| j                  d«      |k7  r?| j                  «        | j                  d«      t        k7  r| j                  d«      |k7  rŒ=y y y y r4  )rL  ÚEOF_CHARr9  rÜ  s     r   ÚconsumeUntil_charzCharScanner.consumeUntil_charØ  sQ   € Ø�g‰g�a‹jœHÒ$¨¯©°«°qªØ�L‰LŒNð �g‰g�a‹jœHÒ$¨¯©°«°q¬Ð$¨Ð$r   c                 ó4  — | j                  d«      t        k7  r€| j                  j                  | j                  d«      «      sU| j	                  «        | j                  d«      t        k7  r,| j                  j                  | j                  d«      «      sŒSy y y y r4  )rL  rƒ  r}   r³  r9  )r4   Úbitsets     r   ÚconsumeUntil_bitsetzCharScanner.consumeUntil_bitsetÝ  sd   € Ø�g‰g�a‹jœHÒ$¨T¯X©X¯_©_¸T¿W¹WÀQ»ZÔ-HØ�L‰LŒNð �g‰g�a‹jœHÒ$¨T¯X©X¯_©_¸T¿W¹WÀQ»ZÖ-HÐ$Ð-HÐ$r   c                 ó€   — |s+| j                  «        | j                  t        «      | _        y | j	                  |«       y r"   )r~  r?  rÈ   rõ  Úraise_NoViableAlt)r4   Úla1s     r   ÚdefaultzCharScanner.defaultã  s-   € ÙØ�L‰LŒNØ $§¡¬xÓ 8ˆDÕà×"Ñ" 3Õ'r   c                 ód  — |s+| j                  «        | j                  t        «      | _        y |s| j	                  «        t        «       ‚| j                  «        	 |d   } ||dd  Ž  t        «       ‚# t        $ r4}| j                  |«       | j	                  «        Y d }~t        «       ‚d }~ww xY wr\  )	r~  r?  rÈ   rõ  r9  rÀ   r6  r:   r\  )r4   rŠ  r   Úfuncrl  s        r   ÚfilterdefaultzCharScanner.filterdefaultê  s™   € ÙØ�L‰LŒNØ $§¡¬xÓ 8ˆDÔØáØ�L‰LŒNÜ“*Ðð �K‰KŒMð Ø˜!‘W�Ù�d˜1˜2�h‘ô
 “*Ðøô	 (ò  à× Ñ  Ô#Ø—‘—�Ü“*Ðûð	 ús   ÁA2 Á2	B/Á;!B*Â*B/c                 ó¤   — |s| j                  d«      }| j                  «       }| j                  «       }| j                  «       }t	        ||||«      ‚r4  )rL  r`   rU   rV   r\   )r4   rŠ  Úfnamer>   rY   s        r   r‰  zCharScanner.raise_NoViableAltÿ  sG   € Ù˜$Ÿ'™' !›*�CØ× Ñ Ó"ˆØ—‘“ˆØ—‘Ó ˆÜ)¨#¨e°D¸Ó=Ð=r   c                 ó¨   — |rH|sF|t         k(  s=| j                  j                  |«      }| j                  |«      }|j	                  |«       || _        |S r"   )rä   rZ   rá  r?  r×   rõ  )r4   Ú_createÚ_tokenÚ_ttypeÚ_offsetrÔ  s         r   Úset_return_tokenzCharScanner.set_return_token  sH   € Ù™6¨6´Tª>Ø—Y‘Y×(Ñ(¨Ó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ì  •  s  ø„ à€GØ€Hôò )ò=ò~òòò#ò%ò$òò"ò*ò&ò#ò!ò(ò%òò ò$òò!òòò,òFòJò,òEòò#òó
ò=ò?ò>ò
*òòò(ò.#ò%ò8ò
ò
ò ò'ò(ò$ò
ò(òó*>ör   rì  c                   ó   — e Zd Zd„ Zd„ Zy)rþ  c                 óH   — t        |t        «      r|| _        y 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                   j                  «       }|r|j                  «       r
t        «       ‚|S r"   rˆ  r  s     r   rŠ  zCharScannerIterator.next  r‹  r   NrŒ  r   r   r   rþ  rþ    s   „ òKór   rþ  c                   ób   — 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y)rz   é@   r   rr   r   Nc                 ó’  — |s!t         j                  | t        d«      g«       y t        |t        «      r!t         j                  | t        |«      g«       y t        |t        «      rt         j                  | |g«       y t        |t
        «      st        d«      ‚|D ]$  }t        |t        «      rŒt        | dd|z  z   «      ‚ || _        y )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£' Ô+ØÜ�dœ3ÔÜ�O‰O˜D¤$ t£* Ô.ØÜ�dœ4Ô Ü�O‰O˜D $ Ô(ØÜ˜$œtÔ$Üð ,ó -ð -àò 	8ˆAÜ˜a¤Õ+Ü Ð%=Ø 0°AÑ 6ñ&7ó 8ð 8ð	8ð ˆ�	r   c                 óØ   — t        | j                  «      t        j                  z  }d}t	        d|«      D ]2  }| j                  |«      r|dz  }n|dz  }|dz   dz  rŒ(|d|dz   z  z  }Œ4 |S )Nr   r   Ú1Úor   é
   z|%s|)r@   rž  rz   ÚBITSr   Úat)r4   Úbitsr>  r“   s       r   rH   zBitSet.__str__B  ss   € Ü�4—9‘9‹~¤§¡Ñ+ˆØˆÜ˜˜$“ò 	$ˆAØ�w‰w�qŒ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                 óð   — |syt        |t        «      r| j                  |«      S t        |«      st	        | d|z  «      ‚t        |«      dk7  rt	        | d|z  «      ‚t        |«      }| j                  |«      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  sv   € ÙØä�dœ3ÔØ—7‘7˜4“=Ð ä˜dÔ#Ü˜DÐ!?À4Ñ!HÓIÐIô
 ˆt‹9˜Š>Ü˜DÐ!4¸Ñ!=Ó>Ð>ô �$‹iˆð �w‰w�s‹|Ðr   c                 ó(   — |t         j                  z	  S r"   )rz   ÚLOG_BITS)r4   Úbits     r   Ú
wordNumberzBitSet.wordNumberg  s   € Ø”f—o‘oÑ%Ð%r   c                 ó2   — |t         j                  z  }d|z  S r4  )rz   ÚMOD_MASK)r4   rª  rc  s      r   ÚbitMaskzBitSet.bitMaskj  s   € Ø”F—O‘OÑ#ˆØ�S‘Ðr   c                 ó¤  — | j                  |«      }| j                  |«      }|t        | j                  «      k\  rd|t        | j                  «      z
  dz   }t	        d|«      D ]  }| j                  j                  d«       Œ t        | j                  «      |dz   k(  sJ ‚|r| j                  |xx   |z  cc<   y | j                  |xx   | z  cc<   y 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ÒØ”C˜Ÿ	™	“NÑ" QÑ&ˆAÜ˜A˜a“[ò $�Ø—	‘	× Ñ  Õ#ð$ä�t—y‘y“> Q q¡SÒ(Ð(Ð(ÙØ�I‰I�a‹L˜TÑ!ŒLà�I‰I�a‹L˜d˜UÑ#ŒLr   c                 ó*   — | j                  || «       y r"   )r}   )r4   rª  Úoffs      r   r³  z
BitSet.off  s   € Ø�‰�˜�WÕr   c                 ón   — | j                  |«      }| j                  |   }| j                  |«      }||z  S r"   )r«  rž  r®  )r4   rª  r“   ÚvrÊ  s        r   r¤  z	BitSet.at‚  s4   € Ø�O‰O˜CÓ ˆØ�I‰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   )  sN   „ Ø€DØ€FØ€HØ�Q‰w€Hóò&
òòò,&òó$ð €Cóór   rz   c                 ó2   — 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                 ó2   — t        d| j                  z  «      ‚r¸  )ÚRuntimeErrorr¹  rº  s    r   Ú
runtime_exr¾  ’  s   € Ü
Ø:Ø�‰ñóð r   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y)ÚTokenBufferc                 óZ   — || _         d| _        d| _        d| _        t	        «       | _        y r¬   )rc  r'  r(  r)  r  r*  r¡  s     r   r2   zTokenBuffer.__init__œ  s)   € ØˆŒ
ØˆŒØˆÔØˆÔÜ“Wˆ�
r   c                 ób   — d| _         d| _        d| _        | j                  j	                  «        y r¬   rY  rµ   s    r   r  zTokenBuffer.reset£  rZ  r   c                 ó.   — | xj                   dz  c_         y r4  r8  rµ   s    r   r9  zTokenBuffer.consume©  r:  r   c                 ó6  — | j                  «        | j                  j                  «       || j                  z   k  r_| j                  j	                  | j
                  j                  «       «       | j                  j                  «       || j                  z   k  rŒ^y y r"   )rP  r*  r!  r(  rD   rc  r|  )r4   rk  s     r   rI  zTokenBuffer.fill¬  so   € Ø×ÑÔØ�j‰j×ÑÓ! V¨d×.?Ñ.?Ñ%?Ò@Ø�J‰J×Ñ˜dŸj™j×2Ñ2Ó4Ô5ð �j‰j×ÑÓ! V¨d×.?Ñ.?Ñ%?Õ@r   c                 ó   — | j                   S r"   )rc  rµ   s    r   ÚgetInputzTokenBuffer.getInput±  ó   € Ø�z‰zÐr   c                 óŽ   — | j                  |«       | j                  j                  | j                  |z   dz
  «      j                  S r4  )rI  r*  r  r(  rÃ   rG  s     r   rL  zTokenBuffer.LA´  s8   € Ø�	‰	�!ŒØ�z‰z×#Ñ# D×$5Ñ$5¸Ñ$9¸AÑ$=Ó>×CÑCÐCr   c                 óz   — | j                  |«       | j                  j                  | j                  |z   dz
  «      S r4  rK  rG  s     r   ÚLTzTokenBuffer.LT¸  rM  r   c                 ód   — | j                  «        | xj                  dz  c_        | j                  S r4  rO  rµ   s    r   rQ  zTokenBuffer.mark¼  rR  r   c                 ó\   — | j                  «        || _        | xj                  dz  c_        y r4  rT  rU  s     r   rV  zTokenBuffer.rewindÁ  rW  r   c                 óì   — | j                   dkD  re| j                  dkD  r| xj                  dz  c_        n| j                  j	                  «        | xj                   dz  c_         | j                   dkD  rŒdy y r\  r]  rµ   s    r   rP  zTokenBuffer.syncConsumeÆ  r^  r   c                 óŠ   — 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__Ð  s3   � à�:‹:Ø�=‹=Ø×ÓØ×ÓØ�:‹:ðð 	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ò
òDò?ò!ò
ò
#òór   rÀ  c                   ó   — e Zd Zd„ Zd„ Zy)ÚParserSharedInputStatec                 ó2   — d | _         | j                  «        y r"   )rc  r  rµ   s    r   r2   zParserSharedInputState.__init__á  s   € ØˆŒ
Ø�
‰
�r   c                 ón   — d| _         d | _        | j                  r| j                  j                  «        y y r¬   )rt  ru  rc  r  rµ   s    r   r  zParserSharedInputState.resetå  s,   € ØˆŒØˆŒØ�:Š:Ø�J‰J×ÑÕð r   N)r6   r7   r8   r2   r  r   r   r   rÑ  rÑ  ß  s   „ òó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„ Z5y4)5ÚParserc                 ó¸   — d | _         d | _        d | _        i | _        d| _        d| _        |st        «       | _        y |d   }t        |t        «      sJ ‚|| _        y )NFr   )	r—   Ú	returnASTÚ
astFactoryÚtokenTypeToASTClassMapÚignoreInvalidDebugCallsr÷  rÑ  r  r(   )r4   r   rü  Úarg0s       r   r2   zParser.__init__ñ  sb   € ØˆŒØˆŒØˆŒØ&(ˆÔ#Ø',ˆÔ$ØˆŒÙÜ4Ó6ˆDŒOØØ�A‰wˆÜ˜$Ô5Ô6Ð6Ð6ØˆŒØr   c                 ó   — | j                   S r"   )rÙ  rµ   s    r   ÚgetTokenTypeToASTClassMapz Parser.getTokenTypeToASTClassMap   s   € Ø×*Ñ*Ð*r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r»  ÚaddMessageListener©r4   Úls     r   rß  zParser.addMessageListener  s   € Ø×+Ò+Ü˜$×1Ñ1Õ2ð ,r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r»  ÚaddParserListenerrà  s     r   rã  zParser.addParserListener  s   € Ø×,Ò,Ü˜$×0Ñ0Õ1ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r»  ÚaddParserMatchListenerrà  s     r   rå  zParser.addParserMatchListener  ó   € Ø×,Ò,Ü˜$×5Ñ5Õ6ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r»  ÚaddParserTokenListenerrà  s     r   rè  zParser.addParserTokenListener  ræ  r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r»  ÚaddSemanticPredicateListenerrà  s     r   rê  z#Parser.addSemanticPredicateListener  s   € Ø×,Ò,Ü˜$×;Ñ;Õ<ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r»  ÚaddSyntacticPredicateListenerrà  s     r   rì  z$Parser.addSyntacticPredicateListener  s   € Ø×,Ò,Ü˜$×<Ñ<Õ=ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r»  ÚaddTraceListenerrà  s     r   rî  zParser.addTraceListener  s   € Ø×,Ò,Ü˜$×/Ñ/Õ0ð -r   c                 ó   — t        «       ‚r"   rE  rµ   s    r   r9  zParser.consume   ó   € Ü!Ó#Ð#r   c                 óÜ   — | j                  d«      t        k7  rT| j                  d«      |k7  r?| j                  «        | j                  d«      t        k7  r| j                  d«      |k7  rŒ=y y y y r4  )rL  rÈ   r9  )r4   r    s     r   Ú_consumeUntil_typezParser._consumeUntil_type#  sT   € Ø�g‰g�a‹jœHÒ$¨¯©°«°yÒ)@Ø�L‰LŒNð �g‰g�a‹jœHÒ$¨¯©°«°yÔ)@Ð$Ð)@Ð$r   c                 ó  — | j                  d«      t        k7  rl|j                  | j                  d«      «      sK| j                  «        | j                  d«      t        k7  r"|j                  | j                  d«      «      sŒIy y y y r4  )rL  rÈ   r³  r9  ©r4   r}   s     r   Ú_consumeUntil_bitsetzParser._consumeUntil_bitset'  s\   € Ø�g‰g�a‹jœHÒ$¨S¯Z©Z¸¿¹À»
Ô-CØ�L‰LŒNð �g‰g�a‹jœHÒ$¨S¯Z©Z¸¿¹À»
Ö-CÐ$Ð-CÐ$r   c                 ój   — t        |t        «      r| j                  |«       y | j                  |«       y r"   )r(   r™   rò  rõ  r£  s     r   ÚconsumeUntilzParser.consumeUntil+  s(   € Ü�cœ#ÔØ×#Ñ# CÕ(à×%Ñ% cÕ*r   c                  ó   — y 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                 ó   — || _         y 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                   j                  j                  «       S r"   rA  rµ   s    r   rQ  zParser.markR  rB  r   c                 ó¸   — | j                  d«      |k7  r6t        | j                  | j                  d«      |d| j	                  «       «      ‚| j                  «        y rD  ©rL  r•   r—   rÊ  r`   r9  r
  s     r   Ú
_match_intzParser._match_intU  sK   € Ø�G‰G�A‹J˜!ŠOÜ*Ø�‰ §¡¨£
¨A¨u°d×6FÑ6FÓ6HóJð Jð �L‰L�Nr   c                 óÐ   — |j                  | j                  d«      «      s6t        | j                  | j	                  d«      |d| j                  «       «      ‚| j                  «        y rD  )r³  rL  r•   r—   rÊ  r`   r9  rE  s     r   Ú
_match_setzParser._match_set\  sP   € Ø—‘˜Ÿ™ ›Ô$Ü*Ø�‰˜tŸw™w q›z¨1¨e°T×5EÑ5EÓ5GóIð Ið �L‰L�Nr   c                 ó    — t        |t        «      r| j                  |«       y t        |t        «      r| j	                  |«       y t        d«      ‚)Nz0Parser.match requires integer ot BitSet argument)r(   r™   r  rz   r  rR   rô  s     r   rK  zParser.matchc  s@   € Ü�cœ#ÔØ�O‰O˜CÔ ØÜ�cœ&Ô!Ø�O‰O˜CÔ ØÜÐJÓKÐKr   c                 ó¸   — | j                  d«      |k(  r6t        | j                  | j                  d«      |d| j	                  «       «      ‚| j                  «        y rM  r  r
  s     r   rN  zParser.matchNotl  sK   € Ø�7‰7�1‹:˜Š?Ü*Ø�‰ §¡¨£
¨A¨t°T×5EÑ5EÓ5GóIð Ið �L‰L�Nr   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  ÚremoveMessageListenerrà  s     r   r  zParser.removeMessageListeners  s   € Ø×,Ò,Ü�t×1Ñ1Õ2ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  ÚremoveParserListenerrà  s     r   r  zParser.removeParserListenerw  s   € Ø×,Ò,Ü�t×0Ñ0Õ1ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  ÚremoveParserMatchListenerrà  s     r   r  z Parser.removeParserMatchListener{  ó   € Ø×,Ò,Ü�t×5Ñ5Õ6ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  ÚremoveParserTokenListenerrà  s     r   r   z Parser.removeParserTokenListener  r  r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  ÚremoveSemanticPredicateListenerrà  s     r   r"  z&Parser.removeSemanticPredicateListenerƒ  s   € Ø×,Ò,Ü�t×;Ñ;Õ<ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  Ú removeSyntacticPredicateListenerrà  s     r   r$  z'Parser.removeSyntacticPredicateListener‡  s   € Ø×,Ò,Ü�t×<Ñ<Õ=ð -r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  ÚremoveTraceListenerrà  s     r   r&  zParser.removeTraceListener‹  s   € Ø×,Ò,Ü�t×/Ñ/Õ0ð -r   c                 óT  — d}| j                  «       }|rd|z  |z   }t        |t        «      rW|j                  «       }|j	                  «       }|j                  «       }|dz   }t        ||||fz  t        j                  ¬«       y t        |t        |«      t        j                  ¬«       y )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©jÖ9ä�#”c˜!“f¤3§:¡:Ö.r   c                 óŠ   — | j                  «       }|rt        |›dt        |«      ›�«       y t        dt        |«      z  «       y )Nz
:warning: zwarning: %sr[  )r4   r>  r  s      r   r^  zParser.reportWarning�  s5   € Ø×ÑÓˆÙÜ¢a¬¨A¬Ð/Õ0ä�-¤3 q£6Ñ*Õ+r   c                 óN   — | j                   j                  j                  |«       y r"   ra  rb  s     r   rV  zParser.rewind¤  rd  r   c                 ó   — || _         y r"   rÿ  r  s     r   ÚsetASTFactoryzParser.setASTFactory§  ó	   € Øˆ�r   c                 ó:   — | j                   j                  |«       y r"   ©rØ  ÚsetASTNodeTyperf  s     r   ÚsetASTNodeClasszParser.setASTNodeClassª  s   € Ø�‰×&Ñ& rÕ*r   c                 ó&   — | j                  |«       y r"   ©r2  ©r4   ÚnodeTypes     r   r1  zParser.setASTNodeType­  ó   € Ø×Ñ˜XÕ&r   c                 óH   — | j                   st        | j                  «       y y r"   )rÚ  r¾  ÚsetDebugMode)r4   Ú	debugModes     r   r9  zParser.setDebugMode°  s   € Ø×,Ò,Ü�t×(Ñ(Õ)ð -r   c                 ó&   — || j                   _        y r"   r  r  s     r   rÑ   zParser.setFilename´  r  r   c                 ó   — || _         y r"   )rÚ  )r4   Úvalues     r   ÚsetIgnoreInvalidDebugCallsz!Parser.setIgnoreInvalidDebugCalls·  s
   € Ø',ˆÕ$r   c                 ó&   — || j                   _        y r"   r,  r
  s     r   ÚsetTokenBufferzParser.setTokenBufferº  s   € Ø !ˆ�‰Õr   c                 ó4   — t        d| j                  z  «       y rr  rs  rµ   s    r   rt  zParser.traceIndent½  ru  r   c                 óR   — | xj                   dz  c_         | j                  d|«       y ©Nr   ú> ©r÷  Útracerx  s     r   rz  zParser.traceInÀ  ó   € Ø�Š˜1Ñ�Ø�
‰
�4˜Õr   c                 óR   — | j                  d|«       | xj                  dz  c_        y ©Nú< r   ©rF  r÷  rx  s     r   r|  zParser.traceOutÄ  ó   € Ø�
‰
�4˜ÔØ�Š˜1ÑŽr   c                 óæ   — |sy |j                   s||_         nC|j                  s|j                   j                  |«       n|j                  j                  |«       ||_        |j	                  «        y r"   ©ÚrootÚchildÚsetFirstChildÚsetNextSiblingÚadvanceChildToEnd©r4   Ú
currentASTrP  s      r   ÚaddASTChildzParser.addASTChildÉ  óY   € ÙØØ�ŠØ#ˆJ�OØ×!Ò!Ø�O‰O×)Ñ)¨%Õ0à×Ñ×+Ñ+¨EÔ2Ø ˆ
ÔØ×$Ñ$Õ&r   c                 ó�   — |rD|j                  |j                  «       |j                  |_        |j                  «        ||_        y y r"   ©ÚaddChildrO  rP  rS  ©r4   rU  rO  s      r   ÚmakeASTRootzParser.makeASTRootÖ  ó9   € Ùà�M‰M˜*Ÿ/™/Ô*à)Ÿ™ˆJÔØ×(Ñ(Ô*à"ˆJ�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ò2ò7ò7ò=ò>ò1ò$òòò+òòòò(òò ò$òòò$ò$ò,òòòLòò3ò2ò7ò7ò=ò>ò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   }t        |t        «      rt        t        | �  «        || _        y t        |t        «      r't        t        | �  |«        | j                  dg|¢­Ž  y t        |t        «      r7t        t        | �  «        | j                  |«        | j                  dg|¢­Ž  y t        |t        «      rBt        t        | �  «        t        |«      }| j                  |«        | j                  dg|¢­Ž  y t        d«      ‚#  d}Y �ŒxY w)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œ3ÔÜ”)˜DÑ*Ô,ØˆDŒFØä�dÔ1Ô2Ü”)˜DÑ*¨4Ô0ØˆD�J‰J�qÐ˜$ÓØä�dœ;Ô'Ü”)˜DÑ*Ô,Ø×Ñ Ô%ØˆD�J‰J�qÐ˜$ÓØä�dœ;Ô'Ü”)˜DÑ*Ô,Ü" 4Ó(ˆHØ×Ñ Ô)ØˆD�J‰J�qÐ˜$ÓØô ð Jó Kð 	Køð7	Ø‹Dús   ƒD ÄDc                 óL   — | j                   j                  j                  «        y r"   )r  rc  r9  rµ   s    r   r9  zLLkParser.consume  s   € Ø�‰×Ñ×%Ñ%Õ'r   c                 óL   — | j                   j                  j                  |«      S r"   )r  rc  rL  rÍ  s     r   rL  zLLkParser.LA
  ó   € Ø�‰×$Ñ$×'Ñ'¨Ó*Ð*r   c                 óL   — | j                   j                  j                  |«      S r"   )r  rc  rÊ  rÍ  s     r   rÊ  zLLkParser.LT  re  r   c                 ó6   — 	 ||   | _         y #  d| _         Y y xY wr4  )rH  )r4   r  r   s      r   ra  zLLkParser.set_k  s    € ð	Ø˜%‘[ˆD�Føð	ØˆDŽFús   ‚
 �	c                 ó¢  — t        t        | «      «       | j                  «        d}| j                  j                  dkD  rd}t        ||z   |z   «       t        d| j                  dz   «      D ]V  }|dk7  rt        d«       | j                  |«      r | j                  |«      j                  «       }nd}t        d|›d|›�«       ŒX t        d	«       y )
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ÔØ×ÑÔØˆØ�?‰?×#Ñ# aÒ'Ø!ˆEÜˆr�E‰z˜EÑ!Ô#Ü˜˜$Ÿ&™& ™(Ó#ò 	*ˆAØ�AŠvÜ�d”Ø�w‰w�qŒzØ—G‘G˜A“J×&Ñ&Ó(‘à�Ý¢A¡aÐ(Õ)ð	*ô 	ˆd�r   c                 óR   — | xj                   dz  c_         | j                  d|«       y rC  rE  rx  s     r   rz  zLLkParser.traceIn'  rG  r   c                 óR   — | j                  d|«       | xj                  dz  c_        y 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òB(ò+ò+òòò"!ör   r_  c                   ó   — e Zd Zd„ Zy)ÚTreeParserSharedInputStatec                 ó   — d| _         y r¬   )rt  rµ   s    r   r2   z#TreeParserSharedInputState.__init__4  s	   € Øˆ�r   Nr5   r   r   r   ro  ro  3  s   „ ór   ro  c                   ór   — 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y)Ú
TreeParserc                 óx   — t        «       | _        d | _        g | _        d | _        t        «       | _        d| _        y r¬   )ro  r  Ú_retTreer—   r×  Ú
ASTFactoryrØ  r÷  )r4   r   rü  s      r   r2   zTreeParser.__init__=  s1   € Ü4Ó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	        | j                  «       ||d«      ‚t        |t        «      r/|j                  «       |k7  rt	        | j                  «       ||d«      ‚t        |t        «      r8|j                  |j                  «      st	        | j                  «       ||d«      ‚y y ©NF)r(   r™   rz   rX   r•   r
  rÞ   r³  )r4   r  r}   s      r   rK  zTreeParser.matchQ  s«   € Ü˜#œcÔ"¤j°´VÔ&<Ð<Ð<Ù�Aœ’LÜ*¨4×+=Ñ+=Ó+?ÀÀ3ÈÓNÐNä�cœ#Ô 1§9¡9£;°#Ò#5Ü*¨4×+=Ñ+=Ó+?ÀÀ3ÈÓNÐNä�cœ&Ô!¨#¯*©*°Q·Y±YÔ*?Ü*¨4×+=Ñ+=Ó+?ÀÀ3ÈÓNÐNð +@Ð!r   c                 óx   — |r|t         k(  s|j                  «       |k(  rt        | j                  «       ||d«      ‚y ©NT)rX   rÞ   r•   r
  )r4   r  Úttypes      r   rN  zTreeParser.matchNot\  s7   € Ù�Qœ'’\ q§y¡y£{°eÒ';Ü*¨4×+=Ñ+=Ó+?ÀÀEÈ4ÓPÐPð (<r   c                 ó<   — t        d|t        j                  ¬«       y )Nzerror:r(  )r   r  r)  )r4   Úexs     r   r\  zTreeParser.reportError`  s   € Üˆh�r¤§
¡
Ö+r   c                 ó   — t        d|«       y )Nzwarning:)r   r  s     r   r^  zTreeParser.reportWarningc  s   € Üˆj˜Õr   c                 ó   — || _         y r"   rÿ  r  s     r   r-  zTreeParser.setASTFactoryf  r.  r   c                 ó&   — | j                  |«       y r"   r4  r5  s     r   r1  zTreeParser.setASTNodeTypei  r7  r   c                 ó:   — | j                   j                  |«       y r"   r0  r5  s     r   r2  zTreeParser.setASTNodeClassl  s   € Ø�‰×&Ñ& xÕ0r   c                 ó4   — t        d| j                  z  «       y rr  rs  rµ   s    r   rt  zTreeParser.traceIndento  ru  r   c           	      óî   — | xj                   dz  c_         | j                  «        t        d|z   dz   t        |t	        |«      d«      z   dz   t        | j
                  j                  dkD  dd«      z   «       y )	Nr   rD  r-  ri  r/  r   ú
[guessing]r   )r÷  rt  r   r&   rE   r  rt  ©r4   ry  r  s      r   rz  zTreeParser.traceInr  sn   € Ø�Š˜1Ñ�Ø×ÑÔÜˆt�e‰|˜cÑ!Ü�Q”s˜1“v˜fÓ%ñ&Ø(+ñ,ä�T—_‘_×-Ñ-¨aÑ/°¸RÓ@ñAõ 	Cr   c           	      óî   — | j                  «        t        d|z   dz   t        |t        |«      d«      z   dz   t        | j                  j
                  dkD  dd«      z   «       | xj                  dz  c_        y )	NrJ  r-  ri  r/  r   r‡  r   r   )rt  r   r&   rE   r  rt  r÷  rˆ  s      r   r|  zTreeParser.traceOuty  sp   € Ø×ÑÔÜˆt�e‰|˜cÑ!Ü�Q”s˜1“v˜fÓ%ñ&Ø(+ñ,ä�T—_‘_×-Ñ-¨aÑ/°¸RÓ@ñAô 	Cð 	�Š˜1ÑŽr   c                 óæ   — |sy |j                   s||_         nC|j                  s|j                   j                  |«       n|j                  j                  |«       ||_        |j	                  «        y r"   rN  rT  s      r   rV  zTreeParser.addASTChild�  rW  r   c                 ó�   — |rD|j                  |j                  «       |j                  |_        |j                  «        ||_        y y 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  ;  sZ   „ òòòò$òò	OòQò,òòò'ò1ò%òCòò
'ó#r   rr  c                 óT   — | r%| j                   r| j                   } | j                   rŒ| S r"   ©Úright)Úasts    r   Ú	rightmostr�  œ  s#   € Ù
Ø�iŠiØ—)‘)ˆCð �i‹ià€Jr   c                 óø   — | rc|ra| j                  |«      syt        | j                  «       |j                  «       |«      sy| j                  «       } |j                  «       }| r|rŒat	        || |  xr | «      }|S r{  )ÚequalsÚcmptreeÚgetFirstChildÚgetNextSiblingr&   )r>  r  Úpartialr   s       r   r“  r“  ¢  sv   € Ù
‘à�x‰x˜Œ{Øô �q—‘Ó(¨¯©Ó):¸7ÔCØà×ÑÓˆØ×ÑÓˆñ ’ô 	ˆ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y)rP   c                  ó   — y r"   r   rµ   s    r   r2   zAST.__init__·  r}  r   c                  ó   — y r"   r   rÜ  s     r   rZ  zAST.addChildº  r}  r   c                  ó   — yr{  r   r
  s     r   r’  z
AST.equals½  ó   € Ør   c                  ó   — yr{  r   r
  s     r   Ú
equalsListzAST.equalsListÀ  r›  r   c                  ó   — yr{  r   r
  s     r   ÚequalsListPartialzAST.equalsListPartialÃ  r›  r   c                  ó   — yr{  r   r
  s     r   Ú
equalsTreezAST.equalsTreeÆ  r›  r   c                  ó   — yr{  r   r
  s     r   ÚequalsTreePartialzAST.equalsTreePartialÉ  r›  r   c                  ó   — y r"   r   )r4   Útrees     r   ÚfindAllzAST.findAllÌ  rÎ   r   c                  ó   — y 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                  ó   — yr<  r   rµ   s    r   rW   zAST.getTextØ  ó   € Ør   c                 ó   — t         S r"   )rŸ   rµ   s    r   rÞ   zAST.getTypeÛ  s   € ÜÐr   c                  ó   — yr¬   r   rµ   s    r   rU   zAST.getLineÞ  rË   r   c                  ó   — yr¬   r   rµ   s    r   rV   zAST.getColumná  rË   r   c                  ó   — yr¬   r   rµ   s    r   ÚgetNumberOfChildrenzAST.getNumberOfChildrenä  rË   r   c                  ó   — y r"   r   r
  s     r   Ú
initializezAST.initializeç  r}  r   c                  ó   — y r"   r   rÜ  s     r   rQ  zAST.setFirstChildê  r}  r   c                  ó   — y r"   r   ©r4   r=  s     r   rR  zAST.setNextSiblingí  r}  r   c                  ó   — y r"   r   rÖ   s     r   r×   zAST.setTextð  r}  r   c                  ó   — y r"   r   ©r4   r~  s     r   rá   zAST.setTypeó  r}  r   c                 ó$   — | j                  «        y r"   ©rW   rµ   s    r   rç   zAST.toStringö  s   € Ø�‰�r   c                 ó"   — | j                  «       S r"   r¼  rµ   s    r   ÚtoStringListzAST.toStringListû  ó   € Ø�|‰|‹~Ðr   c                 ó"   — | j                  «       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y)ÚASTNULLTypec                 ó.   — t         j                  | «       y r"   )rP   r2   rµ   s    r   r2   zASTNULLType.__init__	  s   € Ü�‰�TÔØr   c                  ó   — y)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Ã  	  s   „ òòó#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!y)ÚBaseASTFNc                 ó    — d | _         d | _        y r"   ©ÚdownrŽ  rµ   s    r   r2   zBaseAST.__init__	  s   € ØˆŒ	Øˆ�
r   c                 ór   — |r5t        | j                  «      }|r||_        y | j                  rJ ‚|| _        y y r"   )r�  rË  rŽ  )r4   rO   r  s      r   rZ  zBaseAST.addChild	  s5   € ÙÜ˜$Ÿ)™)Ó$ˆAÙØ�•àŸ9š9Ð$�}Ø �•	ð r   c                 óN   — | j                   }d}|r|dz  }|j                  }|rŒ|S r\  rÊ  )r4   r  r=  s      r   r²  zBaseAST.getNumberOfChildren(	  s1   € Ø�I‰IˆØˆÙØ�‰FˆAØ—‘ˆAò ð ˆr   c                 ó:  — | }|r—|xr |j                  |«      }|r|j                  |«       n)| xr |j                  |«      }|r|j                  |«       |j                  «       r!|j                  «       j	                  |||«       |j                  «       }|rŒ–y y r"   )r£  rD   r¡  r”  ÚdoWorkForFindAllr•  )r4   rµ  ÚtargetÚpartialMatchÚsiblingrP  rQ  s          r   rÏ  zBaseAST.doWorkForFindAll0	  s‘   € ØˆáØÒC '×";Ñ";¸FÓ"CˆBÙØ—‘˜Õ!à%Ð%ÒD¨'×*<Ñ*<¸VÓ*D�ÙØ—H‘H˜WÔ%ð ×$Ñ$Ô&Ø×%Ñ%Ó'×8Ñ8¸¸6À,ÔOà×,Ñ,Ó.ˆGô r   c                 ó�   — |sy| j                  «       |j                  «       k(  xr! | j                  «       |j                  «       k(  S r{  )rW   rÞ   r
  s     r   r’  zBaseAST.equalsC	  s5   € ÙØØ�|‰|‹~ §¡£Ñ,Ò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                 ó|   — | j                  |«      xr* t        | j                  «       |j                  «       d¬«      S rÕ  ©r’  r“  r”  r
  s     r   r¡  zBaseAST.equalsTreeW	  s5   € Ø�{‰{˜1‹~ò OÜ�t×)Ñ)Ó+¨Q¯_©_Ó->ÈÔNð	Or   c                 ó‚   — |sy| j                  |«      xr* t        | j                  «       |j                  «       d¬«      S rÙ  rÛ  r
  s     r   r£  zBaseAST.equalsTreePartial^	  s>   € ÙØØ�{‰{˜1‹~ò B¤'Ø×ÑÓ §¡Ó!2¸Dô#Bð 	Br   c                 ó6   — g }|sy | j                  ||d«       |S r{  ©rÏ  )r4   rÐ  Úrootss      r   r¦  zBaseAST.findAllg	  s&   € Øˆñ Øà×Ñ˜e V¨UÔ3Øˆr   c                 ó6   — g }|sy | j                  ||d«       |S r}  rÞ  )r4   Úsubrß  s      r   r©  zBaseAST.findAllPartialt	  s&   € Øˆñ Øà×Ñ˜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                  ó   — yr<  r   rµ   s    r   rW   zBaseAST.getText‡	  r­  r   c                  ó   — yr¬   r   rµ   s    r   rÞ   zBaseAST.getType‹	  rË   r   c                  ó   — yr¬   r   rµ   s    r   rU   zBaseAST.getLineŽ	  rË   r   c                  ó   — yr¬   r   rµ   s    r   rV   zBaseAST.getColumn‘	  rË   r   c                 ó   — d | _         y r"   rã  rµ   s    r   ÚremoveChildrenzBaseAST.removeChildren•	  s	   € Øˆ�	r   c                 ó   — || _         y r"   rã  rÜ  s     r   rQ  zBaseAST.setFirstChild˜	  s	   € Øˆ�	r   c                 ó   — || _         y r"   r�  r·  s     r   rR  zBaseAST.setNextSibling›	  s	   € Øˆ�
r   c                  ó   — y r"   r   rÖ   s     r   r×   zBaseAST.setTextŸ	  r}  r   c                  ó   — y r"   r   rº  s     r   rá   zBaseAST.setType£	  r}  r   c                 ó   — | }|}y 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                 ó"   — | j                  «       S r"   r¼  rµ   s    r   rç   zBaseAST.toString±	  r¿  r   c                 óp   — | j                  «       }| j                  «       }|r||j                  «       z  }|S r"   )rÁ  r•  r¾  )r4   ÚtsÚsibs      r   r¾  zBaseAST.toStringListµ	  s9   € Ø×ÑÓ ˆØ×!Ñ!Ó#ˆÙØ�#×"Ñ"Ó$Ñ$ˆBØˆ	r   c                 ó˜   — d}| j                  «       }|r|dz  }|d| j                  «       z   z  }|r||j                  «       z  }|dz  }|S )Nr   z (rC   z ))r”  rç   r¾  )r4   r÷  Úkids      r   rÁ  zBaseAST.toStringTree¿	  sZ   € ØˆØ× Ñ Ó"ˆÙØ�$‰JˆBØ
ˆc�D—M‘M“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òBòòòòòòòòòòòòòòñ ".Ð.HÓ!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 )
Ú	CommonASTc                 óŒ   •— t         t        | �  «        t        | _        d| _        d| _        d| _        | j                  |«       y )NrÄ   r   )	rb  rý  r2   rŸ   r~  rZ   r>   r?   r´  )r4   rN   re  s     €r   r2   zCommonAST.__init__Ð	  s8   ø€ ÜŒ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y |d   }t        |t        «      r(|d   }| j                  |«       | j                  |«       y t        |t        «      st        |t
        «      ri| j                  |j                  «       «       | j                  |j                  «       «       |j                  «       | _	        |j                  «       | _        y y r\  )r(   r™   rá   r×   rP   rQ   rW   rÞ   rU   r>   rV   r?   )r4   r   rÛ  r  s       r   r´  zCommonAST.initializeé	  s™   € ÙØà�A‰wˆä�dœ3ÔØ˜‘7ˆDØ�L‰L˜ÔØ�L‰L˜ÔØä�dœ3Ô¤:¨d´5Ô#9Ø�L‰L˜Ÿ™›Ô(Ø�L‰L˜Ÿ™›Ô(ØŸ™›ˆDŒIØŸ.™.Ó*ˆDŒKØð $:r   c                 ó,   — t        |«      sJ ‚|| _        y r"   )r+   rZ   )r4   Útext_s     r   r×   zCommonAST.setTextý	  s   € Ü˜eÔ$Ð$Ð$Øˆ�	r   c                 ó6   — t        |t        «      sJ ‚|| _        y 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y)ÚCommonASTWithHiddenTokensc                 óL   — t        j                  | g|¢­Ž  d | _        d | _        y r"   )rý  r2   rÿ   r   r3   s     r   r2   z"CommonASTWithHiddenTokens.__init__
  s%   € Ü×Ñ˜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|¢­Ž  |rZt        |d   t        «      rFt        |d   t        «      sJ ‚|d   j                  «       | _        |d   j                  «       | _        y y y r¬   )	rý  r´  r(   rQ   rý   r  rÿ   r  r   r3   s     r   r´  z$CommonASTWithHiddenTokens.initialize
  sk   € Ü×Ñ˜TÐ( 4Ó(Ù”J˜t A™w¤uÔ-Ü˜d 1™gÔ&=Ô>Ð>Ð>Ø $ Q¡× 7Ñ 7Ó 9ˆDÔØ $ Q¡× 6Ñ 6Ó 8ˆDÕð .ˆ4r   N)r6   r7   r8   r2   r  r  r´  r   r   r   r	  r	  

  s   „ ò!ò
 ò!ó9r   r	  c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ ZeZeZy)ÚASTPairc                 ó    — d | _         d | _        y r"   )rO  rP  rµ   s    r   r2   zASTPair.__init__#
  s   € ØˆŒ	Øˆ�
r   c                 óÈ   — | j                   rV| j                   j                  «       r;| j                   j                  «       | _         | j                   j                  «       rŒ:y y y r"   )rP  r•  rµ   s    r   rS  zASTPair.advanceChildToEnd(
  sD   € Ø�:Š:Ø—*‘*×+Ñ+Ô-Ø!ŸZ™Z×6Ñ6Ó8�”
ð —*‘*×+Ñ+×-ð r   c                 ó^   — t        «       }| j                  |_        | j                  |_        |S r"   )r  rO  rP  )r4   Útmps     r   ÚcopyzASTPair.copy.
  s$   € Ü‹iˆØ—9‘9ˆŒØ—J‘JˆŒ	Øˆ
r   c                 ó¼   — t        t         d| j                  j                  «       «      }t        t         d| j                  j                  «       «      }d|›d|›d�S )Nri  ú[r.  ú])r&   rO  rW   rP  )r4   r   r„   s      r   rç   zASTPair.toString4
  sG   € Ü”t�8˜F 4§9¡9×#4Ñ#4Ó#6Ó7ˆÜ”u�9˜V D§J¡J×$6Ñ$6Ó$8Ó9‰ÚšaÐ Ð r   N)	r6   r7   r8   r2   rS  r  rç   rH   rJ   r   r   r   r  r  "
  s"   „ òò
9òò!ð
 €GØ�Hr   r  c                   ó`   — 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y)ru  Nc                 ó6   — d | _         t        ||d «      | _        y r"   )Ú_classr&   Ú	_classmap)r4   Útables     r   r2   zASTFactory.__init__B
  s   € ØˆŒÜ  e¨DÓ1ˆ�r   c                 óÀ  — |s| j                  t        «      S |d   }d }d }	 |d   }|d   }t        |t        «      rE|sC| j	                  |«      }| j                  |«      }|r|j                  |t        ||d«      «       |S t        |t        «      r)|r'| j                  |«      }|r|j                  ||«       |S t        |t        «      r4| j                  |j                  «       «      }|r|j                  |«       |S t        |t        «      rJ|sH|j                  «       }t        |t        «      sJ ‚| j                  |«      }|r|j                  |«       |S t        |t        «      rD|rBt        |t        «      sJ ‚t        |t        «      sJ ‚ ||«      }|rt        |t        «      sJ ‚|S t        |t        «      r |«       }t        |t        «      sJ ‚|S y #  Y �Œ±xY w)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œ3Ô©à×#Ñ# DÓ)ˆAØ—‘˜A“ˆAÙØ—‘˜T¤6¨$¨t°BÓ#7Ô8ØˆHô �dœ3Ô¡DØ—‘˜DÓ!ˆAÙØ—‘˜T $Ô'ØˆHô �dœ3ÔØ—‘˜DŸL™L›NÓ+ˆAÙØ—‘˜TÔ"ØˆHô �dœ5Ô!©$Ø—L‘L“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   ¢
G ÇGc                 ó`   — |sy t        |t        «      sJ ‚t        |t        «      sJ ‚|| _        y r"   )r(   rÃ   r   rP   r  )r4   Ú	classNames     r   r2  zASTFactory.setASTNodeClass†
  s/   € ÙØÜ˜)¤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                 ó   — || _         y r"   r'  )r4   Úamaps     r   ÚsetTokenTypeToASTClassMapz$ASTFactory.setTokenTypeToASTClassMap˜
  s	   € Øˆ�r   c                 ó:   — dd l }t        ||j                  ¬«       y )Nr   r(  )r  r   r)  )r4   rl  r  s      r   r    zASTFactory.error›
  s   € ÛÜˆa�c—j‘jÖ!r   c                 óÀ   — | j                   si | _         |s	 | j                   |= yt        |t        «      sJ ‚t        |t        «      sJ ‚|| j                   |<   y#  Y yxY w)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áðØ—N‘N 9Ñ-ô ˜i¬Ô-Ð-Ð-Ü˜i¬Ô,Ð,Ð,à(1ˆD�N‰N˜9Ò%øðÙús   —A ÁAc                 óŽ   — | j                   r	 | j                   |   }|r|S 	 | j                  r| j                  S t        S #  Y Œ"xY w)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µ
  sP   € ð �>Š>ðØ—N‘N 9Ñ-�ÙØ�Hð ð
 �;Š;Ø—;‘;Ðô ÐøðÙús   ŽA  Á A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
  sM   „ ó2ò=ó@ ð %€Nòò
òò"ò2ò,ò0òòð &�Gr   ru  c                   ó   — e Zd Zd„ Zd„ Zy)Ú
ASTVisitorc                  ó   — y r"   r   r3   s     r   r2   zASTVisitor.__init__â
  r}  r   c                  ó   — y r"   r   )r4   r�  s     r   ÚvisitzASTVisitor.visitå
  r}  r   N)r6   r7   r8   r2   r;  r   r   r   r8  r8  á
  s   „ òór   r8  c                  óö  — | sy t        dt        | «      «      D ]  }| |   }|sŒt        |t        «      rŒJ ‚ | d   }d }|r|j	                  d «       t        dt        | «      «      D ]�  }| |   sŒ	|s| |   x}}nK|s%|j	                  | |   «       |j                  «       }n$|j                  | |   «       |j                  «       }|j                  «       sŒo|j                  «       }|j                  «       rŒ!Œ‘ |S r\  )r   r@   r(   rP   rQ  r”  rR  r•  )Únodesr“   rO   rO  Útails        r   Úmaker?  ð
  s  € ÙØä�A”c˜%“jÓ!ò (ˆØ�Q‰xˆÚÜ˜d¤3Õ'Ð'Ð'ð(ð
 �‰8€DØ€DÙØ×Ñ˜4Ô ä�A”c˜%“jÓ!ò )ˆØ�QŠxØÙØ ™(Ð"ˆD‘4ÙØ×Ñ˜u Q™xÔ(Ø×%Ñ%Ó'‰Dà×Ñ  a¡Ô)Ø×&Ñ&Ó(ˆDð ×!Ñ!Õ#Ø×&Ñ&Ó(ˆDð ×!Ñ!Ö#ð)ð €Kr   c                 ó€   — | sy |r|j                  | j                  «      }nt        d«      ‚|j                  | «       |S )Nz)dup function requires ASTFactory argument)r  re  rR   r´  )r  ÚfactoryÚdup_ts      r   r0  r0    s<   € ÙØáØ—‘˜qŸ{™{Ó+‰äÐCÓDÐDØ	×Ñ�QÔØ€Lr   c                 ó¢   — t        | |«      }|}| r>| j                  «       } |j                  t        | |«      «       |j                  «       }| rŒ>|S r"   )r5  r•  rR  )r  rA  ÚresultÚnts       r   r2  r2    sS   € Ü�Q�wÓ€FØ	€BÙ
à×ÑÓˆØ
×Ñœ' ! GÓ,Ô-Ø×ÑÓ ˆò	 ð
 €Mr   c                 ót   — t        | |«      }| r)|j                  t        | j                  «       |«      «       |S r"   )r0  rQ  r2  r”  )r  rA  rD  s      r   r5  r5  $  s1   € Ü��7‹^€FÙØ×ÑœW Q§_¡_Ó%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     s§  ðÝ %óX ç 7Ó 7ð €Ø€Ø€Ø€ØÐ Ø€ð €òò,òò"ò
	ô(�Yô (ô˜>ô ô>Ð/ô ô8 Ð"6ô  ôF3Ð,ô 3ônÐ2ô nôbpÐ3ô pôf-˜>ô -ô	Ð1ô 	ôÐ&:ô ô 3Ð 4ô 3ô-˜.ô -ô	Ð/ô 	ô	ˆyô 	ôKˆFô Kñ\ ˜\°Ô<€„àˆzÒÙ	ˆ,ÔØ�‰€AÙ	ˆ!„Hô<�%ô <ð~ ˆzÒÙ‹€AÙ	ˆ!„HÙ˜  {¸Ô;€AÙ	ˆ!„HÙ‹€AØ‡I�IˆaƒL×Ñ˜2Ó×&Ñ& {Ó3×;Ñ;¸AÔ>Ù	ˆ!„HÙ	ˆ!�)‰)‹+ÔÙ	ˆ!�+‰+‹-ÔÙ	ˆ!�)‰)‹+ÔÙ	ˆ!�)‰)‹+Ôô˜kô ô. ˆFô  ô6O#�&ô O#ôj(+�ô (+ôb ˜Fô  ô6)�&ô )ô˜&ô ô$0:˜+ô 0:ôl˜[ô ô6LÐ#9ô L÷d0ñ 0ô|ˆVô ô<w�+ô w÷zñ ô.]ˆVô ]òHò
ô>�&ô >ôH
˜Vô 
ô o#ˆVô o#ôjI�ô Iô^ ô ô[#�ô [#òBòô(Iˆ&ô Iô`	#�#ô 	#ô rˆcô rôr5�ô 5ôv9 	ô 9ô0ˆfô ô>Z&�ô Z&ô@�ô ñ ‹-€òò>	òór   