parser: add qualified module names
[nit.git] / src / parser / parser.nit
index 3a6986f..455dcce 100644 (file)
@@ -122,7 +122,7 @@ class Parser
                                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 @@ class Parser
                                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]
@@ -399,150 +397,159 @@ class Parser
                        new ReduceAction244(37),
                        new ReduceAction245(37),
                        new ReduceAction246(37),
-                       new ReduceAction247(38),
-                       new ReduceAction248(38),
-                       new ReduceAction249(38),
+                       new ReduceAction247(37),
+                       new ReduceAction248(37),
+                       new ReduceAction249(37),
                        new ReduceAction250(38),
-                       new ReduceAction251(39),
-                       new ReduceAction252(39),
-                       new ReduceAction253(40),
-                       new ReduceAction254(41),
-                       new ReduceAction255(41),
-                       new ReduceAction256(41),
-                       new ReduceAction257(41),
-                       new ReduceAction258(42),
-                       new ReduceAction259(42),
-                       new ReduceAction260(42),
-                       new ReduceAction261(42),
-                       new ReduceAction262(42),
+                       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(43),
-                       new ReduceAction269(43),
-                       new ReduceAction270(44),
-                       new ReduceAction271(44),
-                       new ReduceAction272(45),
-                       new ReduceAction273(45),
-                       new ReduceAction274(45),
-                       new ReduceAction275(45),
-                       new ReduceAction276(45),
+                       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 ReduceAction279(47),
-                       new ReduceAction280(47),
-                       new ReduceAction281(48),
-                       new ReduceAction282(48),
-                       new ReduceAction283(49),
-                       new ReduceAction284(49),
-                       new ReduceAction285(50),
-                       new ReduceAction286(50),
-                       new ReduceAction287(50),
-                       new ReduceAction288(50),
-                       new ReduceAction289(51),
+                       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 ReduceAction293(52),
+                       new ReduceAction300(52),
                        new ReduceAction205(53),
-                       new ReduceAction295(53),
+                       new ReduceAction302(53),
                        new ReduceAction205(54),
-                       new ReduceAction297(54),
-                       new ReduceAction298(54),
-                       new ReduceAction299(54),
+                       new ReduceAction304(54),
+                       new ReduceAction305(54),
+                       new ReduceAction306(54),
                        new ReduceAction205(55),
-                       new ReduceAction301(55),
+                       new ReduceAction308(55),
                        new ReduceAction205(56),
