Merge branch 'pu/qualified-modules' into wip
[nit.git] / src / parser / parser.nit
index 9d2ae82..d4e99a1 100644 (file)
@@ -20,7 +20,7 @@ private class State
 end
 
 class Parser
-special TablesCapable
+       super TablesCapable
        # Associated lexer
        var _lexer: Lexer
 
@@ -122,7 +122,7 @@ special TablesCapable
                                else
                                        action_type = parser_action(state, subindex+1)
                                        action_value = parser_action(state, subindex+2)
-                                       high = low -1 # break
+                                       break
                                end
                        end
 
@@ -143,9 +143,7 @@ special TablesCapable
                                var node = new Start(null, node2)
                                return node
                        end
-                       if false then break # FIXME remove once unreach loop exits are in c_src
                end
-               abort # FIXME remove once unreach loop exits are in c_src
        end
 
        var _reduce_table: Array[ReduceAction]
@@ -275,548 +273,590 @@ special TablesCapable
                        new ReduceAction120(12),
                        new ReduceAction121(12),
                        new ReduceAction122(12),
-                       new ReduceAction123(13),
-                       new ReduceAction124(13),
-                       new ReduceAction125(14),
-                       new ReduceAction126(14),
-                       new ReduceAction127(15),
-                       new ReduceAction128(15),
-                       new ReduceAction129(15),
-                       new ReduceAction130(15),
-                       new ReduceAction131(16),
-                       new ReduceAction132(16),
-                       new ReduceAction133(16),
-                       new ReduceAction134(16),
-                       new ReduceAction135(16),
-                       new ReduceAction136(16),
-                       new ReduceAction137(16),
-                       new ReduceAction138(16),
-                       new ReduceAction139(16),
-                       new ReduceAction140(16),
-                       new ReduceAction141(16),
-                       new ReduceAction142(16),
-                       new ReduceAction143(16),
-                       new ReduceAction144(16),
+                       new ReduceAction123(12),
+                       new ReduceAction124(12),
+                       new ReduceAction125(12),
+                       new ReduceAction126(12),
+                       new ReduceAction127(12),
+                       new ReduceAction128(12),
+                       new ReduceAction129(12),
+                       new ReduceAction130(12),
+                       new ReduceAction131(12),
+                       new ReduceAction132(12),
+                       new ReduceAction133(12),
+                       new ReduceAction134(12),
+                       new ReduceAction135(12),
+                       new ReduceAction136(12),
+                       new ReduceAction137(12),
+                       new ReduceAction138(12),
+                       new ReduceAction139(13),
+                       new ReduceAction140(13),
+                       new ReduceAction141(14),
+                       new ReduceAction142(14),
+                       new ReduceAction143(15),
+                       new ReduceAction144(15),
                        new ReduceAction145(16),
                        new ReduceAction146(16),
-                       new ReduceAction147(17),
-                       new ReduceAction148(17),
+                       new ReduceAction147(16),
+                       new ReduceAction148(16),
                        new ReduceAction149(17),
                        new ReduceAction150(17),
                        new ReduceAction151(17),
                        new ReduceAction152(17),
                        new ReduceAction153(17),
                        new ReduceAction154(17),
-                       new ReduceAction155(18),
-                       new ReduceAction156(18),
-                       new ReduceAction157(18),
-                       new ReduceAction158(18),
-                       new ReduceAction159(19),
-                       new ReduceAction160(19),
-                       new ReduceAction161(19),
-                       new ReduceAction162(20),
-                       new ReduceAction163(21),
-                       new ReduceAction164(21),
-                       new ReduceAction165(21),
-                       new ReduceAction166(22),
-                       new ReduceAction167(23),
-                       new ReduceAction168(23),
-                       new ReduceAction169(23),
-                       new ReduceAction170(23),
-                       new ReduceAction171(23),
-                       new ReduceAction172(23),
-                       new ReduceAction173(24),
-                       new ReduceAction174(25),
-                       new ReduceAction175(25),
-                       new ReduceAction176(25),
-                       new ReduceAction177(25),
-                       new ReduceAction178(26),
-                       new ReduceAction179(26),
-                       new ReduceAction180(27),
-                       new ReduceAction180(28),
-                       new ReduceAction182(29),
-                       new ReduceAction183(29),
-                       new ReduceAction184(29),
-                       new ReduceAction185(29),
-                       new ReduceAction186(30),
-                       new ReduceAction187(30),
-                       new ReduceAction188(31),
-                       new ReduceAction189(31),
-                       new ReduceAction190(32),
-                       new ReduceAction185(33),
-                       new ReduceAction185(33),
-                       new ReduceAction193(33),
-                       new ReduceAction194(33),
-                       new ReduceAction195(33),
-                       new ReduceAction196(33),
-                       new ReduceAction197(33),
-                       new ReduceAction198(33),
-                       new ReduceAction199(33),
-                       new ReduceAction200(33),
-                       new ReduceAction201(33),
-                       new ReduceAction202(33),
-                       new ReduceAction203(33),
-                       new ReduceAction185(33),
-                       new ReduceAction185(33),
-                       new ReduceAction185(33),
-                       new ReduceAction185(33),
-                       new ReduceAction185(33),
-                       new ReduceAction185(33),
+                       new ReduceAction155(17),
+                       new ReduceAction156(17),
+                       new ReduceAction157(17),
+                       new ReduceAction158(17),
+                       new ReduceAction159(17),
+                       new ReduceAction160(17),
+                       new ReduceAction161(17),
+                       new ReduceAction162(17),
+                       new ReduceAction163(17),
+                       new ReduceAction164(17),
+                       new ReduceAction165(17),
+                       new ReduceAction166(17),
+                       new ReduceAction167(18),
+                       new ReduceAction168(18),
+                       new ReduceAction169(18),
+                       new ReduceAction170(18),
+                       new ReduceAction171(18),
+                       new ReduceAction172(18),
+                       new ReduceAction173(18),
+                       new ReduceAction174(18),
+                       new ReduceAction175(19),
+                       new ReduceAction176(19),
+                       new ReduceAction177(19),
+                       new ReduceAction178(19),
+                       new ReduceAction179(20),
+                       new ReduceAction180(20),
+                       new ReduceAction181(20),
+                       new ReduceAction182(21),
+                       new ReduceAction183(22),
+                       new ReduceAction184(22),
+                       new ReduceAction185(22),
+                       new ReduceAction186(23),
+                       new ReduceAction187(24),
+                       new ReduceAction188(24),
+                       new ReduceAction189(24),
+                       new ReduceAction190(24),
+                       new ReduceAction191(24),
+                       new ReduceAction192(24),
+                       new ReduceAction193(25),
+                       new ReduceAction194(26),
+                       new ReduceAction195(26),
+                       new ReduceAction196(26),
+                       new ReduceAction197(26),
+                       new ReduceAction198(27),
+                       new ReduceAction199(27),
+                       new ReduceAction200(28),
+                       new ReduceAction200(29),
+                       new ReduceAction202(30),
+                       new ReduceAction203(30),
+                       new ReduceAction204(30),
+                       new ReduceAction205(30),
+                       new ReduceAction206(31),
+                       new ReduceAction207(31),
+                       new ReduceAction208(32),
+                       new ReduceAction209(32),
                        new ReduceAction210(33),
-                       new ReduceAction211(33),
-                       new ReduceAction212(33),
-                       new ReduceAction213(33),
-                       new ReduceAction214(33),
-                       new ReduceAction215(33),
-                       new ReduceAction216(33),
-                       new ReduceAction217(33),
+                       new ReduceAction205(34),
+                       new ReduceAction205(34),
+                       new ReduceAction213(34),
+                       new ReduceAction214(34),
+                       new ReduceAction215(34),
+                       new ReduceAction216(34),
+                       new ReduceAction217(34),
                        new ReduceAction218(34),
