+short int var14 /* : Bool */;
+int cltype;
+int idtype;
+val* var_tkwredefnode3 /* var tkwredefnode3: nullable Object */;
+short int var15 /* : Bool */;
+int cltype16;
+int idtype17;
+val* var_pvisibilitynode4 /* var pvisibilitynode4: nullable Object */;
+short int var18 /* : Bool */;
+int cltype19;
+int idtype20;
+val* var_pclasskindnode5 /* var pclasskindnode5: nullable Object */;
+short int var21 /* : Bool */;
+int cltype22;
+int idtype23;
+val* var_tclassidnode6 /* var tclassidnode6: nullable Object */;
+short int var24 /* : Bool */;
+int cltype25;
+int idtype26;
+val* var_tkwendnode12 /* var tkwendnode12: nullable Object */;
+short int var27 /* : Bool */;
+int cltype28;
+int idtype29;
+val* var30 /* : AStdClassdef */;
+val* var31 /* : null */;
+val* var32 /* : null */;
+val* var_pclassdefnode1 /* var pclassdefnode1: nullable AStdClassdef */;
+long var33 /* : Int */;
+long var34 /* : Int */;
+var_p = p0;
+var = NULL;
+var_node_list = var;
+var1 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist10 = var1;
+var2 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist9 = var2;
+var3 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist8 = var3;
+var4 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist7 = var4;
+var5 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist6 = var5;
+var6 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist5 = var6;
+var7 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist4 = var7;
+var8 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist3 = var8;
+var9 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist2 = var9;
+var10 = ((val* (*)(val*))(var_p->class->vft[COLOR_parser__Parser__pop]))(var_p) /* pop on <var_p:Parser>*/;
+var_nodearraylist1 = var10;
+var11 = NEW_array__Array(&type_array__Arraykernel__Object);
+((void (*)(val*))(var11->class->vft[COLOR_array__Array__init]))(var11) /* init on <var11:Array[Object]>*/;
+var_listnode7 = var11;
+var12 = NEW_array__Array(&type_array__Arraykernel__Object);
+((void (*)(val*))(var12->class->vft[COLOR_array__Array__init]))(var12) /* init on <var12:Array[Object]>*/;
+var_listnode10 = var12;
+var13 = NEW_array__Array(&type_array__Arraykernel__Object);
+((void (*)(val*))(var13->class->vft[COLOR_array__Array__init]))(var13) /* init on <var13:Array[Object]>*/;
+var_listnode11 = var13;
+var_pdocnode2 = var_nodearraylist1;
+/* <var_pdocnode2:nullable Object> isa nullable ADoc */
+cltype = type_nullable_parser_nodes__ADoc.color;
+idtype = type_nullable_parser_nodes__ADoc.id;
+if(var_pdocnode2 == NULL) {
+var14 = 1;
+} else {
+if(cltype >= var_pdocnode2->type->table_size) {
+var14 = 0;
+} else {
+var14 = var_pdocnode2->type->type_table[cltype] == idtype;
+}
+}
+if (!var14) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 4410);
+show_backtrace(1);
+}
+var_tkwredefnode3 = var_nodearraylist2;
+/* <var_tkwredefnode3:nullable Object> isa nullable TKwredef */
+cltype16 = type_nullable_parser_nodes__TKwredef.color;
+idtype17 = type_nullable_parser_nodes__TKwredef.id;
+if(var_tkwredefnode3 == NULL) {
+var15 = 1;
+} else {
+if(cltype16 >= var_tkwredefnode3->type->table_size) {
+var15 = 0;
+} else {
+var15 = var_tkwredefnode3->type->type_table[cltype16] == idtype17;
+}
+}
+if (!var15) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 4412);
+show_backtrace(1);
+}
+var_pvisibilitynode4 = var_nodearraylist3;
+/* <var_pvisibilitynode4:nullable Object> isa nullable AVisibility */
+cltype19 = type_nullable_parser_nodes__AVisibility.color;
+idtype20 = type_nullable_parser_nodes__AVisibility.id;
+if(var_pvisibilitynode4 == NULL) {
+var18 = 1;
+} else {
+if(cltype19 >= var_pvisibilitynode4->type->table_size) {
+var18 = 0;
+} else {
+var18 = var_pvisibilitynode4->type->type_table[cltype19] == idtype20;
+}
+}
+if (!var18) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 4414);
+show_backtrace(1);
+}
+var_pclasskindnode5 = var_nodearraylist4;
+/* <var_pclasskindnode5:nullable Object> isa nullable AClasskind */
+cltype22 = type_nullable_parser_nodes__AClasskind.color;
+idtype23 = type_nullable_parser_nodes__AClasskind.id;
+if(var_pclasskindnode5 == NULL) {
+var21 = 1;
+} else {
+if(cltype22 >= var_pclasskindnode5->type->table_size) {
+var21 = 0;
+} else {
+var21 = var_pclasskindnode5->type->type_table[cltype22] == idtype23;
+}
+}
+if (!var21) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 4416);
+show_backtrace(1);
+}
+var_tclassidnode6 = var_nodearraylist8;
+/* <var_tclassidnode6:nullable Object> isa nullable TClassid */
+cltype25 = type_nullable_parser_nodes__TClassid.color;
+idtype26 = type_nullable_parser_nodes__TClassid.id;
+if(var_tclassidnode6 == NULL) {
+var24 = 1;
+} else {
+if(cltype25 >= var_tclassidnode6->type->table_size) {
+var24 = 0;
+} else {
+var24 = var_tclassidnode6->type->type_table[cltype25] == idtype26;
+}
+}
+if (!var24) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 4418);
+show_backtrace(1);
+}
+var_tkwendnode12 = var_nodearraylist10;
+/* <var_tkwendnode12:nullable Object> isa nullable TKwend */
+cltype28 = type_nullable_parser_nodes__TKwend.color;
+idtype29 = type_nullable_parser_nodes__TKwend.id;
+if(var_tkwendnode12 == NULL) {
+var27 = 1;
+} else {
+if(cltype28 >= var_tkwendnode12->type->table_size) {
+var27 = 0;
+} else {
+var27 = var_tkwendnode12->type->type_table[cltype28] == idtype29;
+}
+}
+if (!var27) {
+fprintf(stderr, "Runtime error: %s", "Assert failed");
+fprintf(stderr, " (%s:%d)\n", "src/parser/parser.nit", 4420);
+show_backtrace(1);
+}
+var30 = NEW_parser_nodes__AStdClassdef(&type_parser_nodes__AStdClassdef);
+var31 = NULL;
+var32 = NULL;
+((void (*)(val*, val*, val*, val*, val*, val*, val*, val*, val*, val*, val*, val*))(var30->class->vft[COLOR_parser_prod__AStdClassdef__init_astdclassdef]))(var30, var_pdocnode2, var_tkwredefnode3, var_pvisibilitynode4, var_pclasskindnode5, var_tclassidnode6, var_listnode7, var31, var32, var_listnode10, var_listnode11, var_tkwendnode12) /* init_astdclassdef on <var30:AStdClassdef>*/;
+var_pclassdefnode1 = var30;
+var_node_list = var_pclassdefnode1;
+var33 = self->attrs[COLOR_parser__ReduceAction___goto].l; /* _goto on <self:ReduceAction79> */
+var34 = ((long (*)(val*, long))(var_p->class->vft[COLOR_parser__Parser__go_to]))(var_p, var33) /* go_to on <var_p:Parser>*/;
+((void (*)(val*, long, val*))(var_p->class->vft[COLOR_parser__Parser__push]))(var_p, var34, var_node_list) /* push on <var_p:Parser>*/;
+RET_LABEL:;
+}
+/* method parser#ReduceAction79#action for (self: Object, Parser) */
+void VIRTUAL_parser__ReduceAction79__action(val* self, val* p0) {
+parser__ReduceAction79__action(self, p0);
+RET_LABEL:;
+}
+/* method parser#ReduceAction81#action for (self: ReduceAction81, Parser) */
+void parser__ReduceAction81__action(val* self, val* p0) {
+val* var_p /* var p: Parser */;
+val* var /* : null */;
+val* var_node_list /* var node_list: nullable Object */;
+val* var1 /* : nullable Object */;
+val* var_nodearraylist8 /* var nodearraylist8: nullable Object */;
+val* var2 /* : nullable Object */;
+val* var_nodearraylist7 /* var nodearraylist7: nullable Object */;
+val* var3 /* : nullable Object */;
+val* var_nodearraylist6 /* var nodearraylist6: nullable Object */;
+val* var4 /* : nullable Object */;
+val* var_nodearraylist5 /* var nodearraylist5: nullable Object */;
+val* var5 /* : nullable Object */;
+val* var_nodearraylist4 /* var nodearraylist4: nullable Object */;
+val* var6 /* : nullable Object */;
+val* var_nodearraylist3 /* var nodearraylist3: nullable Object */;
+val* var7 /* : nullable Object */;
+val* var_nodearraylist2 /* var nodearraylist2: nullable Object */;
+val* var8 /* : nullable Object */;
+val* var_nodearraylist1 /* var nodearraylist1: nullable Object */;
+val* var9 /* : Array[Object] */;
+val* var_listnode8 /* var listnode8: Array[Object] */;
+val* var10 /* : Array[Object] */;
+val* var_listnode11 /* var listnode11: Array[Object] */;
+val* var11 /* : Array[Object] */;
+val* var_listnode12 /* var listnode12: Array[Object] */;
+val* var_pdocnode2 /* var pdocnode2: nullable Object */;
+short int var12 /* : Bool */;