model: new metamodel
[nit.git] / src / parser / parser.nit
index 669c970..11222e5 100644 (file)
@@ -3,6 +3,7 @@
 package parser
 
 intrude import parser_prod
+import tables
 
 # State of the parser automata as stored in the parser stack.
 private class State
@@ -346,194 +347,194 @@ class Parser
                        new ReduceAction193(18),
                        new ReduceAction194(18),
                        new ReduceAction195(18),
-                       new ReduceAction196(19),
-                       new ReduceAction197(19),
-                       new ReduceAction198(19),
-                       new ReduceAction199(19),
-                       new ReduceAction200(20),
-                       new ReduceAction201(20),
-                       new ReduceAction202(20),
-                       new ReduceAction203(21),
-                       new ReduceAction204(22),
-                       new ReduceAction205(22),
-                       new ReduceAction206(22),
-                       new ReduceAction207(23),
-                       new ReduceAction208(24),
-                       new ReduceAction209(24),
-                       new ReduceAction210(24),
-                       new ReduceAction211(24),
-                       new ReduceAction212(24),
+                       new ReduceAction196(18),
+                       new ReduceAction197(18),
+                       new ReduceAction198(18),
+                       new ReduceAction199(18),
+                       new ReduceAction200(19),
+                       new ReduceAction201(19),
+                       new ReduceAction202(19),
+                       new ReduceAction203(19),
+                       new ReduceAction204(19),
+                       new ReduceAction205(19),
+                       new ReduceAction206(20),
+                       new ReduceAction207(20),
+                       new ReduceAction208(21),
+                       new ReduceAction209(22),
+                       new ReduceAction210(22),
+                       new ReduceAction211(22),
+                       new ReduceAction212(23),
                        new ReduceAction213(24),
-                       new ReduceAction214(25),
-                       new ReduceAction215(26),
-                       new ReduceAction216(26),
-                       new ReduceAction217(27),
-                       new ReduceAction218(28),
-                       new ReduceAction218(28),
-                       new ReduceAction220(28),
-                       new ReduceAction221(29),
-                       new ReduceAction222(29),
-                       new ReduceAction223(29),
-                       new ReduceAction224(30),
-                       new ReduceAction225(30),
-                       new ReduceAction226(30),
-                       new ReduceAction227(31),
-                       new ReduceAction228(31),
-                       new ReduceAction229(31),
-                       new ReduceAction230(31),
-                       new ReduceAction231(32),
-                       new ReduceAction232(32),
-                       new ReduceAction233(33),
-                       new ReduceAction233(34),
-                       new ReduceAction235(35),
-                       new ReduceAction236(35),
-                       new ReduceAction237(35),
-                       new ReduceAction238(35),
-                       new ReduceAction239(36),
-                       new ReduceAction240(36),
-                       new ReduceAction241(37),
-                       new ReduceAction242(37),
-                       new ReduceAction243(38),
-                       new ReduceAction244(38),
-                       new ReduceAction235(39),
-                       new ReduceAction238(40),
-                       new ReduceAction238(40),
-                       new ReduceAction248(40),
-                       new ReduceAction249(40),
-                       new ReduceAction250(40),
-                       new ReduceAction251(40),
-                       new ReduceAction252(40),
+                       new ReduceAction214(24),
+                       new ReduceAction215(24),
+                       new ReduceAction216(24),
+                       new ReduceAction217(24),
+                       new ReduceAction218(24),
+                       new ReduceAction219(25),
+                       new ReduceAction220(26),
+                       new ReduceAction221(26),
+                       new ReduceAction222(27),
+                       new ReduceAction223(28),
+                       new ReduceAction223(28),
+                       new ReduceAction225(28),
+                       new ReduceAction226(29),
+                       new ReduceAction227(29),
+                       new ReduceAction228(29),
+                       new ReduceAction229(30),
+                       new ReduceAction230(30),
+                       new ReduceAction231(30),
+                       new ReduceAction232(31),
+                       new ReduceAction233(31),
+                       new ReduceAction234(31),
+                       new ReduceAction235(31),
+                       new ReduceAction236(32),
+                       new ReduceAction237(32),
+                       new ReduceAction238(33),
+                       new ReduceAction238(34),
+                       new ReduceAction240(35),
+                       new ReduceAction241(35),
+                       new ReduceAction242(35),
+                       new ReduceAction243(35),
+                       new ReduceAction244(36),
+                       new ReduceAction245(36),
+                       new ReduceAction246(37),
+                       new ReduceAction247(37),
+                       new ReduceAction248(38),
+                       new ReduceAction249(38),
+                       new ReduceAction240(39),
+                       new ReduceAction243(40),
+                       new ReduceAction243(40),
                        new ReduceAction253(40),
                        new ReduceAction254(40),
                        new ReduceAction255(40),
                        new ReduceAction256(40),
                        new ReduceAction257(40),
                        new ReduceAction258(40),
-                       new ReduceAction238(40),
-                       new ReduceAction238(40),
-                       new ReduceAction238(40),
-                       new ReduceAction238(40),
-                       new ReduceAction238(40),
-                       new ReduceAction238(40),
-                       new ReduceAction265(40),
-                       new ReduceAction266(40),
-                       new ReduceAction267(40),
-                       new ReduceAction268(40),
-                       new ReduceAction269(40),
+                       new ReduceAction259(40),
+                       new ReduceAction260(40),
+                       new ReduceAction261(40),
+                       new ReduceAction262(40),
+                       new ReduceAction263(40),
+                       new ReduceAction243(40),
+                       new ReduceAction243(40),
+                       new ReduceAction243(40),
+                       new ReduceAction243(40),
+                       new ReduceAction243(40),
+                       new ReduceAction243(40),
                        new ReduceAction270(40),
                        new ReduceAction271(40),
                        new ReduceAction272(40),
-                       new ReduceAction273(41),
-                       new ReduceAction274(42),
-                       new ReduceAction275(42),
-                       new ReduceAction276(43),
-                       new ReduceAction277(43),
-                       new ReduceAction278(43),
-                       new ReduceAction279(43),
-                       new ReduceAction280(43),
-                       new ReduceAction281(43),
+                       new ReduceAction273(40),
+                       new ReduceAction274(40),
+                       new ReduceAction275(40),
+                       new ReduceAction276(40),
+                       new ReduceAction277(40),
+                       new ReduceAction278(40),
+                       new ReduceAction279(41),
+                       new ReduceAction280(42),
+                       new ReduceAction281(42),
                        new ReduceAction282(43),
                        new ReduceAction283(43),
                        new ReduceAction284(43),
-                       new ReduceAction285(44),
-                       new ReduceAction286(44),
-                       new ReduceAction287(44),
-                       new ReduceAction288(44),
-                       new ReduceAction289(44),
-                       new ReduceAction290(44),
-                       new ReduceAction291(45),
-                       new ReduceAction292(45),
-                       new ReduceAction293(46),
-                       new ReduceAction294(47),
-                       new ReduceAction295(47),
-                       new ReduceAction296(47),
-                       new ReduceAction297(47),
-                       new ReduceAction298(48),
-                       new ReduceAction299(48),
-                       new ReduceAction300(48),
-                       new ReduceAction301(48),
-                       new ReduceAction302(48),
-                       new ReduceAction303(48),
+                       new ReduceAction285(43),
+                       new ReduceAction286(43),
+                       new ReduceAction287(43),
+                       new ReduceAction288(43),
+                       new ReduceAction289(43),
+                       new ReduceAction290(43),
+                       new ReduceAction291(44),
+                       new ReduceAction292(44),
+                       new ReduceAction293(44),
+                       new ReduceAction294(44),
+                       new ReduceAction295(44),
+                       new ReduceAction296(44),
+                       new ReduceAction297(45),
+                       new ReduceAction298(45),
+                       new ReduceAction299(46),
+                       new ReduceAction300(47),
+                       new ReduceAction301(47),
+                       new ReduceAction302(47),
+                       new ReduceAction303(47),
                        new ReduceAction304(48),
                        new ReduceAction305(48),
                        new ReduceAction306(48),
                        new ReduceAction307(48),