-                       new ReduceAction219(35),
-                       new ReduceAction220(35),
-                       new ReduceAction221(36),
-                       new ReduceAction222(36),
-                       new ReduceAction223(36),
-                       new ReduceAction224(36),
-                       new ReduceAction225(36),
-                       new ReduceAction226(36),
-                       new ReduceAction227(37),
-                       new ReduceAction228(37),
-                       new ReduceAction229(37),
-                       new ReduceAction230(37),
-                       new ReduceAction231(38),
-                       new ReduceAction232(38),
-                       new ReduceAction233(39),
-                       new ReduceAction234(40),
-                       new ReduceAction235(40),
-                       new ReduceAction236(40),
-                       new ReduceAction237(40),
-                       new ReduceAction238(41),
-                       new ReduceAction239(41),
-                       new ReduceAction240(41),
-                       new ReduceAction241(41),
-                       new ReduceAction242(41),
-                       new ReduceAction243(41),
-                       new ReduceAction244(41),
-                       new ReduceAction245(41),
-                       new ReduceAction246(41),
-                       new ReduceAction247(41),
-                       new ReduceAction248(42),
-                       new ReduceAction249(42),
-                       new ReduceAction250(43),
-                       new ReduceAction251(43),
-                       new ReduceAction252(44),
-                       new ReduceAction253(44),
-                       new ReduceAction254(44),
-                       new ReduceAction255(44),
-                       new ReduceAction256(44),
-                       new ReduceAction190(45),
-                       new ReduceAction36(45),
-                       new ReduceAction259(46),
-                       new ReduceAction260(46),
-                       new ReduceAction261(47),
-                       new ReduceAction262(47),
-                       new ReduceAction263(48),
-                       new ReduceAction264(48),
-                       new ReduceAction265(49),
-                       new ReduceAction266(49),
-                       new ReduceAction267(49),
-                       new ReduceAction268(49),
-                       new ReduceAction269(50),
-                       new ReduceAction185(51),
-                       new ReduceAction212(51),
-                       new ReduceAction213(51),
-                       new ReduceAction273(51),
-                       new ReduceAction185(52),
-                       new ReduceAction275(52),
-                       new ReduceAction185(53),
-                       new ReduceAction277(53),
-                       new ReduceAction278(53),
-                       new ReduceAction279(53),
-                       new ReduceAction185(54),
-                       new ReduceAction281(54),
-                       new ReduceAction185(55),
-                       new ReduceAction283(55),
-                       new ReduceAction284(55),
-                       new ReduceAction285(55),
-                       new ReduceAction286(55),
-                       new ReduceAction287(55),
-                       new ReduceAction288(55),
-                       new ReduceAction289(55),
-                       new ReduceAction290(55),
-                       new ReduceAction291(55),
-                       new ReduceAction185(56),
-                       new ReduceAction293(56),
-                       new ReduceAction294(56),
-                       new ReduceAction185(57),
-                       new ReduceAction296(57),
-                       new ReduceAction297(57),
-                       new ReduceAction298(57),
-                       new ReduceAction185(58),
-                       new ReduceAction300(58),
-                       new ReduceAction301(58),
-                       new ReduceAction185(59),
-                       new ReduceAction303(59),
-                       new ReduceAction304(59),
-                       new ReduceAction305(59),
-                       new ReduceAction306(60),
-                       new ReduceAction307(60),
-                       new ReduceAction210(60),
-                       new ReduceAction211(60),
-                       new ReduceAction214(60),
-                       new ReduceAction215(60),
-                       new ReduceAction216(60),
-                       new ReduceAction217(60),
-                       new ReduceAction314(60),
-                       new ReduceAction315(60),
-                       new ReduceAction316(60),
-                       new ReduceAction317(60),
-                       new ReduceAction318(60),
-                       new ReduceAction319(60),
-                       new ReduceAction320(60),
-                       new ReduceAction321(60),
-                       new ReduceAction322(60),
-                       new ReduceAction323(60),
-                       new ReduceAction324(60),
-                       new ReduceAction325(60),
-                       new ReduceAction326(60),
-                       new ReduceAction185(60),
-                       new ReduceAction182(60),
-                       new ReduceAction329(60),
-                       new ReduceAction330(60),
-                       new ReduceAction331(61),
-                       new ReduceAction332(61),
-                       new ReduceAction333(62),
-                       new ReduceAction334(63),
-                       new ReduceAction333(64),
-                       new ReduceAction336(65),
-                       new ReduceAction337(66),
-                       new ReduceAction338(67),
-                       new ReduceAction339(67),
-                       new ReduceAction161(67),
-                       new ReduceAction341(67),
-                       new ReduceAction338(68),
-                       new ReduceAction339(68),
-                       new ReduceAction344(68),
-                       new ReduceAction161(68),
-                       new ReduceAction341(68),
-                       new ReduceAction338(69),
-                       new ReduceAction339(69),
-                       new ReduceAction349(70),
-                       new ReduceAction350(71),
-                       new ReduceAction351(71),
-                       new ReduceAction352(72),
-                       new ReduceAction353(72),
-                       new ReduceAction354(73),
-                       new ReduceAction355(73),
-                       new ReduceAction356(73),
-                       new ReduceAction357(74),
-                       new ReduceAction358(75),
-                       new ReduceAction359(76),
-                       new ReduceAction359(76),
-                       new ReduceAction361(77),
-                       new ReduceAction362(77),
-                       new ReduceAction36(77),
-                       new ReduceAction364(78),
-                       new ReduceAction365(78),
-                       new ReduceAction366(79),
-                       new ReduceAction367(79),
-                       new ReduceAction359(79),
-                       new ReduceAction66(80),
-                       new ReduceAction67(81),
-                       new ReduceAction68(81),
-                       new ReduceAction69(81),
-                       new ReduceAction70(81),
-                       new ReduceAction71(81),
-                       new ReduceAction72(81),
-                       new ReduceAction77(81),
-                       new ReduceAction78(81),
-                       new ReduceAction79(81),
-                       new ReduceAction80(81),
-                       new ReduceAction147(82),
-                       new ReduceAction148(82),
-                       new ReduceAction149(82),
-                       new ReduceAction150(82),
-                       new ReduceAction174(83),
-                       new ReduceAction175(83),
-                       new ReduceAction185(84),
-                       new ReduceAction212(84),
-                       new ReduceAction213(84),
-                       new ReduceAction185(85),
-                       new ReduceAction275(85),
-                       new ReduceAction185(86),
-                       new ReduceAction277(86),
-                       new ReduceAction278(86),
-                       new ReduceAction279(86),
-                       new ReduceAction185(87),
-                       new ReduceAction281(87),
-                       new ReduceAction185(88),
-                       new ReduceAction283(88),
-                       new ReduceAction284(88),
-                       new ReduceAction285(88),
-                       new ReduceAction286(88),
-                       new ReduceAction287(88),
-                       new ReduceAction288(88),
-                       new ReduceAction289(88),
-                       new ReduceAction290(88),
-                       new ReduceAction291(88),
-                       new ReduceAction185(89),
-                       new ReduceAction293(89),
-                       new ReduceAction294(89),
-                       new ReduceAction185(90),
-                       new ReduceAction296(90),
-                       new ReduceAction297(90),
-                       new ReduceAction298(90),
-                       new ReduceAction185(91),
-                       new ReduceAction300(91),
-                       new ReduceAction301(91),
-                       new ReduceAction185(92),
-                       new ReduceAction303(92),
-                       new ReduceAction304(92),
-                       new ReduceAction305(92),
-                       new ReduceAction306(93),
-                       new ReduceAction307(93),
-                       new ReduceAction210(93),
-                       new ReduceAction211(93),
-                       new ReduceAction214(93),
-                       new ReduceAction215(93),
-                       new ReduceAction216(93),
-                       new ReduceAction217(93),
-                       new ReduceAction315(93),
-                       new ReduceAction319(93),
-                       new ReduceAction320(93),
-                       new ReduceAction321(93),
-                       new ReduceAction322(93),
-                       new ReduceAction323(93),
-                       new ReduceAction324(93),
-                       new ReduceAction325(93),
-                       new ReduceAction326(93),
-                       new ReduceAction185(93),
-                       new ReduceAction182(93),
-                       new ReduceAction329(93),
-                       new ReduceAction330(93),
-                       new ReduceAction182(94),
-                       new ReduceAction183(94),
-                       new ReduceAction184(94),
-                       new ReduceAction185(94),
-                       new ReduceAction185(95),
-                       new ReduceAction185(95),
-                       new ReduceAction193(95),
-                       new ReduceAction194(95),
-                       new ReduceAction195(95),
-                       new ReduceAction196(95),
-                       new ReduceAction197(95),
-                       new ReduceAction198(95),
-                       new ReduceAction199(95),
-                       new ReduceAction200(95),
-                       new ReduceAction201(95),
+                       new ReduceAction219(34),
+                       new ReduceAction220(34),
+                       new ReduceAction221(34),
+                       new ReduceAction222(34),
+                       new ReduceAction223(34),
+                       new ReduceAction205(34),
+                       new ReduceAction205(34),
+                       new ReduceAction205(34),
+                       new ReduceAction205(34),
+                       new ReduceAction205(34),
+                       new ReduceAction205(34),
+                       new ReduceAction230(34),
+                       new ReduceAction231(34),
+                       new ReduceAction232(34),
+                       new ReduceAction233(34),
+                       new ReduceAction234(34),
+                       new ReduceAction235(34),
+                       new ReduceAction236(34),
+                       new ReduceAction237(34),
+                       new ReduceAction238(35),
+                       new ReduceAction239(36),
+                       new ReduceAction240(36),
+                       new ReduceAction241(37),
+                       new ReduceAction242(37),
+                       new ReduceAction243(37),
+                       new ReduceAction244(37),
+                       new ReduceAction245(37),
+                       new ReduceAction246(37),
+                       new ReduceAction247(37),
+                       new ReduceAction248(37),
+                       new ReduceAction249(37),
+                       new ReduceAction250(38),
+                       new ReduceAction251(38),
+                       new ReduceAction252(38),
+                       new ReduceAction253(38),
+                       new ReduceAction254(38),
+                       new ReduceAction255(38),
+                       new ReduceAction256(39),
+                       new ReduceAction257(39),
+                       new ReduceAction258(40),
+                       new ReduceAction259(41),
+                       new ReduceAction260(41),
+                       new ReduceAction261(41),
+                       new ReduceAction262(41),
+                       new ReduceAction263(42),
+                       new ReduceAction264(42),
+                       new ReduceAction265(42),
+                       new ReduceAction266(42),
+                       new ReduceAction267(42),
+                       new ReduceAction268(42),
+                       new ReduceAction269(42),
+                       new ReduceAction270(42),
+                       new ReduceAction271(42),
+                       new ReduceAction272(42),
+                       new ReduceAction273(43),
+                       new ReduceAction274(43),
+                       new ReduceAction275(44),
+                       new ReduceAction276(44),
+                       new ReduceAction277(45),
+                       new ReduceAction278(45),
+                       new ReduceAction279(45),
+                       new ReduceAction280(45),
+                       new ReduceAction281(45),
+                       new ReduceAction210(46),
+                       new ReduceAction36(46),
+                       new ReduceAction284(47),
+                       new ReduceAction285(47),
+                       new ReduceAction286(48),
+                       new ReduceAction287(48),
+                       new ReduceAction288(49),
+                       new ReduceAction289(49),
+                       new ReduceAction290(49),
+                       new ReduceAction291(49),
+                       new ReduceAction292(50),
+                       new ReduceAction293(50),
+                       new ReduceAction294(50),
+                       new ReduceAction295(50),
+                       new ReduceAction296(51),
+                       new ReduceAction205(52),
+                       new ReduceAction232(52),
+                       new ReduceAction233(52),
+                       new ReduceAction300(52),
+                       new ReduceAction205(53),
+                       new ReduceAction302(53),
+                       new ReduceAction205(54),
+                       new ReduceAction304(54),
+                       new ReduceAction305(54),
+                       new ReduceAction306(54),
+                       new ReduceAction205(55),
+                       new ReduceAction308(55),
+                       new ReduceAction205(56),
+                       new ReduceAction310(56),
+                       new ReduceAction311(56),
+                       new ReduceAction312(56),
+                       new ReduceAction313(56),
+                       new ReduceAction314(56),
+                       new ReduceAction315(56),
+                       new ReduceAction316(56),
+                       new ReduceAction317(56),
+                       new ReduceAction318(56),
+                       new ReduceAction319(56),
+                       new ReduceAction320(56),
+                       new ReduceAction205(57),
+                       new ReduceAction322(57),
+                       new ReduceAction323(57),
+                       new ReduceAction205(58),
+                       new ReduceAction325(58),
+                       new ReduceAction326(58),
+                       new ReduceAction327(58),
+                       new ReduceAction205(59),
+                       new ReduceAction329(59),
+                       new ReduceAction330(59),
+                       new ReduceAction205(60),
+                       new ReduceAction332(60),
+                       new ReduceAction333(60),
+                       new ReduceAction334(60),
+                       new ReduceAction335(61),
+                       new ReduceAction336(61),
+                       new ReduceAction230(61),
+                       new ReduceAction231(61),
+                       new ReduceAction234(61),
+                       new ReduceAction235(61),
+                       new ReduceAction236(61),
+                       new ReduceAction237(61),
+                       new ReduceAction343(61),
+                       new ReduceAction344(61),
+                       new ReduceAction345(61),
+                       new ReduceAction346(61),
+                       new ReduceAction347(61),
+                       new ReduceAction348(61),
+                       new ReduceAction349(61),
+                       new ReduceAction350(61),
+                       new ReduceAction351(61),
+                       new ReduceAction352(61),
+                       new ReduceAction353(61),
+                       new ReduceAction354(61),
+                       new ReduceAction355(61),
+                       new ReduceAction205(61),
+                       new ReduceAction202(61),
+                       new ReduceAction358(61),
+                       new ReduceAction359(61),
+                       new ReduceAction360(62),
+                       new ReduceAction361(62),
+                       new ReduceAction362(63),
+                       new ReduceAction363(64),
+                       new ReduceAction362(65),
+                       new ReduceAction365(66),
+                       new ReduceAction366(67),
+                       new ReduceAction367(68),
+                       new ReduceAction368(68),
+                       new ReduceAction181(68),
+                       new ReduceAction370(68),
+                       new ReduceAction367(69),
+                       new ReduceAction368(69),
+                       new ReduceAction373(69),
+                       new ReduceAction181(69),
+                       new ReduceAction370(69),
+                       new ReduceAction367(70),
+                       new ReduceAction368(70),
+                       new ReduceAction378(71),
+                       new ReduceAction379(72),
+                       new ReduceAction380(72),
+                       new ReduceAction381(73),
+                       new ReduceAction382(73),
+                       new ReduceAction383(73),
+                       new ReduceAction384(73),
+                       new ReduceAction385(74),
+                       new ReduceAction386(74),
+                       new ReduceAction387(74),
+                       new ReduceAction388(75),
+                       new ReduceAction389(76),
+                       new ReduceAction390(77),
+                       new ReduceAction390(77),
+                       new ReduceAction392(78),
+                       new ReduceAction393(78),
+                       new ReduceAction36(78),
+                       new ReduceAction395(79),
+                       new ReduceAction396(79),
+                       new ReduceAction397(80),
+                       new ReduceAction398(80),
+                       new ReduceAction390(80),
+                       new ReduceAction66(81),
+                       new ReduceAction67(82),
+                       new ReduceAction68(82),
+                       new ReduceAction69(82),
+                       new ReduceAction70(82),
+                       new ReduceAction71(82),
+                       new ReduceAction72(82),
+                       new ReduceAction77(82),
+                       new ReduceAction78(82),
+                       new ReduceAction79(82),
+                       new ReduceAction80(82),
+                       new ReduceAction167(83),
+                       new ReduceAction168(83),
+                       new ReduceAction169(83),
+                       new ReduceAction170(83),
+                       new ReduceAction194(84),
+                       new ReduceAction195(84),
+                       new ReduceAction205(85),
+                       new ReduceAction232(85),
+                       new ReduceAction233(85),
+                       new ReduceAction205(86),
+                       new ReduceAction302(86),
+                       new ReduceAction205(87),
+                       new ReduceAction304(87),
+                       new ReduceAction305(87),
+                       new ReduceAction306(87),
+                       new ReduceAction205(88),
+                       new ReduceAction308(88),
+                       new ReduceAction205(89),
+                       new ReduceAction310(89),
+                       new ReduceAction311(89),
+                       new ReduceAction312(89),
+                       new ReduceAction313(89),
+                       new ReduceAction314(89),
+                       new ReduceAction315(89),
+                       new ReduceAction316(89),
+                       new ReduceAction317(89),
+                       new ReduceAction318(89),
+                       new ReduceAction319(89),
+                       new ReduceAction320(89),
+                       new ReduceAction205(90),
+                       new ReduceAction322(90),
+                       new ReduceAction323(90),
+                       new ReduceAction205(91),
+                       new ReduceAction325(91),
+                       new ReduceAction326(91),
+                       new ReduceAction327(91),
+                       new ReduceAction205(92),
+                       new ReduceAction329(92),
+                       new ReduceAction330(92),
+                       new ReduceAction205(93),
+                       new ReduceAction332(93),
+                       new ReduceAction333(93),
+                       new ReduceAction334(93),
+                       new ReduceAction335(94),
+                       new ReduceAction336(94),
+                       new ReduceAction230(94),
+                       new ReduceAction231(94),
+                       new ReduceAction234(94),
+                       new ReduceAction235(94),
+                       new ReduceAction236(94),
+                       new ReduceAction237(94),
+                       new ReduceAction344(94),
+                       new ReduceAction348(94),
+                       new ReduceAction349(94),
+                       new ReduceAction350(94),
+                       new ReduceAction351(94),
+                       new ReduceAction352(94),
+                       new ReduceAction353(94),
+                       new ReduceAction354(94),
+                       new ReduceAction355(94),
+                       new ReduceAction205(94),
+                       new ReduceAction202(94),
+                       new ReduceAction358(94),
+                       new ReduceAction359(94),
                        new ReduceAction202(95),
                        new ReduceAction203(95),
