
    <iyc                        S SK JrJr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  S SKJrJr   " S S\5      rSrSr  " S S\5      r \" S\" 5       5      \ l!        Cg)    )PredictionContextCacheSingletonPredictionContextPredictionContext)InputStream)Token)ATN)LexerATNConfig)ATNSimulator)ATNConfigSetOrderedATNConfigSet)RuleStopStateATNState)LexerActionExecutor)
Transition)DFAState)LexerNoViableAltExceptionUnsupportedOperationExceptionc                   $    \ rS rSrSrS rS rSrg)SimState$   indexlinecolumndfaStatec                 $    U R                  5         g N)resetselfs    V/home/james-whalen/.local/lib/python3.13/site-packages/antlr4/atn/LexerATNSimulator.py__init__SimState.__init__'   s    

    c                 <    SU l         SU l        SU l        S U l        g )Nr   r   r   s    r!   r   SimState.reset*   s    
	r$   )r   r   r   r   N)__name__
__module____qualname____firstlineno__	__slots__r"   r   __static_attributes__ r$   r!   r   r   $   s    7Ir$   r   Nc                     ^  \ rS rSrSrSrSrSrSrSr	S\
S\S	\S
\4U 4S jjrS\4S jrS\S\4S jrS r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\S\S\S\4S jrS\S\S\S\4S jrS\S\S\S \S!\S"\4S# jrS$\ S\4S% jr!S\S&\"4S' jr#S\S(\$S)\S*\%S+\%S,\%4S- jr&S\S(\$S\ S)\S+\%S,\%4S. jr'S\S/\S0\S+\%4S1 jr(S2\S\S3\4S4 jr)SAS5\S6\S7\S8\S9\4
S: jjr*S)\S9\4S; jr+S\4S< jr,S\4S= jr-S\4S> jr.S\4S? jr/S@r0U =r1$ )BLexerATNSimulator4   )	decisionToDFArecog
startIndexr   r   modeDEFAULT_MODEMAX_CHAR_VALUE
prevAcceptFr      Nr3   atnr2   sharedContextCachec                    > [         TU ]  X$5        X0l        Xl        SU l        SU l        SU l        SSKJn  UR                  U l
        UR                  U l	        UR                  U l        [        5       U l        g )Nr&      r   )Lexer)superr"   r2   r3   r4   r   r   antlr4.Lexerr>   r6   r5   r7   r   r8   )r    r3   r:   r2   r;   r>   	__class__s         r!   r"   LexerATNSimulator.__init__B   sg    1*

 	&&&	!..#22"*r$   	simulatorc                     UR                   U l         UR                  U l        UR                  U l        UR                  U l        g r   )r   r   r5   r4   )r    rC   s     r!   	copyStateLexerATNSimulator.copyStateX   s2    &&NN	NN	#..r$   inputr5   c                    X l         UR                  5       n UR                  U l        U R                  R                  5         U R                  U   nUR                  c"  U R                  U5      UR                  U5        $ U R                  XR                  5      UR                  U5        $ ! UR                  U5        f = fr   )r5   markr   r4   r8   r   r2   s0matchATNreleaseexecATN)r    rG   r5   rI   dfas        r!   matchLexerATNSimulator.match^   s    	zz|		 #kkDOOO!!#$$T*Cvv~}}U+ MM$ ||E662MM$EMM$s   AB- B- -C c                     U R                   R                  5         SU l        SU l        SU l        U R
                  U l        g )Nr&   r=   r   )r8   r   r4   r   r   r6   r5   r   s    r!   r   LexerATNSimulator.resetl   s4    	%%	r$   c                 P   U R                   R                  U R                     n[        R                  (       a0  [        S[        U R                  5      -   S-   [        U5      -   5        U R                  nU R                  X5      nUR                  nSUl        U R                  U5      nU(       d  X`R                  U R                     l        U R                  X5      n[        R                  (       a2  [        S[        U R                  U   R                  5       5      -   5        U$ )NzmatchATN mode z start: FzDFA after matchATN: )r:   modeToStartStater5   r0   debugprintstrcomputeStartStatehasSemanticContextaddDFAStater2   rJ   rM   toLexerString)r    rG   
startStateold_mode
s0_closuresuppressEdgenextpredicts           r!   rK   LexerATNSimulator.matchATNs   s    XX..tyy9
"""S^3j@3z?RS99++E>
!44(-
%
+/3tyy),,,u+""(3t/A/A(/K/Y/Y/[+\\]r$   ds0c                 
   [         R                  (       a!  [        S[        UR                  5      -   5        UR
                  (       a  U R                  U R                  X5        UR                  S5      nUn [         R                  (       a  [        S[        UR                  5      5        U R                  XC5      nUc  U R                  XU5      nXPR                  :X  a  O|U[        R                  :w  a  U R                  U5        UR
                  (       a1  U R                  U R                  X5        U[        R                  :X  a  OUR                  S5      nUnM  U R                  U R                  XR                  U5      $ )Nzstart state closure=r=   zexecATN loop starting closure:)r0   rU   rV   rW   configsisAcceptStatecaptureSimStater8   LAgetExistingTargetStatecomputeTargetStateERRORr   EOFconsumefailOrAccept)r    rG   rc   tstargets         r!   rM   LexerATNSimulator.execATN   s$   ""(3s{{+;;<  %=HHQK &&6AIIG( 006F~001= # EII~U###$$T__eD		>AA[ ^   %AFFr$   rp   ro   c                 ,   UR                   b  X R                  :  d  X R                  :  a  g UR                   X R                  -
     n[        R                  (       a7  Ub4  [        S[        UR                  5      S[        UR                  5      5        U$ )Nzreuse statezedge to)edgesMIN_DFA_EDGEMAX_DFA_EDGEr0   rU   rV   rW   stateNumber)r    rp   ro   rq   s       r!   ri   (LexerATNSimulator.getExistingTargetState   sp    77?a"3"33q;L;L7L.../""v'9-Q]]!3YFDVDV@WXr$   c                     [        5       nU R                  XR                  XC5        [        U5      S:X  a9  UR                  (       d  U R                  X#U R                  5        U R                  $ U R                  X#US9$ )Nr   )cfgs)r   getReachableConfigSetre   lenrY   
addDFAEdgerk   )r    rG   rp   ro   reachs        r!   rj   $LexerATNSimulator.computeTargetState   sk    #% 	""5))U>u:q=++ djj1 :: q%00r$   r8   r~   c                    U R                   R                  bi  UR                  R                  nU R                  X%U R                  UR
                  UR                  UR                  5        UR                  R                  $ U[        R                  :X  a*  UR
                  U R                  :X  a  [        R                  $ [        U R                  X R                  U5      er   )r8   r   lexerActionExecutoracceptr4   r   r   r   
predictionr   rl   r   r3   )r    r8   rG   r~   ro   r   s         r!   rn   LexerATNSimulator.failOrAccept   s    ??##/","5"5"I"IKKDOOZEUEUWaWfWfhrhyhyz&&111 %))|T__ <yy +DJJPUVVr$   closurec           
      ^   [         R                  nU GH  nUR                  U:H  nU(       a  UR                  (       a  M-  [        R
                  (       a&  [        SU R                  U5      S[        U5      5        UR                  R                   H  nU R                  X5      n	U	c  M  UR                  n
U
b(  U
R                  UR                  U R                  -
  5      n
U[         R"                  :H  n[%        XUS9nU R'                  XX7SU5      (       d  M  UR                  nM     GM     g )Ntestingat)stater   configT)r   INVALID_ALT_NUMBERaltpassedThroughNonGreedyDecisionr0   rU   rV   getTokenNamerW   r   transitionsgetReachableTargetr   fixOffsetBeforeMatchr   r4   r   rl   r	   r   )r    rG   r   r~   ro   skipAltcfgcurrentAltReachedAcceptStatetransrq   r   treatEofAsEpsilonr   s                r!   r{   'LexerATNSimulator.getReachableConfigSet  s     ((C-0WW-?(+0R0R &&i!2!21!5tc#hG..00:%*-*A*A'*6.A.V.VW\WbWbeietetWt.u+)*eii%+&jmnF||E5X\^opp #&'' / r$   r   r4   r   r   charPosc                     [         R                  (       a  [        SU5        UR                  U5        XPl        X`l        Ub+  U R                  b  UR                  U R                  X5        g g g )NACTION)r0   rU   rV   seekr   r   r3   execute)r    rG   r   r4   r   r   r   s          r!   r   LexerATNSimulator.accept  sZ    ""(/0 	

5	*tzz/E''

EF 0F*r$   r   c                 `    UR                  USU R                  5      (       a  UR                  $ g )Nr   )matchesr7   rq   )r    r   ro   s      r!   r   $LexerATNSimulator.getReachableTarget)  s(    ==At2233<<r$   pc           	          [         R                  n[        5       n[        S[	        UR
                  5      5       H>  nUR
                  U   R                  n[        XeS-   US9nU R                  XUSSS5        M@     U$ )Nr   r=   )r   r   contextF)	r   EMPTYr   ranger|   r   rq   r	   r   )r    rG   r   initialContextre   irq   cs           r!   rX   #LexerATNSimulator.computeStartState/  sn    *00%'qQ]]+,A]]1%,,FV1nMALL7E5%@ - r$   r   re   r   speculativer   c           	         [         R                  (       a  [        S[        U5      -   S-   5        [	        UR
                  [        5      (       Ga  [         R                  (       ae  U R                  bC  [        SU R                  R                  UR
                  R                     S[        U5      5        O[        S[        U5      5        UR                  b  UR                  R                  5       (       ar  UR                  b  UR                  R                  5       (       a  UR                  U5        gUR                  [        UR
                  U[        R                   S95        SnUR                  b  UR                  R                  5       (       d  [#        S[%        UR                  5      5       H  nUR                  R'                  U5      [        R(                  :w  d  M2  UR                  R+                  U5      nU R,                  R.                  UR                  R'                  U5         n	[        XUS9n
U R1                  XUXEU5      nM     U$ UR
                  R2                  (       d)  U(       a  UR4                  (       d  UR                  U5        UR
                  R6                   H.  nU R9                  XXXV5      n
U
c  M  U R1                  XX4XV5      nM0     U$ )	Nzclosure()z
closure atz	rule stopzclosure at rule stopTr   r   r   r   )r0   rU   rV   rW   
isinstancer   r   r3   symbolicNames	ruleIndexr   hasEmptyPathisEmptyaddr	   r   r   r   r|   getReturnStateEMPTY_RETURN_STATE	getParentr:   statesr   epsilonOnlyTransitionsr   r   getEpsilonTarget)r    rG   r   re   r   r   r   r   
newContextreturnStater   ro   s               r!   r   LexerATNSimulator.closure@  s   ""*s6{*S01v||]44 &&::),

(@(@AWAW(X[fhklrhst0#f+>~~%)D)D)F)F>>)V^^-C-C-E-EKK'KKV\\&ZkZqZq rs370~~)&..2H2H2J2JqV^^!45A~~44Q7;L;_;__%+^^%=%=a%@
&*hhoofnn6S6STU6V&W*U_`7;||Eg$@O`8b4 6 0/ ||22/v7\7\F#))A%%eQ`A}/3||Egmx  0M, *
 ,+r$   c                    S nUR                   [        R                  :X  aK  [        R                  " UR
                  UR                  R                  5      n[        UR                  X(S9nU$ UR                   [        R                  :X  a  [        S5      eUR                   [        R                  :X  a  [        R                  (       a:  [        S[!        UR"                  5      -   S-   [!        UR$                  5      -   5        SUl        U R)                  XR"                  UR$                  U5      (       a  [        UR                  US9nU$ UR                   [        R*                  :X  a  UR
                  b  UR
                  R-                  5       (       aX  [.        R0                  " UR2                  U R4                  R6                  UR8                     5      n	[        UR                  X)S9nU$ [        UR                  US9n U$ UR                   [        R:                  :X  a  [        UR                  US9nU$ UR                   [        R<                  [        R>                  [        R@                  4;   aK  U(       aD  URC                  [D        RF                  SU RH                  5      (       a  [        UR                  US9nU$ )	Nr   z2Precedence predicates are not supported in lexers.z
EVAL rule :T)r   r   )r   r   r   r   )%serializationTyper   RULEr   creater   followStaterw   r	   rq   
PRECEDENCEr   	PREDICATEr0   rU   rV   rW   r   	predIndexrY   evaluatePredicater   r   r   appendr   r:   lexerActionsactionIndexEPSILONATOMRANGESETr   r   rl   r7   )
r    rG   r   ro   re   r   r   r   r   r   s
             r!   r   "LexerATNSimulator.getEpsilonTargetl  s   
/7>>v~~q}}OhOhi
"&Ux u   *"7"7734hii  *"6"66& %**,AKK(883>Q[[AQQR-1*))%akk;WW&QXXfEA@ =   *"3"33>>)V^^-H-H-J-J +>*D*DVE_E_$(HH$9$9!--$H+J'&QXXfnA  'QXXfEA    *"4"44QXXf=A    jooz7G7G$YY 99UYY4+>+>??&QXXfEAr$   r   r   c                    U R                   c  gU(       d  U R                   R                  S X#5      $ U R                  nU R                  nUR                  nUR                  5       n U R                  U5        U R                   R                  S X#5      XPl        X`l        UR                  U5        UR                  U5        $ ! XPl        X`l        UR                  U5        UR                  U5        f = f)NT)	r3   sempredr   r   r   rI   rm   r   rL   )	r    rG   r   r   r   savedcolumn	savedLiner   markers	            r!   r   #LexerATNSimulator.evaluatePredicate  s    ::::%%dIAAkkII		"LL::%%dIA%K!IJJuMM&! &K!IJJuMM&!s   ',C 0C2settingsr   c                 v    UR                   Ul         U R                  Ul        U R                  Ul        X1l        g r   r   )r    r   rG   r   s       r!   rg   !LexerATNSimulator.captureSimState  s)    		++$r$   from_tktorz   returnc                    Uc0  Ub-  UR                   nSUl         U R                  U5      nU(       a  U$ X R                  :  d  X R                  :  a  U$ [        R
                  (       a5  [        S[        U5      -   S-   [        U5      -   S-   [        U5      -   5        UR                  c%  S /U R                  U R                  -
  S-   -  Ul	        X1R                  X R                  -
  '   U$ )NFzEDGE z -> z upon r=   )
rY   rZ   ru   rv   r0   rU   rV   rW   chrrt   )r    r   r   r   rz   r_   s         r!   r}   LexerATNSimulator.addDFAEdge  s    :$*  22L&+D#!!$'B	 !!!R*;*;%;I""'CJ&/#b'9HDc"gMN;; (d&7&7$:K:K&Ka&OPEK.0B***+	r$   c                    [        US9n[        S U 5       S 5      nUbJ  SUl        UR                  Ul        U R                  R
                  UR                  R                     Ul        U R                  U R                     nUR                  R                  US 5      nUb  U$ Un[        UR                  5      Ul        UR                  S5        Xl        XdR                  U'   U$ )N)re   c              3   h   #    U  H(  n[        UR                  [        5      (       d  M$  Uv   M*     g 7fr   )r   r   r   ).0r   s     r!   	<genexpr>0LexerATNSimulator.addDFAState.<locals>.<genexpr>  s#     ,lGSzRUR[R[]jGkSSGs   #2	2T)r   r`   rf   r   r:   ruleToTokenTyper   r   r   r2   r5   r   getr|   rw   setReadonlyre   )r    re   proposedfirstConfigWithRuleStopStaterN   existingnewStates          r!   rZ   LexerATNSimulator.addDFAState	  s    G,'+,lG,lnr's$'3%)H"+G+[+[H("&((":":;W;];];g;g"hH  +::>>(D1O"3::D!"'

8r$   c                      U R                   U   $ r   )r2   )r    r5   s     r!   getDFALexerATNSimulator.getDFA   s    !!$''r$   c                 T    UR                  U R                  UR                  S-
  5      $ )Nr=   )getTextr4   r   )r    rG   s     r!   r   LexerATNSimulator.getText$  s    }}T__ekk!m<<r$   c                     UR                  S5      nU[        S5      :X  a  U =R                  S-  sl        SU l        OU =R                  S-  sl        UR	                  5         g )Nr=   
r   )rh   ordr   r   rm   )r    rG   curChars      r!   rm   LexerATNSimulator.consume(  sF    ((1+CIIINIDKKK1Kr$   c                 2    US:X  a  gS[        U5      -   S-   $ )Nr&   rl   ')r   )r    ro   s     r!   r   LexerATNSimulator.getTokenName1  s    b5Q<#%%r$   )	r6   r7   r   r2   r   r5   r8   r3   r4   )NN)2r(   r)   r*   r+   r,   rU   	dfa_debugru   rv   rk   r>   r   listr   r"   r0   rE   r   intrO   r   rK   r   rM   ri   rj   r   r   rn   r{   r   r   r   r   r   rX   r	   boolr   r   r   rg   r}   rZ   r   r   rm   r   r-   __classcell__)rA   s   @r!   r0   r0   4   s   I
 EILLE%U % %4 %Tj %,/"3 / +  S  &[ ,:GK :GX :GJx 3 (1{ 1h 1# 1&	Wh 	W{ 	W, 	WZ] 	W*+ *| *S_ *cf *4
G; 
G<O 
G\_ 
Ggj 
Gqt 
G  B 
Gz S k X "),K ), ), ),sw ), ),48),XA[ A A: A_k A7;AOSAn"k "S "C "]a "*%x %{ %X %$x $C $H $ $^f $V, 8 .(# (=K =K &S & &r$   r0   i)"antlr4.PredictionContextr   r   r   antlr4.InputStreamr   antlr4.Tokenr   antlr4.atn.ATNr   antlr4.atn.ATNConfigr	   antlr4.atn.ATNSimulatorr
   antlr4.atn.ATNConfigSetr   r   antlr4.atn.ATNStater   r   antlr4.atn.LexerActionExecutorr   antlr4.atn.Transitionr   antlr4.dfa.DFAStater   antlr4.error.Errorsr   r   objectr   r>   r0   rk   r.   r$   r!   <module>r     sn   . k j *   / 0 E 7 > , ( X
v 
 	 A& A&H #:|~>  	r$   