-                       new ReduceAction308(49),
-                       new ReduceAction309(49),
-                       new ReduceAction310(50),
-                       new ReduceAction311(50),
-                       new ReduceAction312(51),
-                       new ReduceAction313(51),
-                       new ReduceAction314(51),
-                       new ReduceAction315(51),
-                       new ReduceAction316(51),
-                       new ReduceAction235(52),
-                       new ReduceAction237(52),
-                       new ReduceAction319(53),
-                       new ReduceAction320(53),
-                       new ReduceAction321(54),
-                       new ReduceAction322(54),
-                       new ReduceAction323(55),
-                       new ReduceAction324(55),
-                       new ReduceAction325(55),
-                       new ReduceAction326(55),
-                       new ReduceAction327(56),
-                       new ReduceAction328(56),
-                       new ReduceAction329(56),
-                       new ReduceAction330(56),
-                       new ReduceAction331(57),
-                       new ReduceAction238(58),
-                       new ReduceAction267(58),
-                       new ReduceAction268(58),
-                       new ReduceAction335(58),
-                       new ReduceAction238(59),
-                       new ReduceAction337(59),
-                       new ReduceAction238(60),
-                       new ReduceAction339(60),
-                       new ReduceAction340(60),
-                       new ReduceAction341(60),
-                       new ReduceAction238(61),
-                       new ReduceAction343(61),
-                       new ReduceAction238(62),
-                       new ReduceAction345(62),
-                       new ReduceAction346(62),
-                       new ReduceAction347(62),
-                       new ReduceAction348(62),
-                       new ReduceAction349(62),
-                       new ReduceAction350(62),
+                       new ReduceAction308(48),
+                       new ReduceAction309(48),
+                       new ReduceAction310(48),
+                       new ReduceAction311(48),
+                       new ReduceAction312(48),
+                       new ReduceAction313(48),
+                       new ReduceAction314(49),
+                       new ReduceAction315(49),
+                       new ReduceAction316(50),
+                       new ReduceAction317(50),
+                       new ReduceAction318(51),
+                       new ReduceAction319(51),
+                       new ReduceAction320(51),
+                       new ReduceAction321(51),
+                       new ReduceAction322(51),
+                       new ReduceAction240(52),
+                       new ReduceAction242(52),
+                       new ReduceAction325(53),
+                       new ReduceAction326(53),
+                       new ReduceAction327(54),
+                       new ReduceAction328(54),
+                       new ReduceAction329(55),
+                       new ReduceAction330(55),
+                       new ReduceAction331(55),
+                       new ReduceAction332(55),
+                       new ReduceAction333(56),
+                       new ReduceAction334(56),
+                       new ReduceAction335(56),
+                       new ReduceAction336(56),
+                       new ReduceAction337(57),
+                       new ReduceAction243(58),
+                       new ReduceAction272(58),
+                       new ReduceAction273(58),
+                       new ReduceAction341(58),
+                       new ReduceAction243(59),
+                       new ReduceAction343(59),
+                       new ReduceAction243(60),
+                       new ReduceAction345(60),
+                       new ReduceAction346(60),
+                       new ReduceAction347(60),
+                       new ReduceAction243(61),
+                       new ReduceAction349(61),
+                       new ReduceAction243(62),
                        new ReduceAction351(62),
                        new ReduceAction352(62),
                        new ReduceAction353(62),
                        new ReduceAction354(62),
                        new ReduceAction355(62),
-                       new ReduceAction238(63),
-                       new ReduceAction357(63),
-                       new ReduceAction358(63),
-                       new ReduceAction238(64),
-                       new ReduceAction360(64),
-                       new ReduceAction361(64),
-                       new ReduceAction362(64),
-                       new ReduceAction238(65),
-                       new ReduceAction364(65),
-                       new ReduceAction365(65),
-                       new ReduceAction238(66),
-                       new ReduceAction367(66),
-                       new ReduceAction368(66),
-                       new ReduceAction369(66),
-                       new ReduceAction370(67),
-                       new ReduceAction371(67),
-                       new ReduceAction265(67),
-                       new ReduceAction266(67),
-                       new ReduceAction269(67),
+                       new ReduceAction356(62),
+                       new ReduceAction357(62),
+                       new ReduceAction358(62),
+                       new ReduceAction359(62),
+                       new ReduceAction360(62),
+                       new ReduceAction361(62),
+                       new ReduceAction243(63),
+                       new ReduceAction363(63),
+                       new ReduceAction364(63),
+                       new ReduceAction243(64),
+                       new ReduceAction366(64),
+                       new ReduceAction367(64),
+                       new ReduceAction368(64),
+                       new ReduceAction243(65),
+                       new ReduceAction370(65),
+                       new ReduceAction371(65),
+                       new ReduceAction243(66),
+                       new ReduceAction373(66),
+                       new ReduceAction374(66),
+                       new ReduceAction375(66),
+                       new ReduceAction376(67),
+                       new ReduceAction377(67),
                        new ReduceAction270(67),
                        new ReduceAction271(67),
-                       new ReduceAction272(67),
-                       new ReduceAction378(67),
-                       new ReduceAction379(67),
-                       new ReduceAction380(67),
-                       new ReduceAction381(67),
-                       new ReduceAction382(67),
-                       new ReduceAction383(67),
+                       new ReduceAction274(67),
+                       new ReduceAction275(67),
+                       new ReduceAction276(67),
+                       new ReduceAction277(67),
                        new ReduceAction384(67),
                        new ReduceAction385(67),
                        new ReduceAction386(67),
@@ -541,49 +542,55 @@ class Parser
                        new ReduceAction388(67),
                        new ReduceAction389(67),
                        new ReduceAction390(67),
-                       new ReduceAction238(67),
+                       new ReduceAction391(67),
                        new ReduceAction392(67),
                        new ReduceAction393(67),
                        new ReduceAction394(67),
-                       new ReduceAction395(68),
-                       new ReduceAction396(68),
-                       new ReduceAction397(69),
-                       new ReduceAction398(70),
-                       new ReduceAction397(71),
-                       new ReduceAction400(72),
-                       new ReduceAction401(73),
-                       new ReduceAction402(74),
-                       new ReduceAction403(74),
-                       new ReduceAction404(74),
-                       new ReduceAction402(75),
-                       new ReduceAction406(75),
-                       new ReduceAction403(75),
-                       new ReduceAction404(75),
-                       new ReduceAction409(76),
-                       new ReduceAction410(77),
-                       new ReduceAction411(77),
-                       new ReduceAction412(78),
-                       new ReduceAction413(79),
-                       new ReduceAction414(79),
-                       new ReduceAction415(80),
-                       new ReduceAction416(80),
-                       new ReduceAction417(80),
-                       new ReduceAction418(80),
-                       new ReduceAction419(81),
-                       new ReduceAction420(81),
-                       new ReduceAction421(81),
-                       new ReduceAction422(82),
-                       new ReduceAction423(83),
-                       new ReduceAction424(84),
-                       new ReduceAction424(84),
-                       new ReduceAction426(85),
-                       new ReduceAction427(85),
+                       new ReduceAction395(67),
+                       new ReduceAction396(67),
+                       new ReduceAction243(67),
+                       new ReduceAction398(67),
+                       new ReduceAction399(67),
+                       new ReduceAction400(67),
+                       new ReduceAction401(68),
+                       new ReduceAction402(68),
+                       new ReduceAction403(69),
+                       new ReduceAction404(70),
+                       new ReduceAction403(71),
+                       new ReduceAction406(72),
+                       new ReduceAction407(73),
+                       new ReduceAction408(74),
+                       new ReduceAction409(74),
+                       new ReduceAction410(74),
+                       new ReduceAction408(75),
+                       new ReduceAction412(75),
+                       new ReduceAction409(75),
+                       new ReduceAction410(75),
+                       new ReduceAction415(76),
+                       new ReduceAction416(77),
+                       new ReduceAction417(77),
+                       new ReduceAction418(78),
+                       new ReduceAction419(79),
+                       new ReduceAction420(79),
+                       new ReduceAction421(80),
+                       new ReduceAction422(80),
+                       new ReduceAction423(80),
+                       new ReduceAction424(80),
+                       new ReduceAction425(81),
+                       new ReduceAction426(81),
+                       new ReduceAction427(81),
+                       new ReduceAction428(82),
+                       new ReduceAction429(83),
+                       new ReduceAction430(84),
+                       new ReduceAction430(84),
+                       new ReduceAction432(85),
+                       new ReduceAction433(85),
                        new ReduceAction36(85),
-                       new ReduceAction429(86),
-                       new ReduceAction430(86),
-                       new ReduceAction431(87),
-                       new ReduceAction432(87),
-                       new ReduceAction424(87),
+                       new ReduceAction435(86),
+                       new ReduceAction436(86),
+                       new ReduceAction437(87),
+                       new ReduceAction438(87),
+                       new ReduceAction430(87),
                        new ReduceAction67(88),
                        new ReduceAction68(89),
                        new ReduceAction69(89),
@@ -603,300 +610,303 @@ class Parser
                        new ReduceAction189(90),
                        new ReduceAction190(90),
                        new ReduceAction191(90),
-                       new ReduceAction227(91),
-                       new ReduceAction228(91),
-                       new ReduceAction238(92),
-                       new ReduceAction267(92),
-                       new ReduceAction268(92),
-                       new ReduceAction238(93),
-                       new ReduceAction337(93),
-                       new ReduceAction238(94),
-                       new ReduceAction339(94),
-                       new ReduceAction340(94),
-                       new ReduceAction341(94),
-                       new ReduceAction238(95),
-                       new ReduceAction343(95),
-                       new ReduceAction238(96),
-                       new ReduceAction345(96),
-                       new ReduceAction346(96),
-                       new ReduceAction347(96),
-                       new ReduceAction348(96),
-                       new ReduceAction349(96),
-                       new ReduceAction350(96),
+                       new ReduceAction196(90),
+                       new ReduceAction197(90),
+                       new ReduceAction232(91),
+                       new ReduceAction233(91),
+                       new ReduceAction243(92),
+                       new ReduceAction272(92),
+                       new ReduceAction273(92),
+                       new ReduceAction243(93),
+                       new ReduceAction343(93),
+                       new ReduceAction243(94),
+                       new ReduceAction345(94),
+                       new ReduceAction346(94),
+                       new ReduceAction347(94),
+                       new ReduceAction243(95),
+                       new ReduceAction349(95),
+                       new ReduceAction243(96),
                        new ReduceAction351(96),
                        new ReduceAction352(96),
                        new ReduceAction353(96),
                        new ReduceAction354(96),
                        new ReduceAction355(96),
