ó
    Òòÿh@  ã                   óî   • S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  S SKJr  S SKJrJr  S S	KJrJr  S S
KJr  S SKJr  S SKJrJrJr  SrSr " S S\5      r " S S\5      r  " S S\!5      r"g)é    )ÚCommonTokenStream)ÚInputStream)ÚParserRuleContext)ÚLexer)ÚListTokenSource)ÚToken)ÚBailErrorStrategy)ÚRecognitionExceptionÚParseCancellationException)ÚTagChunkÚ	TextChunk)ÚRuleTagToken)ÚTokenTagToken)Ú	ParseTreeÚTerminalNodeÚRuleNodeNc                   ó0   ^ • \ rS rSrS\4U 4S jjrSrU =r$ )ÚCannotInvokeStartRuleéQ   Úec                 ó$   >• [         TU ]  U5        g ©N)ÚsuperÚ__init__)Úselfr   Ú	__class__s     €Ú`/home/mande/repo/quber/.venv/lib/python3.13/site-packages/antlr4/tree/ParseTreePatternMatcher.pyr   ÚCannotInvokeStartRule.__init__S   s   ø€ Ü‰Ñ˜Õó    © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú	Exceptionr   Ú__static_attributes__Ú__classcell__)r   s   @r   r   r   Q   s   ø† ð˜÷ õ r   r   c                   ó   • \ rS rSrSrg)Ú"StartRuleDoesNotConsumeFullPatternéV   r    N)r!   r"   r#   r$   r&   r    r   r   r)   r)   V   s   † âr   r)   c                   óè   • \ rS rSrSrS\S\4S jrS\S\S\4S	 jr	S
\
S\S\4S jrS
\
S\4S jrS
\
S\S\4S jrS
\
S\4S jrS\S\4S jrS
\
S\
S\4S jrS rS
\
4S jrS\4S jrS\4S jrSrg)ÚParseTreePatternMatcheré[   ©ÚlexerÚparserÚstartÚstopÚescaper/   r0   c                 óF   • Xl         X l        SU l        SU l        SU l        g )NÚ<Ú>Ú\r.   )r   r/   r0   s      r   r   Ú ParseTreePatternMatcher.__init__b   s!   € ØŒ
ØŒØˆŒ
ØˆŒ	Øˆ�r   r1   r2   Ú
escapeLeftc                 óœ   • Ub  [        U5      S:X  a  [        S5      eUb  [        U5      S:X  a  [        S5      eXl        X l        X0l        g )Nr   zstart cannot be null or emptyzstop cannot be null or empty)Úlenr%   r1   r2   r3   )r   r1   r2   r9   s       r   ÚsetDelimitersÚ%ParseTreePatternMatcher.setDelimiterss   sG   € Ø‰=œC ›J¨›MÜÐ;Ó<Ð<Ø‰<œ3˜t›9 a›<ÜÐ:Ó;Ð;ØŒ
ØŒ	Ø �r   ÚtreeÚpatternÚpatternRuleIndexc                 óF   • U R                  X#5      nU R                  X5      $ r   )ÚcompileTreePatternÚmatches©r   r>   r?   r@   Úps        r   ÚmatchesRuleIndexÚ(ParseTreePatternMatcher.matchesRuleIndex}   s!   € Ø×#Ñ# GÓ>ˆØ�|‰|˜DÓ$Ð$r   c                 óR   • U R                  XR                  [        5       5      nUS L $ r   )Ú	matchImplÚpatternTreeÚdict)r   r>   r?   ÚmismatchedNodes       r   ÚmatchesPatternÚ&ParseTreePatternMatcher.matchesPattern„   s%   € ØŸ™¨×.AÑ.AÄ4Ã6ÓJˆØ Ð%Ð%r   c                 óF   • U R                  X#5      nU R                  X5      $ r   )rB   ÚmatchPatternrD   s        r   ÚmatchRuleIndexÚ&ParseTreePatternMatcher.matchRuleIndex�   s#   € Ø×#Ñ# GÓ>ˆØ× Ñ  Ó)Ð)r   c                 ól   • [        5       nU R                  XR                  U5      nSSKJn  U" XX45      $ )Nr   )ÚParseTreeMatch)rK   rI   rJ   Úantlr4.tree.ParseTreeMatchrT   )r   r>   r?   ÚlabelsrL   rT   s         r   rP   Ú$ParseTreePatternMatcher.matchPattern—   s/   € Ü“ˆØŸ™¨×.AÑ.AÀ6ÓJˆÝ=Ù˜d¨VÓDÐDr   c                 óx  • U R                  U5      n[        U5      n[        U5      nSSKJn  U" U R
                  R                  U R
                  R                  U R
                  R                  U R
                  R                  5       U5      nS n UR                  [        5       5        UR                  U5      nUR%                  S5      [&        R(                  :w  a
  [+        5       eSSKJn
  U
" XX(5      $ ! [         a  n	U	R                  eS n	A	f[         a  n	U	eS n	A	f[          a  n	[#        U	5      eS n	A	ff = f)Nr   )ÚParserInterpreteré   )ÚParseTreePattern)Útokenizer   r   Úantlr4.ParserInterpreterrY   r0   ÚgrammarFileNameÚ
tokenNamesÚ	ruleNamesÚgetATNWithBypassAltsÚsetErrorHandlerr	   Úparser   Úcauser
   r%   r   ÚLAr   ÚEOFr)   Úantlr4.tree.ParseTreePatternr[   )r   r?   r@   Ú	tokenListÚtokenSrcÚtokensrY   ÚparserInterpr>   r   r[   s              r   rB   Ú*ParseTreePatternMatcher.compileTreePattern¡   s  € Ø—M‘M 'Ó*ˆ	Ü" 9Ó-ˆÜ" 8Ó,ˆÝ>Ù(¨¯©×)DÑ)DÀdÇkÁk×F\ÑF\Ø $§¡× 5Ñ 5°t·{±{×7WÑ7WÓ7YÐZ`óbˆàˆð	+Ø×(Ñ(Ô):Ó)<Ô=Ø×%Ñ%Ð&6Ó7ˆDð �9‰9�Q‹<œŸ™Ó"Ü4Ó6Ð6åAÙ Ð/?ÓFÐFøô *ó 	Ø—'‘'ˆMûÜ#ó 	ØˆGûÜó 	+Ü'¨Ó*Ð*ûð	+ús0   Â*C7 Ã7
