You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

186 lines
37 KiB
Python

# parsetab.py
# This file is automatically generated. Do not edit.
_tabversion = '3.2'
_lr_method = 'LALR'
_lr_signature = '#\xf5F:\x8e\x0c\xf3A\xdcQx\xee\x88c\xc4I'
_lr_action_items = {'bitANDKeyword':([38,43,50,51,52,53,54,57,59,60,62,65,67,68,69,70,71,78,81,85,87,88,89,90,91,92,93,94,95,96,97,98,100,108,109,134,136,137,142,143,144,154,156,157,158,159,161,],[48,48,-18,-55,-56,-32,-33,48,48,-57,-59,-53,-30,-54,-29,-51,-52,48,119,48,-41,-37,-39,-40,-38,-42,-36,-43,-35,48,48,-31,48,-27,48,-58,-50,-34,-29,-60,-61,119,-45,48,-44,-46,-28,]),'moduleKeyword':([31,41,46,73,164,199,],[44,75,44,75,-74,-111,]),'maxKeyword':([81,154,],[120,120,]),'GTEQ':([51,52,54,55,56,60,62,65,68,70,71,77,99,143,144,150,156,158,159,174,177,178,179,182,186,187,188,190,191,192,193,218,241,],[-55,-56,-58,89,-50,-57,-59,-53,-54,-51,-52,-50,-50,-60,-61,167,-45,-44,-46,-97,-132,-135,-133,89,-134,-127,-136,-130,-131,-128,-129,-135,-123,]),'int':([38,43,50,51,52,53,54,57,59,60,62,65,67,68,69,70,71,78,85,87,88,89,90,91,92,93,94,95,96,97,98,100,108,109,110,111,134,136,137,142,143,144,156,157,158,159,161,162,174,177,178,179,181,184,185,186,187,188,189,190,191,192,193,194,195,200,204,218,219,221,224,225,227,228,232,233,235,241,242,243,244,245,246,247,248,251,],[51,51,-18,-55,-56,-32,-33,51,51,-57,-59,-53,-30,-54,-29,-51,-52,51,51,-41,-37,-39,-40,-38,-42,-36,-43,-35,51,51,-31,51,-27,51,143,144,-58,-50,-34,-29,-60,-61,-45,51,-44,-46,-28,177,-97,-132,-118,-133,-119,177,177,-134,-127,-136,-139,-130,-131,-128,-129,-112,-114,177,177,-120,-121,-137,236,236,-135,-122,-142,-139,-113,-123,177,250,-140,-138,-87,-88,-89,-141,]),'-':([5,13,35,],[22,22,22,]),'float':([38,43,50,51,52,53,54,57,59,60,62,65,67,68,69,70,71,78,85,87,88,89,90,91,92,93,94,95,96,97,98,100,108,109,134,136,137,142,143,144,156,157,158,159,161,162,174,177,178,179,181,184,185,186,187,188,189,190,191,192,193,194,195,200,204,218,219,221,227,228,232,233,235,241,242,244,245,246,247,248,251,],[52,52,-18,-55,-56,-32,-33,52,52,-57,-59,-53,-30,-54,-29,-51,-52,52,52,-41,-37,-39,-40,-38,-42,-36,-43,-35,52,52,-31,52,-27,52,-58,-50,-34,-29,-60,-61,-45,52,-44,-46,-28,179,-97,-132,-118,-133,-119,179,179,-134,-127,-136,-139,-130,-131,-128,-129,-112,-114,179,179,-120,-121,-137,-135,-122,-142,-139,-113,-123,179,-140,-138,-87,-88,-89,-141,]),'oKeyword':([183,234,],[205,205,]),'inKeyword':([51,52,54,55,56,60,62,65,68,70,71,77,99,143,144,156,158,159,174,177,178,179,182,186,187,188,190,191,192,193,218,241,],[-55,-56,-58,92,-50,-57,-59,-53,-54,-51,-52,-50,-50,-60,-61,-45,-44,-46,-97,-132,-135,-133,92,-134,-127,-136,-130,-131,-128,-129,-135,-123,]),'dKeyword':([183,234,],[211,211,]),'avgKeyword':([81,154,],[127,127,]),'/':([70,71,192,193,],[110,111,110,111,]),'asKeyword':([122,123,124,174,197,],[152,-98,-99,-97,226,]),'countKeyword':([81,154,],[130,130,]),'ML':([51,52,54,55,56,60,62,65,68,70,71,77,99,143,144,156,158,159,174,177,178,179,182,186,187,188,190,191,192,193,218,241,],[-55,-56,-58,90,-50,-57,-59,-53,-54,-51,-52,-50,-50,-60,-61,-45,-44,-46,-97,-132,-135,-133,90,-134,-127,-136,-130,-131,-128,-129,-135,-123,]),'id':([0,1,2,4,6,7,8,9,10,11,14,15,16,17,18,19,23,24,27,32,33,34,35,36,37,38,40,43,44,47,50,51,52,53,54,56,57,59,60,61,62,63,65,66,67,68,69,70,71,72,75,76,78,81,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,102,104,105,106,107,108,109,113,116,117,132,134,136,137,140,141,142,143,144,146,149,151,152,153,154,156,157,158,159,160,161,162,163,166,167,168,169,170,171,174,177,178,179,181,184,185,186,187,188,189,190,191,192,193,194,195,196,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,218,219,221,222,223,226,227,228,232,233,235,236,237,238,239,241,242,244,245,246,247,248,251,],[5,5,-10,21,-8,-9,-11,25,26,-7,28,29,-4,30,-5,-6,35,35,35,-69,-66,-68,-67,-62,-64,56,-63,77,80,35,-18,-55,-56,-32,-33,-26,99,77,-57,104,-59,-21,-53,-24,-30,-54,-29,-51,-52,-12,115,-70,77,123,-65,136,-14,-41,-37,-39,-40,-38,-42,-36,-43,-35,136,136,-31,-25,136,140,-26,-13,104,-22,-27,77,145,-15,150,-71,-58,-50,-34,-25,-24,-29,-60,-61,-108,150,123,173,174,123,-45,136,-44,-46,-23,-28,183,195,-82,-83,196,-84,-81,-80,-97,-132,-118,-133,-119,183,220,-134,-127,-136,-139,-130,-131,-128,-129,-112,-114,-77,229,-155,-156,-144,229,-148,-143,-150,232,-147,-149,-152,-146,-151,-154,-145,-153,-120,-1
_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 = {'aggr_op':([81,154,],[118,118,]),'allen_rule':([162,184,222,],[189,189,233,]),'grouper_rule1_n':([117,149,],[148,165,]),'filter_ref_rule_1n':([38,61,],[49,103,]),'grouper_rule':([117,149,],[149,149,]),'or_rule':([38,43,59,],[50,50,50,]),'qid':([81,151,154,162,184,185,200,204,242,],[124,124,124,187,187,187,187,187,187,]),'pipeline_stage':([0,1,],[1,1,]),'merger_rule1_n':([162,184,],[180,217,]),'module':([31,46,],[46,46,]),'end_branch':([23,24,27,47,],[33,33,33,33,]),'infix_rule':([38,43,57,59,78,109,],[53,53,53,53,53,53,]),'export':([74,],[114,]),'file':([0,],[3,]),'arg':([38,43,57,59,78,85,96,97,100,109,157,],[55,55,55,55,55,135,137,135,135,55,135,]),'delta_arg':([224,225,],[238,239,]),'merger_infix_rule':([162,184,185,],[181,181,219,]),'qid_arg':([162,184,185,200,204,242,],[182,182,182,228,231,231,]),'merger_rule':([162,184,],[184,184,]),'opt_rule':([69,142,],[108,161,]),'branches1_n':([163,223,],[194,235,]),'ungrouper':([0,1,],[6,6,]),'grouper':([0,1,],[7,7,]),'merger':([0,1,],[8,8,]),'opt_or_allen_rule':([189,233,],[221,245,]),'prefix_rule':([38,43,57,59,78,85,96,97,100,109,157,],[54,54,54,54,54,134,134,134,134,54,134,]),'branch':([0,1,],[11,11,]),'id_or_qid':([81,151,154,],[122,172,122,]),'pipeline_stage_1n':([0,1,],[12,20,]),'merger_module1_n':([41,73,],[74,112,]),'filter_ref_rule':([38,61,],[61,61,]),'args':([85,97,100,157,],[133,138,139,176,]),'grouper_op':([150,],[168,]),'module1_n':([31,46,],[45,83,]),'or_id':([38,61,],[63,63,]),'opt_allen_delta':([232,],[244,]),'allen_op':([183,234,],[208,208,]),'group_filter':([0,1,],[2,2,]),'opt_or_id':([66,141,],[107,160,]),'aggregate':([45,],[82,]),'filter_rule_1n':([38,43,59,],[64,79,101,]),'CIDR':([38,43,57,59,78,85,96,97,100,109,157,162,184,185,200,204,242,],[65,65,65,65,65,65,65,65,65,65,65,190,190,190,190,190,190,]),'aggr1_n':([81,],[131,]),'opt_aggr':([129,175,],[155,198,]),'splitter':([0,1,],[16,16,]),'merger_branches':([147,],[162,]),'merger_module':([41,73,],[73,73,]),'qid_args':([204,242,],[230,249,]),'not_id':([38,61,106,],[66,66,141,]),'merger_prefix_rule':([162,184,185,200,204,242,],[178,178,218,227,227,227,]),'rule':([38,43,57,59,78,109,],[67,67,98,67,98,67,]),'mid_branch':([23,24,27,47,],[36,37,40,84,]),'filter':([0,1,],[18,18,]),'filter_rule':([38,43,59,],[59,59,59,]),'composite_filter':([0,1,],[19,19,]),'rule_or_not':([38,43,59,109,],[69,69,69,142,]),'time':([224,225,243,],[237,237,251,]),'arrow':([5,13,35,],[23,27,47,]),'aggr':([81,154,],[129,175,]),'op':([55,182,],[96,200,]),}
_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' -> file","S'",1,None,None,None),
('file -> pipeline_stage_1n','file',1,'p_file','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',198),
('pipeline_stage_1n -> pipeline_stage pipeline_stage_1n','pipeline_stage_1n',2,'p_pipeline_stage_1n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',203),
('pipeline_stage_1n -> <empty>','pipeline_stage_1n',0,'p_pipeline_stage_end','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',213),
('pipeline_stage -> splitter','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',217),
('pipeline_stage -> filter','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',218),
('pipeline_stage -> composite_filter','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',219),
('pipeline_stage -> branch','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',220),
('pipeline_stage -> ungrouper','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',221),
('pipeline_stage -> grouper','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',222),
('pipeline_stage -> group_filter','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',223),
('pipeline_stage -> merger','pipeline_stage',1,'p_pipeline_stage','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',224),
('splitter -> splitterKeyword id { }','splitter',4,'p_splitter','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',231),
('filter -> filterKeyword id { filter_rule_1n }','filter',5,'p_filter','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',242),
('composite_filter -> filterKeyword id { filter_ref_rule_1n }','composite_filter',5,'p_composite_filter','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',254),
('group_filter -> groupFilterKeyword id { filter_rule_1n }','group_filter',5,'p_group_filter','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',265),
('filter_rule_1n -> filter_rule filter_rule_1n','filter_rule_1n',2,'p_filter_rule_1n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',275),
('filter_rule_1n -> <empty>','filter_rule_1n',0,'p_filter_rule_0','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',280),
('filter_rule -> or_rule','filter_rule',1,'p_filter_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',285),
('filter_ref_rule_1n -> filter_ref_rule filter_ref_rule_1n','filter_ref_rule_1n',2,'p_filter_ref_rule_1n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',290),
('filter_ref_rule_1n -> filter_ref_rule','filter_ref_rule_1n',1,'p_filter_ref_rule_0','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',295),
('filter_ref_rule -> or_id','filter_ref_rule',1,'p_filter_ref_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',300),
('or_id -> not_id opt_or_id','or_id',2,'p_or_id','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',305),
('opt_or_id -> ORKeyword not_id opt_or_id','opt_or_id',3,'p_opt_or_id','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',311),
('opt_or_id -> <empty>','opt_or_id',0,'p_opt_or_id_end','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',317),
('not_id -> NOTKeyword id','not_id',2,'p_not_id','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',322),
('not_id -> id','not_id',1,'p_not_id','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',323),
('or_rule -> rule_or_not opt_rule','or_rule',2,'p_or_optrule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',331),
('opt_rule -> ORKeyword rule_or_not opt_rule','opt_rule',3,'p_or_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',340),
('opt_rule -> <empty>','opt_rule',0,'p_term_opt_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',346),
('rule_or_not -> rule','rule_or_not',1,'p_rule_or_not','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',351),
('rule_or_not -> NOTKeyword rule','rule_or_not',2,'p_rule_or_not','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',352),
('rule -> infix_rule','rule',1,'p_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',362),
('rule -> prefix_rule','rule',1,'p_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',363),
('infix_rule -> arg op arg','infix_rule',3,'p_infix_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',368),
('op -> EQ','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',376),
('op -> LT','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',377),
('op -> GT','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',378),
('op -> LTEQ','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',379),
('op -> GTEQ','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',380),
('op -> ML','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',381),
('op -> MG','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',382),
('op -> inKeyword','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',383),
('op -> notinKeyword','op',1,'p_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',384),
('prefix_rule -> id ( args )','prefix_rule',4,'p_rule_prefix','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',390),
('prefix_rule -> bitANDKeyword ( args )','prefix_rule',4,'p_rule_prefix','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',391),
('prefix_rule -> bitORKeyword ( args )','prefix_rule',4,'p_rule_prefix','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',392),
('args -> arg , args','args',3,'p_args','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',398),
('args -> arg','args',1,'p_args_more','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',404),
('args -> <empty>','args',0,'p_no_args','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',408),
('arg -> id','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',413),
('arg -> IPv4','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',414),
('arg -> IPv6','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',415),
('arg -> CIDR','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',416),
('arg -> MAC','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',417),
('arg -> int','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',418),
('arg -> float','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',419),
('arg -> hex','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',420),
('arg -> prefix_rule','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',421),
('arg -> string','arg',1,'p_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',422),
('CIDR -> IPv4 / int','CIDR',3,'p_cidr','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',430),
('CIDR -> IPv6 / int','CIDR',3,'p_cidr','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',431),
('branch -> id arrow mid_branch','branch',3,'p_start_branch','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',437),
('branch -> string arrow mid_branch','branch',3,'p_input_branch','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',446),
('branch -> id branchKeyword mid_branch','branch',3,'p_split_branch','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',459),
('mid_branch -> id arrow mid_branch','mid_branch',3,'p_mid_branch','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',469),
('mid_branch -> end_branch','mid_branch',1,'p_mid_branch_terminate','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',478),
('end_branch -> id','end_branch',1,'p_end_branch','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',483),
('end_branch -> string','end_branch',1,'p_output_branch','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',487),
('arrow -> - GT','arrow',2,'p_arrow','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',494),
('ungrouper -> ungrouperKeyword id { }','ungrouper',4,'p_ungrouper','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',499),
('grouper -> grouperKeyword id { module1_n aggregate }','grouper',6,'p_grouper','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',505),
('module1_n -> module module1_n','module1_n',2,'p_module1_n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',517),
('module1_n -> <empty>','module1_n',0,'p_module0','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',522),
('module -> moduleKeyword id { grouper_rule1_n }','module',5,'p_module','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',526),
('grouper_rule1_n -> grouper_rule grouper_rule1_n','grouper_rule1_n',2,'p_grouper_rule1_n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',530),
('grouper_rule1_n -> <empty>','grouper_rule1_n',0,'p_grouper_rule0','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',535),
('grouper_rule -> id grouper_op id','grouper_rule',3,'p_grouper_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',539),
('grouper_rule -> id grouper_op id deltaKeyword delta_arg','grouper_rule',5,'p_grouper_rule_delta','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',545),
('grouper_rule -> id grouper_op id rdeltaKeyword delta_arg','grouper_rule',5,'p_grouper_rule_rel_delta','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',552),
('grouper_op -> EQ','grouper_op',1,'p_grouper_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',559),
('grouper_op -> LT','grouper_op',1,'p_grouper_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',560),
('grouper_op -> GT','grouper_op',1,'p_grouper_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',561),
('grouper_op -> GTEQ','grouper_op',1,'p_grouper_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',562),
('grouper_op -> LTEQ','grouper_op',1,'p_grouper_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',563),
('delta_arg -> time','delta_arg',1,'p_delta_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',568),
('delta_arg -> int','delta_arg',1,'p_delta_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',569),
('time -> int sKeyword','time',2,'p_time','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',575),
('time -> int msKeyword','time',2,'p_time','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',576),
('time -> int minKeyword','time',2,'p_time','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',577),
('aggregate -> aggregateKeyword aggr1_n','aggregate',2,'p_aggregate','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',587),
('aggr1_n -> aggr opt_aggr','aggr1_n',2,'p_aggr1_n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',594),
('opt_aggr -> , aggr opt_aggr','opt_aggr',3,'p_opt_aggr','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',599),
('opt_aggr -> <empty>','opt_aggr',0,'p_opt_aggr_end','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',604),
('aggr -> aggr_op ( id_or_qid ) asKeyword id','aggr',6,'p_aggr','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',608),
('aggr -> id_or_qid asKeyword id','aggr',3,'p_simple_agg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',613),
('aggr -> id_or_qid','aggr',1,'p_simple_agg_same_name','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',618),
('qid -> id . id','qid',3,'p_qid','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',624),
('id_or_qid -> id','id_or_qid',1,'p_id_or_qid','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',630),
('id_or_qid -> qid','id_or_qid',1,'p_id_or_qid','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',631),
('aggr_op -> minKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',637),
('aggr_op -> maxKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',638),
('aggr_op -> sumKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',639),
('aggr_op -> avgKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',640),
('aggr_op -> unionKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',641),
('aggr_op -> countKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',642),
('aggr_op -> bitANDKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',643),
('aggr_op -> bitORKeyword','aggr_op',1,'p_aggr_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',644),
('merger -> mergerKeyword id { merger_module1_n export }','merger',6,'p_merger','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',649),
('merger_module1_n -> merger_module merger_module1_n','merger_module1_n',2,'p_merger_module1_n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',655),
('merger_module1_n -> <empty>','merger_module1_n',0,'p_merger_module0','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',660),
('merger_module -> moduleKeyword id { merger_branches merger_rule1_n }','merger_module',6,'p_merger_module','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',665),
('merger_branches -> branchesKeyword branches1_n','merger_branches',2,'p_merger_branches','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',670),
('branches1_n -> id , branches1_n','branches1_n',3,'p_branches1_n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',675),
('branches1_n -> id','branches1_n',1,'p_branches1','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',681),
('export -> exportKeyword id','export',2,'p_export','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',685),
('merger_rule1_n -> merger_rule merger_rule1_n','merger_rule1_n',2,'p_merger_rule1_n','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',689),
('merger_rule1_n -> <empty>','merger_rule1_n',0,'p_merger_rule0','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',694),
('merger_rule -> merger_prefix_rule','merger_rule',1,'p_merger_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',699),
('merger_rule -> merger_infix_rule','merger_rule',1,'p_merger_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',700),
('merger_rule -> NOTKeyword merger_prefix_rule','merger_rule',2,'p_not_merger_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',706),
('merger_rule -> NOTKeyword merger_infix_rule','merger_rule',2,'p_not_merger_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',707),
('merger_infix_rule -> qid_arg op qid_arg','merger_infix_rule',3,'p_merger_infix_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',713),
('merger_prefix_rule -> id ( qid_args )','merger_prefix_rule',4,'p_merger_prefix_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',719),
('qid_args -> qid_arg , qid_args','qid_args',3,'p_qid_args','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',725),
('qid_args -> qid_arg','qid_args',1,'p__qid_args_more','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',731),
('qid_args -> <empty>','qid_args',0,'p_no_qid_args','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',735),
('qid_arg -> qid','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',740),
('qid_arg -> IPv4','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',741),
('qid_arg -> IPv6','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',742),
('qid_arg -> CIDR','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',743),
('qid_arg -> MAC','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',744),
('qid_arg -> int','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',745),
('qid_arg -> float','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',746),
('qid_arg -> hex','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',747),
('qid_arg -> merger_prefix_rule','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',748),
('qid_arg -> string','qid_arg',1,'p_qid_arg','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',749),
('merger_rule -> allen_rule opt_or_allen_rule','merger_rule',2,'p_merger_rule_al_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',756),
('opt_or_allen_rule -> ORKeyword allen_rule opt_or_allen_rule','opt_or_allen_rule',3,'p_opt_or_allen_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',761),
('opt_or_allen_rule -> <empty>','opt_or_allen_rule',0,'p_opt_op_rule_end','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',766),
('allen_rule -> id allen_op id opt_allen_delta','allen_rule',4,'p_allen_rule','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',770),
('opt_allen_delta -> deltaKeyword time','opt_allen_delta',2,'p_opt_allen_delta','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',777),
('opt_allen_delta -> <empty>','opt_allen_delta',0,'p_no_allen_delta','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',782),
('allen_op -> LT','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',787),
('allen_op -> GT','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',788),
('allen_op -> EQ','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',789),
('allen_op -> mKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',790),
('allen_op -> miKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',791),
('allen_op -> oKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',792),
('allen_op -> oiKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',793),
('allen_op -> sKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',794),
('allen_op -> siKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',795),
('allen_op -> dKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',796),
('allen_op -> diKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',797),
('allen_op -> fKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',798),
('allen_op -> fiKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',799),
('allen_op -> eqKeyword','allen_op',1,'p_allen_op','/home/melnikovkolya/classes/semester-3-project/flowy/parser.py',800),
]