-                       new ReduceAction238(97),
-                       new ReduceAction357(97),
-                       new ReduceAction358(97),
-                       new ReduceAction238(98),
-                       new ReduceAction360(98),
-                       new ReduceAction361(98),
-                       new ReduceAction362(98),
-                       new ReduceAction238(99),
-                       new ReduceAction364(99),
-                       new ReduceAction365(99),
-                       new ReduceAction238(100),
-                       new ReduceAction367(100),
-                       new ReduceAction368(100),
-                       new ReduceAction369(100),
-                       new ReduceAction370(101),
-                       new ReduceAction371(101),
-                       new ReduceAction265(101),
-                       new ReduceAction266(101),
-                       new ReduceAction269(101),
+                       new ReduceAction356(96),
+                       new ReduceAction357(96),
+                       new ReduceAction358(96),
+                       new ReduceAction359(96),
+                       new ReduceAction360(96),
+                       new ReduceAction361(96),
+                       new ReduceAction243(97),
+                       new ReduceAction363(97),
+                       new ReduceAction364(97),
+                       new ReduceAction243(98),
+                       new ReduceAction366(98),
+                       new ReduceAction367(98),
+                       new ReduceAction368(98),
+                       new ReduceAction243(99),
+                       new ReduceAction370(99),
+                       new ReduceAction371(99),
+                       new ReduceAction243(100),
+                       new ReduceAction373(100),
+                       new ReduceAction374(100),
+                       new ReduceAction375(100),
+                       new ReduceAction376(101),
+                       new ReduceAction377(101),
                        new ReduceAction270(101),
                        new ReduceAction271(101),
-                       new ReduceAction272(101),
-                       new ReduceAction379(101),
-                       new ReduceAction383(101),
-                       new ReduceAction384(101),
+                       new ReduceAction274(101),
+                       new ReduceAction275(101),
+                       new ReduceAction276(101),
+                       new ReduceAction277(101),
                        new ReduceAction385(101),
-                       new ReduceAction386(101),
-                       new ReduceAction387(101),
-                       new ReduceAction388(101),
                        new ReduceAction389(101),
                        new ReduceAction390(101),
-                       new ReduceAction238(101),
+                       new ReduceAction391(101),
                        new ReduceAction392(101),
                        new ReduceAction393(101),
                        new ReduceAction394(101),
-                       new ReduceAction235(102),
-                       new ReduceAction236(102),
-                       new ReduceAction237(102),
-                       new ReduceAction238(102),
-                       new ReduceAction238(103),
-                       new ReduceAction238(103),
-                       new ReduceAction248(103),
-                       new ReduceAction249(103),
-                       new ReduceAction250(103),
-                       new ReduceAction251(103),
-                       new ReduceAction252(103),
+                       new ReduceAction395(101),
+                       new ReduceAction396(101),
+                       new ReduceAction243(101),
+                       new ReduceAction398(101),
+                       new ReduceAction399(101),
+                       new ReduceAction400(101),
+                       new ReduceAction240(102),
+                       new ReduceAction241(102),
+                       new ReduceAction242(102),
+                       new ReduceAction243(102),
+                       new ReduceAction243(103),
+                       new ReduceAction243(103),
                        new ReduceAction253(103),
                        new ReduceAction254(103),
                        new ReduceAction255(103),
                        new ReduceAction256(103),
                        new ReduceAction257(103),
                        new ReduceAction258(103),
-                       new ReduceAction238(103),
-                       new ReduceAction238(103),
-                       new ReduceAction238(103),
-                       new ReduceAction238(103),
-                       new ReduceAction238(103),
-                       new ReduceAction238(103),
-                       new ReduceAction265(103),
-                       new ReduceAction266(103),
-                       new ReduceAction267(103),
-                       new ReduceAction268(103),
-                       new ReduceAction269(103),
+                       new ReduceAction259(103),
+                       new ReduceAction260(103),
+                       new ReduceAction261(103),
+                       new ReduceAction262(103),
+                       new ReduceAction263(103),
+                       new ReduceAction243(103),
+                       new ReduceAction243(103),
+                       new ReduceAction243(103),
+                       new ReduceAction243(103),
+                       new ReduceAction243(103),
+                       new ReduceAction243(103),
                        new ReduceAction270(103),
                        new ReduceAction271(103),
                        new ReduceAction272(103),
-                       new ReduceAction274(104),
-                       new ReduceAction275(104),
-                       new ReduceAction276(105),
-                       new ReduceAction277(105),
-                       new ReduceAction278(105),
-                       new ReduceAction279(105),
-                       new ReduceAction280(105),
-                       new ReduceAction281(105),
+                       new ReduceAction273(103),
+                       new ReduceAction274(103),
+                       new ReduceAction275(103),
+                       new ReduceAction276(103),
+                       new ReduceAction277(103),
+                       new ReduceAction278(103),
+                       new ReduceAction280(104),
+                       new ReduceAction281(104),
                        new ReduceAction282(105),
                        new ReduceAction283(105),
                        new ReduceAction284(105),
-                       new ReduceAction293(106),
-                       new ReduceAction294(107),
-                       new ReduceAction295(107),
-                       new ReduceAction296(107),
-                       new ReduceAction297(107),
-                       new ReduceAction298(108),
-                       new ReduceAction299(108),
-                       new ReduceAction300(108),
-                       new ReduceAction301(108),
-                       new ReduceAction302(108),
-                       new ReduceAction303(108),
+                       new ReduceAction285(105),
+                       new ReduceAction286(105),
+                       new ReduceAction287(105),
+                       new ReduceAction288(105),
+                       new ReduceAction289(105),
+                       new ReduceAction290(105),
+                       new ReduceAction299(106),
+                       new ReduceAction300(107),
+                       new ReduceAction301(107),
+                       new ReduceAction302(107),
+                       new ReduceAction303(107),
                        new ReduceAction304(108),
                        new ReduceAction305(108),
                        new ReduceAction306(108),
                        new ReduceAction307(108),
-                       new ReduceAction310(109),
-                       new ReduceAction311(109),
-                       new ReduceAction312(110),
-                       new ReduceAction319(111),
-                       new ReduceAction320(111),
-                       new ReduceAction321(112),
-                       new ReduceAction322(112),
-                       new ReduceAction323(113),
-                       new ReduceAction324(113),
-                       new ReduceAction325(113),
-                       new ReduceAction326(113),
-                       new ReduceAction327(114),
-                       new ReduceAction328(114),
-                       new ReduceAction238(115),
-                       new ReduceAction267(115),
-                       new ReduceAction268(115),
-                       new ReduceAction335(115),
-                       new ReduceAction238(116),
-                       new ReduceAction267(116),
-                       new ReduceAction268(116),
-                       new ReduceAction235(117),
-                       new ReduceAction236(117),
-                       new ReduceAction237(117),
-                       new ReduceAction235(118),
-                       new ReduceAction236(118),
-                       new ReduceAction237(118),
-                       new ReduceAction238(119),
-                       new ReduceAction267(119),
-                       new ReduceAction268(119),
-                       new ReduceAction238(120),
-                       new ReduceAction337(120),
-                       new ReduceAction238(121),
-                       new ReduceAction339(121),
-                       new ReduceAction340(121),
-                       new ReduceAction341(121),
-                       new ReduceAction238(122),
-                       new ReduceAction343(122),
-                       new ReduceAction238(123),
-                       new ReduceAction345(123),
-                       new ReduceAction346(123),
-                       new ReduceAction347(123),
-                       new ReduceAction348(123),
-                       new ReduceAction349(123),
-                       new ReduceAction350(123),
+                       new ReduceAction308(108),
+                       new ReduceAction309(108),
+                       new ReduceAction310(108),
+                       new ReduceAction311(108),
+                       new ReduceAction312(108),
+                       new ReduceAction313(108),
+                       new ReduceAction316(109),
+                       new ReduceAction317(109),
+                       new ReduceAction318(110),
+                       new ReduceAction325(111),
+                       new ReduceAction326(111),
+                       new ReduceAction327(112),
+                       new ReduceAction328(112),
+                       new ReduceAction329(113),
+                       new ReduceAction330(113),
+                       new ReduceAction331(113),
+                       new ReduceAction332(113),
+                       new ReduceAction333(114),
+                       new ReduceAction334(114),
+                       new ReduceAction243(115),
+                       new ReduceAction272(115),
+                       new ReduceAction273(115),
+                       new ReduceAction341(115),
+                       new ReduceAction243(116),
+                       new ReduceAction272(116),
+                       new ReduceAction273(116),
+                       new ReduceAction240(117),
+                       new ReduceAction241(117),
+                       new ReduceAction242(117),
+                       new ReduceAction240(118),
+                       new ReduceAction241(118),
+                       new ReduceAction242(118),
+                       new ReduceAction243(119),
+                       new ReduceAction272(119),
+                       new ReduceAction273(119),
+                       new ReduceAction243(120),
+                       new ReduceAction343(120),
+                       new ReduceAction243(121),
+                       new ReduceAction345(121),
+                       new ReduceAction346(121),
+                       new ReduceAction347(121),
+                       new ReduceAction243(122),
+                       new ReduceAction349(122),
+                       new ReduceAction243(123),
                        new ReduceAction351(123),
                        new ReduceAction352(123),
                        new ReduceAction353(123),
                        new ReduceAction354(123),
                        new ReduceAction355(123),
