
# parsetab.py
# This file is automatically generated. Do not edit.
# pylint: disable=W,C,R
_tabversion = '3.10'

_lr_method = 'LALR'

_lr_signature = 'AGENT AND COALITION IS KCAP LPAREN NEXT NOT PROP RELEASE RPAREN UNTILexpression : expression AND expressionexpression : NOT expressionexpression : COALITION expression UNTIL expression \n                    | COALITION expression RELEASE expressionexpression :  COALITION NEXT expressionexpression : LPAREN expression RPARENexpression : PROPexpression : KCAP AGENT expression2expression2 : LPAREN expression2 RPARENexpression2 : expression2 AND expression2expression2 : NOT expression2 expression2 : AGENT IS PROP'
    
_lr_action_items = {'NOT':([0,2,3,4,7,10,12,14,15,20,21,25,],[2,2,2,2,2,2,21,2,2,21,21,21,]),'COALITION':([0,2,3,4,7,10,14,15,],[3,3,3,3,3,3,3,3,]),'LPAREN':([0,2,3,4,7,10,12,14,15,20,21,25,],[4,4,4,4,4,4,20,4,4,20,20,20,]),'PROP':([0,2,3,4,7,10,14,15,24,],[5,5,5,5,5,5,5,5,28,]),'KCAP':([0,2,3,4,7,10,14,15,],[6,6,6,6,6,6,6,6,]),'$end':([1,5,8,13,16,17,19,22,23,27,28,29,30,],[0,-7,-2,-1,-5,-6,-8,-3,-4,-11,-12,-10,-9,]),'AND':([1,5,8,9,11,13,16,17,19,22,23,26,27,28,29,30,],[7,-7,7,7,7,7,7,-6,25,7,7,25,25,-12,25,-9,]),'NEXT':([3,],[10,]),'UNTIL':([5,8,9,13,16,17,19,22,23,27,28,29,30,],[-7,-2,14,-1,-5,-6,-8,-3,-4,-11,-12,-10,-9,]),'RELEASE':([5,8,9,13,16,17,19,22,23,27,28,29,30,],[-7,-2,15,-1,-5,-6,-8,-3,-4,-11,-12,-10,-9,]),'RPAREN':([5,8,11,13,16,17,19,22,23,26,27,28,29,30,],[-7,-2,17,-1,-5,-6,-8,-3,-4,30,-11,-12,-10,-9,]),'AGENT':([6,12,20,21,25,],[12,18,18,18,18,]),'IS':([18,],[24,]),}

_lr_action = {}
for _k, _v in _lr_action_items.items():
   for _x,_y in zip(_v[0],_v[1]):
      if not _x in _lr_action:  _lr_action[_x] = {}
      _lr_action[_x][_k] = _y
del _lr_action_items

_lr_goto_items = {'expression':([0,2,3,4,7,10,14,15,],[1,8,9,11,13,16,22,23,]),'expression2':([12,20,21,25,],[19,26,27,29,]),}

_lr_goto = {}
for _k, _v in _lr_goto_items.items():
   for _x, _y in zip(_v[0], _v[1]):
       if not _x in _lr_goto: _lr_goto[_x] = {}
       _lr_goto[_x][_k] = _y
del _lr_goto_items
_lr_productions = [
  ("S' -> expression","S'",1,None,None,None),
  ('expression -> expression AND expression','expression',3,'p_expression_binary','parser_ATLe.py',56),
  ('expression -> NOT expression','expression',2,'p_expression_not','parser_ATLe.py',60),
  ('expression -> COALITION expression UNTIL expression','expression',4,'p_expression_ternary','parser_ATLe.py',68),
  ('expression -> COALITION expression RELEASE expression','expression',4,'p_expression_ternary','parser_ATLe.py',69),
  ('expression -> COALITION NEXT expression','expression',3,'p_expression_unary','parser_ATLe.py',78),
  ('expression -> LPAREN expression RPAREN','expression',3,'p_expression_group','parser_ATLe.py',90),
  ('expression -> PROP','expression',1,'p_expression_prop','parser_ATLe.py',94),
  ('expression -> KCAP AGENT expression2','expression',3,'p_expression_kcap','parser_ATLe.py',99),
  ('expression2 -> LPAREN expression2 RPAREN','expression2',3,'p_expression_capformula_group','parser_ATLe.py',104),
  ('expression2 -> expression2 AND expression2','expression2',3,'p_expression_capformula_and','parser_ATLe.py',109),
  ('expression2 -> NOT expression2','expression2',2,'p_expression_capformula_not','parser_ATLe.py',114),
  ('expression2 -> AGENT IS PROP','expression2',3,'p_expression_capformula_is','parser_ATLe.py',119),
]