-                       new ReduceAction185(95),
-                       new ReduceAction185(95),
-                       new ReduceAction185(95),
-                       new ReduceAction185(95),
-                       new ReduceAction185(95),
-                       new ReduceAction185(95),
-                       new ReduceAction210(95),
-                       new ReduceAction211(95),
-                       new ReduceAction212(95),
-                       new ReduceAction213(95),
-                       new ReduceAction214(95),
-                       new ReduceAction215(95),
-                       new ReduceAction216(95),
-                       new ReduceAction217(95),
+                       new ReduceAction204(95),
+                       new ReduceAction205(95),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction213(96),
+                       new ReduceAction214(96),
+                       new ReduceAction215(96),
+                       new ReduceAction216(96),
+                       new ReduceAction217(96),
+                       new ReduceAction218(96),
                        new ReduceAction219(96),
                        new ReduceAction220(96),
-                       new ReduceAction221(97),
-                       new ReduceAction222(97),
-                       new ReduceAction223(97),
-                       new ReduceAction224(97),
-                       new ReduceAction225(97),
-                       new ReduceAction226(97),
-                       new ReduceAction233(98),
-                       new ReduceAction234(99),
-                       new ReduceAction235(99),
-                       new ReduceAction236(99),
-                       new ReduceAction237(99),
-                       new ReduceAction238(100),
-                       new ReduceAction239(100),
-                       new ReduceAction240(100),
-                       new ReduceAction241(100),
-                       new ReduceAction242(100),
-                       new ReduceAction243(100),
-                       new ReduceAction244(100),
-                       new ReduceAction245(100),
-                       new ReduceAction246(100),
-                       new ReduceAction247(100),
-                       new ReduceAction250(101),
-                       new ReduceAction251(101),
-                       new ReduceAction252(102),
-                       new ReduceAction259(103),
-                       new ReduceAction260(103),
-                       new ReduceAction261(104),
-                       new ReduceAction262(104),
-                       new ReduceAction263(105),
-                       new ReduceAction264(105),
-                       new ReduceAction265(106),
-                       new ReduceAction266(106),
-                       new ReduceAction185(107),
-                       new ReduceAction212(107),
-                       new ReduceAction213(107),
-                       new ReduceAction273(107),
-                       new ReduceAction185(108),
-                       new ReduceAction212(108),
-                       new ReduceAction213(108),
-                       new ReduceAction182(109),
-                       new ReduceAction183(109),
-                       new ReduceAction184(109),
-                       new ReduceAction182(110),
-                       new ReduceAction183(110),
-                       new ReduceAction184(110),
-                       new ReduceAction185(111),
-                       new ReduceAction212(111),
-                       new ReduceAction213(111),
-                       new ReduceAction185(112),
-                       new ReduceAction275(112),
-                       new ReduceAction185(113),
-                       new ReduceAction277(113),
-                       new ReduceAction278(113),
-                       new ReduceAction279(113),
-                       new ReduceAction185(114),
-                       new ReduceAction281(114),
-                       new ReduceAction185(115),
-                       new ReduceAction283(115),
-                       new ReduceAction284(115),
-                       new ReduceAction285(115),
-                       new ReduceAction286(115),
-                       new ReduceAction287(115),
-                       new ReduceAction288(115),
-                       new ReduceAction289(115),
-                       new ReduceAction290(115),
-                       new ReduceAction291(115),
-                       new ReduceAction185(116),
-                       new ReduceAction293(116),
-                       new ReduceAction294(116),
-                       new ReduceAction185(117),
-                       new ReduceAction296(117),
-                       new ReduceAction297(117),
-                       new ReduceAction298(117),
-                       new ReduceAction185(118),
-                       new ReduceAction300(118),
-                       new ReduceAction301(118),
-                       new ReduceAction185(119),
-                       new ReduceAction303(119),
-                       new ReduceAction304(119),
-                       new ReduceAction305(119),
-                       new ReduceAction306(120),
-                       new ReduceAction307(120),
-                       new ReduceAction210(120),
-                       new ReduceAction211(120),
-                       new ReduceAction214(120),
-                       new ReduceAction215(120),
-                       new ReduceAction216(120),
-                       new ReduceAction217(120),
-                       new ReduceAction314(120),
-                       new ReduceAction315(120),
-                       new ReduceAction319(120),
-                       new ReduceAction320(120),
-                       new ReduceAction321(120),
-                       new ReduceAction322(120),
-                       new ReduceAction323(120),
-                       new ReduceAction324(120),
-                       new ReduceAction325(120),
-                       new ReduceAction326(120),
-                       new ReduceAction185(120),
-                       new ReduceAction329(120),
-                       new ReduceAction330(120),
-                       new ReduceAction185(121),
-                       new ReduceAction212(121),
-                       new ReduceAction213(121),
-                       new ReduceAction185(122),
-                       new ReduceAction275(122),
-                       new ReduceAction185(123),
-                       new ReduceAction277(123),
-                       new ReduceAction278(123),
-                       new ReduceAction279(123),
-                       new ReduceAction185(124),
-                       new ReduceAction281(124),
-                       new ReduceAction185(125),
-                       new ReduceAction283(125),
-                       new ReduceAction284(125),
-                       new ReduceAction285(125),
-                       new ReduceAction286(125),
-                       new ReduceAction287(125),
-                       new ReduceAction288(125),
-                       new ReduceAction289(125),
-                       new ReduceAction290(125),
-                       new ReduceAction291(125),
-                       new ReduceAction185(126),
-                       new ReduceAction293(126),
-                       new ReduceAction294(126),
-                       new ReduceAction185(127),
-                       new ReduceAction296(127),
-                       new ReduceAction297(127),
-                       new ReduceAction298(127),
-                       new ReduceAction185(128),
-                       new ReduceAction300(128),
-                       new ReduceAction301(128),
-                       new ReduceAction185(129),
-                       new ReduceAction303(129),
-                       new ReduceAction609(129),
-                       new ReduceAction610(130),
-                       new ReduceAction611(130),
-                       new ReduceAction214(130),
-                       new ReduceAction215(130),
-                       new ReduceAction614(130),
-                       new ReduceAction315(130),
-                       new ReduceAction319(130),
-                       new ReduceAction320(130),
-                       new ReduceAction321(130),
-                       new ReduceAction322(130),
-                       new ReduceAction323(130),
-                       new ReduceAction324(130),
-                       new ReduceAction325(130),
-                       new ReduceAction326(130),
-                       new ReduceAction185(130),
-                       new ReduceAction329(130),
-                       new ReduceAction330(130),
-                       new ReduceAction627(131),
-                       new ReduceAction628(131),
-                       new ReduceAction185(132),
-                       new ReduceAction212(132),
-                       new ReduceAction213(132),
-                       new ReduceAction185(133),
-                       new ReduceAction212(133),
-                       new ReduceAction213(133),
-                       new ReduceAction635(134),
-                       new ReduceAction636(134),
-                       new ReduceAction637(135),
-                       new ReduceAction638(135),
-                       new ReduceAction639(136),
-                       new ReduceAction640(136),
-                       new ReduceAction641(137),
-                       new ReduceAction642(137),
-                       new ReduceAction639(138),
-                       new ReduceAction640(138),
-                       new ReduceAction645(139),
-                       new ReduceAction646(139),
-                       new ReduceAction647(140),
-                       new ReduceAction648(140),
-                       new ReduceAction649(141),
-                       new ReduceAction650(141),
-                       new ReduceAction178(142),
-                       new ReduceAction652(142),
-                       new ReduceAction344(143),
-                       new ReduceAction654(143),
-                       new ReduceAction351(144),
-                       new ReduceAction656(144),
-                       new ReduceAction344(145),
-                       new ReduceAction654(145),
-                       new ReduceAction352(146),
-                       new ReduceAction660(146),
-                       new ReduceAction661(147),
-                       new ReduceAction662(147),
-                       new ReduceAction663(148),
-                       new ReduceAction664(148)
+                       new ReduceAction221(96),
+                       new ReduceAction222(96),
+                       new ReduceAction223(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction230(96),
+                       new ReduceAction231(96),
+                       new ReduceAction232(96),
+                       new ReduceAction233(96),
+                       new ReduceAction234(96),
+                       new ReduceAction235(96),
+                       new ReduceAction236(96),
+                       new ReduceAction237(96),
+                       new ReduceAction239(97),
+                       new ReduceAction240(97),
+                       new ReduceAction241(98),
+                       new ReduceAction242(98),
+                       new ReduceAction243(98),
+                       new ReduceAction244(98),
+                       new ReduceAction245(98),
+                       new ReduceAction246(98),
+                       new ReduceAction247(98),
+                       new ReduceAction248(98),
+                       new ReduceAction249(98),
+                       new ReduceAction258(99),
+                       new ReduceAction259(100),
+                       new ReduceAction260(100),
+                       new ReduceAction261(100),
+                       new ReduceAction262(100),
+                       new ReduceAction263(101),
+                       new ReduceAction264(101),
+                       new ReduceAction265(101),
+                       new ReduceAction266(101),
+                       new ReduceAction267(101),
+                       new ReduceAction268(101),
+                       new ReduceAction269(101),
+                       new ReduceAction270(101),
+                       new ReduceAction271(101),
+                       new ReduceAction272(101),
+                       new ReduceAction275(102),
+                       new ReduceAction276(102),
+                       new ReduceAction277(103),
+                       new ReduceAction284(104),
+                       new ReduceAction285(104),
+                       new ReduceAction286(105),
+                       new ReduceAction287(105),
+                       new ReduceAction288(106),
+                       new ReduceAction289(106),
+                       new ReduceAction290(106),
+                       new ReduceAction291(106),
+                       new ReduceAction292(107),
+                       new ReduceAction293(107),
+                       new ReduceAction205(108),
+                       new ReduceAction232(108),
+                       new ReduceAction233(108),
+                       new ReduceAction300(108),
+                       new ReduceAction205(109),
+                       new ReduceAction232(109),
+                       new ReduceAction233(109),
+                       new ReduceAction202(110),
+                       new ReduceAction203(110),
+                       new ReduceAction204(110),
+                       new ReduceAction202(111),
+                       new ReduceAction203(111),
+                       new ReduceAction204(111),
+                       new ReduceAction205(112),
+                       new ReduceAction232(112),
+                       new ReduceAction233(112),
+                       new ReduceAction205(113),
+                       new ReduceAction302(113),
+                       new ReduceAction205(114),
+                       new ReduceAction304(114),
+                       new ReduceAction305(114),
+                       new ReduceAction306(114),
+                       new ReduceAction205(115),
+                       new ReduceAction308(115),
+                       new ReduceAction205(116),
+                       new ReduceAction310(116),
+                       new ReduceAction311(116),
+                       new ReduceAction312(116),
+                       new ReduceAction313(116),
+                       new ReduceAction314(116),
+                       new ReduceAction315(116),
+                       new ReduceAction316(116),
+                       new ReduceAction317(116),
+                       new ReduceAction318(116),
+                       new ReduceAction319(116),
+                       new ReduceAction320(116),
+                       new ReduceAction205(117),
+                       new ReduceAction322(117),
+                       new ReduceAction323(117),
+                       new ReduceAction205(118),
+                       new ReduceAction325(118),
+                       new ReduceAction326(118),
+                       new ReduceAction327(118),
+                       new ReduceAction205(119),
+                       new ReduceAction329(119),
+                       new ReduceAction330(119),
+                       new ReduceAction205(120),
+                       new ReduceAction332(120),
+                       new ReduceAction333(120),
+                       new ReduceAction334(120),
+                       new ReduceAction335(121),
+                       new ReduceAction336(121),
+                       new ReduceAction230(121),
+                       new ReduceAction231(121),
+                       new ReduceAction234(121),
+                       new ReduceAction235(121),
+                       new ReduceAction236(121),
+                       new ReduceAction237(121),
+                       new ReduceAction343(121),
+                       new ReduceAction344(121),
+                       new ReduceAction348(121),
+                       new ReduceAction349(121),
+                       new ReduceAction350(121),
+                       new ReduceAction351(121),
+                       new ReduceAction352(121),
+                       new ReduceAction353(121),
+                       new ReduceAction354(121),
+                       new ReduceAction355(121),
+                       new ReduceAction205(121),
+                       new ReduceAction358(121),
+                       new ReduceAction359(121),
+                       new ReduceAction205(122),
+                       new ReduceAction232(122),
+                       new ReduceAction233(122),
+                       new ReduceAction205(123),
+                       new ReduceAction302(123),
+                       new ReduceAction205(124),
+                       new ReduceAction304(124),
+                       new ReduceAction305(124),
+                       new ReduceAction306(124),
+                       new ReduceAction205(125),
+                       new ReduceAction308(125),
+                       new ReduceAction205(126),
+                       new ReduceAction310(126),
+                       new ReduceAction311(126),
+                       new ReduceAction312(126),
+                       new ReduceAction313(126),
+                       new ReduceAction314(126),
+                       new ReduceAction315(126),
+                       new ReduceAction316(126),
+                       new ReduceAction317(126),
+                       new ReduceAction318(126),
+                       new ReduceAction319(126),
+                       new ReduceAction320(126),
+                       new ReduceAction205(127),
+                       new ReduceAction322(127),
+                       new ReduceAction323(127),
+                       new ReduceAction205(128),
+                       new ReduceAction325(128),
+                       new ReduceAction326(128),
+                       new ReduceAction327(128),
+                       new ReduceAction205(129),
+                       new ReduceAction329(129),
+                       new ReduceAction330(129),
+                       new ReduceAction205(130),
+                       new ReduceAction332(130),
+                       new ReduceAction651(130),
+                       new ReduceAction652(131),
+                       new ReduceAction653(131),
+                       new ReduceAction234(131),
+                       new ReduceAction235(131),
+                       new ReduceAction656(131),
+                       new ReduceAction344(131),
+                       new ReduceAction348(131),
+                       new ReduceAction349(131),
+                       new ReduceAction350(131),
+                       new ReduceAction351(131),
+                       new ReduceAction352(131),
+                       new ReduceAction353(131),
+                       new ReduceAction354(131),
+                       new ReduceAction355(131),
+                       new ReduceAction205(131),
+                       new ReduceAction358(131),
+                       new ReduceAction359(131),
+                       new ReduceAction669(132),
+                       new ReduceAction670(132),
+                       new ReduceAction205(133),
+                       new ReduceAction232(133),
+                       new ReduceAction233(133),
+                       new ReduceAction205(134),
+                       new ReduceAction232(134),
+                       new ReduceAction233(134),
+                       new ReduceAction677(135),
+                       new ReduceAction678(135),
+                       new ReduceAction679(136),
+                       new ReduceAction680(136),
+                       new ReduceAction681(137),
+                       new ReduceAction682(137),
+                       new ReduceAction683(138),
+                       new ReduceAction684(138),
+                       new ReduceAction681(139),
+                       new ReduceAction682(139),
+                       new ReduceAction687(140),
+                       new ReduceAction688(140),
+                       new ReduceAction689(141),
+                       new ReduceAction690(141),
+                       new ReduceAction691(142),
+                       new ReduceAction692(142),
+                       new ReduceAction198(143),
+                       new ReduceAction694(143),
+                       new ReduceAction373(144),
+                       new ReduceAction696(144),
+                       new ReduceAction697(145),
+                       new ReduceAction698(145),
+                       new ReduceAction373(146),
+                       new ReduceAction696(146),
+                       new ReduceAction379(147),
+                       new ReduceAction702(147),
+                       new ReduceAction703(148),
+                       new ReduceAction704(148),
+                       new ReduceAction705(149),
+                       new ReduceAction706(149)
                )
        end
 end