-                       new ReduceAction303(56),
-                       new ReduceAction304(56),
-                       new ReduceAction305(56),
-                       new ReduceAction306(56),
-                       new ReduceAction307(56),
-                       new ReduceAction308(56),
-                       new ReduceAction309(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 ReduceAction315(57),
-                       new ReduceAction316(57),
+                       new ReduceAction322(57),
+                       new ReduceAction323(57),
                        new ReduceAction205(58),
-                       new ReduceAction318(58),
-                       new ReduceAction319(58),
-                       new ReduceAction320(58),
+                       new ReduceAction325(58),
+                       new ReduceAction326(58),
+                       new ReduceAction327(58),
                        new ReduceAction205(59),
-                       new ReduceAction322(59),
-                       new ReduceAction323(59),
+                       new ReduceAction329(59),
+                       new ReduceAction330(59),
                        new ReduceAction205(60),
-                       new ReduceAction325(60),
-                       new ReduceAction326(60),
-                       new ReduceAction327(60),
-                       new ReduceAction328(61),
-                       new ReduceAction329(61),
+                       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 ReduceAction336(61),
-                       new ReduceAction337(61),
-                       new ReduceAction338(61),
-                       new ReduceAction339(61),
-                       new ReduceAction340(61),
-                       new ReduceAction341(61),
-                       new ReduceAction342(61),
                        new ReduceAction343(61),
                        new ReduceAction344(61),
                        new ReduceAction345(61),
                        new ReduceAction346(61),
                        new ReduceAction347(61),
                        new ReduceAction348(61),
-                       new ReduceAction205(61),
-                       new ReduceAction202(61),
+                       new ReduceAction349(61),
+                       new ReduceAction350(61),
                        new ReduceAction351(61),
                        new ReduceAction352(61),
-                       new ReduceAction353(62),
-                       new ReduceAction354(62),
-                       new ReduceAction355(63),
-                       new ReduceAction356(64),
-                       new ReduceAction355(65),
-                       new ReduceAction358(66),
-                       new ReduceAction359(67),
-                       new ReduceAction360(68),
-                       new ReduceAction361(68),
+                       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 ReduceAction363(68),
-                       new ReduceAction360(69),
-                       new ReduceAction361(69),
-                       new ReduceAction366(69),
+                       new ReduceAction370(68),
+                       new ReduceAction367(69),
+                       new ReduceAction368(69),
+                       new ReduceAction373(69),
                        new ReduceAction181(69),
-                       new ReduceAction363(69),
-                       new ReduceAction360(70),
-                       new ReduceAction361(70),
-                       new ReduceAction371(71),
-                       new ReduceAction372(72),
-                       new ReduceAction373(72),
-                       new ReduceAction374(73),
-                       new ReduceAction375(73),
-                       new ReduceAction376(74),
-                       new ReduceAction377(74),
-                       new ReduceAction378(74),
-                       new ReduceAction379(75),
-                       new ReduceAction380(76),
-                       new ReduceAction381(77),
-                       new ReduceAction381(77),
-                       new ReduceAction383(78),
-                       new ReduceAction384(78),
+                       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 ReduceAction386(79),
-                       new ReduceAction387(79),
-                       new ReduceAction388(80),
-                       new ReduceAction389(80),
-                       new ReduceAction381(80),
+                       new ReduceAction395(79),
+                       new ReduceAction396(79),
+                       new ReduceAction397(80),
+                       new ReduceAction398(80),
+                       new ReduceAction390(80),
                        new ReduceAction66(81),
                        new ReduceAction67(82),
                        new ReduceAction68(82),
@@ -564,60 +571,60 @@ class Parser
                        new ReduceAction232(85),
                        new ReduceAction233(85),
                        new ReduceAction205(86),
-                       new ReduceAction295(86),
+                       new ReduceAction302(86),
                        new ReduceAction205(87),
-                       new ReduceAction297(87),
-                       new ReduceAction298(87),
-                       new ReduceAction299(87),
+                       new ReduceAction304(87),
+                       new ReduceAction305(87),
+                       new ReduceAction306(87),
                        new ReduceAction205(88),
-                       new ReduceAction301(88),
+                       new ReduceAction308(88),
                        new ReduceAction205(89),
-                       new ReduceAction303(89),
-                       new ReduceAction304(89),
-                       new ReduceAction305(89),
-                       new ReduceAction306(89),
-                       new ReduceAction307(89),
-                       new ReduceAction308(89),
-                       new ReduceAction309(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 ReduceAction315(90),
-                       new ReduceAction316(90),
+                       new ReduceAction322(90),
+                       new ReduceAction323(90),
                        new ReduceAction205(91),
-                       new ReduceAction318(91),
-                       new ReduceAction319(91),
-                       new ReduceAction320(91),
+                       new ReduceAction325(91),
+                       new ReduceAction326(91),
+                       new ReduceAction327(91),
                        new ReduceAction205(92),
-                       new ReduceAction322(92),
-                       new ReduceAction323(92),
+                       new ReduceAction329(92),
+                       new ReduceAction330(92),
                        new ReduceAction205(93),
-                       new ReduceAction325(93),
-                       new ReduceAction326(93),
-                       new ReduceAction327(93),
-                       new ReduceAction328(94),
-                       new ReduceAction329(94),
+                       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 ReduceAction337(94),
-                       new ReduceAction341(94),
-                       new ReduceAction342(94),
-                       new ReduceAction343(94),
                        new ReduceAction344(94),
-                       new ReduceAction345(94),
-                       new ReduceAction346(94),
-                       new ReduceAction347(94),
                        new ReduceAction348(94),
-                       new ReduceAction205(94),
-                       new ReduceAction202(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 ReduceAction204(95),
@@ -657,36 +664,41 @@ class Parser
                        new ReduceAction244(98),
                        new ReduceAction245(98),
                        new ReduceAction246(98),
-                       new ReduceAction253(99),
-                       new ReduceAction254(100),
-                       new ReduceAction255(100),
-                       new ReduceAction256(100),
-                       new ReduceAction257(100),
-                       new ReduceAction258(101),
-                       new ReduceAction259(101),
-                       new ReduceAction260(101),
-                       new ReduceAction261(101),
-                       new ReduceAction262(101),
+                       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 ReduceAction270(102),
-                       new ReduceAction271(102),
-                       new ReduceAction272(103),
-                       new ReduceAction279(104),
-                       new ReduceAction280(104),
-                       new ReduceAction281(105),
-                       new ReduceAction282(105),
-                       new ReduceAction283(106),
-                       new ReduceAction284(106),
-                       new ReduceAction285(107),
-                       new ReduceAction286(107),
+                       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 ReduceAction293(108),
+                       new ReduceAction300(108),
                        new ReduceAction205(109),
                        new ReduceAction232(109),
                        new ReduceAction233(109),
@@ -700,151 +712,151 @@ class Parser
                        new ReduceAction232(112),
                        new ReduceAction233(112),
                        new ReduceAction205(113),
-                       new ReduceAction295(113),
+                       new ReduceAction302(113),
                        new ReduceAction205(114),
-                       new ReduceAction297(114),
-                       new ReduceAction298(114),
-                       new ReduceAction299(114),
+                       new ReduceAction304(114),
+                       new ReduceAction305(114),
+                       new ReduceAction306(114),
                        new ReduceAction205(115),
-                       new ReduceAction301(115),
+                       new ReduceAction308(115),
                        new ReduceAction205(116),
-                       new ReduceAction303(116),
-                       new ReduceAction304(116),
-                       new ReduceAction305(116),
-                       new ReduceAction306(116),
-                       new ReduceAction307(116),
-                       new ReduceAction308(116),
-                       new ReduceAction309(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 ReduceAction315(117),
-                       new ReduceAction316(117),
+                       new ReduceAction322(117),
+                       new ReduceAction323(117),
                        new ReduceAction205(118),
-                       new ReduceAction318(118),
-                       new ReduceAction319(118),
-                       new ReduceAction320(118),
+                       new ReduceAction325(118),
+                       new ReduceAction326(118),
+                       new ReduceAction327(118),
                        new ReduceAction205(119),
-                       new ReduceAction322(119),
-                       new ReduceAction323(119),
+                       new ReduceAction329(119),
+                       new ReduceAction330(119),
                        new ReduceAction205(120),
-                       new ReduceAction325(120),
-                       new ReduceAction326(120),
-                       new ReduceAction327(120),
-                       new ReduceAction328(121),
-                       new ReduceAction329(121),
+                       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 ReduceAction336(121),
-                       new ReduceAction337(121),
-                       new ReduceAction341(121),
-                       new ReduceAction342(121),
                        new ReduceAction343(121),
                        new ReduceAction344(121),
-                       new ReduceAction345(121),
-                       new ReduceAction346(121),
-                       new ReduceAction347(121),
                        new ReduceAction348(121),
-                       new ReduceAction205(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 ReduceAction295(123),
+                       new ReduceAction302(123),
                        new ReduceAction205(124),
-                       new ReduceAction297(124),
-                       new ReduceAction298(124),
-                       new ReduceAction299(124),
+                       new ReduceAction304(124),
+                       new ReduceAction305(124),
+                       new ReduceAction306(124),
                        new ReduceAction205(125),
-                       new ReduceAction301(125),
+                       new ReduceAction308(125),
                        new ReduceAction205(126),
-                       new ReduceAction303(126),
-                       new ReduceAction304(126),
-                       new ReduceAction305(126),
-                       new ReduceAction306(126),
-                       new ReduceAction307(126),
-                       new ReduceAction308(126),
-                       new ReduceAction309(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 ReduceAction315(127),
-                       new ReduceAction316(127),
+                       new ReduceAction322(127),
+                       new ReduceAction323(127),
                        new ReduceAction205(128),
-                       new ReduceAction318(128),
-                       new ReduceAction319(128),
-                       new ReduceAction320(128),
+                       new ReduceAction325(128),
+                       new ReduceAction326(128),
+                       new ReduceAction327(128),
                        new ReduceAction205(129),
-                       new ReduceAction322(129),
-                       new ReduceAction323(129),
+                       new ReduceAction329(129),
+                       new ReduceAction330(129),
                        new ReduceAction205(130),
-                       new ReduceAction325(130),
-                       new ReduceAction637(130),
-                       new ReduceAction638(131),
-                       new ReduceAction639(131),
+                       new ReduceAction332(130),
+                       new ReduceAction651(130),
+                       new ReduceAction652(131),
+                       new ReduceAction653(131),
                        new ReduceAction234(131),
                        new ReduceAction235(131),
-                       new ReduceAction642(131),
-                       new ReduceAction337(131),
-                       new ReduceAction341(131),
-                       new ReduceAction342(131),
-                       new ReduceAction343(131),
+                       new ReduceAction656(131),
                        new ReduceAction344(131),
-                       new ReduceAction345(131),
-                       new ReduceAction346(131),
-                       new ReduceAction347(131),
                        new ReduceAction348(131),
-                       new ReduceAction205(131),
+                       new ReduceAction349(131),
+                       new ReduceAction350(131),
                        new ReduceAction351(131),
                        new ReduceAction352(131),
-                       new ReduceAction655(132),
-                       new ReduceAction656(132),
+                       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 ReduceAction663(135),
-                       new ReduceAction664(135),
-                       new ReduceAction665(136),
-                       new ReduceAction666(136),
-                       new ReduceAction667(137),
-                       new ReduceAction668(137),
-                       new ReduceAction669(138),
-                       new ReduceAction670(138),
-                       new ReduceAction667(139),
-                       new ReduceAction668(139),
-                       new ReduceAction673(140),
-                       new ReduceAction674(140),
-                       new ReduceAction675(141),
-                       new ReduceAction676(141),
-                       new ReduceAction677(142),
-                       new ReduceAction678(142),
+                       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 ReduceAction680(143),
-                       new ReduceAction366(144),
-                       new ReduceAction682(144),
-                       new ReduceAction373(145),
-                       new ReduceAction684(145),
-                       new ReduceAction366(146),
-                       new ReduceAction682(146),
-                       new ReduceAction374(147),
-                       new ReduceAction688(147),
-                       new ReduceAction689(148),
-                       new ReduceAction690(148),
-                       new ReduceAction691(149),
-                       new ReduceAction692(149)
+                       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
@@ -1995,12 +2007,12 @@ private class ReduceAction32
                                        assert pdocnode2 isa nullable ADoc
                                        var tkwmodulenode3 = nodearraylist2
                                        assert tkwmodulenode3 isa nullable TKwmodule
-                                       var tidnode4 = nodearraylist4
-                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode4 = nodearraylist4
+                                       assert pmodulenamenode4 isa nullable AModuleName
                                        var pmoduledeclnode1: nullable AModuledecl = new AModuledecl.init_amoduledecl(
                                                pdocnode2,
                                                tkwmodulenode3,
-                                               tidnode4
+                                               pmodulenamenode4
                                        )
                                        node_list = pmoduledeclnode1
                                        p.push(p.go_to(_goto), node_list)
@@ -2023,12 +2035,12 @@ private class ReduceAction33
                                        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)
@@ -8155,6 +8167,47 @@ private class ReduceAction242
        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
+       var _goto: Int
+       init(g: Int) do _goto = g
+end
+private class ReduceAction243
+       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
@@ -8189,7 +8242,7 @@ private class ReduceAction242
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction243
+private class ReduceAction244
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8221,7 +8274,45 @@ private class ReduceAction243
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction244
+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
+       var _goto: Int
+       init(g: Int) do _goto = g
+end
+private class ReduceAction246
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8257,7 +8348,7 @@ private class ReduceAction244
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction245
+private class ReduceAction247
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8288,7 +8379,44 @@ private class ReduceAction245
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction246
+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,
+                                               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 ReduceAction249
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8323,7 +8451,7 @@ private class ReduceAction246
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction247
+private class ReduceAction250
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8356,7 +8484,46 @@ private class ReduceAction247
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction248
+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
+       var _goto: Int
+       init(g: Int) do _goto = g
+end
+private class ReduceAction252
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8393,7 +8560,7 @@ private class ReduceAction248
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction249
+private class ReduceAction253
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8423,7 +8590,43 @@ private class ReduceAction249
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction250
+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
+       var _goto: Int
+       init(g: Int) do _goto = g
+end
+private class ReduceAction255
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8457,7 +8660,7 @@ private class ReduceAction250
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction251
+private class ReduceAction256
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8474,7 +8677,7 @@ private class ReduceAction251
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction252
+private class ReduceAction257
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8491,7 +8694,7 @@ private class ReduceAction252
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction253
+private class ReduceAction258
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8510,7 +8713,7 @@ private class ReduceAction253
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction254
+private class ReduceAction259
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8534,7 +8737,7 @@ private class ReduceAction254
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction255
+private class ReduceAction260
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8561,7 +8764,7 @@ private class ReduceAction255
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction256
+private class ReduceAction261
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8592,7 +8795,7 @@ private class ReduceAction256
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction257
+private class ReduceAction262
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8626,7 +8829,7 @@ private class ReduceAction257
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction258
+private class ReduceAction263
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8657,7 +8860,7 @@ private class ReduceAction258
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction259
+private class ReduceAction264
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8685,7 +8888,7 @@ private class ReduceAction259
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction260
+private class ReduceAction265
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8722,7 +8925,7 @@ private class ReduceAction260
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction261
+private class ReduceAction266
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8756,7 +8959,7 @@ private class ReduceAction261
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction262
+private class ReduceAction267
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8787,7 +8990,7 @@ private class ReduceAction262
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction263
+private class ReduceAction268
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8818,7 +9021,7 @@ private class ReduceAction263
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction264
+private class ReduceAction269
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8846,7 +9049,7 @@ private class ReduceAction264
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction265
+private class ReduceAction270
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8883,7 +9086,7 @@ private class ReduceAction265
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction266
+private class ReduceAction271
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8917,7 +9120,7 @@ private class ReduceAction266
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction267
+private class ReduceAction272
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8948,7 +9151,7 @@ private class ReduceAction267
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction268
+private class ReduceAction273
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8965,7 +9168,7 @@ private class ReduceAction268
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction269
+private class ReduceAction274
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8982,7 +9185,7 @@ private class ReduceAction269
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction270
+private class ReduceAction275
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9007,7 +9210,7 @@ private class ReduceAction270
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction271
+private class ReduceAction276
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9029,7 +9232,7 @@ private class ReduceAction271
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction272
+private class ReduceAction277
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9062,7 +9265,7 @@ private class ReduceAction272
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction273
+private class ReduceAction278
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9091,7 +9294,7 @@ private class ReduceAction273
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction274
+private class ReduceAction279
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9124,7 +9327,7 @@ private class ReduceAction274
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction275
+private class ReduceAction280
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9153,7 +9356,7 @@ private class ReduceAction275
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction276
+private class ReduceAction281
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9183,7 +9386,7 @@ private class ReduceAction276
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction279
+private class ReduceAction284
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9208,7 +9411,7 @@ private class ReduceAction279
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction280
+private class ReduceAction285
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9230,7 +9433,7 @@ private class ReduceAction280
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction281
+private class ReduceAction286
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9265,7 +9468,7 @@ private class ReduceAction281
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction282
+private class ReduceAction287
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9297,11 +9500,13 @@ private class ReduceAction282
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction283
+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
@@ -9313,25 +9518,27 @@ private class ReduceAction283
                                        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 plabelnode8 = nodearraylist13
+                                       assert plabelnode8 isa nullable ALabel
                                        var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
                                                tkwfornode2,
-                                               tidnode3,
-                                               pexprnode4,
-                                               tkwdonode5,
-                                               pexprnode6,
-                                               plabelnode7
+                                               listnode4,
+                                               pexprnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
+                                               plabelnode8
                                        )
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
@@ -9339,11 +9546,12 @@ private class ReduceAction283
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction284
+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
@@ -9354,22 +9562,69 @@ private class ReduceAction284
                                        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 plabelnode8 = nodearraylist11
+                                       assert plabelnode8 isa nullable ALabel
                                        var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
                                                tkwfornode2,
-                                               tidnode3,
-                                               pexprnode4,
-                                               tkwdonode5,
-                                               pexprnode6,
+                                               listnode4,
+                                               pexprnode5,
+                                               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 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
+                                       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 pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
+                                               tkwfornode2,
+                                               listnode4,
+                                               pexprnode5,
+                                               tkwdonode6,
+                                               pexprnode7,
                                                null
                                        )
                                        node_list = pexprnode1
@@ -9378,7 +9633,48 @@ private class ReduceAction284
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction285
+private class ReduceAction291
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       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 pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr(
+                                               tkwfornode2,
+                                               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 ReduceAction292
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9405,7 +9701,7 @@ private class ReduceAction285
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction286
+private class ReduceAction293
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9435,7 +9731,7 @@ private class ReduceAction286
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction287
+private class ReduceAction294
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9458,7 +9754,7 @@ private class ReduceAction287
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction288
+private class ReduceAction295
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9484,7 +9780,7 @@ private class ReduceAction288
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction289
+private class ReduceAction296
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9498,7 +9794,7 @@ private class ReduceAction289
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction293
+private class ReduceAction300
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9527,7 +9823,7 @@ private class ReduceAction293
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction295
+private class ReduceAction302
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9569,7 +9865,7 @@ private class ReduceAction295
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction297
+private class ReduceAction304
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9592,7 +9888,7 @@ private class ReduceAction297
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction298
+private class ReduceAction305
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9615,7 +9911,7 @@ private class ReduceAction298
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction299
+private class ReduceAction306
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9639,7 +9935,7 @@ private class ReduceAction299
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction301
+private class ReduceAction308
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9661,7 +9957,7 @@ private class ReduceAction301
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction303
+private class ReduceAction310
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9684,7 +9980,7 @@ private class ReduceAction303
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction304
+private class ReduceAction311
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9707,7 +10003,7 @@ private class ReduceAction304
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction305
+private class ReduceAction312
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9730,7 +10026,7 @@ private class ReduceAction305
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction306
+private class ReduceAction313
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9753,7 +10049,7 @@ private class ReduceAction306
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction307
+private class ReduceAction314
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9776,7 +10072,7 @@ private class ReduceAction307
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction308
+private class ReduceAction315
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9799,7 +10095,7 @@ private class ReduceAction308
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction309
+private class ReduceAction316
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9822,7 +10118,7 @@ private class ReduceAction309
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction310
+private class ReduceAction317
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9845,7 +10141,7 @@ private class ReduceAction310
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction311
+private class ReduceAction318
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9868,7 +10164,7 @@ private class ReduceAction311
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction312
+private class ReduceAction319
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9891,7 +10187,7 @@ private class ReduceAction312
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction313
+private class ReduceAction320
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9914,7 +10210,7 @@ private class ReduceAction313
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction315
+private class ReduceAction322
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9937,7 +10233,7 @@ private class ReduceAction315
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction316
+private class ReduceAction323
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9960,7 +10256,7 @@ private class ReduceAction316
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction318
+private class ReduceAction325
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9983,7 +10279,7 @@ private class ReduceAction318
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction319
+private class ReduceAction326
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10006,7 +10302,7 @@ private class ReduceAction319
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction320
+private class ReduceAction327
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10029,7 +10325,7 @@ private class ReduceAction320
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction322
+private class ReduceAction329
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10051,7 +10347,7 @@ private class ReduceAction322
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction323
+private class ReduceAction330
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10073,7 +10369,7 @@ private class ReduceAction323
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction325
+private class ReduceAction332
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10102,7 +10398,7 @@ private class ReduceAction325
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction326
+private class ReduceAction333
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10129,7 +10425,7 @@ private class ReduceAction326
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction327
+private class ReduceAction334
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10153,7 +10449,7 @@ private class ReduceAction327
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction328
+private class ReduceAction335
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10176,7 +10472,7 @@ private class ReduceAction328
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction329
+private class ReduceAction336
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10196,7 +10492,7 @@ private class ReduceAction329
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction336
+private class ReduceAction343
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10221,7 +10517,7 @@ private class ReduceAction336
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction337
+private class ReduceAction344
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10255,7 +10551,7 @@ private class ReduceAction337
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction338
+private class ReduceAction345
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10283,7 +10579,7 @@ private class ReduceAction338
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction339
+private class ReduceAction346
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10311,7 +10607,7 @@ private class ReduceAction339
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction340
+private class ReduceAction347
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10330,7 +10626,7 @@ private class ReduceAction340
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction341
+private class ReduceAction348
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10347,7 +10643,7 @@ private class ReduceAction341
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction342
+private class ReduceAction349
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10364,7 +10660,7 @@ private class ReduceAction342
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction343
+private class ReduceAction350
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10381,7 +10677,7 @@ private class ReduceAction343
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction344
+private class ReduceAction351
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10398,7 +10694,7 @@ private class ReduceAction344
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction345
+private class ReduceAction352
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10415,7 +10711,7 @@ private class ReduceAction345
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction346
+private class ReduceAction353
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10432,7 +10728,7 @@ private class ReduceAction346
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction347
+private class ReduceAction354
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10449,7 +10745,7 @@ private class ReduceAction347
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction348
+private class ReduceAction355
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10466,7 +10762,7 @@ private class ReduceAction348
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction351
+private class ReduceAction358
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10498,7 +10794,7 @@ private class ReduceAction351
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction352
+private class ReduceAction359
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10535,7 +10831,7 @@ private class ReduceAction352
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction353
+private class ReduceAction360
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10560,7 +10856,7 @@ private class ReduceAction353
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction354
+private class ReduceAction361
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10589,7 +10885,7 @@ private class ReduceAction354
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction355
+private class ReduceAction362
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10613,7 +10909,7 @@ private class ReduceAction355
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction356
+private class ReduceAction363
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10630,7 +10926,7 @@ private class ReduceAction356
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction358
+private class ReduceAction365
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10647,7 +10943,7 @@ private class ReduceAction358
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction359
+private class ReduceAction366
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10664,7 +10960,7 @@ private class ReduceAction359
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction360
+private class ReduceAction367
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10685,7 +10981,7 @@ private class ReduceAction360
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction361
+private class ReduceAction368
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10710,7 +11006,7 @@ private class ReduceAction361
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction363
+private class ReduceAction370
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10722,7 +11018,7 @@ private class ReduceAction363
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction366
+private class ReduceAction373
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10739,7 +11035,7 @@ private class ReduceAction366
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction371
+private class ReduceAction378
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10755,82 +11051,144 @@ private class ReduceAction371
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction372
+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 ReduceAction373
+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 ReduceAction374
+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 ReduceAction375
+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
+       var _goto: Int
+       init(g: Int) do _goto = g
+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 ReduceAction376
+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
+       var _goto: Int
+       init(g: Int) do _goto = g
+end
+private class ReduceAction385
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10849,7 +11207,7 @@ private class ReduceAction376
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction377
+private class ReduceAction386
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10872,7 +11230,7 @@ private class ReduceAction377
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction378
+private class ReduceAction387
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10892,7 +11250,7 @@ private class ReduceAction378
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction379
+private class ReduceAction388
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10907,7 +11265,7 @@ private class ReduceAction379
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction380
+private class ReduceAction389
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10922,7 +11280,7 @@ private class ReduceAction380
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction381
+private class ReduceAction390
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10933,7 +11291,7 @@ private class ReduceAction381
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction383
+private class ReduceAction392
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10952,7 +11310,7 @@ private class ReduceAction383
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction384
+private class ReduceAction393
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10972,7 +11330,7 @@ private class ReduceAction384
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction386
+private class ReduceAction395
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10983,7 +11341,7 @@ private class ReduceAction386
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction387
+private class ReduceAction396
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10996,7 +11354,7 @@ private class ReduceAction387
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction388
+private class ReduceAction397
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11008,7 +11366,7 @@ private class ReduceAction388
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction389
+private class ReduceAction398
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11021,7 +11379,7 @@ private class ReduceAction389
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction637
+private class ReduceAction651
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11046,7 +11404,7 @@ private class ReduceAction637
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction638
+private class ReduceAction652
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11067,7 +11425,7 @@ private class ReduceAction638
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction639
+private class ReduceAction653
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11096,7 +11454,7 @@ private class ReduceAction639
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction642
+private class ReduceAction656
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11123,7 +11481,7 @@ private class ReduceAction642
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction655
+private class ReduceAction669
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11138,7 +11496,7 @@ private class ReduceAction655
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction656
+private class ReduceAction670
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11151,7 +11509,7 @@ private class ReduceAction656
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction663
+private class ReduceAction677
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11168,7 +11526,7 @@ private class ReduceAction663
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction664
+private class ReduceAction678
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11189,7 +11547,7 @@ private class ReduceAction664
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction665
+private class ReduceAction679
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11206,7 +11564,7 @@ private class ReduceAction665
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction666
+private class ReduceAction680
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11227,7 +11585,7 @@ private class ReduceAction666
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction667
+private class ReduceAction681
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11244,7 +11602,7 @@ private class ReduceAction667
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction668
+private class ReduceAction682
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11265,7 +11623,7 @@ private class ReduceAction668
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction669
+private class ReduceAction683
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11282,7 +11640,7 @@ private class ReduceAction669
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction670
+private class ReduceAction684
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11303,7 +11661,7 @@ private class ReduceAction670
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction673
+private class ReduceAction687
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11320,7 +11678,7 @@ private class ReduceAction673
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction674
+private class ReduceAction688
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11341,7 +11699,7 @@ private class ReduceAction674
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction675
+private class ReduceAction689
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11358,7 +11716,7 @@ private class ReduceAction675
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction676
+private class ReduceAction690
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11379,7 +11737,7 @@ private class ReduceAction676
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction677
+private class ReduceAction691
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11396,7 +11754,7 @@ private class ReduceAction677
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction678
+private class ReduceAction692
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11417,7 +11775,7 @@ private class ReduceAction678
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction680
+private class ReduceAction694
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11438,7 +11796,7 @@ private class ReduceAction680
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction682
+private class ReduceAction696
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11459,7 +11817,23 @@ private class ReduceAction682
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction684
+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
+       var _goto: Int
+       init(g: Int) do _goto = g
+end
+private class ReduceAction698
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11479,7 +11853,7 @@ private class ReduceAction684
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction688
+private class ReduceAction702
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11500,7 +11874,7 @@ private class ReduceAction688
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction689
+private class ReduceAction703
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11517,7 +11891,7 @@ private class ReduceAction689
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction690
+private class ReduceAction704
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11538,7 +11912,7 @@ private class ReduceAction690
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction691
+private class ReduceAction705
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11555,7 +11929,7 @@ private class ReduceAction691
        var _goto: Int
        init(g: Int) do _goto = g
 end
-private class ReduceAction692
+private class ReduceAction706
        super ReduceAction
        redef fun action(p: Parser)
        do