-                       new ReduceAction238(124),
-                       new ReduceAction357(124),
-                       new ReduceAction358(124),
-                       new ReduceAction238(125),
-                       new ReduceAction360(125),
-                       new ReduceAction361(125),
-                       new ReduceAction362(125),
-                       new ReduceAction238(126),
-                       new ReduceAction364(126),
-                       new ReduceAction365(126),
-                       new ReduceAction238(127),
-                       new ReduceAction367(127),
-                       new ReduceAction368(127),
-                       new ReduceAction369(127),
-                       new ReduceAction370(128),
-                       new ReduceAction371(128),
-                       new ReduceAction265(128),
-                       new ReduceAction266(128),
-                       new ReduceAction269(128),
+                       new ReduceAction356(123),
+                       new ReduceAction357(123),
+                       new ReduceAction358(123),
+                       new ReduceAction359(123),
+                       new ReduceAction360(123),
+                       new ReduceAction361(123),
+                       new ReduceAction243(124),
+                       new ReduceAction363(124),
+                       new ReduceAction364(124),
+                       new ReduceAction243(125),
+                       new ReduceAction366(125),
+                       new ReduceAction367(125),
+                       new ReduceAction368(125),
+                       new ReduceAction243(126),
+                       new ReduceAction370(126),
+                       new ReduceAction371(126),
+                       new ReduceAction243(127),
+                       new ReduceAction373(127),
+                       new ReduceAction374(127),
+                       new ReduceAction375(127),
+                       new ReduceAction376(128),
+                       new ReduceAction377(128),
                        new ReduceAction270(128),
                        new ReduceAction271(128),
-                       new ReduceAction272(128),
-                       new ReduceAction378(128),
-                       new ReduceAction379(128),
-                       new ReduceAction383(128),
+                       new ReduceAction274(128),
+                       new ReduceAction275(128),
+                       new ReduceAction276(128),
+                       new ReduceAction277(128),
                        new ReduceAction384(128),
                        new ReduceAction385(128),
-                       new ReduceAction386(128),
-                       new ReduceAction387(128),
-                       new ReduceAction388(128),
                        new ReduceAction389(128),
                        new ReduceAction390(128),
-                       new ReduceAction238(128),
+                       new ReduceAction391(128),
+                       new ReduceAction392(128),
                        new ReduceAction393(128),
                        new ReduceAction394(128),
-                       new ReduceAction238(129),
-                       new ReduceAction267(129),
-                       new ReduceAction268(129),
-                       new ReduceAction238(130),
-                       new ReduceAction337(130),
-                       new ReduceAction238(131),
-                       new ReduceAction339(131),
-                       new ReduceAction340(131),
-                       new ReduceAction341(131),
-                       new ReduceAction238(132),
-                       new ReduceAction343(132),
-                       new ReduceAction238(133),
-                       new ReduceAction345(133),
-                       new ReduceAction346(133),
-                       new ReduceAction347(133),
-                       new ReduceAction348(133),
-                       new ReduceAction349(133),
-                       new ReduceAction350(133),
+                       new ReduceAction395(128),
+                       new ReduceAction396(128),
+                       new ReduceAction243(128),
+                       new ReduceAction399(128),
+                       new ReduceAction400(128),
+                       new ReduceAction243(129),
+                       new ReduceAction272(129),
+                       new ReduceAction273(129),
+                       new ReduceAction243(130),
+                       new ReduceAction343(130),
+                       new ReduceAction243(131),
+                       new ReduceAction345(131),
+                       new ReduceAction346(131),
+                       new ReduceAction347(131),
+                       new ReduceAction243(132),
+                       new ReduceAction349(132),
+                       new ReduceAction243(133),
                        new ReduceAction351(133),
                        new ReduceAction352(133),
                        new ReduceAction353(133),
                        new ReduceAction354(133),
                        new ReduceAction355(133),
-                       new ReduceAction238(134),
-                       new ReduceAction357(134),
-                       new ReduceAction358(134),
-                       new ReduceAction238(135),
-                       new ReduceAction360(135),
-                       new ReduceAction361(135),
-                       new ReduceAction362(135),
-                       new ReduceAction238(136),
-                       new ReduceAction364(136),
-                       new ReduceAction365(136),
-                       new ReduceAction238(137),
-                       new ReduceAction367(137),
-                       new ReduceAction689(137),
-                       new ReduceAction690(138),
-                       new ReduceAction691(138),
-                       new ReduceAction269(138),
-                       new ReduceAction270(138),
-                       new ReduceAction694(138),
-                       new ReduceAction379(138),
-                       new ReduceAction383(138),
-                       new ReduceAction384(138),
+                       new ReduceAction356(133),
+                       new ReduceAction357(133),
+                       new ReduceAction358(133),
+                       new ReduceAction359(133),
+                       new ReduceAction360(133),
+                       new ReduceAction361(133),
+                       new ReduceAction243(134),
+                       new ReduceAction363(134),
+                       new ReduceAction364(134),
+                       new ReduceAction243(135),
+                       new ReduceAction366(135),
+                       new ReduceAction367(135),
+                       new ReduceAction368(135),
+                       new ReduceAction243(136),
+                       new ReduceAction370(136),
+                       new ReduceAction371(136),
+                       new ReduceAction243(137),
+                       new ReduceAction373(137),
+                       new ReduceAction698(137),
+                       new ReduceAction699(138),
+                       new ReduceAction700(138),
+                       new ReduceAction274(138),
+                       new ReduceAction275(138),
+                       new ReduceAction703(138),
                        new ReduceAction385(138),
-                       new ReduceAction386(138),
-                       new ReduceAction387(138),
-                       new ReduceAction388(138),
                        new ReduceAction389(138),
                        new ReduceAction390(138),
-                       new ReduceAction238(138),
+                       new ReduceAction391(138),
+                       new ReduceAction392(138),
                        new ReduceAction393(138),
                        new ReduceAction394(138),
-                       new ReduceAction707(139),
-                       new ReduceAction708(139),
-                       new ReduceAction238(140),
-                       new ReduceAction267(140),
-                       new ReduceAction268(140),
-                       new ReduceAction238(141),
-                       new ReduceAction267(141),
-                       new ReduceAction268(141),
-                       new ReduceAction715(142),
-                       new ReduceAction716(142),
-                       new ReduceAction717(143),
-                       new ReduceAction718(143),
-                       new ReduceAction719(144),
-                       new ReduceAction720(144),
-                       new ReduceAction721(145),
-                       new ReduceAction722(145),
-                       new ReduceAction719(146),
-                       new ReduceAction720(146),
-                       new ReduceAction725(147),
-                       new ReduceAction726(147),
-                       new ReduceAction727(148),
-                       new ReduceAction728(148),
-                       new ReduceAction729(149),
-                       new ReduceAction730(149),
-                       new ReduceAction731(150),
-                       new ReduceAction732(150),
-                       new ReduceAction231(151),
-                       new ReduceAction734(151),
-                       new ReduceAction735(152),
-                       new ReduceAction736(152),
-                       new ReduceAction737(153),
-                       new ReduceAction738(153),
-                       new ReduceAction735(154),
-                       new ReduceAction736(154),
-                       new ReduceAction413(155),
-                       new ReduceAction742(155),
-                       new ReduceAction743(156),
-                       new ReduceAction744(156),
-                       new ReduceAction745(157),
-                       new ReduceAction746(157)
+                       new ReduceAction395(138),
+                       new ReduceAction396(138),
+                       new ReduceAction243(138),
+                       new ReduceAction399(138),
+                       new ReduceAction400(138),
+                       new ReduceAction716(139),
+                       new ReduceAction717(139),
+                       new ReduceAction243(140),
+                       new ReduceAction272(140),
+                       new ReduceAction273(140),
+                       new ReduceAction243(141),
+                       new ReduceAction272(141),
+                       new ReduceAction273(141),
+                       new ReduceAction724(142),
+                       new ReduceAction725(142),
+                       new ReduceAction726(143),
+                       new ReduceAction727(143),
+                       new ReduceAction728(144),
+                       new ReduceAction729(144),
+                       new ReduceAction730(145),
+                       new ReduceAction731(145),
+                       new ReduceAction728(146),
+                       new ReduceAction729(146),
+                       new ReduceAction734(147),
+                       new ReduceAction735(147),
+                       new ReduceAction736(148),
+                       new ReduceAction737(148),
+                       new ReduceAction738(149),
+                       new ReduceAction739(149),
+                       new ReduceAction740(150),
+                       new ReduceAction741(150),
+                       new ReduceAction236(151),
+                       new ReduceAction743(151),
+                       new ReduceAction744(152),
+                       new ReduceAction745(152),
+                       new ReduceAction212(153),
+                       new ReduceAction747(153),
+                       new ReduceAction744(154),
+                       new ReduceAction745(154),
+                       new ReduceAction419(155),
+                       new ReduceAction751(155),
+                       new ReduceAction752(156),
+                       new ReduceAction753(156),
+                       new ReduceAction754(157),
+                       new ReduceAction755(157)
                )
        end
 end
@@ -6859,8 +6869,7 @@ private class ReduceAction166
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var pvisibilitynode1: nullable APublicVisibility = new APublicVisibility.init_apublicvisibility(
-                                       )
+                                       var pvisibilitynode1: nullable APublicVisibility = new APublicVisibility.init_apublicvisibility
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
@@ -7204,19 +7213,25 @@ private class ReduceAction188
        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 listnode5 = new Array[Object]