@@ -834,7 +874,7 @@ end
 # Find location of production nodes
 # Uses existing token locations to infer location of productions.
 private class ComputeProdLocationVisitor
-special Visitor
+       super Visitor
        # Currenlty visited productions that need a first token
        var _need_first_prods: Array[Prod] = new Array[Prod]
 
@@ -927,10 +967,12 @@ private abstract class ReduceAction
                l1.append(l2)
                return l1
        end
+       var _goto: Int
+       init(g: Int) do _goto = g
 end
 
 private class ReduceAction0
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -944,32 +986,28 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction1
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode4 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode4
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction2
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -987,11 +1025,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction3
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -999,24 +1035,22 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode5 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode5
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction4
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1034,11 +1068,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction5
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1046,24 +1078,22 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode5 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode4 = nodearraylist2
                                        assert listnode4 isa Array[Object]
                                        listnode5 = concat(listnode5, listnode4)
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode5
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction6
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1085,11 +1115,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction7
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1098,8 +1126,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode6 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
@@ -1107,18 +1135,16 @@ special ReduceAction
                                        assert listnode5 isa Array[Object]
                                        listnode6 = concat(listnode6, listnode5)
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode6
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction8
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1143,11 +1169,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction9
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1155,8 +1179,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode7 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode6 = new Array[Object]
                                        var listnode5 = nodearraylist2
                                        assert listnode5 isa Array[Object]
@@ -1168,18 +1192,16 @@ special ReduceAction
                                                listnode7.add(pclassdefnode4)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode7
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction10
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1208,11 +1230,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction11
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1221,8 +1241,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode8 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
@@ -1237,18 +1257,16 @@ special ReduceAction
                                                listnode8.add(pclassdefnode5)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode8
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction12
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1277,11 +1295,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction13
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1290,8 +1306,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode8 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode4 = nodearraylist2
                                        assert listnode4 isa Array[Object]
                                        var listnode7 = new Array[Object]
@@ -1306,18 +1322,16 @@ special ReduceAction
                                                listnode8.add(pclassdefnode5)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode8
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction14
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1350,11 +1364,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction15
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1364,8 +1376,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode9 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
@@ -1383,18 +1395,16 @@ special ReduceAction
                                                listnode9.add(pclassdefnode6)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode9
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction16
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1414,11 +1424,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction17
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1426,26 +1434,24 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode5 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var pclassdefnode4 = nodearraylist2
                                        assert pclassdefnode4 isa nullable AClassdef
                                        if pclassdefnode4 != null then
                                                listnode5.add(pclassdefnode4)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode5
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction18
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1469,11 +1475,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction19
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1482,8 +1486,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode6 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
@@ -1493,18 +1497,16 @@ special ReduceAction
                                                listnode6.add(pclassdefnode5)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode6
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction20
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1528,11 +1530,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction21
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1541,8 +1541,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode6 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode4 = nodearraylist2
                                        assert listnode4 isa Array[Object]
                                        var pclassdefnode5 = nodearraylist3
@@ -1552,18 +1552,16 @@ special ReduceAction
                                                listnode6.add(pclassdefnode5)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode6
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction22
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1591,11 +1589,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction23
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1605,8 +1601,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode7 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
@@ -1619,18 +1615,16 @@ special ReduceAction
                                                listnode7.add(pclassdefnode6)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode7
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction24
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1661,11 +1655,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction25
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1674,8 +1666,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode8 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode6 = new Array[Object]
                                        var listnode5 = nodearraylist2
                                        assert listnode5 isa Array[Object]
@@ -1692,18 +1684,16 @@ special ReduceAction
                                                listnode8.add(pclassdefnode7)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode8
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction26
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1738,11 +1728,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction27
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1752,8 +1740,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode9 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
@@ -1773,18 +1761,16 @@ special ReduceAction
                                                listnode9.add(pclassdefnode8)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode9
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction28
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1819,11 +1805,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction29
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1833,8 +1817,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode9 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode4 = nodearraylist2
                                        assert listnode4 isa Array[Object]
                                        var listnode7 = new Array[Object]
@@ -1854,18 +1838,16 @@ special ReduceAction
                                                listnode9.add(pclassdefnode8)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode3,
                                                listnode9
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction30
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1904,11 +1886,9 @@ special ReduceAction
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction31
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1919,8 +1899,8 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var listnode4 = new Array[Object]
                                        var listnode10 = new Array[Object]
-                                       var ppackagedeclnode2 = nodearraylist1
-                                       assert ppackagedeclnode2 isa nullable APackagedecl
+                                       var pmoduledeclnode2 = nodearraylist1
+                                       assert pmoduledeclnode2 isa nullable AModuledecl
                                        var listnode3 = nodearraylist2
                                        assert listnode3 isa Array[Object]
                                        listnode4 = concat(listnode4, listnode3)
@@ -1943,18 +1923,16 @@ special ReduceAction
                                                listnode10.add(pclassdefnode9)
                                        end
                                        var pmodulenode1: nullable AModule = new AModule.init_amodule(
-                                               ppackagedeclnode2,
+                                               pmoduledeclnode2,
                                                listnode4,
                                                listnode10
                                        )
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction32
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1965,23 +1943,21 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var pdocnode2 = nodearraylist1
                                        assert pdocnode2 isa nullable ADoc