D9ÄDÄD9ÄDÄD9Ä)D4Ä4D9rJ   rV   c                 óÈ  • Uc  [        S5      eUc  [        S5      e[        U[        5      (       aê  [        U[        5      (       aÕ  S nUR                  R                  UR                  R                  :X  až  [        UR                  [
        5      (       aS  UR                  nU R                  X5R                  U5        UR                  b  U R                  X5R                  U5        U$ UR                  5       UR                  5       :X  a   U$ Uc  UnU$ Uc  UnU$ [        U[        5      (       Ga0  [        U[        5      (       Ga  S nU R                  U5      nUb~  S nUR                  R                  UR                  R                  :X  aG  U R                  X6R                  U5        UR                  b  U R                  X6R                  U5        U$ Uc  UnU$ UR                  5       UR                  5       :w  a  Uc  UnU$ UR                  5       n[!        SU5       H;  n	U R#                  UR%                  U	5      UR%                  U	5      U5      n
U
c  M9  U
s  $    U$ U$ )Nztree cannot be nullzpatternTree cannot be nullr   )r%   Ú
isinstancer   ÚsymbolÚtyper   ÚmapÚ	tokenNameÚlabelÚgetTextr   ÚgetRuleTagTokenÚruleContextÚ	ruleIndexÚruleNameÚgetChildCountÚrangerI   ÚgetChild)r   r>   rJ   rV   rL   ÚtokenTagTokenÚruleTagTokenÚmÚnÚiÚ
childMatchs              r   rI   Ú!ParseTreePatternMatcher.matchImplÃ   sA  € Ø‰<ÜÐ1Ó2Ð2ØÑÜÐ8Ó9Ð9ô �dœL×)Ñ)¬j¸Äl×.TÑ.TØ!ˆNà�{‰{×Ñ ;×#5Ñ#5×#:Ñ#:Ó:Ü˜{×1Ñ1´=×BÑBØ$/×$6Ñ$6�Mà—H‘H˜V×%<Ñ%<¸dÔCØ$×*Ñ*Ñ6ØŸ™ ×)<Ñ)<¸dÔCð "Ð!ð —\‘\“^ [×%8Ñ%8Ó%:Ó:àð "Ð!ð &Ñ-Ø)-˜ð
 "Ð!ð "Ñ)Ø%)�Nà!Ð!ä�dÔ-×.Ò.´:¸kÔK\×3]Ò3]Ø!ˆNà×/Ñ/°Ó<ˆLØÑ'Ø�Ø×#Ñ#×-Ñ-°×1HÑ1H×1RÑ1RÓRà—H‘H˜V×%:Ñ%:¸DÔAØ#×)Ñ)Ñ5ØŸ™ ×);Ñ);¸TÔBð
 &Ð%ð &Ñ-Ø)-˜à%Ð%ð ×!Ñ!Ó# [×%>Ñ%>Ó%@Ó@Ø!Ñ)Ø%)�NØ%Ð%à×"Ñ"Ó$ˆAÜ˜1˜a–[�Ø!Ÿ^™^¨D¯M©M¸!Ó,<¸k×>RÑ>RÐSTÓ>UÐW]Ó^�
ØÓ)Ø%Ò%ñ !ð
 "Ð!ð ˆr   c                 ól   • UR                  US 5      nUc  [        5       nXAU'   UR                  U5        g r   )ÚgetÚlistÚappend)r   rV   rs   r>   Úvs        r   rq   ÚParseTreePatternMatcher.map  s0   € Ø�J‰J�u˜dÓ#ˆØ‰9Ü“ˆAØ�5‰MØ	�‰��r   c                 ó  • [        U[        5      (       at  UR                  5       S:X  a`  [        UR                  S5      [        5      (       a<  UR                  S5      n[        UR
                  [        5      (       a  UR
                  $ g )NrZ   r   )rn   r   ry   r{   r   ro   r   )r   r>   Úcs      r   ru   Ú'ParseTreePatternMatcher.getRuleTagToken  s`   € Ü�tœX×'Ñ'Ø×!Ñ!Ó# QÓ&¬:°d·m±mÀAÓ6FÌ×+VÑ+VØ—M‘M !Ó$�Ü˜qŸx™x¬×7Ñ7ØŸ8™8�OØr   c                 ó4  • U R                  U5      n[        5       nU GHu  n[        U[        5      (       Ga§  UR                  S   R                  5       (       a‘  U R                  R                  UR                  5      nU[        R                  :X  a'  [        S[        UR                  5      -   S-   U-   5      eUR                  [        UR                  XTR                  5      5        MÍ  UR                  S   R                  5       (       a«  U R                  R!                  UR                  5      nUS:X  a'  [        S[        UR                  5      -   S-   U-   5      eU R                  R#                  5       R$                  U   nUR                  ['        UR                  XtR                  5      5        GMš  [        S[        UR                  5      -   S-   U-   5      eU R(                  R+                  [-        UR.                  5      5        U R(                  R1                  5       nUR2                  [        R4                  :w  d  GM*  UR                  U5        U R(                  R1                  5       nUR2                  [        R4                  :w  a  MK  GMx     U$ )Nr   zUnknown token z in pattern: éÿÿÿÿzUnknown rule zinvalid tag: )Úsplitr…   rn   r   ÚtagÚisupperr0   ÚgetTokenTyper   ÚINVALID_TYPEr%   Ústrr†   r   rs   ÚislowerÚgetRuleIndexra   ÚruleToTokenTyper   r/   ÚsetInputStreamr   ÚtextÚ	nextTokenrp   rf   )	r   r?   Úchunksrj   ÚchunkÚttyperw   ÚruleImaginaryTokenTypeÚts	            r   r\   Ú ParseTreePatternMatcher.tokenize  sÜ  € à—‘˜GÓ$ˆô “ˆÜˆEÜ˜5¤(×,Ò,à—9‘9˜Q‘<×'Ñ'×)Ñ)Ø ŸK™K×4Ñ4°U·Y±YÓ?�EØœe×0Ñ0Ó0Ü'Ð(8¼3¸u¿y¹y»>Ñ(IÈOÑ([Ð^eÑ(eÓfÐfØ—M‘M¤-°·	±	¸5Ç+Á+Ó"NÖOØ—Y‘Y˜q‘\×)Ñ)×+Ñ+Ø $§¡× 8Ñ 8¸¿¹Ó C�IØ  "“}Ü'¨¼#¸e¿i¹i».Ñ(HÈ?Ñ(ZÐ]dÑ(dÓeÐeØ-1¯[©[×-MÑ-MÓ-O×-_Ñ-_Ð`iÑ-jÐ*Ø—M‘M¤,¨u¯y©yÐ:P×R]ÑR]Ó"^×_ä# O´c¸%¿)¹)³nÑ$DÀÑ$VÐY`Ñ$`ÓaÐaà—
‘
×)Ñ)¬+°e·j±jÓ*AÔBØ—J‘J×(Ñ(Ó*�Ø—f‘fœeŸi™iÖ'Ø—M‘M !Ô$ØŸ
™
×,Ñ,Ó.�Að —f‘fœeŸi™i×'Ð'ñ' ð, ˆr   c                 óÔ  • Sn[        U5      n[        5       n[        5       n[        5       nX#:  GaU  X!R                  U R                  U R                  -   U5      :X  a/  U[        U R                  5      [        U R                  5      -   -  nOòX!R                  U R                  U R
                  -   U5      :X  a/  U[        U R                  5      [        U R
                  5      -   -  nO—X!R                  U R                  U5      :X  a*  UR                  U5        U[        U R                  5      -  nONX!R                  U R
                  U5      :X  a*  UR                  U5        U[        U R
                  5      -  nOUS-  nX#:  a  GMU  [        U5      nU[        U5      :”  a  [        SU-   5      eU[        U5      :  a  [        SU-   5      e[        SU5       H  nXX   Xh   :¼  d  M  [        SU-   5      e   US:X  a  UR                  [        U5      5        US:”  a+  US   S:”  a"  USUS    n	UR                  [        U	5      5        [        SU5       H¼  nXU   [        U R                  5      -   Xh    n
U
nS nU
R                  S5      nUS:¼  a  U
SU nX­S-   [        U
5       nUR                  [        XË5      5        US-   [        U5      :  d  M€  XU   [        U R
                  5      -   XXS-       n	UR                  [        U	5      5        M¾     US:”  a@  XgS-
     [        U R
                  5      -   nXã:  a  XU n	UR                  [        U	5      5        [        S[        U5      5       Hu  nXH   n[        U[        5      (       d  M  UR                  R                  U R                  S5      n[        U5      [        UR                  5      :  d  Mh  [        U5      XH'   Mw     U$ )Nr   rZ   zunterminated tag in pattern: zmissing start tag in pattern: z(tag delimiters out of order in pattern: Ú:Ú )r;   r…   Úfindr3   r1   r2   r†   r%   rz   r   Úaddr   rn   r˜   Úreplace)r   r?   rE   r   rš   ÚstartsÚstopsÚntr€   r˜   r�   ÚruleOrTokenrs   ÚcolonÚafterLastTagrŠ   Ú	unescapeds                    r   rŽ   ÚParseTreePatternMatcher.split2  s;  € ØˆÜ�‹LˆÜ“ˆä“ˆÜ“ˆØŒeØ—L‘L §¡¨t¯z©zÑ!9¸1Ó=Ó=Ø”S˜Ÿ™Ó%¬¨D¯J©J«Ñ7Ñ7‘Ø—l‘l 4§;¡;°·±Ñ#:¸AÓ>Ó>Ø”S˜Ÿ™Ó%¬¨D¯I©I«Ñ6Ñ6‘Ø—l‘l 4§:¡:¨qÓ1Ó1Ø—‘˜aÔ Ø”S˜Ÿ™“_Ñ$‘Ø—l‘l 4§9¡9¨aÓ0Ó0Ø—‘˜Q”Ø”S˜Ÿ™“^Ñ#‘à�Q‘�ð Žeô �‹[ˆà”�E“
‹?ÜÐ;¸gÑEÓFÐFØ”�E“
‹?ÜÐ<¸wÑFÓGÐGä�q˜"–ˆAØ‰y˜E™HÕ$ÜÐ JÈWÑ TÓUÐUñ ð
 ˆq‹5Ø�M‰Mœ) GÓ,Ô-àˆa‹4�F˜1‘I˜a“KØ˜1˜V A™YÐ'ˆDØ�J‰J”y “Ô'ä�q˜"–ˆAà ™)¤c¨$¯*©*£oÑ5¸¹ÐAˆCØˆKØˆEØ—H‘H˜S“MˆEØ˜‹zØ˜A˜e˜�Ø!¨¡'¬C°«HÐ5�Ø�M‰Mœ( 5Ó6Ô7Ø�‰s”S˜“[Õ à Q™x¬#¨d¯i©i«.Ñ8¸6ÀaÁ%¹=ÐI�Ø—‘œi¨›oÖ.ñ ð �‹6Ø  a¡™=¬3¨t¯y©y«>Ñ9ˆLØÓØ¨aÐ0�Ø—‘œi¨›oÔ.ô �qœ#˜f›+Ö&ˆAØ‘	ˆAÜ˜1œi×)Ó)ØŸF™FŸN™N¨4¯;©;¸Ó;�	Ü�y“>¤C¨¯©£KÕ/Ü )¨)Ó 4�F“Iñ 'ð ˆr   )r3   r/   r0   r1   r2   N)r!   r"   r#   r$   Ú	__slots__r   ÚParserr   r“   r<   r   ÚintrF   r[   rM   rQ   rP   rB   rK   rI   rq   ru   r\   rŽ   r&   r    r   r   r,   r,   [   sð   † Ø>€Ið˜Uð ¨6ô ð"! #ð !¨Cð !¸Cô !ð% Ið %°sð %ÈSô %ð& )ð &Ð5Eô &ð* )ð *°Sð *È3ô *ðE 	ð EÐ3Cô EðG¨ð G¸sô GðD>˜Yð >°Ið >Àdô >ò@ð 9ô ð˜sô ð>D˜C÷ Dr   r,   )#Úantlr4.CommonTokenStreamr   Úantlr4.InputStreamr   Úantlr4.ParserRuleContextr   Úantlr4.Lexerr   Úantlr4.ListTokenSourcer   Úantlr4.Tokenr   Úantlr4.error.ErrorStrategyr	   Úantlr4.error.Errorsr
   r   Úantlr4.tree.Chunkr   r   Úantlr4.tree.RuleTagTokenr   Úantlr4.tree.TokenTagTokenr   Úantlr4.tree.Treer   r   r   r¯   r[   r%   r   r)   Úobjectr,   r    r   r   Ú<module>r¾      sb   ðõ@ 7Ý *Ý 6Ý Ý 2Ý Ý 8ß Pß 1Ý 1Ý 3ß >Ñ >ð 
€ØÐ ô˜Iô ô
	¨ô 	ô
[˜fõ [r   