-                                       var ptypenode3 = nodearraylist1
-                                       assert ptypenode3 isa nullable AType
-                                       var listnode4 = nodearraylist2
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
+                                       var listnode3 = new Array[Object]
+                                       var listnode6 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var tcparnode4 = nodearraylist3
+                                       assert tcparnode4 isa nullable TCpar
+                                       var ptypenode5 = nodearraylist4
+                                       assert ptypenode5 isa nullable AType
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               listnode2,
-                                               ptypenode3,
-                                               listnode5
+                                               toparnode2,
+                                               listnode3,
+                                               tcparnode4,
+                                               ptypenode5,
+                                               listnode6
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
@@ -7227,93 +7242,225 @@ private class ReduceAction189
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var listnode7 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tcparnode5 = nodearraylist4
+                                       assert tcparnode5 isa nullable TCpar
+                                       var ptypenode6 = nodearraylist5
+                                       assert ptypenode6 isa nullable AType
+                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               toparnode2,
+                                               listnode4,
+                                               tcparnode5,
+                                               ptypenode6,
+                                               listnode7
+                                       )
+                                       node_list = psignaturenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction190
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode3 = new Array[Object]
+                                       var listnode7 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var tcparnode4 = nodearraylist3
+                                       assert tcparnode4 isa nullable TCpar
+                                       var ptypenode5 = nodearraylist4
+                                       assert ptypenode5 isa nullable AType
+                                       var listnode6 = nodearraylist6
+                                       assert listnode6 isa Array[Object]
+                                       listnode7 = concat(listnode7, listnode6)
+                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               toparnode2,
+                                               listnode3,
+                                               tcparnode4,
+                                               ptypenode5,
+                                               listnode7
+                                       )
+                                       node_list = psignaturenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction191
+       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 listnode4 = new Array[Object]
+                                       var listnode8 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tcparnode5 = nodearraylist4
+                                       assert tcparnode5 isa nullable TCpar
+                                       var ptypenode6 = nodearraylist5
+                                       assert ptypenode6 isa nullable AType
+                                       var listnode7 = nodearraylist7
+                                       assert listnode7 isa Array[Object]
+                                       listnode8 = concat(listnode8, listnode7)
+                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               toparnode2,
+                                               listnode4,
+                                               tcparnode5,
+                                               ptypenode6,
+                                               listnode8
+                                       )
+                                       node_list = psignaturenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction192
+       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 listnode3 = new Array[Object]
                                        var listnode6 = new Array[Object]
-                                       var listnode2 = nodearraylist1
-                                       assert listnode2 isa Array[Object]
-                                       listnode3 = concat(listnode3, listnode2)
-                                       var ptypenode4 = nodearraylist2
-                                       assert ptypenode4 isa nullable AType
-                                       var listnode5 = nodearraylist3
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var tcparnode4 = nodearraylist3
+                                       assert tcparnode4 isa nullable TCpar
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               toparnode2,
                                                listnode3,
-                                               ptypenode4,
+                                               tcparnode4,
+                                               null,
                                                listnode6
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction190
+private class ReduceAction193
        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 listnode4 = new Array[Object]
-                                       var ptypenode3 = nodearraylist1
-                                       assert ptypenode3 isa nullable AType
+                                       var listnode7 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tcparnode5 = nodearraylist4
+                                       assert tcparnode5 isa nullable TCpar
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               listnode2,
-                                               ptypenode3,
-                                               listnode4
+                                               toparnode2,
+                                               listnode4,
+                                               tcparnode5,
+                                               null,
+                                               listnode7
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction191
+private class ReduceAction194
        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 listnode5 = new Array[Object]
-                                       var listnode2 = nodearraylist1
-                                       assert listnode2 isa Array[Object]
-                                       listnode3 = concat(listnode3, listnode2)
-                                       var ptypenode4 = nodearraylist2
-                                       assert ptypenode4 isa nullable AType
+                                       var listnode7 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var tcparnode4 = nodearraylist3
+                                       assert tcparnode4 isa nullable TCpar
+                                       var listnode6 = nodearraylist5
+                                       assert listnode6 isa Array[Object]
+                                       listnode7 = concat(listnode7, listnode6)
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               toparnode2,
                                                listnode3,
-                                               ptypenode4,
-                                               listnode5
+                                               tcparnode4,
+                                               null,
+                                               listnode7
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction192
+private class ReduceAction195
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
+                                       var nodearraylist6 = p.pop
+                                       var nodearraylist5 = p.pop
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var listnode5 = new Array[Object]
-                                       var listnode4 = nodearraylist1
-                                       assert listnode4 isa Array[Object]
-                                       listnode5 = concat(listnode5, listnode4)
+                                       var listnode4 = new Array[Object]
+                                       var listnode8 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tcparnode5 = nodearraylist4
+                                       assert tcparnode5 isa nullable TCpar
+                                       var listnode7 = nodearraylist6
+                                       assert listnode7 isa Array[Object]
+                                       listnode8 = concat(listnode8, listnode7)
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               listnode2,
+                                               toparnode2,
+                                               listnode4,
+                                               tcparnode5,
                                                null,
-                                               listnode5
+                                               listnode8
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction193
+private class ReduceAction196
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7322,149 +7469,249 @@ private class ReduceAction193
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
                                        var listnode6 = new Array[Object]
-                                       var listnode2 = nodearraylist1
-                                       assert listnode2 isa Array[Object]
-                                       listnode3 = concat(listnode3, listnode2)
-                                       var listnode5 = nodearraylist2
-                                       assert listnode5 isa Array[Object]
-                                       listnode6 = concat(listnode6, listnode5)
+                                       var ptypenode5 = nodearraylist1
+                                       assert ptypenode5 isa nullable AType
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               null,
                                                listnode3,
                                                null,
+                                               ptypenode5,
                                                listnode6
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction194
+private class ReduceAction197
        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 listnode3 = new Array[Object]
+                                       var listnode7 = new Array[Object]
+                                       var ptypenode5 = nodearraylist1
+                                       assert ptypenode5 isa nullable AType
+                                       var listnode6 = nodearraylist3
+                                       assert listnode6 isa Array[Object]
+                                       listnode7 = concat(listnode7, listnode6)
+                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               null,
+                                               listnode3,
+                                               null,
+                                               ptypenode5,
+                                               listnode7
+                                       )
+                                       node_list = psignaturenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction198
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist1 = p.pop
+                                       var listnode3 = new Array[Object]
+                                       var listnode6 = new Array[Object]
+                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               null,
+                                               listnode3,
+                                               null,
+                                               null,
+                                               listnode6
+                                       )
+                                       node_list = psignaturenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction199
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode3 = new Array[Object]
+                                       var listnode7 = new Array[Object]
+                                       var listnode6 = nodearraylist2
+                                       assert listnode6 isa Array[Object]
+                                       listnode7 = concat(listnode7, listnode6)
+                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               null,
+                                               listnode3,
+                                               null,
+                                               null,
+                                               listnode7
+                                       )
+                                       node_list = psignaturenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction200
+       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 listnode3 = new Array[Object]
+                                       var listnode6 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var tcparnode4 = nodearraylist3
+                                       assert tcparnode4 isa nullable TCpar
+                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               toparnode2,
+                                               listnode3,
+                                               tcparnode4,
+                                               null,
+                                               listnode6
+                                       )
+                                       node_list = psignaturenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction201
+       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 listnode2 = new Array[Object]
                                        var listnode4 = new Array[Object]
+                                       var listnode7 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tcparnode5 = nodearraylist4
+                                       assert tcparnode5 isa nullable TCpar
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               listnode2,
+                                               toparnode2,
+                                               listnode4,
+                                               tcparnode5,
                                                null,
-                                               listnode4
+                                               listnode7
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction195
+private class ReduceAction202
        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 listnode3 = new Array[Object]
-                                       var listnode5 = new Array[Object]
-                                       var listnode2 = nodearraylist1
-                                       assert listnode2 isa Array[Object]
-                                       listnode3 = concat(listnode3, listnode2)
+                                       var listnode6 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var tcparnode4 = nodearraylist3
+                                       assert tcparnode4 isa nullable TCpar
+                                       var ptypenode5 = nodearraylist4
+                                       assert ptypenode5 isa nullable AType
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               toparnode2,
                                                listnode3,
-                                               null,
-                                               listnode5
+                                               tcparnode4,
+                                               ptypenode5,
+                                               listnode6
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction196
+private class ReduceAction203
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var listnode2 = new Array[Object]
+                                       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 listnode7 = new Array[Object]
+                                       var toparnode2 = nodearraylist1
+                                       assert toparnode2 isa nullable TOpar
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tcparnode5 = nodearraylist4
+                                       assert tcparnode5 isa nullable TCpar
+                                       var ptypenode6 = nodearraylist5
+                                       assert ptypenode6 isa nullable AType
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               listnode2,
-                                               null,
-                                               listnode4
+                                               toparnode2,
+                                               listnode4,
+                                               tcparnode5,
+                                               ptypenode6,
+                                               listnode7
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction197
+private class ReduceAction204
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
-                                       var listnode5 = new Array[Object]
-                                       var listnode2 = nodearraylist1
-                                       assert listnode2 isa Array[Object]
-                                       listnode3 = concat(listnode3, listnode2)
+                                       var listnode6 = new Array[Object]
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               null,
                                                listnode3,
                                                null,