-                                       var tkwpackagenode3 = nodearraylist2
-                                       assert tkwpackagenode3 isa nullable TKwpackage
-                                       var tidnode4 = nodearraylist4
-                                       assert tidnode4 isa nullable TId
-                                       var ppackagedeclnode1: nullable APackagedecl = new APackagedecl.init_apackagedecl(
+                                       var tkwmodulenode3 = nodearraylist2
+                                       assert tkwmodulenode3 isa nullable TKwmodule
+                                       var pmodulenamenode4 = nodearraylist4
+                                       assert pmodulenamenode4 isa nullable AModuleName
+                                       var pmoduledeclnode1: nullable AModuledecl = new AModuledecl.init_amoduledecl(
                                                pdocnode2,
-                                               tkwpackagenode3,
-                                               tidnode4
+                                               tkwmodulenode3,
+                                               pmodulenamenode4
                                        )
-                                       node_list = ppackagedeclnode1
+                                       node_list = pmoduledeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction33
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -1995,21 +1971,19 @@ special ReduceAction
                                        assert pvisibilitynode2 isa nullable AVisibility
                                        var tkwimportnode3 = nodearraylist3
                                        assert tkwimportnode3 isa nullable TKwimport
-                                       var tidnode4 = nodearraylist5
-                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode4 = nodearraylist5
+                                       assert pmodulenamenode4 isa nullable AModuleName
                                        var pimportnode1: nullable AStdImport = new AStdImport.init_astdimport(
                                                pvisibilitynode2,
                                                tkwimportnode3,
-                                               tidnode4
+                                               pmodulenamenode4
                                        )
                                        node_list = pimportnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction34
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2033,11 +2007,9 @@ special ReduceAction
                                        node_list = pimportnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction35
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2054,11 +2026,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction36
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2066,11 +2036,9 @@ special ReduceAction
                                        node_list = null
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction37
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2085,11 +2053,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction39
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2124,11 +2090,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction40
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2166,11 +2130,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction41
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2209,11 +2171,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction42
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2255,11 +2215,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction43
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2298,11 +2256,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction44
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2344,11 +2300,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction45
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2391,11 +2345,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction46
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2441,11 +2393,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction47
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2484,11 +2434,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction48
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2530,11 +2478,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction49
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2577,11 +2523,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction50
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2627,11 +2571,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction51
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2674,11 +2616,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction52
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2724,11 +2664,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction53
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2775,11 +2713,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction54
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2829,11 +2765,9 @@ special ReduceAction
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction55
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2846,11 +2780,9 @@ special ReduceAction
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction56
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2867,11 +2799,9 @@ special ReduceAction
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction57
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2884,28 +2814,24 @@ special ReduceAction
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction58
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
-                                       var tkwuniversalnode2 = nodearraylist1
-                                       assert tkwuniversalnode2 isa nullable TKwuniversal
-                                       var pclasskindnode1: nullable AUniversalClasskind = new AUniversalClasskind.init_auniversalclasskind(
-                                               tkwuniversalnode2
+                                       var tkwenumnode2 = nodearraylist1
+                                       assert tkwenumnode2 isa nullable TKwenum
+                                       var pclasskindnode1: nullable AEnumClasskind = new AEnumClasskind.init_aenumclasskind(
+                                               tkwenumnode2
                                        )
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction59
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2922,11 +2848,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction60
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2947,11 +2871,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction61
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2962,11 +2884,9 @@ special ReduceAction
                                        node_list = pformaldefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction62
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -2980,11 +2900,9 @@ special ReduceAction
                                        node_list = pformaldefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction63
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3001,11 +2919,9 @@ special ReduceAction
                                        node_list = pformaldefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction64
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3025,11 +2941,9 @@ special ReduceAction
                                        node_list = psuperclassnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction65
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3049,11 +2963,9 @@ special ReduceAction
                                        node_list = psuperclassnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction66
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3063,11 +2975,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction67
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3102,11 +3012,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction68
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3144,11 +3052,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction69
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3184,11 +3090,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction70
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3227,11 +3131,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction71
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3267,11 +3169,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction72
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3310,11 +3210,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction73
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3346,11 +3244,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction74
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3385,11 +3281,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction75
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3421,11 +3315,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction76
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3460,11 +3352,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction77
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3497,11 +3387,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction78
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3537,11 +3425,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction79
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3577,11 +3463,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction80
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3620,11 +3504,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction81
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3649,16 +3531,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction82
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3686,16 +3567,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction83
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3723,16 +3603,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction84
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3763,16 +3642,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction85
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3800,16 +3678,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction86
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3840,16 +3717,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction87
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3880,16 +3756,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction88
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3923,16 +3798,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
+                                               null,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction89
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3949,8 +3823,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist4
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist5
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist5
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -3959,17 +3833,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction90
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -3989,8 +3862,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist6
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -3999,17 +3872,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction91
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4029,8 +3901,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist6
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4039,17 +3911,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction92
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4072,8 +3943,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist7
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist7
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4082,17 +3953,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction93
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4112,8 +3982,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist6
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4122,17 +3992,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction94
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4155,8 +4024,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist7
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist7
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4165,17 +4034,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction95
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4198,8 +4066,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist7
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist7
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4208,17 +4076,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction96
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4244,8 +4111,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist7
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist8
-                                       assert ptypenode9 isa nullable AType
+                                       var ptypenode10 = nodearraylist8
+                                       assert ptypenode10 isa nullable AType
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4254,17 +4121,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
+                                               null,
+                                               ptypenode10,
                                                null
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction97
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4283,8 +4149,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist4
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist7
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist7
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4294,16 +4160,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction98
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4325,8 +4190,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist8
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist8
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4336,16 +4201,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction99
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4367,8 +4231,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist8
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist8
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4378,16 +4242,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction100
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4412,8 +4275,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist9
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4423,16 +4286,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction101
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4454,8 +4316,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist8
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist8
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4465,16 +4327,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction102
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4499,8 +4360,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist9
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4510,16 +4371,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction103
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4544,8 +4404,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist9
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4555,16 +4415,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction104
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4592,8 +4451,8 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist7
                                        assert tattridnode8 isa nullable TAttrid
-                                       var pexprnode10 = nodearraylist10
-                                       assert pexprnode10 isa nullable AExpr
+                                       var pexprnode11 = nodearraylist10
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4603,16 +4462,15 @@ special ReduceAction
                                                tkwvarnode7,
                                                tattridnode8,
                                                null,
-                                               pexprnode10
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction105
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4632,10 +4490,10 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist4
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist5
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist8
-                                       assert pexprnode10 isa nullable AExpr
+                                       var ptypenode10 = nodearraylist5
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist8
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4644,17 +4502,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction106
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4677,10 +4534,10 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist6
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist9
-                                       assert pexprnode10 isa nullable AExpr
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4689,17 +4546,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction107
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4722,10 +4578,10 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist6
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist9
-                                       assert pexprnode10 isa nullable AExpr
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4734,17 +4590,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction108
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4770,10 +4625,10 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist7
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist10
-                                       assert pexprnode10 isa nullable AExpr
+                                       var ptypenode10 = nodearraylist7
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist10
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4782,17 +4637,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction109
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4815,10 +4669,10 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist5
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist6
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist9
-                                       assert pexprnode10 isa nullable AExpr
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4827,17 +4681,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction110
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4863,10 +4716,10 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist7
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist10
-                                       assert pexprnode10 isa nullable AExpr
+                                       var ptypenode10 = nodearraylist7
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist10
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                null,
@@ -4875,17 +4728,16 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction111
-special ReduceAction
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -4911,10 +4763,10 @@ special ReduceAction
                                        assert tkwvarnode7 isa nullable TKwvar
                                        var tattridnode8 = nodearraylist6
                                        assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist7
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist10
-                                       assert pexprnode10 isa nullable AExpr
+                                       var ptypenode10 = nodearraylist7
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist10
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
                                                pablenode3,
@@ -4923,21 +4775,662 @@ special ReduceAction
                                                pvisibilitynode6,
                                                tkwvarnode7,
                                                tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction112
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist11 = p.pop
+                                       var nodearraylist10 = p.pop
+                                       var nodearraylist9 = p.pop
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode3 = nodearraylist2
+                                       assert pablenode3 isa nullable AAble
+                                       var pablenode4 = nodearraylist3
+                                       assert pablenode4 isa nullable AAble
+                                       var tkwredefnode5 = nodearraylist4
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist5
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist6
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tattridnode8 = nodearraylist7
+                                       assert tattridnode8 isa nullable TAttrid
+                                       var ptypenode10 = nodearraylist8
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist11
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               pablenode3,
+                                               pablenode4,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               tattridnode8,
+                                               null,
+                                               ptypenode10,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction113
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction114
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var tkwredefnode5 = nodearraylist2
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist3
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist4
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction115
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist5
+                                       assert ptypenode10 isa nullable AType
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction116
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var tkwredefnode5 = nodearraylist2
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist3
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist4
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction117
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode4 = nodearraylist5
+                                       assert pablenode4 isa nullable AAble
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               pablenode4,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction118
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode4 = nodearraylist6
+                                       assert pablenode4 isa nullable AAble
+                                       var tkwredefnode5 = nodearraylist2
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist3
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist4
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               pablenode4,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction119
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode4 = nodearraylist6
+                                       assert pablenode4 isa nullable AAble
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist5
+                                       assert ptypenode10 isa nullable AType
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               pablenode4,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction120
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode4 = nodearraylist7
+                                       assert pablenode4 isa nullable AAble
+                                       var tkwredefnode5 = nodearraylist2
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist3
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist4
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               pablenode4,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               null
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction121
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var pexprnode11 = nodearraylist7
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction122
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var tkwredefnode5 = nodearraylist2
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist3
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist4
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var pexprnode11 = nodearraylist8
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction112
-special ReduceAction
+private class ReduceAction123
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist5
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist8
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction124
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist9 = p.pop
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var tkwredefnode5 = nodearraylist2
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist3
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist4
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               null,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction125
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode4 = nodearraylist5
+                                       assert pablenode4 isa nullable AAble
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var pexprnode11 = nodearraylist8
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               pablenode4,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction126
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist9 = p.pop
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode4 = nodearraylist6
+                                       assert pablenode4 isa nullable AAble
+                                       var tkwredefnode5 = nodearraylist2
+                                       assert tkwredefnode5 isa nullable TKwredef
+                                       var pvisibilitynode6 = nodearraylist3
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist4
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               pablenode4,
+                                               tkwredefnode5,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               null,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction127
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist9 = p.pop
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pdocnode2 = nodearraylist1
+                                       assert pdocnode2 isa nullable ADoc
+                                       var pablenode4 = nodearraylist6
+                                       assert pablenode4 isa nullable AAble
+                                       var pvisibilitynode6 = nodearraylist2
+                                       assert pvisibilitynode6 isa nullable AVisibility
+                                       var tkwvarnode7 = nodearraylist3
+                                       assert tkwvarnode7 isa nullable TKwvar
+                                       var tidnode9 = nodearraylist4
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist5
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist9
+                                       assert pexprnode11 isa nullable AExpr
+                                       var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
+                                               pdocnode2,
+                                               null,
+                                               pablenode4,
+                                               null,
+                                               pvisibilitynode6,
+                                               tkwvarnode7,
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               pexprnode11
+                                       )
+                                       node_list = ppropdefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction128
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist11 = p.pop
                                        var nodearraylist10 = p.pop
                                        var nodearraylist9 = p.pop
                                        var nodearraylist8 = p.pop
@@ -4950,41 +5443,38 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var pdocnode2 = nodearraylist1
                                        assert pdocnode2 isa nullable ADoc
-                                       var pablenode3 = nodearraylist2
-                                       assert pablenode3 isa nullable AAble
-                                       var pablenode4 = nodearraylist3
+                                       var pablenode4 = nodearraylist7
                                        assert pablenode4 isa nullable AAble
-                                       var tkwredefnode5 = nodearraylist4
+                                       var tkwredefnode5 = nodearraylist2
                                        assert tkwredefnode5 isa nullable TKwredef
-                                       var pvisibilitynode6 = nodearraylist5
+                                       var pvisibilitynode6 = nodearraylist3
                                        assert pvisibilitynode6 isa nullable AVisibility
-                                       var tkwvarnode7 = nodearraylist6
+                                       var tkwvarnode7 = nodearraylist4
                                        assert tkwvarnode7 isa nullable TKwvar
-                                       var tattridnode8 = nodearraylist7
-                                       assert tattridnode8 isa nullable TAttrid
-                                       var ptypenode9 = nodearraylist8
-                                       assert ptypenode9 isa nullable AType
-                                       var pexprnode10 = nodearraylist11
-                                       assert pexprnode10 isa nullable AExpr
+                                       var tidnode9 = nodearraylist5
+                                       assert tidnode9 isa nullable TId
+                                       var ptypenode10 = nodearraylist6
+                                       assert ptypenode10 isa nullable AType
+                                       var pexprnode11 = nodearraylist10
+                                       assert pexprnode11 isa nullable AExpr
                                        var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef(
                                                pdocnode2,
-                                               pablenode3,
+                                               null,
                                                pablenode4,
                                                tkwredefnode5,
                                                pvisibilitynode6,
                                                tkwvarnode7,
-                                               tattridnode8,
-                                               ptypenode9,
-                                               pexprnode10
+                                               null,
+                                               tidnode9,
+                                               ptypenode10,
+                                               pexprnode11
                                        )
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction113
-special ReduceAction
+private class ReduceAction129
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5016,11 +5506,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction114
-special ReduceAction
+private class ReduceAction130
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5055,11 +5543,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction115
-special ReduceAction
+private class ReduceAction131
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5094,11 +5580,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction116
-special ReduceAction
+private class ReduceAction132
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5136,11 +5620,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction117
-special ReduceAction
+private class ReduceAction133
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5173,11 +5655,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction118
-special ReduceAction
+private class ReduceAction134
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5213,11 +5693,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction119
-special ReduceAction
+private class ReduceAction135
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5253,11 +5731,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction120
-special ReduceAction
+private class ReduceAction136
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5296,11 +5772,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction121
-special ReduceAction
+private class ReduceAction137
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5330,11 +5804,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction122
-special ReduceAction
+private class ReduceAction138
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5367,11 +5839,9 @@ special ReduceAction
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction123
-special ReduceAction
+private class ReduceAction139
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5385,11 +5855,9 @@ special ReduceAction
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction124
-special ReduceAction
+private class ReduceAction140
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5406,29 +5874,26 @@ special ReduceAction
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction125
-special ReduceAction
+private class ReduceAction141
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
-                                       var tkwwritablenode3 = nodearraylist1
-                                       assert tkwwritablenode3 isa nullable TKwwritable
+                                       var tkwwritablenode4 = nodearraylist1
+                                       assert tkwwritablenode4 isa nullable TKwwritable
                                        var pablenode1: nullable AWriteAble = new AWriteAble.init_awriteable(
                                                null,
-                                               tkwwritablenode3
+                                               null,
+                                               tkwwritablenode4
                                        )
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction126
-special ReduceAction
+private class ReduceAction142
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5436,20 +5901,62 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        var tkwredefnode2 = nodearraylist1
                                        assert tkwredefnode2 isa nullable TKwredef
-                                       var tkwwritablenode3 = nodearraylist2
-                                       assert tkwwritablenode3 isa nullable TKwwritable
+                                       var tkwwritablenode4 = nodearraylist2
+                                       assert tkwwritablenode4 isa nullable TKwwritable
                                        var pablenode1: nullable AWriteAble = new AWriteAble.init_awriteable(
                                                tkwredefnode2,
-                                               tkwwritablenode3
+                                               null,
+                                               tkwwritablenode4
                                        )
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction127
-special ReduceAction
+private class ReduceAction143
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pvisibilitynode3 = nodearraylist1
+                                       assert pvisibilitynode3 isa nullable AVisibility
+                                       var tkwwritablenode4 = nodearraylist2
+                                       assert tkwwritablenode4 isa nullable TKwwritable
+                                       var pablenode1: nullable AWriteAble = new AWriteAble.init_awriteable(
+                                               null,
+                                               pvisibilitynode3,
+                                               tkwwritablenode4
+                                       )
+                                       node_list = pablenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction144
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var tkwredefnode2 = nodearraylist1
+                                       assert tkwredefnode2 isa nullable TKwredef
+                                       var pvisibilitynode3 = nodearraylist2
+                                       assert pvisibilitynode3 isa nullable AVisibility
+                                       var tkwwritablenode4 = nodearraylist3
+                                       assert tkwwritablenode4 isa nullable TKwwritable
+                                       var pablenode1: nullable AWriteAble = new AWriteAble.init_awriteable(
+                                               tkwredefnode2,
+                                               pvisibilitynode3,
+                                               tkwwritablenode4
+                                       )
+                                       node_list = pablenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction145
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5458,11 +5965,9 @@ special ReduceAction
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction128
-special ReduceAction
+private class ReduceAction146
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5476,11 +5981,9 @@ special ReduceAction
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction129
-special ReduceAction
+private class ReduceAction147
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5494,11 +5997,9 @@ special ReduceAction
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction130
-special ReduceAction
+private class ReduceAction148
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5512,11 +6013,9 @@ special ReduceAction
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction131
-special ReduceAction
+private class ReduceAction149
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5529,11 +6028,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction132
-special ReduceAction
+private class ReduceAction150
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5546,11 +6043,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction133
-special ReduceAction
+private class ReduceAction151
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5563,11 +6058,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction134
-special ReduceAction
+private class ReduceAction152
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5580,11 +6073,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction135
-special ReduceAction
+private class ReduceAction153
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5597,11 +6088,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction136
-special ReduceAction
+private class ReduceAction154
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5614,11 +6103,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction137
-special ReduceAction
+private class ReduceAction155
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5631,11 +6118,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction138
-special ReduceAction
+private class ReduceAction156
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5648,11 +6133,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction139
-special ReduceAction
+private class ReduceAction157
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5665,11 +6148,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction140
-special ReduceAction
+private class ReduceAction158
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5682,11 +6163,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction141
-special ReduceAction
+private class ReduceAction159
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5699,11 +6178,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction142
-special ReduceAction
+private class ReduceAction160
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5716,11 +6193,39 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction143
-special ReduceAction
+private class ReduceAction161
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist1 = p.pop
+                                       var tllnode2 = nodearraylist1
+                                       assert tllnode2 isa nullable TLl
+                                       var pmethidnode1: nullable ALlMethid = new ALlMethid.init_allmethid(
+                                               tllnode2
+                                       )
+                                       node_list = pmethidnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction162
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist1 = p.pop
+                                       var tggnode2 = nodearraylist1
+                                       assert tggnode2 isa nullable TGg
+                                       var pmethidnode1: nullable AGgMethid = new AGgMethid.init_aggmethid(
+                                               tggnode2
+                                       )
+                                       node_list = pmethidnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction163
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5737,11 +6242,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction144
-special ReduceAction
+private class ReduceAction164
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5754,11 +6257,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction145
-special ReduceAction
+private class ReduceAction165
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5775,11 +6276,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction146
-special ReduceAction
+private class ReduceAction166
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5800,11 +6299,9 @@ special ReduceAction
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction147
-special ReduceAction
+private class ReduceAction167
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5825,11 +6322,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction148
-special ReduceAction
+private class ReduceAction168
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5854,11 +6349,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction149
-special ReduceAction
+private class ReduceAction169
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5876,11 +6369,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction150
-special ReduceAction
+private class ReduceAction170
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5902,11 +6393,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction151
-special ReduceAction
+private class ReduceAction171
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5924,11 +6413,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction152
-special ReduceAction
+private class ReduceAction172
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5950,11 +6437,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction153
-special ReduceAction
+private class ReduceAction173
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5969,11 +6454,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction154
-special ReduceAction
+private class ReduceAction174
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -5992,11 +6475,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction155
-special ReduceAction
+private class ReduceAction175
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6010,11 +6491,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction156
-special ReduceAction
+private class ReduceAction176
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6032,11 +6511,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction157
-special ReduceAction
+private class ReduceAction177
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6053,11 +6530,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction158
-special ReduceAction
+private class ReduceAction178
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6078,11 +6553,9 @@ special ReduceAction
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction159
-special ReduceAction
+private class ReduceAction179
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6099,11 +6572,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction160
-special ReduceAction
+private class ReduceAction180
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6124,11 +6595,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction161
-special ReduceAction
+private class ReduceAction181
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6139,11 +6608,9 @@ special ReduceAction
                                        node_list = listnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction162
-special ReduceAction
+private class ReduceAction182
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6154,11 +6621,9 @@ special ReduceAction
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction163
-special ReduceAction
+private class ReduceAction183
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6173,11 +6638,9 @@ special ReduceAction
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction164
-special ReduceAction
+private class ReduceAction184
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6195,11 +6658,9 @@ special ReduceAction
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction165
-special ReduceAction
+private class ReduceAction185
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6220,11 +6681,9 @@ special ReduceAction
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction166
-special ReduceAction
+private class ReduceAction186
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6237,11 +6696,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction167
-special ReduceAction
+private class ReduceAction187
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6265,11 +6722,9 @@ special ReduceAction
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction168
-special ReduceAction
+private class ReduceAction188
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6296,11 +6751,9 @@ special ReduceAction
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction169
-special ReduceAction
+private class ReduceAction189
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6328,11 +6781,9 @@ special ReduceAction
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction170
-special ReduceAction
+private class ReduceAction190
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6363,11 +6814,9 @@ special ReduceAction
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction171
-special ReduceAction
+private class ReduceAction191
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6396,11 +6845,9 @@ special ReduceAction
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction172
-special ReduceAction
+private class ReduceAction192
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6432,11 +6879,9 @@ special ReduceAction
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction173
-special ReduceAction
+private class ReduceAction193
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6450,11 +6895,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction174
-special ReduceAction
+private class ReduceAction194
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6470,11 +6913,9 @@ special ReduceAction
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction175
-special ReduceAction
+private class ReduceAction195
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6493,11 +6934,9 @@ special ReduceAction
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction176
-special ReduceAction
+private class ReduceAction196
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6521,11 +6960,9 @@ special ReduceAction
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction177
-special ReduceAction
+private class ReduceAction197
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6552,11 +6989,9 @@ special ReduceAction
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction178
-special ReduceAction
+private class ReduceAction198
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6569,11 +7004,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction179
-special ReduceAction
+private class ReduceAction199
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6590,11 +7023,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction180
-special ReduceAction
+private class ReduceAction200
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6605,11 +7036,9 @@ special ReduceAction
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction182
-special ReduceAction
+private class ReduceAction202
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6620,11 +7049,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction183
-special ReduceAction
+private class ReduceAction203
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6637,11 +7064,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction184
-special ReduceAction
+private class ReduceAction204
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6653,11 +7078,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction185
-special ReduceAction
+private class ReduceAction205
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6666,11 +7089,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction186
-special ReduceAction
+private class ReduceAction206
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6687,11 +7108,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction187
-special ReduceAction
+private class ReduceAction207
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6712,11 +7131,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction188
-special ReduceAction
+private class ReduceAction208
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6734,11 +7151,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction189
-special ReduceAction
+private class ReduceAction209
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6760,11 +7175,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction190
-special ReduceAction
+private class ReduceAction210
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6774,11 +7187,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction193
-special ReduceAction
+private class ReduceAction213
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6792,11 +7203,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction194
-special ReduceAction
+private class ReduceAction214
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6813,11 +7222,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction195
-special ReduceAction
+private class ReduceAction215
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6832,11 +7239,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction196
-special ReduceAction
+private class ReduceAction216
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6854,11 +7259,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction197
-special ReduceAction
+private class ReduceAction217
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6876,11 +7279,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction198
-special ReduceAction
+private class ReduceAction218
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6901,11 +7302,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction199
-special ReduceAction
+private class ReduceAction219
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6918,11 +7317,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction200
-special ReduceAction
+private class ReduceAction220
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6937,11 +7334,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction201
-special ReduceAction
+private class ReduceAction221
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6959,11 +7354,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction202
-special ReduceAction
+private class ReduceAction222
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -6981,11 +7374,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction203
-special ReduceAction
+private class ReduceAction223
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7006,11 +7397,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction210
-special ReduceAction
+private class ReduceAction230
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7037,11 +7426,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction211
-special ReduceAction
+private class ReduceAction231
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7065,11 +7452,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction212
-special ReduceAction
+private class ReduceAction232
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7100,11 +7485,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction213
-special ReduceAction
+private class ReduceAction233
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7132,11 +7515,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction214
-special ReduceAction
+private class ReduceAction234
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7156,11 +7537,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction215
-special ReduceAction
+private class ReduceAction235
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7183,11 +7562,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction216
-special ReduceAction
+private class ReduceAction236
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7212,11 +7589,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction217
-special ReduceAction
+private class ReduceAction237
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7238,11 +7613,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction218
-special ReduceAction
+private class ReduceAction238
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7259,11 +7632,9 @@ special ReduceAction
                                        node_list = plabelnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction219
-special ReduceAction
+private class ReduceAction239
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7276,11 +7647,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction220
-special ReduceAction
+private class ReduceAction240
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7297,11 +7666,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction221
-special ReduceAction
+private class ReduceAction241
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7332,11 +7699,48 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction222
-special ReduceAction
+private class ReduceAction242
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode5 = new Array[Object]
+                                       var tbangnode2 = nodearraylist1
+                                       assert tbangnode2 isa nullable TBang
+                                       var pclosureidnode3 = nodearraylist2
+                                       assert pclosureidnode3 isa nullable AClosureId
+                                       var listnode4 = nodearraylist4
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var tkwdonode6 = nodearraylist6
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pexprnode7 = nodearraylist7
+                                       assert pexprnode7 isa nullable AExpr
+                                       var plabelnode8 = nodearraylist8
+                                       assert plabelnode8 isa nullable ALabel
+                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
+                                               tbangnode2,
+                                               pclosureidnode3,
+                                               listnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
+                                               plabelnode8
+                                       )
+                                       node_list = pclosuredefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction243
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7371,11 +7775,9 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction223
-special ReduceAction
+private class ReduceAction244
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7403,11 +7805,45 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction224
-special ReduceAction
+private class ReduceAction245
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode5 = new Array[Object]
+                                       var tbangnode2 = nodearraylist1
+                                       assert tbangnode2 isa nullable TBang
+                                       var pclosureidnode3 = nodearraylist2
+                                       assert pclosureidnode3 isa nullable AClosureId
+                                       var listnode4 = nodearraylist4
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var tkwdonode6 = nodearraylist6
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pexprnode7 = nodearraylist7
+                                       assert pexprnode7 isa nullable AExpr
+                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
+                                               tbangnode2,
+                                               pclosureidnode3,
+                                               listnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
+                                               null
+                                       )
+                                       node_list = pclosuredefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction246
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7439,11 +7875,9 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction225
-special ReduceAction
+private class ReduceAction247
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7462,19 +7896,52 @@ special ReduceAction
                                        var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
                                                tbangnode2,
                                                pclosureidnode3,
-                                               listnode4,
+                                               listnode4,
+                                               null,
+                                               pexprnode6,
+                                               null
+                                       )
+                                       node_list = pclosuredefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction248
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode5 = new Array[Object]
+                                       var tbangnode2 = nodearraylist1
+                                       assert tbangnode2 isa nullable TBang
+                                       var pclosureidnode3 = nodearraylist2
+                                       assert pclosureidnode3 isa nullable AClosureId
+                                       var listnode4 = nodearraylist4
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var pexprnode7 = nodearraylist8
+                                       assert pexprnode7 isa nullable AExpr
+                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
+                                               tbangnode2,
+                                               pclosureidnode3,
+                                               listnode5,
                                                null,
-                                               pexprnode6,
+                                               pexprnode7,
                                                null
                                        )
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction226
-special ReduceAction
+private class ReduceAction249
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7505,11 +7972,9 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction227
-special ReduceAction
+private class ReduceAction250
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7538,11 +8003,46 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction228
-special ReduceAction
+private class ReduceAction251
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode5 = new Array[Object]
+                                       var tbangnode2 = nodearraylist1
+                                       assert tbangnode2 isa nullable TBang
+                                       var pclosureidnode3 = nodearraylist2
+                                       assert pclosureidnode3 isa nullable AClosureId
+                                       var listnode4 = nodearraylist4
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var tkwdonode6 = nodearraylist6
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pexprnode7 = nodearraylist8
+                                       assert pexprnode7 isa nullable AExpr
+                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
+                                               tbangnode2,
+                                               pclosureidnode3,
+                                               listnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
+                                               null
+                                       )
+                                       node_list = pclosuredefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction252
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7575,11 +8075,9 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction229
-special ReduceAction
+private class ReduceAction253
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7605,11 +8103,43 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction230
-special ReduceAction
+private class ReduceAction254
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode5 = new Array[Object]
+                                       var tbangnode2 = nodearraylist1
+                                       assert tbangnode2 isa nullable TBang
+                                       var pclosureidnode3 = nodearraylist2
+                                       assert pclosureidnode3 isa nullable AClosureId
+                                       var listnode4 = nodearraylist4
+                                       assert listnode4 isa Array[Object]
+                                       listnode5 = concat(listnode5, listnode4)
+                                       var tkwdonode6 = nodearraylist6
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef(
+                                               tbangnode2,
+                                               pclosureidnode3,
+                                               listnode5,
+                                               tkwdonode6,
+                                               null,
+                                               null
+                                       )
+                                       node_list = pclosuredefnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction255
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7639,11 +8169,9 @@ special ReduceAction
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction231
-special ReduceAction
+private class ReduceAction256
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7656,11 +8184,9 @@ special ReduceAction
                                        node_list = pclosureidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction232