-                                               listnode5
-                                       )
-                                       node_list = psignaturenode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction198
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var listnode4 = new Array[Object]
-                                       var ptypenode3 = nodearraylist1
-                                       assert ptypenode3 isa nullable AType
-                                       var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
-                                               listnode2,
-                                               ptypenode3,
-                                               listnode4
+                                               null,
+                                               listnode6
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction199
+private class ReduceAction205
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
-                                       var listnode5 = new Array[Object]
-                                       var listnode2 = nodearraylist1
-                                       assert listnode2 isa Array[Object]
-                                       listnode3 = concat(listnode3, listnode2)
-                                       var ptypenode4 = nodearraylist2
-                                       assert ptypenode4 isa nullable AType
+                                       var listnode6 = new Array[Object]
+                                       var ptypenode5 = nodearraylist1
+                                       assert ptypenode5 isa nullable AType
                                        var psignaturenode1: nullable ASignature = new ASignature.init_asignature(
+                                               null,
                                                listnode3,
-                                               ptypenode4,
-                                               listnode5
+                                               null,
+                                               ptypenode5,
+                                               listnode6
                                        )
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction200
+private class ReduceAction206
        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 pparamnode1 = nodearraylist3
+                                       var pparamnode1 = nodearraylist1
                                        if pparamnode1 != null then
                                                listnode2.add(pparamnode1)
                                        end
@@ -7472,20 +7719,17 @@ private class ReduceAction200
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction201
+private class ReduceAction207
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist6 = p.pop
-                                       var nodearraylist5 = p.pop
-                                       var nodearraylist4 = p.pop
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode3 = new Array[Object]
-                                       var pparamnode1 = nodearraylist3
-                                       var listnode2 = nodearraylist4
+                                       var pparamnode1 = nodearraylist1
+                                       var listnode2 = nodearraylist2
                                        assert listnode2 isa Array[Object]
                                        if pparamnode1 != null then
                                                listnode3.add(pparamnode1)
@@ -7495,20 +7739,7 @@ private class ReduceAction201
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction202
-       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 listnode1 = new Array[Object]
-                                       node_list = listnode1
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction203
+private class ReduceAction208
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7521,7 +7752,7 @@ private class ReduceAction203
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction204
+private class ReduceAction209
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7538,7 +7769,7 @@ private class ReduceAction204
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction205
+private class ReduceAction210
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7558,7 +7789,7 @@ private class ReduceAction205
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction206
+private class ReduceAction211
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7581,22 +7812,21 @@ private class ReduceAction206
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction207
+private class ReduceAction212
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode2 = new Array[Object]
-                                       var listnode1 = nodearraylist2
+                                       var listnode1 = nodearraylist1
                                        assert listnode1 isa Array[Object]
                                        listnode2 = concat(listnode2, listnode1)
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction208
+private class ReduceAction213
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7622,7 +7852,7 @@ private class ReduceAction208
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction209
+private class ReduceAction214
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7651,7 +7881,7 @@ private class ReduceAction209
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction210
+private class ReduceAction215
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7681,7 +7911,7 @@ private class ReduceAction210
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction211
+private class ReduceAction216
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7714,7 +7944,7 @@ private class ReduceAction211
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction212
+private class ReduceAction217
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7745,7 +7975,7 @@ private class ReduceAction212
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction213
+private class ReduceAction218
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7779,7 +8009,7 @@ private class ReduceAction213
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction214
+private class ReduceAction219
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7795,7 +8025,7 @@ private class ReduceAction214
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction215
+private class ReduceAction220
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7819,7 +8049,7 @@ private class ReduceAction215
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction216
+private class ReduceAction221
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7847,7 +8077,7 @@ private class ReduceAction216
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction217
+private class ReduceAction222
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7860,7 +8090,7 @@ private class ReduceAction217
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction218
+private class ReduceAction223
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7871,7 +8101,7 @@ private class ReduceAction218
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction220
+private class ReduceAction225
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7886,7 +8116,7 @@ private class ReduceAction220
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction221
+private class ReduceAction226
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7901,7 +8131,7 @@ private class ReduceAction221
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction222
+private class ReduceAction227
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7924,7 +8154,7 @@ private class ReduceAction222
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction223
+private class ReduceAction228
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7939,7 +8169,7 @@ private class ReduceAction223
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction224
+private class ReduceAction229
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7967,7 +8197,7 @@ private class ReduceAction224
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction225
+private class ReduceAction230
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -7991,7 +8221,7 @@ private class ReduceAction225
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction226
+private class ReduceAction231
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8020,7 +8250,7 @@ private class ReduceAction226
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction227
+private class ReduceAction232
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8038,7 +8268,7 @@ private class ReduceAction227
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction228
+private class ReduceAction233
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8059,7 +8289,7 @@ private class ReduceAction228
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction229
+private class ReduceAction234
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8085,7 +8315,7 @@ private class ReduceAction229
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction230
+private class ReduceAction235
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8114,7 +8344,7 @@ private class ReduceAction230
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction231
+private class ReduceAction236
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8129,7 +8359,7 @@ private class ReduceAction231
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction232
+private class ReduceAction237
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8148,7 +8378,7 @@ private class ReduceAction232
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction233
+private class ReduceAction238
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8161,7 +8391,7 @@ private class ReduceAction233
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction235
+private class ReduceAction240
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8173,7 +8403,7 @@ private class ReduceAction235
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction236
+private class ReduceAction241
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8191,7 +8421,7 @@ private class ReduceAction236
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction237
+private class ReduceAction242
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8208,7 +8438,7 @@ private class ReduceAction237
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction238
+private class ReduceAction243
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8219,7 +8449,7 @@ private class ReduceAction238
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction239
+private class ReduceAction244
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8239,7 +8469,7 @@ private class ReduceAction239
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction240
+private class ReduceAction245
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8263,7 +8493,7 @@ private class ReduceAction240
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction241
+private class ReduceAction246
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8284,7 +8514,7 @@ private class ReduceAction241
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction242
+private class ReduceAction247
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8309,7 +8539,7 @@ private class ReduceAction242
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction243
+private class ReduceAction248
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8333,7 +8563,7 @@ private class ReduceAction243
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction244
+private class ReduceAction249
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8361,7 +8591,7 @@ private class ReduceAction244
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction248
+private class ReduceAction253
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8377,7 +8607,7 @@ private class ReduceAction248
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction249
+private class ReduceAction254
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8396,7 +8626,7 @@ private class ReduceAction249
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction250
+private class ReduceAction255
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8413,7 +8643,7 @@ private class ReduceAction250
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction251
+private class ReduceAction256
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8433,7 +8663,7 @@ private class ReduceAction251
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction252
+private class ReduceAction257
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8453,7 +8683,7 @@ private class ReduceAction252
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction253
+private class ReduceAction258
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8476,7 +8706,7 @@ private class ReduceAction253
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction254
+private class ReduceAction259
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8491,7 +8721,7 @@ private class ReduceAction254
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction255
+private class ReduceAction260
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8508,7 +8738,7 @@ private class ReduceAction255
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction256
+private class ReduceAction261
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8528,7 +8758,7 @@ private class ReduceAction256
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction257
+private class ReduceAction262
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8548,7 +8778,7 @@ private class ReduceAction257
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction258
+private class ReduceAction263
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8571,7 +8801,7 @@ private class ReduceAction258
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction265
+private class ReduceAction270
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8598,7 +8828,7 @@ private class ReduceAction265
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction266
+private class ReduceAction271
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8606,8 +8836,7 @@ private class ReduceAction266
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode5 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tidnode3 = nodearraylist1
                                        assert tidnode3 isa nullable TId
                                        var pexprsnode4 = nodearraylist2
@@ -8622,7 +8851,7 @@ private class ReduceAction266
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction267
+private class ReduceAction272
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8653,7 +8882,7 @@ private class ReduceAction267
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction268
+private class ReduceAction273
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8662,8 +8891,7 @@ private class ReduceAction268
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
                                        var listnode6 = new Array[Object]
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tidnode3 = nodearraylist1
                                        assert tidnode3 isa nullable TId
                                        var pexprsnode4 = nodearraylist2
@@ -8681,7 +8909,7 @@ private class ReduceAction268
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction269
+private class ReduceAction274
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8701,7 +8929,7 @@ private class ReduceAction269
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction270
+private class ReduceAction275
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8724,7 +8952,7 @@ private class ReduceAction270
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction271
+private class ReduceAction276
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8749,15 +8977,14 @@ private class ReduceAction271
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction272
+private class ReduceAction277
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tkwinitnode3 = nodearraylist1
                                        assert tkwinitnode3 isa nullable TKwinit
                                        var pexprsnode4 = nodearraylist2