-special ReduceAction
+private class ReduceAction257
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7673,11 +8199,9 @@ special ReduceAction
                                        node_list = pclosureidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction233
-special ReduceAction
+private class ReduceAction258
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7692,11 +8216,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction234
-special ReduceAction
+private class ReduceAction259
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7716,11 +8238,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction235
-special ReduceAction
+private class ReduceAction260
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7743,11 +8263,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction236
-special ReduceAction
+private class ReduceAction261
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7774,11 +8292,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction237
-special ReduceAction
+private class ReduceAction262
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7808,11 +8324,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction238
-special ReduceAction
+private class ReduceAction263
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7839,11 +8353,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction239
-special ReduceAction
+private class ReduceAction264
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7867,11 +8379,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction240
-special ReduceAction
+private class ReduceAction265
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7904,11 +8414,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction241
-special ReduceAction
+private class ReduceAction266
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7938,11 +8446,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction242
-special ReduceAction
+private class ReduceAction267
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -7969,11 +8475,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction243
-special ReduceAction
+private class ReduceAction268
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8000,11 +8504,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction244
-special ReduceAction
+private class ReduceAction269
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8028,11 +8530,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction245
-special ReduceAction
+private class ReduceAction270
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8065,11 +8565,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction246
-special ReduceAction
+private class ReduceAction271
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8099,11 +8597,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction247
-special ReduceAction
+private class ReduceAction272
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8130,11 +8626,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction248
-special ReduceAction
+private class ReduceAction273
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8147,11 +8641,9 @@ special ReduceAction
                                        node_list = passignopnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction249
-special ReduceAction
+private class ReduceAction274
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8164,11 +8656,9 @@ special ReduceAction
                                        node_list = passignopnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction250
-special ReduceAction
+private class ReduceAction275
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8189,11 +8679,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction251
-special ReduceAction
+private class ReduceAction276
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8211,11 +8699,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction252
-special ReduceAction
+private class ReduceAction277
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8244,11 +8730,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction253
-special ReduceAction
+private class ReduceAction278
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8273,11 +8757,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction254
-special ReduceAction
+private class ReduceAction279
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8306,11 +8788,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction255
-special ReduceAction
+private class ReduceAction280
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8335,11 +8815,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction256
-special ReduceAction
+private class ReduceAction281
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8365,11 +8843,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction259
-special ReduceAction
+private class ReduceAction284
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8390,11 +8866,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction260
-special ReduceAction
+private class ReduceAction285
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8412,11 +8886,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction261
-special ReduceAction
+private class ReduceAction286
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8447,11 +8919,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction262
-special ReduceAction
+private class ReduceAction287
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8469,24 +8939,109 @@ special ReduceAction
                                        assert tkwdonode4 isa nullable TKwdo
                                        var pexprnode5 = nodearraylist6
                                        assert pexprnode5 isa nullable AExpr
-                                       var pexprnode1: nullable AWhileExpr = new AWhileExpr.init_awhileexpr(
-                                               tkwwhilenode2,
-                                               pexprnode3,
-                                               tkwdonode4,
+                                       var pexprnode1: nullable AWhileExpr = new AWhileExpr.init_awhileexpr(
+                                               tkwwhilenode2,
+                                               pexprnode3,
+                                               tkwdonode4,
+                                               pexprnode5,
+                                               null
+                                       )
+                                       node_list = pexprnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction288
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist13 = p.pop
+                                       var nodearraylist12 = p.pop
+                                       var nodearraylist11 = p.pop
+                                       var nodearraylist10 = p.pop
+                                       var nodearraylist9 = p.pop
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var tkwfornode2 = nodearraylist1
+                                       assert tkwfornode2 isa nullable TKwfor
+                                       var listnode3 = nodearraylist4
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var pexprnode5 = nodearraylist9
+                                       assert pexprnode5 isa nullable AExpr
+                                       var tkwdonode6 = nodearraylist11
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pexprnode7 = nodearraylist12
+                                       assert pexprnode7 isa nullable AExpr
+                                       var plabelnode8 = nodearraylist13
+                                       assert plabelnode8 isa nullable ALabel
+                                       var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
+                                               tkwfornode2,
+                                               listnode4,
+                                               pexprnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
+                                               plabelnode8
+                                       )
+                                       node_list = pexprnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction289
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist11 = p.pop
+                                       var nodearraylist10 = p.pop
+                                       var nodearraylist9 = p.pop
+                                       var nodearraylist8 = p.pop
+                                       var nodearraylist7 = p.pop
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var tkwfornode2 = nodearraylist1
+                                       assert tkwfornode2 isa nullable TKwfor
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var pexprnode5 = nodearraylist7
+                                       assert pexprnode5 isa nullable AExpr
+                                       var tkwdonode6 = nodearraylist9
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pexprnode7 = nodearraylist10
+                                       assert pexprnode7 isa nullable AExpr
+                                       var plabelnode8 = nodearraylist11
+                                       assert plabelnode8 isa nullable ALabel
+                                       var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
+                                               tkwfornode2,
+                                               listnode4,
                                                pexprnode5,
-                                               null
+                                               tkwdonode6,
+                                               pexprnode7,
+                                               plabelnode8
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction263
-special ReduceAction
+private class ReduceAction290
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist12 = p.pop
                                        var nodearraylist11 = p.pop
                                        var nodearraylist10 = p.pop
                                        var nodearraylist9 = p.pop
@@ -8498,34 +9053,32 @@ special ReduceAction
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
                                        var tkwfornode2 = nodearraylist1
                                        assert tkwfornode2 isa nullable TKwfor
-                                       var tidnode3 = nodearraylist3
-                                       assert tidnode3 isa nullable TId
-                                       var pexprnode4 = nodearraylist7
-                                       assert pexprnode4 isa nullable AExpr
-                                       var tkwdonode5 = nodearraylist9
-                                       assert tkwdonode5 isa nullable TKwdo
-                                       var pexprnode6 = nodearraylist10
-                                       assert pexprnode6 isa nullable AExpr
-                                       var plabelnode7 = nodearraylist11
-                                       assert plabelnode7 isa nullable ALabel
+                                       var listnode3 = nodearraylist4
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var pexprnode5 = nodearraylist9
+                                       assert pexprnode5 isa nullable AExpr
+                                       var tkwdonode6 = nodearraylist11
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pexprnode7 = nodearraylist12
+                                       assert pexprnode7 isa nullable AExpr
                                        var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
                                                tkwfornode2,
-                                               tidnode3,
-                                               pexprnode4,
-                                               tkwdonode5,
-                                               pexprnode6,
-                                               plabelnode7
+                                               listnode4,
+                                               pexprnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
+                                               null
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction264
-special ReduceAction
+private class ReduceAction291
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8539,32 +9092,32 @@ special ReduceAction
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
                                        var tkwfornode2 = nodearraylist1
                                        assert tkwfornode2 isa nullable TKwfor
-                                       var tidnode3 = nodearraylist3
-                                       assert tidnode3 isa nullable TId
-                                       var pexprnode4 = nodearraylist7
-                                       assert pexprnode4 isa nullable AExpr
-                                       var tkwdonode5 = nodearraylist9
-                                       assert tkwdonode5 isa nullable TKwdo
-                                       var pexprnode6 = nodearraylist10
-                                       assert pexprnode6 isa nullable AExpr
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var pexprnode5 = nodearraylist7
+                                       assert pexprnode5 isa nullable AExpr
+                                       var tkwdonode6 = nodearraylist9
+                                       assert tkwdonode6 isa nullable TKwdo
+                                       var pexprnode7 = nodearraylist10
+                                       assert pexprnode7 isa nullable AExpr
                                        var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
                                                tkwfornode2,
-                                               tidnode3,
-                                               pexprnode4,
-                                               tkwdonode5,
-                                               pexprnode6,
+                                               listnode4,
+                                               pexprnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
                                                null
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction265
-special ReduceAction
+private class ReduceAction292
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8587,11 +9140,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction266
-special ReduceAction
+private class ReduceAction293
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8617,11 +9168,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction267
-special ReduceAction
+private class ReduceAction294
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8640,11 +9189,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction268
-special ReduceAction
+private class ReduceAction295
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8666,11 +9213,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction269
-special ReduceAction
+private class ReduceAction296
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8680,11 +9225,9 @@ special ReduceAction
                                        node_list = tidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction273
-special ReduceAction
+private class ReduceAction300
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8709,11 +9252,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction275
-special ReduceAction
+private class ReduceAction302
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8751,11 +9292,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction277
-special ReduceAction
+private class ReduceAction304
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8774,11 +9313,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction278
-special ReduceAction
+private class ReduceAction305
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8797,11 +9334,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction279
-special ReduceAction
+private class ReduceAction306
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8821,11 +9356,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction281
-special ReduceAction
+private class ReduceAction308
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8843,11 +9376,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction283
-special ReduceAction
+private class ReduceAction310
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8866,11 +9397,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction284
-special ReduceAction
+private class ReduceAction311
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8889,11 +9418,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction285
-special ReduceAction
+private class ReduceAction312
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8912,11 +9439,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction286
-special ReduceAction
+private class ReduceAction313
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8935,11 +9460,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction287
-special ReduceAction
+private class ReduceAction314
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8958,11 +9481,30 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction288
-special ReduceAction
+private class ReduceAction315
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var pexprnode3 = nodearraylist4
+                                       assert pexprnode3 isa nullable AExpr
+                                       var pexprnode1: nullable ALlExpr = new ALlExpr.init_allexpr(
+                                               pexprnode2,
+                                               pexprnode3
+                                       )
+                                       node_list = pexprnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction316
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -8981,11 +9523,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction289
-special ReduceAction
+private class ReduceAction317
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9004,11 +9544,30 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction290
-special ReduceAction
+private class ReduceAction318
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var pexprnode2 = nodearraylist1
+                                       assert pexprnode2 isa nullable AExpr
+                                       var pexprnode3 = nodearraylist4
+                                       assert pexprnode3 isa nullable AExpr
+                                       var pexprnode1: nullable AGgExpr = new AGgExpr.init_aggexpr(
+                                               pexprnode2,
+                                               pexprnode3
+                                       )
+                                       node_list = pexprnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction319
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9027,11 +9586,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction291
-special ReduceAction
+private class ReduceAction320
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9050,11 +9607,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction293
-special ReduceAction
+private class ReduceAction322
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9073,11 +9628,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction294
-special ReduceAction
+private class ReduceAction323
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9096,11 +9649,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction296
-special ReduceAction
+private class ReduceAction325
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9119,11 +9670,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction297
-special ReduceAction
+private class ReduceAction326
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9142,11 +9691,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction298
-special ReduceAction
+private class ReduceAction327
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9165,11 +9712,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction300
-special ReduceAction
+private class ReduceAction329
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9187,11 +9732,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction301
-special ReduceAction
+private class ReduceAction330
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9209,11 +9752,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction303
-special ReduceAction
+private class ReduceAction332
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9238,11 +9779,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction304
-special ReduceAction
+private class ReduceAction333
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9265,11 +9804,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction305
-special ReduceAction
+private class ReduceAction334
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9289,11 +9826,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction306
-special ReduceAction
+private class ReduceAction335
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9312,11 +9847,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction307
-special ReduceAction
+private class ReduceAction336
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9332,11 +9865,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction314
-special ReduceAction
+private class ReduceAction343
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9357,11 +9888,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction315
-special ReduceAction
+private class ReduceAction344
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9391,11 +9920,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction316
-special ReduceAction
+private class ReduceAction345
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9419,11 +9946,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction317
-special ReduceAction
+private class ReduceAction346
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9447,11 +9972,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction318
-special ReduceAction
+private class ReduceAction347
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9466,11 +9989,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction319
-special ReduceAction
+private class ReduceAction348
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9483,11 +10004,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction320
-special ReduceAction
+private class ReduceAction349
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9500,11 +10019,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction321
-special ReduceAction
+private class ReduceAction350
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9517,11 +10034,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction322
-special ReduceAction
+private class ReduceAction351
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9534,11 +10049,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction323
-special ReduceAction
+private class ReduceAction352
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9551,11 +10064,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction324
-special ReduceAction
+private class ReduceAction353
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9568,11 +10079,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction325
-special ReduceAction
+private class ReduceAction354
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9585,11 +10094,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction326
-special ReduceAction
+private class ReduceAction355
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9602,11 +10109,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction329
-special ReduceAction
+private class ReduceAction358
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9634,11 +10139,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction330
-special ReduceAction
+private class ReduceAction359
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9671,11 +10174,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction331
-special ReduceAction
+private class ReduceAction360
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9696,11 +10197,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction332
-special ReduceAction
+private class ReduceAction361
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9725,11 +10224,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction333
-special ReduceAction
+private class ReduceAction362
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9749,11 +10246,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction334
-special ReduceAction
+private class ReduceAction363
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9766,11 +10261,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction336
-special ReduceAction
+private class ReduceAction365
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9783,11 +10276,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction337
-special ReduceAction
+private class ReduceAction366
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9800,11 +10291,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction338
-special ReduceAction
+private class ReduceAction367
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9821,11 +10310,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction339
-special ReduceAction
+private class ReduceAction368
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9846,11 +10333,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction341
-special ReduceAction
+private class ReduceAction370
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9858,11 +10343,9 @@ special ReduceAction
                                        node_list = listnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction344
-special ReduceAction
+private class ReduceAction373
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9875,11 +10358,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction349
-special ReduceAction
+private class ReduceAction378
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9891,86 +10372,134 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction350
-special ReduceAction
+private class ReduceAction379
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist3 = p.pop
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode2 = new Array[Object]
-                                       var listnode1 = nodearraylist2
-                                       assert listnode1 isa Array[Object]
-                                       listnode2 = concat(listnode2, listnode1)
+                                       var tidnode1 = nodearraylist1
+                                       if tidnode1 != null then
+                                               listnode2.add(tidnode1)
+                                       end
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction351
-special ReduceAction
+private class ReduceAction380
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
+                                       var listnode3 = new Array[Object]
                                        var listnode1 = nodearraylist1
                                        assert listnode1 isa Array[Object]
-                                       listnode2 = concat(listnode2, listnode1)
-                                       node_list = listnode2
+                                       var tidnode2 = nodearraylist5
+                                       listnode3 = concat(listnode3, listnode1)
+                                       if tidnode2 != null then
+                                               listnode3.add(tidnode2)
+                                       end
+                                       node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction352
-special ReduceAction
+private class ReduceAction381
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var tidnode1 = nodearraylist1
-                                       if tidnode1 != null then
-                                               listnode2.add(tidnode1)
-                                       end
-                                       node_list = listnode2
+                                       var listnode3 = new Array[Object]
+                                       var tidnode4 = nodearraylist1
+                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               null,
+                                               listnode3,
+                                               tidnode4
+                                       )
+                                       node_list = pmodulenamenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction353
-special ReduceAction
+private class ReduceAction382
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var listnode3 = nodearraylist1
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tidnode5 = nodearraylist2
+                                       assert tidnode5 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               null,
+                                               listnode4,
+                                               tidnode5
+                                       )
+                                       node_list = pmodulenamenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction383
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
-                                       var listnode1 = nodearraylist1
-                                       assert listnode1 isa Array[Object]
-                                       var tidnode2 = nodearraylist5
-                                       listnode3 = concat(listnode3, listnode1)
-                                       if tidnode2 != null then
-                                               listnode3.add(tidnode2)
-                                       end
-                                       node_list = listnode3
+                                       var tquadnode2 = nodearraylist1
+                                       assert tquadnode2 isa nullable TQuad
+                                       var tidnode4 = nodearraylist3
+                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               tquadnode2,
+                                               listnode3,
+                                               tidnode4
+                                       )
+                                       node_list = pmodulenamenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction354
-special ReduceAction
+private class ReduceAction384
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var tquadnode2 = nodearraylist1
+                                       assert tquadnode2 isa nullable TQuad
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tidnode5 = nodearraylist4
+                                       assert tidnode5 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               tquadnode2,
+                                               listnode4,
+                                               tidnode5
+                                       )
+                                       node_list = pmodulenamenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction385
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -9985,11 +10514,9 @@ special ReduceAction
                                        node_list = pqualifiednode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction355
-special ReduceAction
+private class ReduceAction386
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10008,11 +10535,9 @@ special ReduceAction
                                        node_list = pqualifiednode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction356
-special ReduceAction
+private class ReduceAction387
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10028,11 +10553,9 @@ special ReduceAction
                                        node_list = pqualifiednode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction357
-special ReduceAction
+private class ReduceAction388
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10043,11 +10566,9 @@ special ReduceAction
                                        node_list = tidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction358
-special ReduceAction
+private class ReduceAction389
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10058,22 +10579,18 @@ special ReduceAction
                                        node_list = tclassidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction359
-special ReduceAction
+private class ReduceAction390
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction361
-special ReduceAction
+private class ReduceAction392
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10088,11 +10605,9 @@ special ReduceAction
                                        node_list = pdocnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction362
-special ReduceAction
+private class ReduceAction393
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10108,22 +10623,18 @@ special ReduceAction
                                        node_list = pdocnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction364
-special ReduceAction
+private class ReduceAction395
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        node_list = null
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction365
-special ReduceAction
+private class ReduceAction396
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10132,11 +10643,9 @@ special ReduceAction
                                        node_list = pdocnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction366
-special ReduceAction
+private class ReduceAction397
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10144,11 +10653,9 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction367
-special ReduceAction
+private class ReduceAction398
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10157,11 +10664,9 @@ special ReduceAction
                                        var nodearraylist1 = p.pop
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction609
-special ReduceAction
+private class ReduceAction651
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10182,11 +10687,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction610
-special ReduceAction
+private class ReduceAction652
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10203,11 +10706,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction611
-special ReduceAction
+private class ReduceAction653
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10232,11 +10733,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction614
-special ReduceAction
+private class ReduceAction656
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10259,11 +10758,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction627
-special ReduceAction
+private class ReduceAction669
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10274,11 +10771,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction628
-special ReduceAction
+private class ReduceAction670
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10287,11 +10782,9 @@ special ReduceAction
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction635
-special ReduceAction
+private class ReduceAction677
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10304,11 +10797,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction636
-special ReduceAction
+private class ReduceAction678
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10325,11 +10816,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction637
-special ReduceAction
+private class ReduceAction679
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10342,11 +10831,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction638
-special ReduceAction
+private class ReduceAction680
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10363,11 +10850,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction639
-special ReduceAction
+private class ReduceAction681
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10380,11 +10865,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction640
-special ReduceAction
+private class ReduceAction682
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10401,11 +10884,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction641
-special ReduceAction
+private class ReduceAction683
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10418,11 +10899,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction642
-special ReduceAction
+private class ReduceAction684
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10439,11 +10918,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction645
-special ReduceAction
+private class ReduceAction687
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10456,11 +10933,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction646
-special ReduceAction
+private class ReduceAction688
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10477,11 +10952,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction647
-special ReduceAction
+private class ReduceAction689
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10494,11 +10967,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction648
-special ReduceAction
+private class ReduceAction690
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10515,11 +10986,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction649
-special ReduceAction
+private class ReduceAction691
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10532,11 +11001,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction650
-special ReduceAction
+private class ReduceAction692
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10553,11 +11020,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction652
-special ReduceAction
+private class ReduceAction694
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10574,11 +11039,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction654
-special ReduceAction
+private class ReduceAction696
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10595,11 +11058,23 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction656
-special ReduceAction
+private class ReduceAction697
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist1 = p.pop
+                                       var listnode2 = new Array[Object]
+                                       var listnode1 = nodearraylist1
+                                       assert listnode1 isa Array[Object]
+                                       listnode2 = concat(listnode2, listnode1)
+                                       node_list = listnode2
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction698
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10615,11 +11090,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction660
-special ReduceAction
+private class ReduceAction702
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10636,11 +11109,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction661
-special ReduceAction
+private class ReduceAction703
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10653,11 +11124,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction662
-special ReduceAction
+private class ReduceAction704
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10674,11 +11143,9 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction663
-special ReduceAction
+private class ReduceAction705
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10691,11 +11158,9 @@ special ReduceAction
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction664
-special ReduceAction
+private class ReduceAction706
+       super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
@@ -10712,6 +11177,4 @@ special ReduceAction
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end