@@ -8771,7 +8998,35 @@ private class ReduceAction272
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction273
+private class ReduceAction278
+       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 tkwdebugnode2 = nodearraylist1
+                                       assert tkwdebugnode2 isa nullable TKwdebug
+                                       var tkwtypenode3 = nodearraylist2
+                                       assert tkwtypenode3 isa nullable TKwtype
+                                       var pexprnode4 = nodearraylist5
+                                       assert pexprnode4 isa nullable AExpr
+                                       var ptypenode5 = nodearraylist3
+                                       assert ptypenode5 isa nullable AType
+                                       var pexprnode1: nullable ADebugTypeExpr = new ADebugTypeExpr.init_adebugtypeexpr(
+                                               tkwdebugnode2,
+                                               tkwtypenode3,
+                                               pexprnode4,
+                                               ptypenode5
+                                       )
+                                       node_list = pexprnode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction279
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8790,7 +9045,7 @@ private class ReduceAction273
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction274
+private class ReduceAction280
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8805,7 +9060,7 @@ private class ReduceAction274
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction275
+private class ReduceAction281
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8824,7 +9079,7 @@ private class ReduceAction275
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction276
+private class ReduceAction282
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8857,7 +9112,7 @@ private class ReduceAction276
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction277
+private class ReduceAction283
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8896,7 +9151,7 @@ private class ReduceAction277
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction278
+private class ReduceAction284
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8933,7 +9188,7 @@ private class ReduceAction278
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction279
+private class ReduceAction285
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8963,7 +9218,7 @@ private class ReduceAction279
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction280
+private class ReduceAction286
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -8999,7 +9254,7 @@ private class ReduceAction280
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction281
+private class ReduceAction287
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9033,7 +9288,7 @@ private class ReduceAction281
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction282
+private class ReduceAction288
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9062,7 +9317,7 @@ private class ReduceAction282
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction283
+private class ReduceAction289
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9097,7 +9352,7 @@ private class ReduceAction283
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction284
+private class ReduceAction290
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9130,7 +9385,7 @@ private class ReduceAction284
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction285
+private class ReduceAction291
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9161,7 +9416,7 @@ private class ReduceAction285
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction286
+private class ReduceAction292
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9198,7 +9453,7 @@ private class ReduceAction286
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction287
+private class ReduceAction293
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9233,7 +9488,7 @@ private class ReduceAction287
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction288
+private class ReduceAction294
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9261,7 +9516,7 @@ private class ReduceAction288
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction289
+private class ReduceAction295
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9295,7 +9550,7 @@ private class ReduceAction289
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction290
+private class ReduceAction296
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9327,7 +9582,7 @@ private class ReduceAction290
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction291
+private class ReduceAction297
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9342,7 +9597,7 @@ private class ReduceAction291
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction292
+private class ReduceAction298
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9357,7 +9612,7 @@ private class ReduceAction292
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction293
+private class ReduceAction299
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9374,7 +9629,7 @@ private class ReduceAction293
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction294
+private class ReduceAction300
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9396,7 +9651,7 @@ private class ReduceAction294
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction295
+private class ReduceAction301
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9421,7 +9676,7 @@ private class ReduceAction295
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction296
+private class ReduceAction302
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9450,7 +9705,7 @@ private class ReduceAction296
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction297
+private class ReduceAction303
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9482,7 +9737,7 @@ private class ReduceAction297
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction298
+private class ReduceAction304
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9511,7 +9766,7 @@ private class ReduceAction298
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction299
+private class ReduceAction305
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9519,8 +9774,7 @@ private class ReduceAction299
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tattridnode3 = nodearraylist1
                                        assert tattridnode3 isa nullable TAttrid
                                        var tassignnode4 = nodearraylist2
@@ -9537,7 +9791,7 @@ private class ReduceAction299
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction300
+private class ReduceAction306
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9570,7 +9824,7 @@ private class ReduceAction300
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction301
+private class ReduceAction307
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9579,8 +9833,7 @@ private class ReduceAction301
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tidnode3 = nodearraylist1
                                        assert tidnode3 isa nullable TId
                                        var pexprsnode4 = nodearraylist2
@@ -9600,7 +9853,7 @@ private class ReduceAction301
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction302
+private class ReduceAction308
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9627,7 +9880,7 @@ private class ReduceAction302
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction303
+private class ReduceAction309
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9656,7 +9909,7 @@ private class ReduceAction303
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction304
+private class ReduceAction310
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9664,8 +9917,7 @@ private class ReduceAction304
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tattridnode3 = nodearraylist1
                                        assert tattridnode3 isa nullable TAttrid
                                        var passignopnode4 = nodearraylist2
@@ -9682,7 +9934,7 @@ private class ReduceAction304
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction305
+private class ReduceAction311
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9715,7 +9967,7 @@ private class ReduceAction305
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction306
+private class ReduceAction312
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9724,8 +9976,7 @@ private class ReduceAction306
                                        var nodearraylist3 = p.pop
                                        var nodearraylist2 = p.pop
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tidnode3 = nodearraylist1
                                        assert tidnode3 isa nullable TId
                                        var pexprsnode4 = nodearraylist2
@@ -9745,7 +9996,7 @@ private class ReduceAction306
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction307
+private class ReduceAction313
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9772,7 +10023,7 @@ private class ReduceAction307
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction308
+private class ReduceAction314
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9787,7 +10038,7 @@ private class ReduceAction308
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction309
+private class ReduceAction315
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9802,7 +10053,7 @@ private class ReduceAction309
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction310
+private class ReduceAction316
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9825,7 +10076,7 @@ private class ReduceAction310
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction311
+private class ReduceAction317
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9845,7 +10096,7 @@ private class ReduceAction311
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction312
+private class ReduceAction318
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9876,7 +10127,7 @@ private class ReduceAction312
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction313
+private class ReduceAction319
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9903,7 +10154,7 @@ private class ReduceAction313
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction314
+private class ReduceAction320
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9934,7 +10185,7 @@ private class ReduceAction314
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction315
+private class ReduceAction321
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9961,7 +10212,7 @@ private class ReduceAction315
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction316
+private class ReduceAction322
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -9989,7 +10240,7 @@ private class ReduceAction316
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction319
+private class ReduceAction325
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10012,7 +10263,7 @@ private class ReduceAction319
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction320
+private class ReduceAction326
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10032,7 +10283,7 @@ private class ReduceAction320
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction321
+private class ReduceAction327
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10065,7 +10316,7 @@ private class ReduceAction321
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction322
+private class ReduceAction328
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10095,7 +10346,7 @@ private class ReduceAction322
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction323
+private class ReduceAction329
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10139,7 +10390,7 @@ private class ReduceAction323
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction324
+private class ReduceAction330
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10181,7 +10432,7 @@ private class ReduceAction324
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction325
+private class ReduceAction331
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10222,7 +10473,7 @@ private class ReduceAction325
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction326
+private class ReduceAction332
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10261,7 +10512,7 @@ private class ReduceAction326
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction327
+private class ReduceAction333
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10286,7 +10537,7 @@ private class ReduceAction327
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction328
+private class ReduceAction334
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10314,7 +10565,7 @@ private class ReduceAction328
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction329
+private class ReduceAction335
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10335,7 +10586,7 @@ private class ReduceAction329
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction330
+private class ReduceAction336
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10359,7 +10610,7 @@ private class ReduceAction330
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction331
+private class ReduceAction337
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10371,7 +10622,7 @@ private class ReduceAction331
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction335
+private class ReduceAction341
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10396,7 +10647,7 @@ private class ReduceAction335
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction337
+private class ReduceAction343
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10436,7 +10687,7 @@ private class ReduceAction337
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction339
+private class ReduceAction345
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10457,7 +10708,7 @@ private class ReduceAction339
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction340
+private class ReduceAction346
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10478,7 +10729,7 @@ private class ReduceAction340
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction341
+private class ReduceAction347
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10500,7 +10751,7 @@ private class ReduceAction341
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction343
+private class ReduceAction349
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10520,7 +10771,7 @@ private class ReduceAction343
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction345
+private class ReduceAction351
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10541,7 +10792,7 @@ private class ReduceAction345
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction346
+private class ReduceAction352
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10562,7 +10813,7 @@ private class ReduceAction346
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction347
+private class ReduceAction353
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10583,7 +10834,7 @@ private class ReduceAction347
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction348
+private class ReduceAction354
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10604,7 +10855,7 @@ private class ReduceAction348
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction349
+private class ReduceAction355
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10625,7 +10876,7 @@ private class ReduceAction349
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction350
+private class ReduceAction356
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10646,7 +10897,7 @@ private class ReduceAction350
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction351
+private class ReduceAction357
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10667,7 +10918,7 @@ private class ReduceAction351
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction352
+private class ReduceAction358
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10688,7 +10939,7 @@ private class ReduceAction352
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction353
+private class ReduceAction359
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10709,7 +10960,7 @@ private class ReduceAction353
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction354
+private class ReduceAction360
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10730,7 +10981,7 @@ private class ReduceAction354
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction355
+private class ReduceAction361
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10751,7 +11002,7 @@ private class ReduceAction355
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction357
+private class ReduceAction363
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10772,7 +11023,7 @@ private class ReduceAction357
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction358
+private class ReduceAction364
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10793,7 +11044,7 @@ private class ReduceAction358
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction360
+private class ReduceAction366
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10814,7 +11065,7 @@ private class ReduceAction360
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction361
+private class ReduceAction367
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10835,7 +11086,7 @@ private class ReduceAction361
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction362
+private class ReduceAction368
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10856,7 +11107,7 @@ private class ReduceAction362
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction364
+private class ReduceAction370
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10876,7 +11127,7 @@ private class ReduceAction364
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction365
+private class ReduceAction371
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10896,7 +11147,7 @@ private class ReduceAction365
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction367
+private class ReduceAction373
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10921,7 +11172,7 @@ private class ReduceAction367
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction368
+private class ReduceAction374
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10946,7 +11197,7 @@ private class ReduceAction368
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction369
+private class ReduceAction375
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10955,8 +11206,7 @@ private class ReduceAction369
                                        var nodearraylist1 = p.pop
                                        var tkwissetnode2 = nodearraylist1
                                        assert tkwissetnode2 isa nullable TKwisset
-                                       var pexprnode3: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode3: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tattridnode4 = nodearraylist2
                                        assert tattridnode4 isa nullable TAttrid
                                        var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr(
@@ -10968,7 +11218,7 @@ private class ReduceAction369
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction370
+private class ReduceAction376
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -10989,14 +11239,13 @@ private class ReduceAction370
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction371
+private class ReduceAction377
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
-                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        var tattridnode3 = nodearraylist1
                                        assert tattridnode3 isa nullable TAttrid
                                        var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr(
@@ -11007,7 +11256,7 @@ private class ReduceAction371
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction378
+private class ReduceAction384
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11028,7 +11277,7 @@ private class ReduceAction378
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction379
+private class ReduceAction385
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11058,7 +11307,7 @@ private class ReduceAction379
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction380
+private class ReduceAction386
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11090,7 +11339,7 @@ private class ReduceAction380
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction381
+private class ReduceAction387
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11122,7 +11371,7 @@ private class ReduceAction381
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction382
+private class ReduceAction388
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11137,7 +11386,7 @@ private class ReduceAction382
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction383
+private class ReduceAction389
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11152,7 +11401,7 @@ private class ReduceAction383
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction384
+private class ReduceAction390
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11167,7 +11416,7 @@ private class ReduceAction384
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction385
+private class ReduceAction391
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11182,7 +11431,7 @@ private class ReduceAction385
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction386
+private class ReduceAction392
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11197,7 +11446,7 @@ private class ReduceAction386
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction387
+private class ReduceAction393
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11212,7 +11461,7 @@ private class ReduceAction387
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction388
+private class ReduceAction394
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11227,7 +11476,7 @@ private class ReduceAction388
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction389
+private class ReduceAction395
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11242,7 +11491,7 @@ private class ReduceAction389
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction390
+private class ReduceAction396
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11257,7 +11506,7 @@ private class ReduceAction390
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction392
+private class ReduceAction398
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11280,7 +11529,7 @@ private class ReduceAction392
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction393
+private class ReduceAction399
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11316,7 +11565,7 @@ private class ReduceAction393
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction394
+private class ReduceAction400
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11357,7 +11606,7 @@ private class ReduceAction394
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction395
+private class ReduceAction401
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11380,7 +11629,7 @@ private class ReduceAction395
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction396
+private class ReduceAction402
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11407,7 +11656,7 @@ private class ReduceAction396
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction397
+private class ReduceAction403
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11429,7 +11678,7 @@ private class ReduceAction397
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction398
+private class ReduceAction404
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11444,7 +11693,7 @@ private class ReduceAction398
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction400
+private class ReduceAction406
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11459,7 +11708,7 @@ private class ReduceAction400
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction401
+private class ReduceAction407
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11474,7 +11723,7 @@ private class ReduceAction401
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction402
+private class ReduceAction408
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11500,7 +11749,7 @@ private class ReduceAction402
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction403
+private class ReduceAction409
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11522,7 +11771,7 @@ private class ReduceAction403
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction404
+private class ReduceAction410
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11535,7 +11784,7 @@ private class ReduceAction404
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction406
+private class ReduceAction412
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11554,7 +11803,7 @@ private class ReduceAction406
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction409
+private class ReduceAction415
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11580,7 +11829,7 @@ private class ReduceAction409
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction410
+private class ReduceAction416
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11596,7 +11845,7 @@ private class ReduceAction410
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction411
+private class ReduceAction417
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11616,7 +11865,7 @@ private class ReduceAction411
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction412
+private class ReduceAction418
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11630,7 +11879,7 @@ private class ReduceAction412
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction413
+private class ReduceAction419
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11645,7 +11894,7 @@ private class ReduceAction413
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction414
+private class ReduceAction420
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11667,7 +11916,7 @@ private class ReduceAction414
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction415
+private class ReduceAction421
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11685,7 +11934,7 @@ private class ReduceAction415
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction416
+private class ReduceAction422
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11707,7 +11956,7 @@ private class ReduceAction416
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction417
+private class ReduceAction423
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11729,7 +11978,7 @@ private class ReduceAction417
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction418
+private class ReduceAction424
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11755,7 +12004,7 @@ private class ReduceAction418
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction419
+private class ReduceAction425
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11772,7 +12021,7 @@ private class ReduceAction419
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction420
+private class ReduceAction426
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11793,7 +12042,7 @@ private class ReduceAction420
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction421
+private class ReduceAction427
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11811,7 +12060,7 @@ private class ReduceAction421
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction422
+private class ReduceAction428
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11824,7 +12073,7 @@ private class ReduceAction422
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction423
+private class ReduceAction429
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11837,7 +12086,7 @@ private class ReduceAction423
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction424
+private class ReduceAction430
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11846,7 +12095,7 @@ private class ReduceAction424
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction426
+private class ReduceAction432
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11863,7 +12112,7 @@ private class ReduceAction426
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction427
+private class ReduceAction433
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11881,7 +12130,7 @@ private class ReduceAction427
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction429
+private class ReduceAction435
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11890,7 +12139,7 @@ private class ReduceAction429
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction430
+private class ReduceAction436
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11901,7 +12150,7 @@ private class ReduceAction430
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction431
+private class ReduceAction437
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11911,7 +12160,7 @@ private class ReduceAction431
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction432
+private class ReduceAction438
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11922,7 +12171,7 @@ private class ReduceAction432
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction689
+private class ReduceAction698
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11945,7 +12194,7 @@ private class ReduceAction689
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction690
+private class ReduceAction699
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11964,7 +12213,7 @@ private class ReduceAction690
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction691
+private class ReduceAction700
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11989,7 +12238,7 @@ private class ReduceAction691
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction694
+private class ReduceAction703
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12012,7 +12261,7 @@ private class ReduceAction694
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction707
+private class ReduceAction716
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12025,18 +12274,17 @@ private class ReduceAction707
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction708
+private class ReduceAction717
        super ReduceAction
        redef fun action(p: Parser)
        do
                                        var node_list: nullable Object = null
-                                       var pexprnode1: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr(
-                                       )
+                                       var pexprnode1: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction715
+private class ReduceAction724
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12051,7 +12299,7 @@ private class ReduceAction715
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction716
+private class ReduceAction725
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12070,7 +12318,7 @@ private class ReduceAction716
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction717
+private class ReduceAction726
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12085,7 +12333,7 @@ private class ReduceAction717
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction718
+private class ReduceAction727
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12104,7 +12352,7 @@ private class ReduceAction718
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction719
+private class ReduceAction728
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12119,7 +12367,7 @@ private class ReduceAction719
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction720
+private class ReduceAction729
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12138,7 +12386,7 @@ private class ReduceAction720
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction721
+private class ReduceAction730
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12153,7 +12401,7 @@ private class ReduceAction721
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction722
+private class ReduceAction731
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12172,7 +12420,7 @@ private class ReduceAction722
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction725
+private class ReduceAction734
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12187,7 +12435,7 @@ private class ReduceAction725
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction726
+private class ReduceAction735
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12206,7 +12454,7 @@ private class ReduceAction726
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction727
+private class ReduceAction736
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12221,7 +12469,7 @@ private class ReduceAction727
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction728
+private class ReduceAction737
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12240,7 +12488,7 @@ private class ReduceAction728
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction729
+private class ReduceAction738
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12255,7 +12503,7 @@ private class ReduceAction729
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction730
+private class ReduceAction739
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12274,7 +12522,7 @@ private class ReduceAction730
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction731
+private class ReduceAction740
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12289,7 +12537,7 @@ private class ReduceAction731
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction732
+private class ReduceAction741
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12308,7 +12556,7 @@ private class ReduceAction732
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction734
+private class ReduceAction743
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12327,7 +12575,7 @@ private class ReduceAction734
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction735
+private class ReduceAction744
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12342,7 +12590,7 @@ private class ReduceAction735
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction736
+private class ReduceAction745
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12361,21 +12609,7 @@ private class ReduceAction736
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction737
-       super ReduceAction
-       redef fun action(p: Parser)
-       do
-                                       var node_list: nullable Object = null
-                                       var nodearraylist1 = p.pop
-                                       var listnode2 = new Array[Object]
-                                       var listnode1 = nodearraylist1
-                                       assert listnode1 isa Array[Object]
-                                       listnode2 = concat(listnode2, listnode1)
-                                       node_list = listnode2
-                                       p.push(p.go_to(_goto), node_list)
-       end
-end
-private class ReduceAction738
+private class ReduceAction747
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12393,7 +12627,7 @@ private class ReduceAction738
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction742
+private class ReduceAction751
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12412,7 +12646,7 @@ private class ReduceAction742
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction743
+private class ReduceAction752
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12427,7 +12661,7 @@ private class ReduceAction743
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction744
+private class ReduceAction753
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12446,7 +12680,7 @@ private class ReduceAction744
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction745
+private class ReduceAction754
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -12461,7 +12695,7 @@ private class ReduceAction745
                                        p.push(p.go_to(_goto), node_list)
        end
 end
-private class ReduceAction746
+private class ReduceAction755
        super ReduceAction
        redef fun action(p: Parser)
        do