c_src: updates c_src for extern classes to be special of Pointer
[nit.git] / c_src / parser___parser_prod._sep.c
similarity index 50%
rename from c_src/parser_prod._sep.c
rename to c_src/parser___parser_prod._sep.c
index 6993e90..51520cc 100644 (file)
@@ -1,28 +1,28 @@
-/* This C file is generated by NIT to compile module parser_prod. */
-#include "parser_prod._sep.h"
-val_t parser_prod___ANode___parent(val_t p0){
+/* This C file is generated by NIT to compile module parser___parser_prod. */
+#include "parser___parser_prod._sep.h"
+val_t parser___parser_prod___ANode___parent(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 10;
-  fra.me.meth = LOCATE_parser_prod___ANode___parent;
+  fra.me.meth = LOCATE_parser___parser_prod___ANode___parent;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* ./parser//parser_prod.nit:10 */
-  fra.me.REG[0] = ATTR_parser_prod___ANode____parent(fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
-void parser_prod___ANode___parent__eq(val_t p0, val_t p1){
+void parser___parser_prod___ANode___parent__eq(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 10;
-  fra.me.meth = LOCATE_parser_prod___ANode___parent__eq;
+  fra.me.meth = LOCATE_parser___parser_prod___ANode___parent__eq;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -30,17 +30,17 @@ void parser_prod___ANode___parent__eq(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:10 */
-  ATTR_parser_prod___ANode____parent(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]) = fra.me.REG[1];
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANode___remove_child(val_t p0, val_t p1){
+void parser___parser_prod___ANode___remove_child(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 13;
-  fra.me.meth = LOCATE_parser_prod___ANode___remove_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ANode___remove_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -48,33 +48,33 @@ void parser_prod___ANode___remove_child(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:16 */
-  CALL_parser_prod___ANode___replace_child(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], NIT_NULL);
+  CALL_parser___parser_prod___ANode___replace_child(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], NIT_NULL);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANode___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ANode___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 19;
-  fra.me.meth = LOCATE_parser_prod___ANode___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ANode___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 0;
   /* ./parser//parser_prod.nit:19 */
-  nit_abort("Deferred method called", NULL, LOCATE_parser_prod, 19);
+  nit_abort("Deferred method called", NULL, LOCATE_parser___parser_prod, 19);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANode___replace_with(val_t p0, val_t p1){
+void parser___parser_prod___ANode___replace_with(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 22;
-  fra.me.meth = LOCATE_parser_prod___ANode___replace_with;
+  fra.me.meth = LOCATE_parser___parser_prod___ANode___replace_with;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -83,7 +83,7 @@ void parser_prod___ANode___replace_with(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:25 */
-  fra.me.REG[2] = ATTR_parser_prod___ANode____parent(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -92,44 +92,44 @@ void parser_prod___ANode___replace_with(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:26 */
-    fra.me.REG[2] = ATTR_parser_prod___ANode____parent(fra.me.REG[0]);
+    fra.me.REG[2] = ATTR_parser___parser_prod___ANode____parent(fra.me.REG[0]);
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 26);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 26);
     }
-    CALL_parser_prod___ANode___replace_child(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0], fra.me.REG[1]);
+    CALL_parser___parser_prod___ANode___replace_child(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0], fra.me.REG[1]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANode___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ANode___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 30;
-  fra.me.meth = LOCATE_parser_prod___ANode___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ANode___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 0;
   /* ./parser//parser_prod.nit:30 */
-  nit_abort("Deferred method called", NULL, LOCATE_parser_prod, 30);
+  nit_abort("Deferred method called", NULL, LOCATE_parser___parser_prod, 30);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___Token___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___Token___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 36;
-  fra.me.meth = LOCATE_parser_prod___Token___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___Token___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -139,13 +139,13 @@ void parser_prod___Token___visit_all(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___Token___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___Token___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 37;
-  fra.me.meth = LOCATE_parser_prod___Token___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___Token___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -157,14 +157,14 @@ void parser_prod___Token___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___Prod___replace_with(val_t p0, val_t p1){
+void parser___parser_prod___Prod___replace_with(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 41;
-  fra.me.meth = LOCATE_parser_prod___Prod___replace_with;
+  fra.me.meth = LOCATE_parser___parser_prod___Prod___replace_with;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -177,40 +177,40 @@ void parser_prod___Prod___replace_with(val_t p0, val_t p1){
   fra.me.REG[2] = fra.me.REG[0];
   fra.me.REG[3] = fra.me.REG[1];
   /* ./parser//parser_prod.nit:43 */
-  CALL_SUPER_parser_prod___Prod___replace_with(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+  CALL_SUPER_parser___parser_prod___Prod___replace_with(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
   /* ./parser//parser_prod.nit:44 */
-  REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[3], COLOR_Prod, ID_Prod)) /*cast Prod*/;
+  REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[3], COLOR_parser___parser_nodes___Prod, ID_parser___parser_nodes___Prod)) /*cast Prod*/;
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Assert failed", NULL, LOCATE_parser_prod, 44);
+    nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 44);
   }
   /* ./parser//parser_prod.nit:45 */
-  fra.me.REG[2] = CALL_parser_nodes___ANode___location(fra.me.REG[2])(fra.me.REG[2]);
-  CALL_parser_nodes___Prod___location__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
+  fra.me.REG[2] = CALL_parser___parser_nodes___ANode___location(fra.me.REG[2])(fra.me.REG[2]);
+  CALL_parser___parser_nodes___Prod___location__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___Visitor___visit(val_t p0, val_t p1){
+void parser___parser_prod___Visitor___visit(val_t p0, val_t p1){
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 51;
-  fra.me.meth = LOCATE_parser_prod___Visitor___visit;
+  fra.me.meth = LOCATE_parser___parser_prod___Visitor___visit;
   fra.me.has_broke = 0;
   fra.me.REG_size = 0;
   /* ./parser//parser_prod.nit:51 */
-  nit_abort("Deferred method called", NULL, LOCATE_parser_prod, 51);
+  nit_abort("Deferred method called", NULL, LOCATE_parser___parser_prod, 51);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___Visitor___enter_visit(val_t p0, val_t p1){
+void parser___parser_prod___Visitor___enter_visit(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 55;
-  fra.me.meth = LOCATE_parser_prod___Visitor___enter_visit;
+  fra.me.meth = LOCATE_parser___parser_prod___Visitor___enter_visit;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -219,56 +219,56 @@ void parser_prod___Visitor___enter_visit(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:60 */
-  fra.me.REG[2] = ATTR_parser_prod___Visitor____current_node(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]);
   /* ./parser//parser_prod.nit:61 */
-  ATTR_parser_prod___Visitor____current_node(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:62 */
-  CALL_parser_prod___Visitor___visit(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+  CALL_parser___parser_prod___Visitor___visit(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
   /* ./parser//parser_prod.nit:63 */
-  ATTR_parser_prod___Visitor____current_node(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]) = fra.me.REG[2];
   stack_frame_head = fra.me.prev;
   return;
 }
-val_t parser_prod___Visitor___current_node(val_t p0){
+val_t parser___parser_prod___Visitor___current_node(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 66;
-  fra.me.meth = LOCATE_parser_prod___Visitor___current_node;
+  fra.me.meth = LOCATE_parser___parser_prod___Visitor___current_node;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* ./parser//parser_prod.nit:66 */
-  fra.me.REG[0] = ATTR_parser_prod___Visitor____current_node(fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_prod___Visitor____current_node(fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
-void parser_prod___Visitor___init(val_t p0, int* init_table){
-  int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_Visitor].i;
+void parser___parser_prod___Visitor___init(val_t p0, int* init_table){
+  int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_prod___Visitor].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos0]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 0;
-  fra.me.meth = LOCATE_parser_prod___Visitor___init;
+  fra.me.meth = LOCATE_parser___parser_prod___Visitor___init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 0;
   stack_frame_head = fra.me.prev;
   init_table[itpos0] = 1;
   return;
 }
-void parser_prod___AModule___empty_init(val_t p0, int* init_table){
-  int itpos1 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AModule].i;
+void parser___parser_prod___AModule___empty_init(val_t p0, int* init_table){
+  int itpos1 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModule].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos1]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 71;
-  fra.me.meth = LOCATE_parser_prod___AModule___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AModule___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -277,17 +277,17 @@ void parser_prod___AModule___empty_init(val_t p0, int* init_table){
   init_table[itpos1] = 1;
   return;
 }
-void parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos2 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AModule].i;
+void parser___parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos2 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModule].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos2]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 73;
-  fra.me.meth = LOCATE_parser_prod___AModule___init_amodule;
+  fra.me.meth = LOCATE_parser___parser_prod___AModule___init_amodule;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -299,9 +299,9 @@ void parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:79 */
-  CALL_parser_prod___AModule___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AModule___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:80 */
-  ATTR_parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:81 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -311,7 +311,7 @@ void parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -320,26 +320,26 @@ void parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3
     /* ./parser//parser_prod.nit:82 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 82);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 82);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AModule___init_amodule_1));
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___AModule___init_amodule_2));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___init_amodule_1));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___init_amodule_2));
   stack_frame_head = fra.me.prev;
   init_table[itpos2] = 1;
   return;
 }
-  void OC_parser_prod___AModule___init_amodule_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AModule___init_amodule_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:84 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AModule___init_amodule;
+    fra.me.meth = LOCATE_parser___parser_prod___AModule___init_amodule;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -349,34 +349,34 @@ void parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:85 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AImport, ID_AImport)) /*cast AImport*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AImport, ID_parser___parser_nodes___AImport)) /*cast AImport*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 85);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 85);
     }
     /* ./parser//parser_prod.nit:86 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AModule____n_imports(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser_prod, 86);
+      nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 86);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AModule____n_imports(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AModule____n_imports(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:87 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AModule___init_amodule_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AModule___init_amodule_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:89 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AModule___init_amodule;
+    fra.me.meth = LOCATE_parser___parser_prod___AModule___init_amodule;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -386,25 +386,25 @@ void parser_prod___AModule___init_amodule(val_t p0, val_t p1, val_t p2, val_t p3
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:90 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AClassdef, ID_AClassdef)) /*cast AClassdef*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClassdef, ID_parser___parser_nodes___AClassdef)) /*cast AClassdef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 90);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 90);
     }
     /* ./parser//parser_prod.nit:91 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AModule____n_classdefs(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser_prod, 91);
+      nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 91);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AModule____n_classdefs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AModule____n_classdefs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:92 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -413,9 +413,9 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 96;
-  fra.me.meth = LOCATE_parser_prod___AModule___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AModule___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -426,7 +426,7 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:98 */
-  fra.me.REG[3] = ATTR_parser_nodes___AModule____n_moduledecl(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -435,7 +435,7 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -449,7 +449,7 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -458,49 +458,49 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:100 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 100);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 100);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:101 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AModuledecl, ID_AModuledecl)) /*cast AModuledecl*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModuledecl, ID_parser___parser_nodes___AModuledecl)) /*cast AModuledecl*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 101);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 101);
       }
       /* ./parser//parser_prod.nit:102 */
-      ATTR_parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:104 */
-      ATTR_parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:106 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:108 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser_prod, 108);
+    nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 108);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:108 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:109 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser_prod, 109);
+        nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 109);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -509,7 +509,7 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -523,82 +523,82 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:111 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AImport, ID_AImport)) /*cast AImport*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AImport, ID_parser___parser_nodes___AImport)) /*cast AImport*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 111);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 111);
           }
           /* ./parser//parser_prod.nit:112 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser_prod, 112);
+            nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 112);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:113 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 113);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 113);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:115 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser_prod, 115);
+            nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 115);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:117 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
   /* ./parser//parser_prod.nit:120 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser_prod, 120);
+    nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 120);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:120 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:121 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser_prod, 121);
+        nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 121);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -607,7 +607,7 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -621,53 +621,53 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:123 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AClassdef, ID_AClassdef)) /*cast AClassdef*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClassdef, ID_parser___parser_nodes___AClassdef)) /*cast AClassdef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 123);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 123);
           }
           /* ./parser//parser_prod.nit:124 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser_prod, 124);
+            nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 124);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:125 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 125);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 125);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:127 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser_prod, 127);
+            nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 127);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:129 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label3;
     }
   }
@@ -676,15 +676,15 @@ void parser_prod___AModule___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AModule___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AModule___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 134;
-  fra.me.meth = LOCATE_parser_prod___AModule___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AModule___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -693,7 +693,7 @@ void parser_prod___AModule___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:136 */
-  fra.me.REG[2] = ATTR_parser_nodes___AModule____n_moduledecl(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -702,48 +702,48 @@ void parser_prod___AModule___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:137 */
-    fra.me.REG[2] = ATTR_parser_nodes___AModule____n_moduledecl(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AModuledecl, ID_AModuledecl)) /*cast AModuledecl*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AModule____n_moduledecl(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModuledecl, ID_parser___parser_nodes___AModuledecl)) /*cast AModuledecl*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 137);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 137);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:139 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser_prod, 139);
+    nit_abort("Uninitialized attribute %s", "_n_imports", LOCATE_parser___parser_prod, 139);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AModule____n_imports(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AModule___visit_all_1));
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AModule____n_imports(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___visit_all_1));
   /* ./parser//parser_prod.nit:142 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser_prod, 142);
+    nit_abort("Uninitialized attribute %s", "_n_classdefs", LOCATE_parser___parser_prod, 142);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AModule___visit_all_2));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AModule____n_classdefs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModule___visit_all_2));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AModule___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AModule___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AModule___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AModule___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -752,18 +752,18 @@ void parser_prod___AModule___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:140 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AModule___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AModule___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AModule___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AModule___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -772,19 +772,19 @@ void parser_prod___AModule___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:143 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AModuledecl___empty_init(val_t p0, int* init_table){
-  int itpos3 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AModuledecl].i;
+void parser___parser_prod___AModuledecl___empty_init(val_t p0, int* init_table){
+  int itpos3 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuledecl].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos3]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 148;
-  fra.me.meth = LOCATE_parser_prod___AModuledecl___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -793,17 +793,17 @@ void parser_prod___AModuledecl___empty_init(val_t p0, int* init_table){
   init_table[itpos3] = 1;
   return;
 }
-void parser_prod___AModuledecl___init_amoduledecl(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos4 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AModuledecl].i;
+void parser___parser_prod___AModuledecl___init_amoduledecl(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos4 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuledecl].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos4]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 150;
-  fra.me.meth = LOCATE_parser_prod___AModuledecl___init_amoduledecl;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___init_amoduledecl;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -815,9 +815,9 @@ void parser_prod___AModuledecl___init_amoduledecl(val_t p0, val_t p1, val_t p2,
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:156 */
-  CALL_parser_prod___AModuledecl___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AModuledecl___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:157 */
-  ATTR_parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:158 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -827,7 +827,7 @@ void parser_prod___AModuledecl___init_amoduledecl(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -836,49 +836,49 @@ void parser_prod___AModuledecl___init_amoduledecl(val_t p0, val_t p1, val_t p2,
     /* ./parser//parser_prod.nit:159 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 159);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 159);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:161 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 161);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 161);
   }
-  ATTR_parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:162 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 162);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 162);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:163 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 163);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 163);
   }
-  ATTR_parser_nodes___AModuledecl____n_id(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:164 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 164);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 164);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos4] = 1;
   return;
 }
-void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 167;
-  fra.me.meth = LOCATE_parser_prod___AModuledecl___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -889,7 +889,7 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:169 */
-  fra.me.REG[3] = ATTR_parser_nodes___AModuledecl____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -898,7 +898,7 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -912,7 +912,7 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -921,35 +921,35 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:171 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 171);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 171);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:172 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 172);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 172);
       }
       /* ./parser//parser_prod.nit:173 */
-      ATTR_parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:175 */
-      ATTR_parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:177 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:179 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmodule", LOCATE_parser_prod, 179);
+    nit_abort("Uninitialized attribute %s", "_n_kwmodule", LOCATE_parser___parser_prod, 179);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -962,7 +962,7 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -971,35 +971,35 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:181 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 181);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 181);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:182 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwmodule, ID_TKwmodule)) /*cast TKwmodule*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmodule, ID_parser___parser_nodes___TKwmodule)) /*cast TKwmodule*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 182);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 182);
       }
       /* ./parser//parser_prod.nit:183 */
-      ATTR_parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:185 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 185);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 185);
     }
     /* ./parser//parser_prod.nit:187 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:189 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AModuledecl____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 189);
+    nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 189);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AModuledecl____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1012,7 +1012,7 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1021,20 +1021,20 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:191 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 191);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 191);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:192 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModuleName, ID_parser___parser_nodes___AModuleName)) /*cast AModuleName*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 192);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 192);
       }
       /* ./parser//parser_prod.nit:193 */
-      ATTR_parser_nodes___AModuledecl____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:195 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 195);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 195);
     }
     /* ./parser//parser_prod.nit:197 */
     goto label1;
@@ -1043,15 +1043,15 @@ void parser_prod___AModuledecl___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AModuledecl___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AModuledecl___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 201;
-  fra.me.meth = LOCATE_parser_prod___AModuledecl___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuledecl___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -1060,7 +1060,7 @@ void parser_prod___AModuledecl___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:203 */
-  fra.me.REG[2] = ATTR_parser_nodes___AModuledecl____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -1069,49 +1069,49 @@ void parser_prod___AModuledecl___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:204 */
-    fra.me.REG[2] = ATTR_parser_nodes___AModuledecl____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AModuledecl____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 204);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 204);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:206 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmodule", LOCATE_parser_prod, 206);
+    nit_abort("Uninitialized attribute %s", "_n_kwmodule", LOCATE_parser___parser_prod, 206);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AModuledecl____n_kwmodule(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:207 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AModuledecl____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 207);
+    nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 207);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AModuledecl____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AModuledecl____n_name(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStdImport___empty_init(val_t p0, int* init_table){
-  int itpos5 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStdImport].i;
+void parser___parser_prod___AStdImport___empty_init(val_t p0, int* init_table){
+  int itpos5 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdImport].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos5]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 211;
-  fra.me.meth = LOCATE_parser_prod___AStdImport___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdImport___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -1120,16 +1120,16 @@ void parser_prod___AStdImport___empty_init(val_t p0, int* init_table){
   init_table[itpos5] = 1;
   return;
 }
-void parser_prod___AStdImport___init_astdimport(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos6 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStdImport].i;
+void parser___parser_prod___AStdImport___init_astdimport(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos6 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdImport].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos6]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 213;
-  fra.me.meth = LOCATE_parser_prod___AStdImport___init_astdimport;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdImport___init_astdimport;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -1141,59 +1141,59 @@ void parser_prod___AStdImport___init_astdimport(val_t p0, val_t p1, val_t p2, va
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:219 */
-  CALL_parser_prod___AStdImport___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AStdImport___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:220 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 220);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 220);
   }
-  ATTR_parser_nodes___AStdImport____n_visibility(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:221 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 221);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 221);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:222 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 222);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 222);
   }
-  ATTR_parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:223 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 223);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 223);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:224 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 224);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 224);
   }
-  ATTR_parser_nodes___AStdImport____n_id(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:225 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 225);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 225);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos6] = 1;
   return;
 }
-void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 228;
-  fra.me.meth = LOCATE_parser_prod___AStdImport___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdImport___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -1204,16 +1204,16 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:230 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 230);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 230);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdImport____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1226,7 +1226,7 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1235,35 +1235,35 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:232 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 232);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 232);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:233 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 233);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 233);
       }
       /* ./parser//parser_prod.nit:234 */
-      ATTR_parser_nodes___AStdImport____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:236 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 236);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 236);
     }
     /* ./parser//parser_prod.nit:238 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:240 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser_prod, 240);
+    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 240);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1276,7 +1276,7 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1285,35 +1285,35 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:242 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 242);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 242);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:243 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwimport, ID_TKwimport)) /*cast TKwimport*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwimport, ID_parser___parser_nodes___TKwimport)) /*cast TKwimport*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 243);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 243);
       }
       /* ./parser//parser_prod.nit:244 */
-      ATTR_parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:246 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 246);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 246);
     }
     /* ./parser//parser_prod.nit:248 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:250 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdImport____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 250);
+    nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 250);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdImport____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1326,7 +1326,7 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1335,20 +1335,20 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:252 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 252);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 252);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:253 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModuleName, ID_parser___parser_nodes___AModuleName)) /*cast AModuleName*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 253);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 253);
       }
       /* ./parser//parser_prod.nit:254 */
-      ATTR_parser_nodes___AStdImport____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:256 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 256);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 256);
     }
     /* ./parser//parser_prod.nit:258 */
     goto label1;
@@ -1357,14 +1357,14 @@ void parser_prod___AStdImport___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStdImport___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStdImport___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 262;
-  fra.me.meth = LOCATE_parser_prod___AStdImport___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdImport___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -1373,41 +1373,41 @@ void parser_prod___AStdImport___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:264 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 264);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 264);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AStdImport____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdImport____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:265 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser_prod, 265);
+    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 265);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdImport____n_kwimport(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:266 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdImport____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 266);
+    nit_abort("Uninitialized attribute %s", "_n_name", LOCATE_parser___parser_prod, 266);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AStdImport____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AStdImport____n_name(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANoImport___empty_init(val_t p0, int* init_table){
-  int itpos7 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANoImport].i;
+void parser___parser_prod___ANoImport___empty_init(val_t p0, int* init_table){
+  int itpos7 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANoImport].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos7]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 270;
-  fra.me.meth = LOCATE_parser_prod___ANoImport___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ANoImport___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -1416,16 +1416,16 @@ void parser_prod___ANoImport___empty_init(val_t p0, int* init_table){
   init_table[itpos7] = 1;
   return;
 }
-void parser_prod___ANoImport___init_anoimport(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos8 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANoImport].i;
+void parser___parser_prod___ANoImport___init_anoimport(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos8 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANoImport].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos8]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 272;
-  fra.me.meth = LOCATE_parser_prod___ANoImport___init_anoimport;
+  fra.me.meth = LOCATE_parser___parser_prod___ANoImport___init_anoimport;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -1437,59 +1437,59 @@ void parser_prod___ANoImport___init_anoimport(val_t p0, val_t p1, val_t p2, val_
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:278 */
-  CALL_parser_prod___ANoImport___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ANoImport___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:279 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 279);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 279);
   }
-  ATTR_parser_nodes___ANoImport____n_visibility(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:280 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 280);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 280);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:281 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 281);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 281);
   }
-  ATTR_parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:282 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 282);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 282);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:283 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 283);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 283);
   }
-  ATTR_parser_nodes___ANoImport____n_kwend(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:284 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 284);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 284);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos8] = 1;
   return;
 }
-void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 287;
-  fra.me.meth = LOCATE_parser_prod___ANoImport___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ANoImport___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -1500,16 +1500,16 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:289 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANoImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 289);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 289);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANoImport____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1522,7 +1522,7 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1531,35 +1531,35 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:291 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 291);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 291);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:292 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 292);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 292);
       }
       /* ./parser//parser_prod.nit:293 */
-      ATTR_parser_nodes___ANoImport____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:295 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 295);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 295);
     }
     /* ./parser//parser_prod.nit:297 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:299 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANoImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser_prod, 299);
+    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 299);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1572,7 +1572,7 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1581,35 +1581,35 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:301 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 301);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 301);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:302 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwimport, ID_TKwimport)) /*cast TKwimport*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwimport, ID_parser___parser_nodes___TKwimport)) /*cast TKwimport*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 302);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 302);
       }
       /* ./parser//parser_prod.nit:303 */
-      ATTR_parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:305 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 305);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 305);
     }
     /* ./parser//parser_prod.nit:307 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:309 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANoImport____n_kwend(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwend", LOCATE_parser_prod, 309);
+    nit_abort("Uninitialized attribute %s", "_n_kwend", LOCATE_parser___parser_prod, 309);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANoImport____n_kwend(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1622,7 +1622,7 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1631,20 +1631,20 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:311 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 311);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 311);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:312 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwend, ID_TKwend)) /*cast TKwend*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwend, ID_parser___parser_nodes___TKwend)) /*cast TKwend*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 312);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 312);
       }
       /* ./parser//parser_prod.nit:313 */
-      ATTR_parser_nodes___ANoImport____n_kwend(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:315 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 315);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 315);
     }
     /* ./parser//parser_prod.nit:317 */
     goto label1;
@@ -1653,14 +1653,14 @@ void parser_prod___ANoImport___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANoImport___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ANoImport___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 321;
-  fra.me.meth = LOCATE_parser_prod___ANoImport___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ANoImport___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -1669,41 +1669,41 @@ void parser_prod___ANoImport___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:323 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANoImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 323);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 323);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ANoImport____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ANoImport____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:324 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANoImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser_prod, 324);
+    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 324);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ANoImport____n_kwimport(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:325 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANoImport____n_kwend(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwend", LOCATE_parser_prod, 325);
+    nit_abort("Uninitialized attribute %s", "_n_kwend", LOCATE_parser___parser_prod, 325);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ANoImport____n_kwend(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ANoImport____n_kwend(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APublicVisibility___empty_init(val_t p0, int* init_table){
-  int itpos9 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APublicVisibility].i;
+void parser___parser_prod___APublicVisibility___empty_init(val_t p0, int* init_table){
+  int itpos9 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APublicVisibility].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos9]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 329;
-  fra.me.meth = LOCATE_parser_prod___APublicVisibility___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -1712,32 +1712,32 @@ void parser_prod___APublicVisibility___empty_init(val_t p0, int* init_table){
   init_table[itpos9] = 1;
   return;
 }
-void parser_prod___APublicVisibility___init_apublicvisibility(val_t p0, int* init_table){
-  int itpos10 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APublicVisibility].i;
+void parser___parser_prod___APublicVisibility___init_apublicvisibility(val_t p0, int* init_table){
+  int itpos10 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APublicVisibility].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos10]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 331;
-  fra.me.meth = LOCATE_parser_prod___APublicVisibility___init_apublicvisibility;
+  fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___init_apublicvisibility;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* ./parser//parser_prod.nit:333 */
-  CALL_parser_prod___APublicVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___APublicVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   stack_frame_head = fra.me.prev;
   init_table[itpos10] = 1;
   return;
 }
-void parser_prod___APublicVisibility___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___APublicVisibility___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 336;
-  fra.me.meth = LOCATE_parser_prod___APublicVisibility___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -1749,13 +1749,13 @@ void parser_prod___APublicVisibility___replace_child(val_t p0, val_t p1, val_t p
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APublicVisibility___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___APublicVisibility___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 340;
-  fra.me.meth = LOCATE_parser_prod___APublicVisibility___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___APublicVisibility___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -1765,15 +1765,15 @@ void parser_prod___APublicVisibility___visit_all(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APrivateVisibility___empty_init(val_t p0, int* init_table){
-  int itpos11 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APrivateVisibility].i;
+void parser___parser_prod___APrivateVisibility___empty_init(val_t p0, int* init_table){
+  int itpos11 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APrivateVisibility].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos11]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 345;
-  fra.me.meth = LOCATE_parser_prod___APrivateVisibility___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -1782,16 +1782,16 @@ void parser_prod___APrivateVisibility___empty_init(val_t p0, int* init_table){
   init_table[itpos11] = 1;
   return;
 }
-void parser_prod___APrivateVisibility___init_aprivatevisibility(val_t p0, val_t p1, int* init_table){
-  int itpos12 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APrivateVisibility].i;
+void parser___parser_prod___APrivateVisibility___init_aprivatevisibility(val_t p0, val_t p1, int* init_table){
+  int itpos12 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APrivateVisibility].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos12]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 347;
-  fra.me.meth = LOCATE_parser_prod___APrivateVisibility___init_aprivatevisibility;
+  fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___init_aprivatevisibility;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -1799,33 +1799,33 @@ void parser_prod___APrivateVisibility___init_aprivatevisibility(val_t p0, val_t
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:351 */
-  CALL_parser_prod___APrivateVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___APrivateVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:352 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 352);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 352);
   }
-  ATTR_parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:353 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 353);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 353);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos12] = 1;
   return;
 }
-void parser_prod___APrivateVisibility___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___APrivateVisibility___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 356;
-  fra.me.meth = LOCATE_parser_prod___APrivateVisibility___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -1836,16 +1836,16 @@ void parser_prod___APrivateVisibility___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:358 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwprivate", LOCATE_parser_prod, 358);
+    nit_abort("Uninitialized attribute %s", "_n_kwprivate", LOCATE_parser___parser_prod, 358);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -1858,7 +1858,7 @@ void parser_prod___APrivateVisibility___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -1867,20 +1867,20 @@ void parser_prod___APrivateVisibility___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:360 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 360);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 360);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:361 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwprivate, ID_TKwprivate)) /*cast TKwprivate*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwprivate, ID_parser___parser_nodes___TKwprivate)) /*cast TKwprivate*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 361);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 361);
       }
       /* ./parser//parser_prod.nit:362 */
-      ATTR_parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:364 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 364);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 364);
     }
     /* ./parser//parser_prod.nit:366 */
     goto label1;
@@ -1889,14 +1889,14 @@ void parser_prod___APrivateVisibility___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APrivateVisibility___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___APrivateVisibility___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 370;
-  fra.me.meth = LOCATE_parser_prod___APrivateVisibility___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___APrivateVisibility___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -1904,25 +1904,25 @@ void parser_prod___APrivateVisibility___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:372 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwprivate", LOCATE_parser_prod, 372);
+    nit_abort("Uninitialized attribute %s", "_n_kwprivate", LOCATE_parser___parser_prod, 372);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___APrivateVisibility____n_kwprivate(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AProtectedVisibility___empty_init(val_t p0, int* init_table){
-  int itpos13 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AProtectedVisibility].i;
+void parser___parser_prod___AProtectedVisibility___empty_init(val_t p0, int* init_table){
+  int itpos13 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AProtectedVisibility].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos13]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 376;
-  fra.me.meth = LOCATE_parser_prod___AProtectedVisibility___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -1931,16 +1931,16 @@ void parser_prod___AProtectedVisibility___empty_init(val_t p0, int* init_table){
   init_table[itpos13] = 1;
   return;
 }
-void parser_prod___AProtectedVisibility___init_aprotectedvisibility(val_t p0, val_t p1, int* init_table){
-  int itpos14 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AProtectedVisibility].i;
+void parser___parser_prod___AProtectedVisibility___init_aprotectedvisibility(val_t p0, val_t p1, int* init_table){
+  int itpos14 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AProtectedVisibility].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos14]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 378;
-  fra.me.meth = LOCATE_parser_prod___AProtectedVisibility___init_aprotectedvisibility;
+  fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___init_aprotectedvisibility;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -1948,33 +1948,33 @@ void parser_prod___AProtectedVisibility___init_aprotectedvisibility(val_t p0, va
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:382 */
-  CALL_parser_prod___AProtectedVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AProtectedVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:383 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 383);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 383);
   }
-  ATTR_parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:384 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 384);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 384);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos14] = 1;
   return;
 }
-void parser_prod___AProtectedVisibility___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AProtectedVisibility___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 387;
-  fra.me.meth = LOCATE_parser_prod___AProtectedVisibility___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -1985,16 +1985,16 @@ void parser_prod___AProtectedVisibility___replace_child(val_t p0, val_t p1, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:389 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwprotected", LOCATE_parser_prod, 389);
+    nit_abort("Uninitialized attribute %s", "_n_kwprotected", LOCATE_parser___parser_prod, 389);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -2007,7 +2007,7 @@ void parser_prod___AProtectedVisibility___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -2016,20 +2016,20 @@ void parser_prod___AProtectedVisibility___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:391 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 391);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 391);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:392 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwprotected, ID_TKwprotected)) /*cast TKwprotected*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwprotected, ID_parser___parser_nodes___TKwprotected)) /*cast TKwprotected*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 392);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 392);
       }
       /* ./parser//parser_prod.nit:393 */
-      ATTR_parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:395 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 395);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 395);
     }
     /* ./parser//parser_prod.nit:397 */
     goto label1;
@@ -2038,14 +2038,14 @@ void parser_prod___AProtectedVisibility___replace_child(val_t p0, val_t p1, val_
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AProtectedVisibility___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AProtectedVisibility___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 401;
-  fra.me.meth = LOCATE_parser_prod___AProtectedVisibility___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AProtectedVisibility___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -2053,25 +2053,25 @@ void parser_prod___AProtectedVisibility___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:403 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwprotected", LOCATE_parser_prod, 403);
+    nit_abort("Uninitialized attribute %s", "_n_kwprotected", LOCATE_parser___parser_prod, 403);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AProtectedVisibility____n_kwprotected(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIntrudeVisibility___empty_init(val_t p0, int* init_table){
-  int itpos15 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIntrudeVisibility].i;
+void parser___parser_prod___AIntrudeVisibility___empty_init(val_t p0, int* init_table){
+  int itpos15 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntrudeVisibility].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos15]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 407;
-  fra.me.meth = LOCATE_parser_prod___AIntrudeVisibility___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -2080,16 +2080,16 @@ void parser_prod___AIntrudeVisibility___empty_init(val_t p0, int* init_table){
   init_table[itpos15] = 1;
   return;
 }
-void parser_prod___AIntrudeVisibility___init_aintrudevisibility(val_t p0, val_t p1, int* init_table){
-  int itpos16 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIntrudeVisibility].i;
+void parser___parser_prod___AIntrudeVisibility___init_aintrudevisibility(val_t p0, val_t p1, int* init_table){
+  int itpos16 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntrudeVisibility].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos16]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 409;
-  fra.me.meth = LOCATE_parser_prod___AIntrudeVisibility___init_aintrudevisibility;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___init_aintrudevisibility;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -2097,33 +2097,33 @@ void parser_prod___AIntrudeVisibility___init_aintrudevisibility(val_t p0, val_t
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:413 */
-  CALL_parser_prod___AIntrudeVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AIntrudeVisibility___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:414 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 414);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 414);
   }
-  ATTR_parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:415 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 415);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 415);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos16] = 1;
   return;
 }
-void parser_prod___AIntrudeVisibility___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AIntrudeVisibility___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 418;
-  fra.me.meth = LOCATE_parser_prod___AIntrudeVisibility___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -2134,16 +2134,16 @@ void parser_prod___AIntrudeVisibility___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:420 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwintrude", LOCATE_parser_prod, 420);
+    nit_abort("Uninitialized attribute %s", "_n_kwintrude", LOCATE_parser___parser_prod, 420);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -2156,7 +2156,7 @@ void parser_prod___AIntrudeVisibility___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -2165,20 +2165,20 @@ void parser_prod___AIntrudeVisibility___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:422 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 422);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 422);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:423 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwintrude, ID_TKwintrude)) /*cast TKwintrude*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwintrude, ID_parser___parser_nodes___TKwintrude)) /*cast TKwintrude*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 423);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 423);
       }
       /* ./parser//parser_prod.nit:424 */
-      ATTR_parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:426 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 426);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 426);
     }
     /* ./parser//parser_prod.nit:428 */
     goto label1;
@@ -2187,14 +2187,14 @@ void parser_prod___AIntrudeVisibility___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIntrudeVisibility___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AIntrudeVisibility___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 432;
-  fra.me.meth = LOCATE_parser_prod___AIntrudeVisibility___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntrudeVisibility___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -2202,25 +2202,25 @@ void parser_prod___AIntrudeVisibility___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:434 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwintrude", LOCATE_parser_prod, 434);
+    nit_abort("Uninitialized attribute %s", "_n_kwintrude", LOCATE_parser___parser_prod, 434);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AIntrudeVisibility____n_kwintrude(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStdClassdef___empty_init(val_t p0, int* init_table){
-  int itpos17 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStdClassdef].i;
+void parser___parser_prod___AStdClassdef___empty_init(val_t p0, int* init_table){
+  int itpos17 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdClassdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos17]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 438;
-  fra.me.meth = LOCATE_parser_prod___AStdClassdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -2229,17 +2229,17 @@ void parser_prod___AStdClassdef___empty_init(val_t p0, int* init_table){
   init_table[itpos17] = 1;
   return;
 }
-void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
-  int itpos18 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStdClassdef].i;
+void parser___parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
+  int itpos18 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStdClassdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos18]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 440;
-  fra.me.meth = LOCATE_parser_prod___AStdClassdef___init_astdclassdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 9;
   fra.me.REG[0] = NIT_NULL;
@@ -2261,9 +2261,9 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
   fra.me.REG[7] = p7;
   fra.me.REG[8] = p8;
   /* ./parser//parser_prod.nit:451 */
-  CALL_parser_prod___AStdClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AStdClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:452 */
-  ATTR_parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:453 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -2273,7 +2273,7 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -2282,12 +2282,12 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:454 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 454);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 454);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:456 */
-  ATTR_parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:457 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -2297,7 +2297,7 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -2306,38 +2306,38 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:458 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 458);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 458);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:460 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 460);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 460);
   }
-  ATTR_parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:461 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 461);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 461);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:462 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 462);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 462);
   }
-  ATTR_parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:463 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 463);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 463);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:464 */
-  ATTR_parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:465 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -2347,7 +2347,7 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -2356,27 +2356,27 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:466 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 466);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 466);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[6])(fra.me.REG[6], (&(fra.me)), ((fun_t)OC_parser_prod___AStdClassdef___init_astdclassdef_1));
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[7])(fra.me.REG[7], (&(fra.me)), ((fun_t)OC_parser_prod___AStdClassdef___init_astdclassdef_2));
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[8])(fra.me.REG[8], (&(fra.me)), ((fun_t)OC_parser_prod___AStdClassdef___init_astdclassdef_3));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[6])(fra.me.REG[6], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___init_astdclassdef_1));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[7])(fra.me.REG[7], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___init_astdclassdef_2));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[8])(fra.me.REG[8], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___init_astdclassdef_3));
   stack_frame_head = fra.me.prev;
   init_table[itpos18] = 1;
   return;
 }
-  void OC_parser_prod___AStdClassdef___init_astdclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AStdClassdef___init_astdclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:468 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AStdClassdef___init_astdclassdef;
+    fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -2386,34 +2386,34 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:469 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AFormaldef, ID_AFormaldef)) /*cast AFormaldef*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AFormaldef, ID_parser___parser_nodes___AFormaldef)) /*cast AFormaldef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 469);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 469);
     }
     /* ./parser//parser_prod.nit:470 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_formaldefs(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser_prod, 470);
+      nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 470);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AStdClassdef____n_formaldefs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:471 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AStdClassdef___init_astdclassdef_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AStdClassdef___init_astdclassdef_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:473 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AStdClassdef___init_astdclassdef;
+    fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -2423,34 +2423,34 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:474 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_ASuperclass, ID_ASuperclass)) /*cast ASuperclass*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___ASuperclass, ID_parser___parser_nodes___ASuperclass)) /*cast ASuperclass*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 474);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 474);
     }
     /* ./parser//parser_prod.nit:475 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_superclasses(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser_prod, 475);
+      nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 475);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AStdClassdef____n_superclasses(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:476 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AStdClassdef___init_astdclassdef_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AStdClassdef___init_astdclassdef_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:478 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AStdClassdef___init_astdclassdef;
+    fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___init_astdclassdef;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -2460,25 +2460,25 @@ void parser_prod___AStdClassdef___init_astdclassdef(val_t p0, val_t p1, val_t p2
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:479 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_APropdef, ID_APropdef)) /*cast APropdef*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 479);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 479);
     }
     /* ./parser//parser_prod.nit:480 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 480);
+      nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 480);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AStdClassdef____n_propdefs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:481 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -2487,9 +2487,9 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 485;
-  fra.me.meth = LOCATE_parser_prod___AStdClassdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -2500,7 +2500,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:487 */
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -2509,7 +2509,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -2523,7 +2523,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -2532,26 +2532,26 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:489 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 489);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 489);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:490 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 490);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 490);
       }
       /* ./parser//parser_prod.nit:491 */
-      ATTR_parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:493 */
-      ATTR_parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:495 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:497 */
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -2560,7 +2560,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -2574,7 +2574,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -2583,35 +2583,35 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:499 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 499);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 499);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:500 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 500);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 500);
       }
       /* ./parser//parser_prod.nit:501 */
-      ATTR_parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:503 */
-      ATTR_parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:505 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:507 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 507);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 507);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -2624,7 +2624,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -2633,35 +2633,35 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:509 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 509);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 509);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:510 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 510);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 510);
       }
       /* ./parser//parser_prod.nit:511 */
-      ATTR_parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:513 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 513);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 513);
     }
     /* ./parser//parser_prod.nit:515 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:517 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classkind", LOCATE_parser_prod, 517);
+    nit_abort("Uninitialized attribute %s", "_n_classkind", LOCATE_parser___parser_prod, 517);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -2674,7 +2674,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -2683,26 +2683,26 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:519 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 519);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 519);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:520 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AClasskind, ID_AClasskind)) /*cast AClasskind*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClasskind, ID_parser___parser_nodes___AClasskind)) /*cast AClasskind*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 520);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 520);
       }
       /* ./parser//parser_prod.nit:521 */
-      ATTR_parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:523 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 523);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 523);
     }
     /* ./parser//parser_prod.nit:525 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:527 */
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -2711,7 +2711,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -2725,7 +2725,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -2734,49 +2734,49 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:529 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 529);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 529);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:530 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 530);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 530);
       }
       /* ./parser//parser_prod.nit:531 */
-      ATTR_parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:533 */
-      ATTR_parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:535 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:537 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser_prod, 537);
+    nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 537);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:537 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:538 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser_prod, 538);
+        nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 538);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -2785,7 +2785,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -2799,82 +2799,82 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:540 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AFormaldef, ID_AFormaldef)) /*cast AFormaldef*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AFormaldef, ID_parser___parser_nodes___AFormaldef)) /*cast AFormaldef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 540);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 540);
           }
           /* ./parser//parser_prod.nit:541 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser_prod, 541);
+            nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 541);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:542 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 542);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 542);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:544 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser_prod, 544);
+            nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 544);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:546 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
   /* ./parser//parser_prod.nit:549 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser_prod, 549);
+    nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 549);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:549 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:550 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser_prod, 550);
+        nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 550);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -2883,7 +2883,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -2897,82 +2897,82 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:552 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASuperclass, ID_ASuperclass)) /*cast ASuperclass*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASuperclass, ID_parser___parser_nodes___ASuperclass)) /*cast ASuperclass*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 552);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 552);
           }
           /* ./parser//parser_prod.nit:553 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser_prod, 553);
+            nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 553);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:554 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 554);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 554);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:556 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser_prod, 556);
+            nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 556);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:558 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label3;
     }
   }
   label3: while(0);
   /* ./parser//parser_prod.nit:561 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 561);
+    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 561);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:561 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:562 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 562);
+        nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 562);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -2981,7 +2981,7 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -2995,53 +2995,53 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:564 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_APropdef, ID_APropdef)) /*cast APropdef*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 564);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 564);
           }
           /* ./parser//parser_prod.nit:565 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 565);
+            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 565);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:566 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 566);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 566);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:568 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 568);
+            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 568);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:570 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label4;
     }
   }
@@ -3050,15 +3050,15 @@ void parser_prod___AStdClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 575;
-  fra.me.meth = LOCATE_parser_prod___AStdClassdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -3067,7 +3067,7 @@ void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:577 */
-  fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -3076,23 +3076,23 @@ void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:578 */
-    fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 578);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 578);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:580 */
-  fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -3101,39 +3101,39 @@ void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:581 */
-    fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 581);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 581);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:583 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 583);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 583);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:584 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classkind", LOCATE_parser_prod, 584);
+    nit_abort("Uninitialized attribute %s", "_n_classkind", LOCATE_parser___parser_prod, 584);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_classkind(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:585 */
-  fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_id(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -3142,56 +3142,56 @@ void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:586 */
-    fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_id(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_id(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 586);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 586);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:588 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser_prod, 588);
+    nit_abort("Uninitialized attribute %s", "_n_formaldefs", LOCATE_parser___parser_prod, 588);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AStdClassdef___visit_all_1));
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_formaldefs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___visit_all_1));
   /* ./parser//parser_prod.nit:591 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser_prod, 591);
+    nit_abort("Uninitialized attribute %s", "_n_superclasses", LOCATE_parser___parser_prod, 591);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AStdClassdef___visit_all_2));
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AStdClassdef____n_superclasses(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___visit_all_2));
   /* ./parser//parser_prod.nit:594 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 594);
+    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 594);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AStdClassdef___visit_all_3));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AStdClassdef____n_propdefs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AStdClassdef___visit_all_3));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AStdClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AStdClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AStdClassdef___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -3200,18 +3200,18 @@ void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:589 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AStdClassdef___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AStdClassdef___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AStdClassdef___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -3220,18 +3220,18 @@ void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:592 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AStdClassdef___visit_all_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AStdClassdef___visit_all_3(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AStdClassdef___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AStdClassdef___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -3240,19 +3240,19 @@ void parser_prod___AStdClassdef___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:595 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ATopClassdef___empty_init(val_t p0, int* init_table){
-  int itpos19 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ATopClassdef].i;
+void parser___parser_prod___ATopClassdef___empty_init(val_t p0, int* init_table){
+  int itpos19 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATopClassdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos19]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 600;
-  fra.me.meth = LOCATE_parser_prod___ATopClassdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -3261,15 +3261,15 @@ void parser_prod___ATopClassdef___empty_init(val_t p0, int* init_table){
   init_table[itpos19] = 1;
   return;
 }
-void parser_prod___ATopClassdef___init_atopclassdef(val_t p0, val_t p1, int* init_table){
-  int itpos20 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ATopClassdef].i;
+void parser___parser_prod___ATopClassdef___init_atopclassdef(val_t p0, val_t p1, int* init_table){
+  int itpos20 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATopClassdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   if (init_table[itpos20]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 602;
-  fra.me.meth = LOCATE_parser_prod___ATopClassdef___init_atopclassdef;
+  fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___init_atopclassdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -3277,22 +3277,22 @@ void parser_prod___ATopClassdef___init_atopclassdef(val_t p0, val_t p1, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:606 */
-  CALL_parser_prod___ATopClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___ATopClassdef___init_atopclassdef_1));
+  CALL_parser___parser_prod___ATopClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ATopClassdef___init_atopclassdef_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos20] = 1;
   return;
 }
-  void OC_parser_prod___ATopClassdef___init_atopclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ATopClassdef___init_atopclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:607 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ATopClassdef___init_atopclassdef;
+    fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___init_atopclassdef;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -3302,25 +3302,25 @@ void parser_prod___ATopClassdef___init_atopclassdef(val_t p0, val_t p1, int* ini
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:608 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_APropdef, ID_APropdef)) /*cast APropdef*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 608);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 608);
     }
     /* ./parser//parser_prod.nit:609 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ATopClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 609);
+      nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 609);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ATopClassdef____n_propdefs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:610 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -3329,9 +3329,9 @@ void parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 614;
-  fra.me.meth = LOCATE_parser_prod___ATopClassdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -3343,29 +3343,29 @@ void parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:616 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 616);
+    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 616);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:616 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:617 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 617);
+        nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 617);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -3374,7 +3374,7 @@ void parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -3388,53 +3388,53 @@ void parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:619 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_APropdef, ID_APropdef)) /*cast APropdef*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 619);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 619);
           }
           /* ./parser//parser_prod.nit:620 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 620);
+            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 620);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:621 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 621);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 621);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:623 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 623);
+            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 623);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:625 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -3443,14 +3443,14 @@ void parser_prod___ATopClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ATopClassdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ATopClassdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 630;
-  fra.me.meth = LOCATE_parser_prod___ATopClassdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -3458,24 +3458,24 @@ void parser_prod___ATopClassdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:632 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 632);
+    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 632);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ATopClassdef___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ATopClassdef____n_propdefs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ATopClassdef___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ATopClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ATopClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ATopClassdef___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ATopClassdef___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -3484,19 +3484,19 @@ void parser_prod___ATopClassdef___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:633 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AMainClassdef___empty_init(val_t p0, int* init_table){
-  int itpos21 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMainClassdef].i;
+void parser___parser_prod___AMainClassdef___empty_init(val_t p0, int* init_table){
+  int itpos21 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainClassdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos21]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 638;
-  fra.me.meth = LOCATE_parser_prod___AMainClassdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -3505,15 +3505,15 @@ void parser_prod___AMainClassdef___empty_init(val_t p0, int* init_table){
   init_table[itpos21] = 1;
   return;
 }
-void parser_prod___AMainClassdef___init_amainclassdef(val_t p0, val_t p1, int* init_table){
-  int itpos22 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMainClassdef].i;
+void parser___parser_prod___AMainClassdef___init_amainclassdef(val_t p0, val_t p1, int* init_table){
+  int itpos22 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainClassdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   if (init_table[itpos22]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 640;
-  fra.me.meth = LOCATE_parser_prod___AMainClassdef___init_amainclassdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___init_amainclassdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -3521,22 +3521,22 @@ void parser_prod___AMainClassdef___init_amainclassdef(val_t p0, val_t p1, int* i
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:644 */
-  CALL_parser_prod___AMainClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___AMainClassdef___init_amainclassdef_1));
+  CALL_parser___parser_prod___AMainClassdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AMainClassdef___init_amainclassdef_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos22] = 1;
   return;
 }
-  void OC_parser_prod___AMainClassdef___init_amainclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AMainClassdef___init_amainclassdef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:645 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AMainClassdef___init_amainclassdef;
+    fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___init_amainclassdef;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -3546,25 +3546,25 @@ void parser_prod___AMainClassdef___init_amainclassdef(val_t p0, val_t p1, int* i
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:646 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_APropdef, ID_APropdef)) /*cast APropdef*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 646);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 646);
     }
     /* ./parser//parser_prod.nit:647 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AMainClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 647);
+      nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 647);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AMainClassdef____n_propdefs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:648 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -3573,9 +3573,9 @@ void parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 652;
-  fra.me.meth = LOCATE_parser_prod___AMainClassdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -3587,29 +3587,29 @@ void parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:654 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 654);
+    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 654);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:654 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:655 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 655);
+        nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 655);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -3618,7 +3618,7 @@ void parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -3632,53 +3632,53 @@ void parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:657 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_APropdef, ID_APropdef)) /*cast APropdef*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___APropdef, ID_parser___parser_nodes___APropdef)) /*cast APropdef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 657);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 657);
           }
           /* ./parser//parser_prod.nit:658 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 658);
+            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 658);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:659 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 659);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 659);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:661 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 661);
+            nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 661);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:663 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -3687,14 +3687,14 @@ void parser_prod___AMainClassdef___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMainClassdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AMainClassdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 668;
-  fra.me.meth = LOCATE_parser_prod___AMainClassdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -3702,24 +3702,24 @@ void parser_prod___AMainClassdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:670 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser_prod, 670);
+    nit_abort("Uninitialized attribute %s", "_n_propdefs", LOCATE_parser___parser_prod, 670);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AMainClassdef___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AMainClassdef____n_propdefs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AMainClassdef___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AMainClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AMainClassdef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AMainClassdef___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AMainClassdef___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -3728,19 +3728,19 @@ void parser_prod___AMainClassdef___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:671 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AConcreteClasskind___empty_init(val_t p0, int* init_table){
-  int itpos23 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AConcreteClasskind].i;
+void parser___parser_prod___AConcreteClasskind___empty_init(val_t p0, int* init_table){
+  int itpos23 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteClasskind].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos23]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 676;
-  fra.me.meth = LOCATE_parser_prod___AConcreteClasskind___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -3749,16 +3749,16 @@ void parser_prod___AConcreteClasskind___empty_init(val_t p0, int* init_table){
   init_table[itpos23] = 1;
   return;
 }
-void parser_prod___AConcreteClasskind___init_aconcreteclasskind(val_t p0, val_t p1, int* init_table){
-  int itpos24 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AConcreteClasskind].i;
+void parser___parser_prod___AConcreteClasskind___init_aconcreteclasskind(val_t p0, val_t p1, int* init_table){
+  int itpos24 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteClasskind].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos24]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 678;
-  fra.me.meth = LOCATE_parser_prod___AConcreteClasskind___init_aconcreteclasskind;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___init_aconcreteclasskind;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -3766,33 +3766,33 @@ void parser_prod___AConcreteClasskind___init_aconcreteclasskind(val_t p0, val_t
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:682 */
-  CALL_parser_prod___AConcreteClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AConcreteClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:683 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 683);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 683);
   }
-  ATTR_parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:684 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 684);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 684);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos24] = 1;
   return;
 }
-void parser_prod___AConcreteClasskind___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AConcreteClasskind___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 687;
-  fra.me.meth = LOCATE_parser_prod___AConcreteClasskind___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -3803,16 +3803,16 @@ void parser_prod___AConcreteClasskind___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:689 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser_prod, 689);
+    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 689);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -3825,7 +3825,7 @@ void parser_prod___AConcreteClasskind___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -3834,20 +3834,20 @@ void parser_prod___AConcreteClasskind___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:691 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 691);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 691);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:692 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwclass, ID_TKwclass)) /*cast TKwclass*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwclass, ID_parser___parser_nodes___TKwclass)) /*cast TKwclass*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 692);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 692);
       }
       /* ./parser//parser_prod.nit:693 */
-      ATTR_parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:695 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 695);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 695);
     }
     /* ./parser//parser_prod.nit:697 */
     goto label1;
@@ -3856,14 +3856,14 @@ void parser_prod___AConcreteClasskind___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AConcreteClasskind___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AConcreteClasskind___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 701;
-  fra.me.meth = LOCATE_parser_prod___AConcreteClasskind___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteClasskind___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -3871,25 +3871,25 @@ void parser_prod___AConcreteClasskind___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:703 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser_prod, 703);
+    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 703);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AConcreteClasskind____n_kwclass(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAbstractClasskind___empty_init(val_t p0, int* init_table){
-  int itpos25 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAbstractClasskind].i;
+void parser___parser_prod___AAbstractClasskind___empty_init(val_t p0, int* init_table){
+  int itpos25 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbstractClasskind].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos25]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 707;
-  fra.me.meth = LOCATE_parser_prod___AAbstractClasskind___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -3898,16 +3898,16 @@ void parser_prod___AAbstractClasskind___empty_init(val_t p0, int* init_table){
   init_table[itpos25] = 1;
   return;
 }
-void parser_prod___AAbstractClasskind___init_aabstractclasskind(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos26 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAbstractClasskind].i;
+void parser___parser_prod___AAbstractClasskind___init_aabstractclasskind(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos26 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbstractClasskind].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos26]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 709;
-  fra.me.meth = LOCATE_parser_prod___AAbstractClasskind___init_aabstractclasskind;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___init_aabstractclasskind;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -3917,46 +3917,46 @@ void parser_prod___AAbstractClasskind___init_aabstractclasskind(val_t p0, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:714 */
-  CALL_parser_prod___AAbstractClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AAbstractClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:715 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 715);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 715);
   }
-  ATTR_parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:716 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 716);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 716);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:717 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 717);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 717);
   }
-  ATTR_parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:718 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 718);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 718);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos26] = 1;
   return;
 }
-void parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 721;
-  fra.me.meth = LOCATE_parser_prod___AAbstractClasskind___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -3967,16 +3967,16 @@ void parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:723 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwabstract", LOCATE_parser_prod, 723);
+    nit_abort("Uninitialized attribute %s", "_n_kwabstract", LOCATE_parser___parser_prod, 723);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -3989,7 +3989,7 @@ void parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -3998,35 +3998,35 @@ void parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:725 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 725);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 725);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:726 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwabstract, ID_TKwabstract)) /*cast TKwabstract*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwabstract, ID_parser___parser_nodes___TKwabstract)) /*cast TKwabstract*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 726);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 726);
       }
       /* ./parser//parser_prod.nit:727 */
-      ATTR_parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:729 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 729);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 729);
     }
     /* ./parser//parser_prod.nit:731 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:733 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser_prod, 733);
+    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 733);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -4039,7 +4039,7 @@ void parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -4048,20 +4048,20 @@ void parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:735 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 735);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 735);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:736 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwclass, ID_TKwclass)) /*cast TKwclass*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwclass, ID_parser___parser_nodes___TKwclass)) /*cast TKwclass*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 736);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 736);
       }
       /* ./parser//parser_prod.nit:737 */
-      ATTR_parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:739 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 739);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 739);
     }
     /* ./parser//parser_prod.nit:741 */
     goto label1;
@@ -4070,14 +4070,14 @@ void parser_prod___AAbstractClasskind___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAbstractClasskind___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAbstractClasskind___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 745;
-  fra.me.meth = LOCATE_parser_prod___AAbstractClasskind___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbstractClasskind___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -4086,33 +4086,33 @@ void parser_prod___AAbstractClasskind___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:747 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwabstract", LOCATE_parser_prod, 747);
+    nit_abort("Uninitialized attribute %s", "_n_kwabstract", LOCATE_parser___parser_prod, 747);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwabstract(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:748 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser_prod, 748);
+    nit_abort("Uninitialized attribute %s", "_n_kwclass", LOCATE_parser___parser_prod, 748);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAbstractClasskind____n_kwclass(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AInterfaceClasskind___empty_init(val_t p0, int* init_table){
-  int itpos27 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInterfaceClasskind].i;
+void parser___parser_prod___AInterfaceClasskind___empty_init(val_t p0, int* init_table){
+  int itpos27 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInterfaceClasskind].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos27]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 752;
-  fra.me.meth = LOCATE_parser_prod___AInterfaceClasskind___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -4121,16 +4121,16 @@ void parser_prod___AInterfaceClasskind___empty_init(val_t p0, int* init_table){
   init_table[itpos27] = 1;
   return;
 }
-void parser_prod___AInterfaceClasskind___init_ainterfaceclasskind(val_t p0, val_t p1, int* init_table){
-  int itpos28 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInterfaceClasskind].i;
+void parser___parser_prod___AInterfaceClasskind___init_ainterfaceclasskind(val_t p0, val_t p1, int* init_table){
+  int itpos28 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInterfaceClasskind].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos28]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 754;
-  fra.me.meth = LOCATE_parser_prod___AInterfaceClasskind___init_ainterfaceclasskind;
+  fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___init_ainterfaceclasskind;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -4138,33 +4138,33 @@ void parser_prod___AInterfaceClasskind___init_ainterfaceclasskind(val_t p0, val_
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:758 */
-  CALL_parser_prod___AInterfaceClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AInterfaceClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:759 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 759);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 759);
   }
-  ATTR_parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:760 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 760);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 760);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos28] = 1;
   return;
 }
-void parser_prod___AInterfaceClasskind___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AInterfaceClasskind___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 763;
-  fra.me.meth = LOCATE_parser_prod___AInterfaceClasskind___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -4175,16 +4175,16 @@ void parser_prod___AInterfaceClasskind___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:765 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwinterface", LOCATE_parser_prod, 765);
+    nit_abort("Uninitialized attribute %s", "_n_kwinterface", LOCATE_parser___parser_prod, 765);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -4197,7 +4197,7 @@ void parser_prod___AInterfaceClasskind___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -4206,20 +4206,20 @@ void parser_prod___AInterfaceClasskind___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:767 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 767);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 767);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:768 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwinterface, ID_TKwinterface)) /*cast TKwinterface*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwinterface, ID_parser___parser_nodes___TKwinterface)) /*cast TKwinterface*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 768);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 768);
       }
       /* ./parser//parser_prod.nit:769 */
-      ATTR_parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:771 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 771);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 771);
     }
     /* ./parser//parser_prod.nit:773 */
     goto label1;
@@ -4228,14 +4228,14 @@ void parser_prod___AInterfaceClasskind___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AInterfaceClasskind___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AInterfaceClasskind___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 777;
-  fra.me.meth = LOCATE_parser_prod___AInterfaceClasskind___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AInterfaceClasskind___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -4243,25 +4243,25 @@ void parser_prod___AInterfaceClasskind___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:779 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwinterface", LOCATE_parser_prod, 779);
+    nit_abort("Uninitialized attribute %s", "_n_kwinterface", LOCATE_parser___parser_prod, 779);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AInterfaceClasskind____n_kwinterface(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEnumClasskind___empty_init(val_t p0, int* init_table){
-  int itpos29 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEnumClasskind].i;
+void parser___parser_prod___AEnumClasskind___empty_init(val_t p0, int* init_table){
+  int itpos29 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEnumClasskind].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos29]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 783;
-  fra.me.meth = LOCATE_parser_prod___AEnumClasskind___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -4270,16 +4270,16 @@ void parser_prod___AEnumClasskind___empty_init(val_t p0, int* init_table){
   init_table[itpos29] = 1;
   return;
 }
-void parser_prod___AEnumClasskind___init_aenumclasskind(val_t p0, val_t p1, int* init_table){
-  int itpos30 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEnumClasskind].i;
+void parser___parser_prod___AEnumClasskind___init_aenumclasskind(val_t p0, val_t p1, int* init_table){
+  int itpos30 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEnumClasskind].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos30]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 785;
-  fra.me.meth = LOCATE_parser_prod___AEnumClasskind___init_aenumclasskind;
+  fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___init_aenumclasskind;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -4287,33 +4287,33 @@ void parser_prod___AEnumClasskind___init_aenumclasskind(val_t p0, val_t p1, int*
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:789 */
-  CALL_parser_prod___AEnumClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AEnumClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:790 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 790);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 790);
   }
-  ATTR_parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:791 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 791);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 791);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos30] = 1;
   return;
 }
-void parser_prod___AEnumClasskind___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AEnumClasskind___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 794;
-  fra.me.meth = LOCATE_parser_prod___AEnumClasskind___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -4324,16 +4324,16 @@ void parser_prod___AEnumClasskind___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:796 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwenum", LOCATE_parser_prod, 796);
+    nit_abort("Uninitialized attribute %s", "_n_kwenum", LOCATE_parser___parser_prod, 796);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -4346,7 +4346,7 @@ void parser_prod___AEnumClasskind___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -4355,20 +4355,20 @@ void parser_prod___AEnumClasskind___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:798 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 798);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 798);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:799 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwenum, ID_TKwenum)) /*cast TKwenum*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwenum, ID_parser___parser_nodes___TKwenum)) /*cast TKwenum*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 799);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 799);
       }
       /* ./parser//parser_prod.nit:800 */
-      ATTR_parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:802 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 802);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 802);
     }
     /* ./parser//parser_prod.nit:804 */
     goto label1;
@@ -4377,14 +4377,14 @@ void parser_prod___AEnumClasskind___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEnumClasskind___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AEnumClasskind___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 808;
-  fra.me.meth = LOCATE_parser_prod___AEnumClasskind___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AEnumClasskind___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -4392,25 +4392,25 @@ void parser_prod___AEnumClasskind___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:810 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwenum", LOCATE_parser_prod, 810);
+    nit_abort("Uninitialized attribute %s", "_n_kwenum", LOCATE_parser___parser_prod, 810);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AEnumClasskind____n_kwenum(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternClasskind___empty_init(val_t p0, int* init_table){
-  int itpos31 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternClasskind].i;
+void parser___parser_prod___AExternClasskind___empty_init(val_t p0, int* init_table){
+  int itpos31 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternClasskind].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos31]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 814;
-  fra.me.meth = LOCATE_parser_prod___AExternClasskind___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -4419,16 +4419,16 @@ void parser_prod___AExternClasskind___empty_init(val_t p0, int* init_table){
   init_table[itpos31] = 1;
   return;
 }
-void parser_prod___AExternClasskind___init_aexternclasskind(val_t p0, val_t p1, int* init_table){
-  int itpos32 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternClasskind].i;
+void parser___parser_prod___AExternClasskind___init_aexternclasskind(val_t p0, val_t p1, int* init_table){
+  int itpos32 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternClasskind].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos32]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 816;
-  fra.me.meth = LOCATE_parser_prod___AExternClasskind___init_aexternclasskind;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___init_aexternclasskind;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -4436,33 +4436,33 @@ void parser_prod___AExternClasskind___init_aexternclasskind(val_t p0, val_t p1,
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:820 */
-  CALL_parser_prod___AExternClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AExternClasskind___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:821 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 821);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 821);
   }
-  ATTR_parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:822 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 822);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 822);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos32] = 1;
   return;
 }
-void parser_prod___AExternClasskind___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AExternClasskind___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 825;
-  fra.me.meth = LOCATE_parser_prod___AExternClasskind___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -4473,16 +4473,16 @@ void parser_prod___AExternClasskind___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:827 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwextern", LOCATE_parser_prod, 827);
+    nit_abort("Uninitialized attribute %s", "_n_kwextern", LOCATE_parser___parser_prod, 827);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -4495,7 +4495,7 @@ void parser_prod___AExternClasskind___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -4504,20 +4504,20 @@ void parser_prod___AExternClasskind___replace_child(val_t p0, val_t p1, val_t p2
       /* ./parser//parser_prod.nit:829 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 829);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 829);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:830 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwextern, ID_TKwextern)) /*cast TKwextern*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwextern, ID_parser___parser_nodes___TKwextern)) /*cast TKwextern*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 830);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 830);
       }
       /* ./parser//parser_prod.nit:831 */
-      ATTR_parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:833 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 833);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 833);
     }
     /* ./parser//parser_prod.nit:835 */
     goto label1;
@@ -4526,14 +4526,14 @@ void parser_prod___AExternClasskind___replace_child(val_t p0, val_t p1, val_t p2
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternClasskind___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AExternClasskind___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 839;
-  fra.me.meth = LOCATE_parser_prod___AExternClasskind___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternClasskind___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -4541,25 +4541,25 @@ void parser_prod___AExternClasskind___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:841 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwextern", LOCATE_parser_prod, 841);
+    nit_abort("Uninitialized attribute %s", "_n_kwextern", LOCATE_parser___parser_prod, 841);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AExternClasskind____n_kwextern(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFormaldef___empty_init(val_t p0, int* init_table){
-  int itpos33 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFormaldef].i;
+void parser___parser_prod___AFormaldef___empty_init(val_t p0, int* init_table){
+  int itpos33 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFormaldef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos33]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 845;
-  fra.me.meth = LOCATE_parser_prod___AFormaldef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -4568,17 +4568,17 @@ void parser_prod___AFormaldef___empty_init(val_t p0, int* init_table){
   init_table[itpos33] = 1;
   return;
 }
-void parser_prod___AFormaldef___init_aformaldef(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos34 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFormaldef].i;
+void parser___parser_prod___AFormaldef___init_aformaldef(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos34 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFormaldef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos34]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 847;
-  fra.me.meth = LOCATE_parser_prod___AFormaldef___init_aformaldef;
+  fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___init_aformaldef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -4588,22 +4588,22 @@ void parser_prod___AFormaldef___init_aformaldef(val_t p0, val_t p1, val_t p2, in
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:852 */
-  CALL_parser_prod___AFormaldef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AFormaldef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:853 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 853);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 853);
   }
-  ATTR_parser_nodes___AFormaldef____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:854 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 854);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 854);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:855 */
-  ATTR_parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:856 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -4613,7 +4613,7 @@ void parser_prod___AFormaldef___init_aformaldef(val_t p0, val_t p1, val_t p2, in
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -4622,23 +4622,23 @@ void parser_prod___AFormaldef___init_aformaldef(val_t p0, val_t p1, val_t p2, in
     /* ./parser//parser_prod.nit:857 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 857);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 857);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos34] = 1;
   return;
 }
-void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 861;
-  fra.me.meth = LOCATE_parser_prod___AFormaldef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -4649,16 +4649,16 @@ void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:863 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFormaldef____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 863);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 863);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AFormaldef____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -4671,7 +4671,7 @@ void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -4680,26 +4680,26 @@ void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:865 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 865);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 865);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:866 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 866);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 866);
       }
       /* ./parser//parser_prod.nit:867 */
-      ATTR_parser_nodes___AFormaldef____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:869 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 869);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 869);
     }
     /* ./parser//parser_prod.nit:871 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:873 */
-  fra.me.REG[3] = ATTR_parser_nodes___AFormaldef____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -4708,7 +4708,7 @@ void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -4722,7 +4722,7 @@ void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -4731,20 +4731,20 @@ void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:875 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 875);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 875);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:876 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 876);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 876);
       }
       /* ./parser//parser_prod.nit:877 */
-      ATTR_parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:879 */
-      ATTR_parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:881 */
     goto label1;
@@ -4753,15 +4753,15 @@ void parser_prod___AFormaldef___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFormaldef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AFormaldef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 885;
-  fra.me.meth = LOCATE_parser_prod___AFormaldef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AFormaldef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -4770,15 +4770,15 @@ void parser_prod___AFormaldef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:887 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFormaldef____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 887);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 887);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AFormaldef____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AFormaldef____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:888 */
-  fra.me.REG[2] = ATTR_parser_nodes___AFormaldef____n_type(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -4787,33 +4787,33 @@ void parser_prod___AFormaldef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:889 */
-    fra.me.REG[0] = ATTR_parser_nodes___AFormaldef____n_type(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AType, ID_AType)) /*cast AType*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AFormaldef____n_type(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 889);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 889);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASuperclass___empty_init(val_t p0, int* init_table){
-  int itpos35 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperclass].i;
+void parser___parser_prod___ASuperclass___empty_init(val_t p0, int* init_table){
+  int itpos35 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperclass].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos35]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 894;
-  fra.me.meth = LOCATE_parser_prod___ASuperclass___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -4822,17 +4822,17 @@ void parser_prod___ASuperclass___empty_init(val_t p0, int* init_table){
   init_table[itpos35] = 1;
   return;
 }
-void parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos36 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperclass].i;
+void parser___parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos36 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperclass].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos36]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 896;
-  fra.me.meth = LOCATE_parser_prod___ASuperclass___init_asuperclass;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___init_asuperclass;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -4844,9 +4844,9 @@ void parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2,
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:902 */
-  CALL_parser_prod___ASuperclass___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ASuperclass___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:903 */
-  ATTR_parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:904 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -4856,7 +4856,7 @@ void parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -4865,12 +4865,12 @@ void parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2,
     /* ./parser//parser_prod.nit:905 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 905);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 905);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:907 */
-  ATTR_parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:908 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -4880,7 +4880,7 @@ void parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -4889,36 +4889,36 @@ void parser_prod___ASuperclass___init_asuperclass(val_t p0, val_t p1, val_t p2,
     /* ./parser//parser_prod.nit:909 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 909);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 909);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:911 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 911);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 911);
   }
-  ATTR_parser_nodes___ASuperclass____n_type(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:912 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 912);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 912);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos36] = 1;
   return;
 }
-void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 915;
-  fra.me.meth = LOCATE_parser_prod___ASuperclass___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -4929,7 +4929,7 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:917 */
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -4938,7 +4938,7 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -4952,7 +4952,7 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -4961,26 +4961,26 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:919 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 919);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 919);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:920 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwspecial, ID_TKwspecial)) /*cast TKwspecial*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwspecial, ID_parser___parser_nodes___TKwspecial)) /*cast TKwspecial*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 920);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 920);
       }
       /* ./parser//parser_prod.nit:921 */
-      ATTR_parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:923 */
-      ATTR_parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:925 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:927 */
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -4989,7 +4989,7 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5003,7 +5003,7 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5012,35 +5012,35 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:929 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 929);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 929);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:930 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 930);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 930);
       }
       /* ./parser//parser_prod.nit:931 */
-      ATTR_parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:933 */
-      ATTR_parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:935 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:937 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperclass____n_type(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 937);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 937);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperclass____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -5053,7 +5053,7 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5062,20 +5062,20 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:939 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 939);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 939);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:940 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 940);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 940);
       }
       /* ./parser//parser_prod.nit:941 */
-      ATTR_parser_nodes___ASuperclass____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:943 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 943);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 943);
     }
     /* ./parser//parser_prod.nit:945 */
     goto label1;
@@ -5084,15 +5084,15 @@ void parser_prod___ASuperclass___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASuperclass___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASuperclass___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 949;
-  fra.me.meth = LOCATE_parser_prod___ASuperclass___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperclass___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -5101,7 +5101,7 @@ void parser_prod___ASuperclass___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:951 */
-  fra.me.REG[2] = ATTR_parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5110,23 +5110,23 @@ void parser_prod___ASuperclass___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:952 */
-    fra.me.REG[2] = ATTR_parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwspecial, ID_TKwspecial)) /*cast TKwspecial*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperclass____n_kwspecial(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwspecial, ID_parser___parser_nodes___TKwspecial)) /*cast TKwspecial*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 952);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 952);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:954 */
-  fra.me.REG[2] = ATTR_parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5135,41 +5135,41 @@ void parser_prod___ASuperclass___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:955 */
-    fra.me.REG[2] = ATTR_parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperclass____n_kwsuper(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 955);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 955);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:957 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperclass____n_type(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 957);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 957);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASuperclass____n_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASuperclass____n_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAttrPropdef___empty_init(val_t p0, int* init_table){
-  int itpos37 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrPropdef].i;
+void parser___parser_prod___AAttrPropdef___empty_init(val_t p0, int* init_table){
+  int itpos37 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos37]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 961;
-  fra.me.meth = LOCATE_parser_prod___AAttrPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -5178,17 +5178,17 @@ void parser_prod___AAttrPropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos37] = 1;
   return;
 }
-void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, val_t p9, val_t p10, int* init_table){
-  int itpos38 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrPropdef].i;
+void parser___parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, val_t p9, val_t p10, int* init_table){
+  int itpos38 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[10];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos38]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 963;
-  fra.me.meth = LOCATE_parser_prod___AAttrPropdef___init_aattrpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___init_aattrpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 11;
   fra.me.REG[0] = NIT_NULL;
@@ -5214,9 +5214,9 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
   fra.me.REG[9] = p9;
   fra.me.REG[10] = p10;
   /* ./parser//parser_prod.nit:976 */
-  CALL_parser_prod___AAttrPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AAttrPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:977 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:978 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5226,7 +5226,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5235,12 +5235,12 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:979 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 979);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 979);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:981 */
-  ATTR_parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:982 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5250,7 +5250,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5259,12 +5259,12 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:983 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 983);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 983);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:985 */
-  ATTR_parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:986 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5274,7 +5274,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5283,12 +5283,12 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:987 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 987);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 987);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:989 */
-  ATTR_parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:990 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5298,7 +5298,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5307,38 +5307,38 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:991 */
     REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 991);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 991);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:993 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 993);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 993);
   }
-  ATTR_parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:994 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 994);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 994);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:995 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 995);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 995);
   }
-  ATTR_parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:996 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 996);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 996);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:997 */
-  ATTR_parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = fra.me.REG[7];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = fra.me.REG[7];
   /* ./parser//parser_prod.nit:998 */
   REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5348,7 +5348,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5357,12 +5357,12 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:999 */
     REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 999);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 999);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1001 */
-  ATTR_parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = fra.me.REG[8];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = fra.me.REG[8];
   /* ./parser//parser_prod.nit:1002 */
   REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5372,7 +5372,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5381,12 +5381,12 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:1003 */
     REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1003);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1003);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1005 */
-  ATTR_parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = fra.me.REG[9];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = fra.me.REG[9];
   /* ./parser//parser_prod.nit:1006 */
   REGB0 = TAG_Bool(fra.me.REG[9]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5396,7 +5396,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[9])(fra.me.REG[9], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[9])(fra.me.REG[9], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5405,12 +5405,12 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:1007 */
     REGB0 = TAG_Bool(fra.me.REG[9]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1007);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1007);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[9])(fra.me.REG[9], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[9])(fra.me.REG[9], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1009 */
-  ATTR_parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = fra.me.REG[10];
+  ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = fra.me.REG[10];
   /* ./parser//parser_prod.nit:1010 */
   REGB0 = TAG_Bool(fra.me.REG[10]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -5420,7 +5420,7 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[10])(fra.me.REG[10], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[10])(fra.me.REG[10], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -5429,23 +5429,23 @@ void parser_prod___AAttrPropdef___init_aattrpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:1011 */
     REGB0 = TAG_Bool(fra.me.REG[10]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1011);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1011);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[10])(fra.me.REG[10], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[10])(fra.me.REG[10], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos38] = 1;
   return;
 }
-void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1015;
-  fra.me.meth = LOCATE_parser_prod___AAttrPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -5456,7 +5456,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1017 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5465,7 +5465,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5479,7 +5479,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5488,26 +5488,26 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1019 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1019);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1019);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1020 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1020);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1020);
       }
       /* ./parser//parser_prod.nit:1021 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1023 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1025 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1027 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5516,7 +5516,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5530,7 +5530,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5539,26 +5539,26 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1029 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1029);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1029);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1030 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAble, ID_AAble)) /*cast AAble*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1030);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1030);
       }
       /* ./parser//parser_prod.nit:1031 */
-      ATTR_parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1033 */
-      ATTR_parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1035 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1037 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5567,7 +5567,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5581,7 +5581,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5590,26 +5590,26 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1039 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1039);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1039);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1040 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAble, ID_AAble)) /*cast AAble*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1040);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1040);
       }
       /* ./parser//parser_prod.nit:1041 */
-      ATTR_parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1043 */
-      ATTR_parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1045 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1047 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5618,7 +5618,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5632,7 +5632,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5641,35 +5641,35 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1049 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1049);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1049);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1050 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1050);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1050);
       }
       /* ./parser//parser_prod.nit:1051 */
-      ATTR_parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1053 */
-      ATTR_parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1055 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1057 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 1057);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 1057);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -5682,7 +5682,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5691,35 +5691,35 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1059 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1059);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1059);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1060 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1060);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1060);
       }
       /* ./parser//parser_prod.nit:1061 */
-      ATTR_parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1063 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1063);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1063);
     }
     /* ./parser//parser_prod.nit:1065 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1067 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser_prod, 1067);
+    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 1067);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -5732,7 +5732,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5741,26 +5741,26 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1069 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1069);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1069);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1070 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwvar, ID_parser___parser_nodes___TKwvar)) /*cast TKwvar*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1070);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1070);
       }
       /* ./parser//parser_prod.nit:1071 */
-      ATTR_parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1073 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1073);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1073);
     }
     /* ./parser//parser_prod.nit:1075 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1077 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5769,7 +5769,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5783,7 +5783,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5792,26 +5792,26 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1079 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1079);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1079);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1080 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1080);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1080);
       }
       /* ./parser//parser_prod.nit:1081 */
-      ATTR_parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1083 */
-      ATTR_parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1085 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1087 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5820,7 +5820,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5834,7 +5834,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5843,26 +5843,26 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1089 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1089);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1089);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1090 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1090);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1090);
       }
       /* ./parser//parser_prod.nit:1091 */
-      ATTR_parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1093 */
-      ATTR_parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1095 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1097 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5871,7 +5871,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5885,7 +5885,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5894,26 +5894,26 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1099 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1099);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1099);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1100 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1100);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1100);
       }
       /* ./parser//parser_prod.nit:1101 */
-      ATTR_parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1103 */
-      ATTR_parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1105 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1107 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5922,7 +5922,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -5936,7 +5936,7 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -5945,20 +5945,20 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1109 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1109);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1109);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1110 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1110);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1110);
       }
       /* ./parser//parser_prod.nit:1111 */
-      ATTR_parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1113 */
-      ATTR_parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1115 */
     goto label1;
@@ -5967,15 +5967,15 @@ void parser_prod___AAttrPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1119;
-  fra.me.meth = LOCATE_parser_prod___AAttrPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -5984,7 +5984,7 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1121 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -5993,23 +5993,23 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1122 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1122);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1122);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1124 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6018,23 +6018,23 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1125 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAble, ID_AAble)) /*cast AAble*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_readable(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1125);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1125);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1127 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6043,23 +6043,23 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1128 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAble, ID_AAble)) /*cast AAble*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_writable(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAble, ID_parser___parser_nodes___AAble)) /*cast AAble*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1128);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1128);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1130 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6068,39 +6068,39 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1131 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1131);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1131);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1133 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 1133);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 1133);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1134 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser_prod, 1134);
+    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 1134);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_kwvar(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1135 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6109,23 +6109,23 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1136 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_id(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1136);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1136);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1138 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6134,23 +6134,23 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1139 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_id2(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1139);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1139);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1141 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6159,23 +6159,23 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1142 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_type(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1142);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1142);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1144 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6184,33 +6184,33 @@ void parser_prod___AAttrPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1145 */
-    fra.me.REG[0] = ATTR_parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AAttrPropdef____n_expr(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1145);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1145);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMethPropdef___empty_init(val_t p0, int* init_table){
-  int itpos39 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMethPropdef].i;
+void parser___parser_prod___AMethPropdef___empty_init(val_t p0, int* init_table){
+  int itpos39 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMethPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos39]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1150;
-  fra.me.meth = LOCATE_parser_prod___AMethPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -6219,17 +6219,17 @@ void parser_prod___AMethPropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos39] = 1;
   return;
 }
-void parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
-  int itpos40 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMethPropdef].i;
+void parser___parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
+  int itpos40 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMethPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos40]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1152;
-  fra.me.meth = LOCATE_parser_prod___AMethPropdef___init_amethpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___init_amethpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 6;
   fra.me.REG[0] = NIT_NULL;
@@ -6245,9 +6245,9 @@ void parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2
   fra.me.REG[4] = p4;
   fra.me.REG[5] = p5;
   /* ./parser//parser_prod.nit:1160 */
-  CALL_parser_prod___AMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:1161 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:1162 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -6257,7 +6257,7 @@ void parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -6266,12 +6266,12 @@ void parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:1163 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1163);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1163);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1165 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:1166 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -6281,7 +6281,7 @@ void parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -6290,62 +6290,62 @@ void parser_prod___AMethPropdef___init_amethpropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:1167 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1167);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1167);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1169 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1169);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1169);
   }
-  ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:1170 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1170);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1170);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1171 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1171);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1171);
   }
-  ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:1172 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1172);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1172);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1173 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1173);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1173);
   }
-  ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:1174 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1174);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1174);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos40] = 1;
   return;
 }
-void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1177;
-  fra.me.meth = LOCATE_parser_prod___AMethPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -6356,7 +6356,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1179 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6365,7 +6365,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6379,7 +6379,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6388,26 +6388,26 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1181 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1181);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1181);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1182 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1182);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1182);
       }
       /* ./parser//parser_prod.nit:1183 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1185 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1187 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1189 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6416,7 +6416,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6430,7 +6430,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6439,26 +6439,26 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1191 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1191);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1191);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1192 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1192);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1192);
       }
       /* ./parser//parser_prod.nit:1193 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1195 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1197 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1199 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6467,7 +6467,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6481,7 +6481,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6490,26 +6490,26 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1201 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1201);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1201);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1202 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1202);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1202);
       }
       /* ./parser//parser_prod.nit:1203 */
-      ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1205 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1205);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1205);
     }
     /* ./parser//parser_prod.nit:1207 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1209 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6518,7 +6518,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6532,7 +6532,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6541,26 +6541,26 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1211 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1211);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1211);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1212 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1212);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1212);
       }
       /* ./parser//parser_prod.nit:1213 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1215 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1215);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1215);
     }
     /* ./parser//parser_prod.nit:1217 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1219 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6569,7 +6569,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6583,7 +6583,7 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6592,20 +6592,20 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:1221 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1221);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1221);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1222 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1222);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1222);
       }
       /* ./parser//parser_prod.nit:1223 */
-      ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1225 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1225);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1225);
     }
     /* ./parser//parser_prod.nit:1227 */
     goto label1;
@@ -6614,15 +6614,15 @@ void parser_prod___AMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMethPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AMethPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1231;
-  fra.me.meth = LOCATE_parser_prod___AMethPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AMethPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -6631,7 +6631,7 @@ void parser_prod___AMethPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1233 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6640,23 +6640,23 @@ void parser_prod___AMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1234 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1234);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1234);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1236 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6665,42 +6665,42 @@ void parser_prod___AMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1237 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1237);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1237);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1239 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1240 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1241 */
-  fra.me.REG[0] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ADeferredMethPropdef___empty_init(val_t p0, int* init_table){
-  int itpos41 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ADeferredMethPropdef].i;
+void parser___parser_prod___ADeferredMethPropdef___empty_init(val_t p0, int* init_table){
+  int itpos41 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADeferredMethPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos41]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1245;
-  fra.me.meth = LOCATE_parser_prod___ADeferredMethPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -6709,17 +6709,17 @@ void parser_prod___ADeferredMethPropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos41] = 1;
   return;
 }
-void parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
-  int itpos42 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ADeferredMethPropdef].i;
+void parser___parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
+  int itpos42 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADeferredMethPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos42]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1247;
-  fra.me.meth = LOCATE_parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 7;
   fra.me.REG[0] = NIT_NULL;
@@ -6737,9 +6737,9 @@ void parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, va
   fra.me.REG[5] = p5;
   fra.me.REG[6] = p6;
   /* ./parser//parser_prod.nit:1256 */
-  CALL_parser_prod___ADeferredMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ADeferredMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:1257 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:1258 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -6749,7 +6749,7 @@ void parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -6758,12 +6758,12 @@ void parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1259 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1259);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1259);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1261 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:1262 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -6773,7 +6773,7 @@ void parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -6782,75 +6782,75 @@ void parser_prod___ADeferredMethPropdef___init_adeferredmethpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1263 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1263);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1263);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1265 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1265);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1265);
   }
-  ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:1266 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1266);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1266);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1267 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1267);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1267);
   }
-  ATTR_parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:1268 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1268);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1268);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1269 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1269);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1269);
   }
-  ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:1270 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1270);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1270);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1271 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1271);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1271);
   }
-  ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:1272 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1272);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1272);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos42] = 1;
   return;
 }
-void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1275;
-  fra.me.meth = LOCATE_parser_prod___ADeferredMethPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -6861,7 +6861,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1277 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6870,7 +6870,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6884,7 +6884,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6893,26 +6893,26 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1279 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1279);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1279);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1280 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1280);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1280);
       }
       /* ./parser//parser_prod.nit:1281 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1283 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1285 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1287 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6921,7 +6921,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6935,7 +6935,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6944,26 +6944,26 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1289 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1289);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1289);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1290 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1290);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1290);
       }
       /* ./parser//parser_prod.nit:1291 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1293 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1295 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1297 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -6972,7 +6972,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -6986,7 +6986,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -6995,35 +6995,35 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1299 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1299);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1299);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1300 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1300);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1300);
       }
       /* ./parser//parser_prod.nit:1301 */
-      ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1303 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1303);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1303);
     }
     /* ./parser//parser_prod.nit:1305 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1307 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser_prod, 1307);
+    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1307);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -7036,7 +7036,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7045,26 +7045,26 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1309 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1309);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1309);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1310 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1310);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1310);
       }
       /* ./parser//parser_prod.nit:1311 */
-      ATTR_parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1313 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1313);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1313);
     }
     /* ./parser//parser_prod.nit:1315 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1317 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7073,7 +7073,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -7087,7 +7087,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7096,26 +7096,26 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1319 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1319);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1319);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1320 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1320);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1320);
       }
       /* ./parser//parser_prod.nit:1321 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1323 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1323);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1323);
     }
     /* ./parser//parser_prod.nit:1325 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1327 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7124,7 +7124,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -7138,7 +7138,7 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7147,20 +7147,20 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1329 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1329);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1329);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1330 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1330);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1330);
       }
       /* ./parser//parser_prod.nit:1331 */
-      ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1333 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1333);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1333);
     }
     /* ./parser//parser_prod.nit:1335 */
     goto label1;
@@ -7169,15 +7169,15 @@ void parser_prod___ADeferredMethPropdef___replace_child(val_t p0, val_t p1, val_
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ADeferredMethPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ADeferredMethPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1339;
-  fra.me.meth = LOCATE_parser_prod___ADeferredMethPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ADeferredMethPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -7186,7 +7186,7 @@ void parser_prod___ADeferredMethPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1341 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7195,23 +7195,23 @@ void parser_prod___ADeferredMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1342 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1342);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1342);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1344 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7220,50 +7220,50 @@ void parser_prod___ADeferredMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1345 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1345);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1345);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1347 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1348 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser_prod, 1348);
+    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1348);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ADeferredMethPropdef____n_kwmeth(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1349 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1350 */
-  fra.me.REG[0] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AInternMethPropdef___empty_init(val_t p0, int* init_table){
-  int itpos43 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInternMethPropdef].i;
+void parser___parser_prod___AInternMethPropdef___empty_init(val_t p0, int* init_table){
+  int itpos43 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInternMethPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos43]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1354;
-  fra.me.meth = LOCATE_parser_prod___AInternMethPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -7272,17 +7272,17 @@ void parser_prod___AInternMethPropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos43] = 1;
   return;
 }
-void parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
-  int itpos44 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInternMethPropdef].i;
+void parser___parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
+  int itpos44 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInternMethPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos44]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1356;
-  fra.me.meth = LOCATE_parser_prod___AInternMethPropdef___init_ainternmethpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___init_ainternmethpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 7;
   fra.me.REG[0] = NIT_NULL;
@@ -7300,9 +7300,9 @@ void parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t
   fra.me.REG[5] = p5;
   fra.me.REG[6] = p6;
   /* ./parser//parser_prod.nit:1365 */
-  CALL_parser_prod___AInternMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AInternMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:1366 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:1367 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -7312,7 +7312,7 @@ void parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -7321,12 +7321,12 @@ void parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1368 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1368);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1368);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1370 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:1371 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -7336,7 +7336,7 @@ void parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -7345,75 +7345,75 @@ void parser_prod___AInternMethPropdef___init_ainternmethpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1372 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1372);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1372);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1374 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1374);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1374);
   }
-  ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:1375 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1375);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1375);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1376 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1376);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1376);
   }
-  ATTR_parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:1377 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1377);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1377);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1378 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1378);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1378);
   }
-  ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:1379 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1379);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1379);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1380 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1380);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1380);
   }
-  ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:1381 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1381);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1381);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos44] = 1;
   return;
 }
-void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1384;
-  fra.me.meth = LOCATE_parser_prod___AInternMethPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -7424,7 +7424,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1386 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7433,7 +7433,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -7447,7 +7447,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7456,26 +7456,26 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1388 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1388);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1388);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1389 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1389);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1389);
       }
       /* ./parser//parser_prod.nit:1390 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1392 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1394 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1396 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7484,7 +7484,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -7498,7 +7498,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7507,26 +7507,26 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1398 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1398);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1398);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1399 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1399);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1399);
       }
       /* ./parser//parser_prod.nit:1400 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1402 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1404 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1406 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7535,7 +7535,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -7549,7 +7549,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7558,35 +7558,35 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1408 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1408);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1408);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1409 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1409);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1409);
       }
       /* ./parser//parser_prod.nit:1410 */
-      ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1412 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1412);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1412);
     }
     /* ./parser//parser_prod.nit:1414 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1416 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser_prod, 1416);
+    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1416);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -7599,7 +7599,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7608,26 +7608,26 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1418 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1418);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1418);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1419 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1419);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1419);
       }
       /* ./parser//parser_prod.nit:1420 */
-      ATTR_parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1422 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1422);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1422);
     }
     /* ./parser//parser_prod.nit:1424 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1426 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7636,7 +7636,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -7650,7 +7650,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7659,26 +7659,26 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1428 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1428);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1428);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1429 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1429);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1429);
       }
       /* ./parser//parser_prod.nit:1430 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1432 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1432);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1432);
     }
     /* ./parser//parser_prod.nit:1434 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1436 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7687,7 +7687,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -7701,7 +7701,7 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -7710,20 +7710,20 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1438 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1438);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1438);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1439 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1439);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1439);
       }
       /* ./parser//parser_prod.nit:1440 */
-      ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1442 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1442);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1442);
     }
     /* ./parser//parser_prod.nit:1444 */
     goto label1;
@@ -7732,15 +7732,15 @@ void parser_prod___AInternMethPropdef___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AInternMethPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AInternMethPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1448;
-  fra.me.meth = LOCATE_parser_prod___AInternMethPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AInternMethPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -7749,7 +7749,7 @@ void parser_prod___AInternMethPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1450 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7758,23 +7758,23 @@ void parser_prod___AInternMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1451 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1451);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1451);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1453 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -7783,50 +7783,50 @@ void parser_prod___AInternMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1454 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1454);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1454);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1456 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1457 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser_prod, 1457);
+    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1457);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AInternMethPropdef____n_kwmeth(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1458 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1459 */
-  fra.me.REG[0] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternMethPropdef___empty_init(val_t p0, int* init_table){
-  int itpos45 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternMethPropdef].i;
+void parser___parser_prod___AExternMethPropdef___empty_init(val_t p0, int* init_table){
+  int itpos45 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternMethPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos45]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1463;
-  fra.me.meth = LOCATE_parser_prod___AExternMethPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -7835,17 +7835,17 @@ void parser_prod___AExternMethPropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos45] = 1;
   return;
 }
-void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
-  int itpos46 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternMethPropdef].i;
+void parser___parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
+  int itpos46 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternMethPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos46]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1465;
-  fra.me.meth = LOCATE_parser_prod___AExternMethPropdef___init_aexternmethpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___init_aexternmethpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 9;
   fra.me.REG[0] = NIT_NULL;
@@ -7867,9 +7867,9 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
   fra.me.REG[7] = p7;
   fra.me.REG[8] = p8;
   /* ./parser//parser_prod.nit:1476 */
-  CALL_parser_prod___AExternMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AExternMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:1477 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:1478 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -7879,7 +7879,7 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -7888,12 +7888,12 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1479 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1479);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1479);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1481 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:1482 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -7903,7 +7903,7 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -7912,64 +7912,64 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1483 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1483);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1483);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1485 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1485);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1485);
   }
-  ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:1486 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1486);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1486);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1487 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1487);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1487);
   }
-  ATTR_parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:1488 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1488);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1488);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1489 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1489);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1489);
   }
-  ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:1490 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1490);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1490);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1491 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1491);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1491);
   }
-  ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:1492 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1492);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1492);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1493 */
-  ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[7];
+  ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[7];
   /* ./parser//parser_prod.nit:1494 */
   REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -7979,7 +7979,7 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -7988,12 +7988,12 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1495 */
     REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1495);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1495);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1497 */
-  ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[8];
+  ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[8];
   /* ./parser//parser_prod.nit:1498 */
   REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -8003,7 +8003,7 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -8012,23 +8012,23 @@ void parser_prod___AExternMethPropdef___init_aexternmethpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1499 */
     REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1499);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1499);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos46] = 1;
   return;
 }
-void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1503;
-  fra.me.meth = LOCATE_parser_prod___AExternMethPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -8039,7 +8039,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1505 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8048,7 +8048,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8062,7 +8062,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8071,26 +8071,26 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1507 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1507);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1507);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1508 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1508);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1508);
       }
       /* ./parser//parser_prod.nit:1509 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1511 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1513 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1515 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8099,7 +8099,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8113,7 +8113,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8122,26 +8122,26 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1517 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1517);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1517);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1518 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1518);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1518);
       }
       /* ./parser//parser_prod.nit:1519 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1521 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1523 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1525 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8150,7 +8150,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8164,7 +8164,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8173,35 +8173,35 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1527 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1527);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1527);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1528 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1528);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1528);
       }
       /* ./parser//parser_prod.nit:1529 */
-      ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1531 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1531);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1531);
     }
     /* ./parser//parser_prod.nit:1533 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1535 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser_prod, 1535);
+    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1535);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -8214,7 +8214,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8223,26 +8223,26 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1537 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1537);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1537);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1538 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1538);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1538);
       }
       /* ./parser//parser_prod.nit:1539 */
-      ATTR_parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1541 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1541);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1541);
     }
     /* ./parser//parser_prod.nit:1543 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1545 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8251,7 +8251,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8265,7 +8265,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8274,26 +8274,26 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1547 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1547);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1547);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1548 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1548);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1548);
       }
       /* ./parser//parser_prod.nit:1549 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1551 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1551);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1551);
     }
     /* ./parser//parser_prod.nit:1553 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1555 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8302,7 +8302,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8316,7 +8316,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8325,26 +8325,26 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1557 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1557);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1557);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1558 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1558);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1558);
       }
       /* ./parser//parser_prod.nit:1559 */
-      ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1561 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1561);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1561);
     }
     /* ./parser//parser_prod.nit:1563 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1565 */
-  fra.me.REG[3] = ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8353,7 +8353,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8367,7 +8367,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8376,26 +8376,26 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1567 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1567);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1567);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1568 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TString, ID_TString)) /*cast TString*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1568);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1568);
       }
       /* ./parser//parser_prod.nit:1569 */
-      ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1571 */
-      ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1573 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1575 */
-  fra.me.REG[3] = ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8404,7 +8404,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8418,7 +8418,7 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8427,20 +8427,20 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1577 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1577);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1577);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1578 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExternCalls, ID_AExternCalls)) /*cast AExternCalls*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1578);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1578);
       }
       /* ./parser//parser_prod.nit:1579 */
-      ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1581 */
-      ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1583 */
     goto label1;
@@ -8449,15 +8449,15 @@ void parser_prod___AExternMethPropdef___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1587;
-  fra.me.meth = LOCATE_parser_prod___AExternMethPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternMethPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -8466,7 +8466,7 @@ void parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1589 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8475,23 +8475,23 @@ void parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1590 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1590);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1590);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1592 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8500,40 +8500,40 @@ void parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1593 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1593);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1593);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1595 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1596 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser_prod, 1596);
+    nit_abort("Uninitialized attribute %s", "_n_kwmeth", LOCATE_parser___parser_prod, 1596);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AExternMethPropdef____n_kwmeth(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1597 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1598 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1599 */
-  fra.me.REG[2] = ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8542,23 +8542,23 @@ void parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1600 */
-    fra.me.REG[2] = ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TString, ID_TString)) /*cast TString*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1600);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1600);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1602 */
-  fra.me.REG[2] = ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8567,33 +8567,33 @@ void parser_prod___AExternMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1603 */
-    fra.me.REG[0] = ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExternCalls, ID_AExternCalls)) /*cast AExternCalls*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1603);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1603);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AConcreteMethPropdef___empty_init(val_t p0, int* init_table){
-  int itpos47 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AConcreteMethPropdef].i;
+void parser___parser_prod___AConcreteMethPropdef___empty_init(val_t p0, int* init_table){
+  int itpos47 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteMethPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos47]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1608;
-  fra.me.meth = LOCATE_parser_prod___AConcreteMethPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -8602,17 +8602,17 @@ void parser_prod___AConcreteMethPropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos47] = 1;
   return;
 }
-void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, int* init_table){
-  int itpos48 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AConcreteMethPropdef].i;
+void parser___parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, int* init_table){
+  int itpos48 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteMethPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos48]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1610;
-  fra.me.meth = LOCATE_parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 8;
   fra.me.REG[0] = NIT_NULL;
@@ -8632,9 +8632,9 @@ void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, va
   fra.me.REG[6] = p6;
   fra.me.REG[7] = p7;
   /* ./parser//parser_prod.nit:1620 */
-  CALL_parser_prod___AConcreteMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AConcreteMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:1621 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:1622 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -8644,7 +8644,7 @@ void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -8653,12 +8653,12 @@ void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1623 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1623);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1623);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1625 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:1626 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -8668,7 +8668,7 @@ void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -8677,64 +8677,64 @@ void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1627 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1627);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1627);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1629 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1629);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1629);
   }
-  ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:1630 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1630);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1630);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1631 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1631);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1631);
   }
-  ATTR_parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:1632 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1632);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1632);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1633 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1633);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1633);
   }
-  ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:1634 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1634);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1634);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1635 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1635);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1635);
   }
-  ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:1636 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1636);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1636);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1637 */
-  ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[7];
+  ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[7];
   /* ./parser//parser_prod.nit:1638 */
   REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -8744,7 +8744,7 @@ void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -8753,23 +8753,23 @@ void parser_prod___AConcreteMethPropdef___init_aconcretemethpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1639 */
     REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1639);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1639);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos48] = 1;
   return;
 }
-void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1643;
-  fra.me.meth = LOCATE_parser_prod___AConcreteMethPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -8780,7 +8780,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1645 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8789,7 +8789,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8803,7 +8803,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8812,26 +8812,26 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1647 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1647);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1647);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1648 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1648);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1648);
       }
       /* ./parser//parser_prod.nit:1649 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1651 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1653 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1655 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8840,7 +8840,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8854,7 +8854,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8863,26 +8863,26 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1657 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1657);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1657);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1658 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1658);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1658);
       }
       /* ./parser//parser_prod.nit:1659 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1661 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1663 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1665 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8891,7 +8891,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8905,7 +8905,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8914,26 +8914,26 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1667 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1667);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1667);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1668 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1668);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1668);
       }
       /* ./parser//parser_prod.nit:1669 */
-      ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1671 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1671);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1671);
     }
     /* ./parser//parser_prod.nit:1673 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1675 */
-  fra.me.REG[3] = ATTR_parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8942,7 +8942,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -8956,7 +8956,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -8965,26 +8965,26 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1677 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1677);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1677);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1678 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwmeth, ID_TKwmeth)) /*cast TKwmeth*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwmeth, ID_parser___parser_nodes___TKwmeth)) /*cast TKwmeth*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1678);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1678);
       }
       /* ./parser//parser_prod.nit:1679 */
-      ATTR_parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1681 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1681);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1681);
     }
     /* ./parser//parser_prod.nit:1683 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1685 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -8993,7 +8993,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9007,7 +9007,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9016,26 +9016,26 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1687 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1687);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1687);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1688 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1688);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1688);
       }
       /* ./parser//parser_prod.nit:1689 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1691 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1691);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1691);
     }
     /* ./parser//parser_prod.nit:1693 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1695 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9044,7 +9044,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9058,7 +9058,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9067,26 +9067,26 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1697 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1697);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1697);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1698 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1698);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1698);
       }
       /* ./parser//parser_prod.nit:1699 */
-      ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1701 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1701);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1701);
     }
     /* ./parser//parser_prod.nit:1703 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1705 */
-  fra.me.REG[3] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9095,7 +9095,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9109,7 +9109,7 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9118,20 +9118,20 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1707 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1707);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1707);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1708 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1708);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1708);
       }
       /* ./parser//parser_prod.nit:1709 */
-      ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1711 */
-      ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1713 */
     goto label1;
@@ -9140,15 +9140,15 @@ void parser_prod___AConcreteMethPropdef___replace_child(val_t p0, val_t p1, val_
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AConcreteMethPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AConcreteMethPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1717;
-  fra.me.meth = LOCATE_parser_prod___AConcreteMethPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteMethPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -9157,7 +9157,7 @@ void parser_prod___AConcreteMethPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1719 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9166,23 +9166,23 @@ void parser_prod___AConcreteMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1720 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1720);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1720);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1722 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9191,35 +9191,35 @@ void parser_prod___AConcreteMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1723 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1723);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1723);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1725 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1726 */
-  fra.me.REG[2] = ATTR_parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_kwmeth(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1727 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1728 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1729 */
-  fra.me.REG[2] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9228,54 +9228,54 @@ void parser_prod___AConcreteMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1730 */
-    fra.me.REG[0] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1730);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1730);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AConcreteInitPropdef___empty_init(val_t p0, int* init_table){
-  int itpos49 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AConcreteInitPropdef].i;
+void parser___parser_prod___AConcreteInitPropdef___empty_init(val_t p0, int* init_table){
+  int itpos49 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteInitPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos49]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1735;
-  fra.me.meth = LOCATE_parser_prod___AConcreteInitPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* ./parser//parser_prod.nit:1735 */
-  CALL_parser_nodes___AInitPropdef___init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_nodes___AInitPropdef___init(fra.me.REG[0])(fra.me.REG[0], init_table);
   stack_frame_head = fra.me.prev;
   init_table[itpos49] = 1;
   return;
 }
-void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, int* init_table){
-  int itpos50 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AConcreteInitPropdef].i;
+void parser___parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, int* init_table){
+  int itpos50 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AConcreteInitPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos50]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1737;
-  fra.me.meth = LOCATE_parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 8;
   fra.me.REG[0] = NIT_NULL;
@@ -9295,9 +9295,9 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
   fra.me.REG[6] = p6;
   fra.me.REG[7] = p7;
   /* ./parser//parser_prod.nit:1747 */
-  CALL_parser_prod___AConcreteInitPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AConcreteInitPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:1748 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:1749 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -9307,7 +9307,7 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -9316,12 +9316,12 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1750 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1750);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1750);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1752 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:1753 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -9331,7 +9331,7 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -9340,38 +9340,38 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1754 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1754);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1754);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1756 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1756);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1756);
   }
-  ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:1757 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1757);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1757);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1758 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1758);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1758);
   }
-  ATTR_parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:1759 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1759);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1759);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1760 */
-  ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:1761 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -9381,7 +9381,7 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -9390,25 +9390,25 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1762 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1762);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1762);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1764 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1764);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1764);
   }
-  ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:1765 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1765);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1765);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1766 */
-  ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[7];
+  ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[7];
   /* ./parser//parser_prod.nit:1767 */
   REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -9418,7 +9418,7 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -9427,23 +9427,23 @@ void parser_prod___AConcreteInitPropdef___init_aconcreteinitpropdef(val_t p0, va
     /* ./parser//parser_prod.nit:1768 */
     REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1768);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1768);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos50] = 1;
   return;
 }
-void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1772;
-  fra.me.meth = LOCATE_parser_prod___AConcreteInitPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -9454,7 +9454,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1774 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9463,7 +9463,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9477,7 +9477,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9486,26 +9486,26 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1776 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1776);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1776);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1777 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1777);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1777);
       }
       /* ./parser//parser_prod.nit:1778 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1780 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1782 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1784 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9514,7 +9514,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9528,7 +9528,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9537,26 +9537,26 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1786 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1786);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1786);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1787 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1787);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1787);
       }
       /* ./parser//parser_prod.nit:1788 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1790 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1792 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1794 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9565,7 +9565,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9579,7 +9579,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9588,35 +9588,35 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1796 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1796);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1796);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1797 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1797);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1797);
       }
       /* ./parser//parser_prod.nit:1798 */
-      ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1800 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1800);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1800);
     }
     /* ./parser//parser_prod.nit:1802 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1804 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser_prod, 1804);
+    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 1804);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -9629,7 +9629,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9638,26 +9638,26 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1806 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1806);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1806);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1807 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwinit, ID_parser___parser_nodes___TKwinit)) /*cast TKwinit*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1807);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1807);
       }
       /* ./parser//parser_prod.nit:1808 */
-      ATTR_parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1810 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1810);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1810);
     }
     /* ./parser//parser_prod.nit:1812 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1814 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9666,7 +9666,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9680,7 +9680,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9689,26 +9689,26 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1816 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1816);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1816);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1817 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1817);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1817);
       }
       /* ./parser//parser_prod.nit:1818 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1820 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1822 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1824 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9717,7 +9717,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9731,7 +9731,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9740,26 +9740,26 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1826 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1826);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1826);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1827 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1827);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1827);
       }
       /* ./parser//parser_prod.nit:1828 */
-      ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1830 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1830);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1830);
     }
     /* ./parser//parser_prod.nit:1832 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1834 */
-  fra.me.REG[3] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9768,7 +9768,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -9782,7 +9782,7 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -9791,20 +9791,20 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
       /* ./parser//parser_prod.nit:1836 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1836);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1836);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1837 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1837);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1837);
       }
       /* ./parser//parser_prod.nit:1838 */
-      ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1840 */
-      ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1842 */
     goto label1;
@@ -9813,15 +9813,15 @@ void parser_prod___AConcreteInitPropdef___replace_child(val_t p0, val_t p1, val_
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1846;
-  fra.me.meth = LOCATE_parser_prod___AConcreteInitPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AConcreteInitPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -9830,7 +9830,7 @@ void parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1848 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9839,23 +9839,23 @@ void parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1849 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1849);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1849);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1851 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9864,34 +9864,34 @@ void parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1852 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1852);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1852);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1854 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1855 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser_prod, 1855);
+    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 1855);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteInitPropdef____n_kwinit(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1856 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9900,26 +9900,26 @@ void parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1857 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1857);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1857);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1859 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:1860 */
-  fra.me.REG[2] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -9928,54 +9928,54 @@ void parser_prod___AConcreteInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1861 */
-    fra.me.REG[0] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1861);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1861);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternInitPropdef___empty_init(val_t p0, int* init_table){
-  int itpos51 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternInitPropdef].i;
+void parser___parser_prod___AExternInitPropdef___empty_init(val_t p0, int* init_table){
+  int itpos51 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternInitPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos51]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1866;
-  fra.me.meth = LOCATE_parser_prod___AExternInitPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* ./parser//parser_prod.nit:1866 */
-  CALL_parser_nodes___AInitPropdef___init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_nodes___AInitPropdef___init(fra.me.REG[0])(fra.me.REG[0], init_table);
   stack_frame_head = fra.me.prev;
   init_table[itpos51] = 1;
   return;
 }
-void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
-  int itpos52 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternInitPropdef].i;
+void parser___parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, val_t p7, val_t p8, int* init_table){
+  int itpos52 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternInitPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos52]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1868;
-  fra.me.meth = LOCATE_parser_prod___AExternInitPropdef___init_aexterninitpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___init_aexterninitpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 9;
   fra.me.REG[0] = NIT_NULL;
@@ -9997,9 +9997,9 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
   fra.me.REG[7] = p7;
   fra.me.REG[8] = p8;
   /* ./parser//parser_prod.nit:1879 */
-  CALL_parser_prod___AExternInitPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AExternInitPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:1880 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:1881 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -10009,7 +10009,7 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -10018,12 +10018,12 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1882 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1882);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1882);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1884 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:1885 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -10033,7 +10033,7 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -10042,38 +10042,38 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1886 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1886);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1886);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1888 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1888);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1888);
   }
-  ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:1889 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1889);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1889);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1890 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1890);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1890);
   }
-  ATTR_parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:1891 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1891);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1891);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1892 */
-  ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:1893 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -10083,7 +10083,7 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -10092,25 +10092,25 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1894 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1894);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1894);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1896 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1896);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1896);
   }
-  ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:1897 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1897);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1897);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:1898 */
-  ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[7];
+  ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[7];
   /* ./parser//parser_prod.nit:1899 */
   REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -10120,7 +10120,7 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -10129,12 +10129,12 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1900 */
     REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1900);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1900);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:1902 */
-  ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[8];
+  ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[8];
   /* ./parser//parser_prod.nit:1903 */
   REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -10144,7 +10144,7 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[8])(fra.me.REG[8], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -10153,23 +10153,23 @@ void parser_prod___AExternInitPropdef___init_aexterninitpropdef(val_t p0, val_t
     /* ./parser//parser_prod.nit:1904 */
     REGB0 = TAG_Bool(fra.me.REG[8]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1904);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1904);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[8])(fra.me.REG[8], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos52] = 1;
   return;
 }
-void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1908;
-  fra.me.meth = LOCATE_parser_prod___AExternInitPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -10180,7 +10180,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:1910 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10189,7 +10189,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10203,7 +10203,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10212,26 +10212,26 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1912 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1912);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1912);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1913 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1913);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1913);
       }
       /* ./parser//parser_prod.nit:1914 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1916 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1918 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1920 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10240,7 +10240,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10254,7 +10254,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10263,26 +10263,26 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1922 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1922);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1922);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1923 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1923);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1923);
       }
       /* ./parser//parser_prod.nit:1924 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1926 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1928 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1930 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10291,7 +10291,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10305,7 +10305,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10314,35 +10314,35 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1932 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1932);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1932);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1933 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1933);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1933);
       }
       /* ./parser//parser_prod.nit:1934 */
-      ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1936 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1936);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1936);
     }
     /* ./parser//parser_prod.nit:1938 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1940 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser_prod, 1940);
+    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 1940);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -10355,7 +10355,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10364,26 +10364,26 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1942 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1942);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1942);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1943 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnew, ID_parser___parser_nodes___TKwnew)) /*cast TKwnew*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1943);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1943);
       }
       /* ./parser//parser_prod.nit:1944 */
-      ATTR_parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1946 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1946);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1946);
     }
     /* ./parser//parser_prod.nit:1948 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1950 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10392,7 +10392,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10406,7 +10406,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10415,26 +10415,26 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1952 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1952);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1952);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1953 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1953);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1953);
       }
       /* ./parser//parser_prod.nit:1954 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1956 */
-      ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1958 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1960 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10443,7 +10443,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10457,7 +10457,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10466,26 +10466,26 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1962 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1962);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1962);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1963 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1963);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1963);
       }
       /* ./parser//parser_prod.nit:1964 */
-      ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1966 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 1966);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 1966);
     }
     /* ./parser//parser_prod.nit:1968 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1970 */
-  fra.me.REG[3] = ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10494,7 +10494,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10508,7 +10508,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10517,26 +10517,26 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1972 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1972);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1972);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1973 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TString, ID_TString)) /*cast TString*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1973);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1973);
       }
       /* ./parser//parser_prod.nit:1974 */
-      ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1976 */
-      ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1978 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:1980 */
-  fra.me.REG[3] = ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10545,7 +10545,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10559,7 +10559,7 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10568,20 +10568,20 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
       /* ./parser//parser_prod.nit:1982 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 1982);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 1982);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:1983 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExternCalls, ID_AExternCalls)) /*cast AExternCalls*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 1983);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 1983);
       }
       /* ./parser//parser_prod.nit:1984 */
-      ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:1986 */
-      ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:1988 */
     goto label1;
@@ -10590,15 +10590,15 @@ void parser_prod___AExternInitPropdef___replace_child(val_t p0, val_t p1, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 1992;
-  fra.me.meth = LOCATE_parser_prod___AExternInitPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternInitPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -10607,7 +10607,7 @@ void parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:1994 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10616,23 +10616,23 @@ void parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1995 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1995);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1995);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:1997 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10641,34 +10641,34 @@ void parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:1998 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 1998);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 1998);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2000 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2001 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser_prod, 2001);
+    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 2001);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AExternInitPropdef____n_kwnew(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2002 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10677,26 +10677,26 @@ void parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2003 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_methid(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2003);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2003);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2005 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2006 */
-  fra.me.REG[2] = ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10705,23 +10705,23 @@ void parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2007 */
-    fra.me.REG[2] = ATTR_parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TString, ID_TString)) /*cast TString*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2007);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2007);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2009 */
-  fra.me.REG[2] = ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10730,33 +10730,33 @@ void parser_prod___AExternInitPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2010 */
-    fra.me.REG[0] = ATTR_parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExternCalls, ID_AExternCalls)) /*cast AExternCalls*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AExternPropdef____n_extern_calls(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExternCalls, ID_parser___parser_nodes___AExternCalls)) /*cast AExternCalls*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2010);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2010);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMainMethPropdef___empty_init(val_t p0, int* init_table){
-  int itpos53 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMainMethPropdef].i;
+void parser___parser_prod___AMainMethPropdef___empty_init(val_t p0, int* init_table){
+  int itpos53 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainMethPropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos53]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2015;
-  fra.me.meth = LOCATE_parser_prod___AMainMethPropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -10765,17 +10765,17 @@ void parser_prod___AMainMethPropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos53] = 1;
   return;
 }
-void parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos54 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMainMethPropdef].i;
+void parser___parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos54 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMainMethPropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos54]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2017;
-  fra.me.meth = LOCATE_parser_prod___AMainMethPropdef___init_amainmethpropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___init_amainmethpropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -10785,9 +10785,9 @@ void parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1,
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2022 */
-  CALL_parser_prod___AMainMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AMainMethPropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2023 */
-  ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2024 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -10797,7 +10797,7 @@ void parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -10806,12 +10806,12 @@ void parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1,
     /* ./parser//parser_prod.nit:2025 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2025);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2025);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:2027 */
-  ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2028 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -10821,7 +10821,7 @@ void parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -10830,23 +10830,23 @@ void parser_prod___AMainMethPropdef___init_amainmethpropdef(val_t p0, val_t p1,
     /* ./parser//parser_prod.nit:2029 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2029);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2029);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos54] = 1;
   return;
 }
-void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2033;
-  fra.me.meth = LOCATE_parser_prod___AMainMethPropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -10857,7 +10857,7 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2035 */
-  fra.me.REG[3] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10866,7 +10866,7 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10880,7 +10880,7 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10889,26 +10889,26 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
       /* ./parser//parser_prod.nit:2037 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2037);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2037);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2038 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2038);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2038);
       }
       /* ./parser//parser_prod.nit:2039 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2041 */
-      ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2043 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2045 */
-  fra.me.REG[3] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10917,7 +10917,7 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -10931,7 +10931,7 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -10940,20 +10940,20 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
       /* ./parser//parser_prod.nit:2047 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2047);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2047);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2048 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2048);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2048);
       }
       /* ./parser//parser_prod.nit:2049 */
-      ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2051 */
-      ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2053 */
     goto label1;
@@ -10962,15 +10962,15 @@ void parser_prod___AMainMethPropdef___replace_child(val_t p0, val_t p1, val_t p2
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMainMethPropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AMainMethPropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2057;
-  fra.me.meth = LOCATE_parser_prod___AMainMethPropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AMainMethPropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -10979,7 +10979,7 @@ void parser_prod___AMainMethPropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2059 */
-  fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -10988,23 +10988,23 @@ void parser_prod___AMainMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2060 */
-    fra.me.REG[2] = ATTR_parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AMethPropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2060);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2060);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2062 */
-  fra.me.REG[2] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11013,33 +11013,33 @@ void parser_prod___AMainMethPropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2063 */
-    fra.me.REG[0] = ATTR_parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AConcreteMethPropdef____n_block(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2063);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2063);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ATypePropdef___empty_init(val_t p0, int* init_table){
-  int itpos55 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ATypePropdef].i;
+void parser___parser_prod___ATypePropdef___empty_init(val_t p0, int* init_table){
+  int itpos55 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATypePropdef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos55]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2068;
-  fra.me.meth = LOCATE_parser_prod___ATypePropdef___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -11048,17 +11048,17 @@ void parser_prod___ATypePropdef___empty_init(val_t p0, int* init_table){
   init_table[itpos55] = 1;
   return;
 }
-void parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
-  int itpos56 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ATypePropdef].i;
+void parser___parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
+  int itpos56 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATypePropdef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos56]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2070;
-  fra.me.meth = LOCATE_parser_prod___ATypePropdef___init_atypepropdef;
+  fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___init_atypepropdef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 7;
   fra.me.REG[0] = NIT_NULL;
@@ -11076,9 +11076,9 @@ void parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2
   fra.me.REG[5] = p5;
   fra.me.REG[6] = p6;
   /* ./parser//parser_prod.nit:2079 */
-  CALL_parser_prod___ATypePropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ATypePropdef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2080 */
-  ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2081 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -11088,7 +11088,7 @@ void parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -11097,12 +11097,12 @@ void parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:2082 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2082);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2082);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:2084 */
-  ATTR_parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2085 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -11112,7 +11112,7 @@ void parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -11121,75 +11121,75 @@ void parser_prod___ATypePropdef___init_atypepropdef(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:2086 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2086);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2086);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:2088 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2088);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2088);
   }
-  ATTR_parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:2089 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2089);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2089);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2090 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2090);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2090);
   }
-  ATTR_parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:2091 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2091);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2091);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2092 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2092);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2092);
   }
-  ATTR_parser_nodes___ATypePropdef____n_id(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:2093 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2093);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2093);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2094 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2094);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2094);
   }
-  ATTR_parser_nodes___ATypePropdef____n_type(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:2095 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2095);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2095);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos56] = 1;
   return;
 }
-void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2098;
-  fra.me.meth = LOCATE_parser_prod___ATypePropdef___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -11200,7 +11200,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2100 */
-  fra.me.REG[3] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11209,7 +11209,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -11223,7 +11223,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11232,26 +11232,26 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2102 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2102);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2102);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2103 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2103);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2103);
       }
       /* ./parser//parser_prod.nit:2104 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2106 */
-      ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2108 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2110 */
-  fra.me.REG[3] = ATTR_parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11260,7 +11260,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -11274,7 +11274,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11283,35 +11283,35 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2112 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2112);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2112);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2113 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2113);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2113);
       }
       /* ./parser//parser_prod.nit:2114 */
-      ATTR_parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2116 */
-      ATTR_parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2118 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2120 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 2120);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 2120);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -11324,7 +11324,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11333,35 +11333,35 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2122 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2122);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2122);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2123 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2123);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2123);
       }
       /* ./parser//parser_prod.nit:2124 */
-      ATTR_parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2126 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2126);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2126);
     }
     /* ./parser//parser_prod.nit:2128 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2130 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwtype", LOCATE_parser_prod, 2130);
+    nit_abort("Uninitialized attribute %s", "_n_kwtype", LOCATE_parser___parser_prod, 2130);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -11374,7 +11374,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11383,35 +11383,35 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2132 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2132);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2132);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2133 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwtype, ID_TKwtype)) /*cast TKwtype*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwtype, ID_parser___parser_nodes___TKwtype)) /*cast TKwtype*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2133);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2133);
       }
       /* ./parser//parser_prod.nit:2134 */
-      ATTR_parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2136 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2136);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2136);
     }
     /* ./parser//parser_prod.nit:2138 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2140 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 2140);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2140);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ATypePropdef____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -11424,7 +11424,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11433,35 +11433,35 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2142 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2142);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2142);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2143 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2143);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2143);
       }
       /* ./parser//parser_prod.nit:2144 */
-      ATTR_parser_nodes___ATypePropdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2146 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2146);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2146);
     }
     /* ./parser//parser_prod.nit:2148 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2150 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_type(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 2150);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 2150);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ATypePropdef____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -11474,7 +11474,7 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11483,20 +11483,20 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2152 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2152);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2152);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2153 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2153);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2153);
       }
       /* ./parser//parser_prod.nit:2154 */
-      ATTR_parser_nodes___ATypePropdef____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2156 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2156);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2156);
     }
     /* ./parser//parser_prod.nit:2158 */
     goto label1;
@@ -11505,15 +11505,15 @@ void parser_prod___ATypePropdef___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ATypePropdef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ATypePropdef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2162;
-  fra.me.meth = LOCATE_parser_prod___ATypePropdef___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ATypePropdef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -11522,7 +11522,7 @@ void parser_prod___ATypePropdef___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2164 */
-  fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11531,23 +11531,23 @@ void parser_prod___ATypePropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2165 */
-    fra.me.REG[2] = ATTR_parser_nodes___APropdef____n_doc(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ADoc, ID_ADoc)) /*cast ADoc*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___APropdef____n_doc(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ADoc, ID_parser___parser_nodes___ADoc)) /*cast ADoc*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2165);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2165);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2167 */
-  fra.me.REG[2] = ATTR_parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11556,65 +11556,65 @@ void parser_prod___ATypePropdef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2168 */
-    fra.me.REG[2] = ATTR_parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ATypePropdef____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2168);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2168);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2170 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser_prod, 2170);
+    nit_abort("Uninitialized attribute %s", "_n_visibility", LOCATE_parser___parser_prod, 2170);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ATypePropdef____n_visibility(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2171 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwtype", LOCATE_parser_prod, 2171);
+    nit_abort("Uninitialized attribute %s", "_n_kwtype", LOCATE_parser___parser_prod, 2171);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ATypePropdef____n_kwtype(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2172 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 2172);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2172);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ATypePropdef____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ATypePropdef____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2173 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATypePropdef____n_type(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 2173);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 2173);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ATypePropdef____n_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ATypePropdef____n_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AReadAble___empty_init(val_t p0, int* init_table){
-  int itpos57 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AReadAble].i;
+void parser___parser_prod___AReadAble___empty_init(val_t p0, int* init_table){
+  int itpos57 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReadAble].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos57]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2177;
-  fra.me.meth = LOCATE_parser_prod___AReadAble___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AReadAble___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -11623,17 +11623,17 @@ void parser_prod___AReadAble___empty_init(val_t p0, int* init_table){
   init_table[itpos57] = 1;
   return;
 }
-void parser_prod___AReadAble___init_areadable(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos58 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AReadAble].i;
+void parser___parser_prod___AReadAble___init_areadable(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos58 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReadAble].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos58]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2179;
-  fra.me.meth = LOCATE_parser_prod___AReadAble___init_areadable;
+  fra.me.meth = LOCATE_parser___parser_prod___AReadAble___init_areadable;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -11643,9 +11643,9 @@ void parser_prod___AReadAble___init_areadable(val_t p0, val_t p1, val_t p2, int*
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2184 */
-  CALL_parser_prod___AReadAble___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AReadAble___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2185 */
-  ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2186 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -11655,7 +11655,7 @@ void parser_prod___AReadAble___init_areadable(val_t p0, val_t p1, val_t p2, int*
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -11664,36 +11664,36 @@ void parser_prod___AReadAble___init_areadable(val_t p0, val_t p1, val_t p2, int*
     /* ./parser//parser_prod.nit:2187 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2187);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2187);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:2189 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2189);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2189);
   }
-  ATTR_parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2190 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2190);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2190);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos58] = 1;
   return;
 }
-void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2193;
-  fra.me.meth = LOCATE_parser_prod___AReadAble___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AReadAble___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -11704,7 +11704,7 @@ void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2195 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11713,7 +11713,7 @@ void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -11727,7 +11727,7 @@ void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11736,35 +11736,35 @@ void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2197 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2197);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2197);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2198 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2198);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2198);
       }
       /* ./parser//parser_prod.nit:2199 */
-      ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2201 */
-      ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2203 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2205 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwreadable", LOCATE_parser_prod, 2205);
+    nit_abort("Uninitialized attribute %s", "_n_kwreadable", LOCATE_parser___parser_prod, 2205);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -11777,7 +11777,7 @@ void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -11786,20 +11786,20 @@ void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2207 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2207);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2207);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2208 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwreadable, ID_TKwreadable)) /*cast TKwreadable*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwreadable, ID_parser___parser_nodes___TKwreadable)) /*cast TKwreadable*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2208);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2208);
       }
       /* ./parser//parser_prod.nit:2209 */
-      ATTR_parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2211 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2211);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2211);
     }
     /* ./parser//parser_prod.nit:2213 */
     goto label1;
@@ -11808,15 +11808,15 @@ void parser_prod___AReadAble___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AReadAble___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AReadAble___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2217;
-  fra.me.meth = LOCATE_parser_prod___AReadAble___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AReadAble___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -11825,7 +11825,7 @@ void parser_prod___AReadAble___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2219 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11834,41 +11834,41 @@ void parser_prod___AReadAble___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2220 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2220);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2220);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2222 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwreadable", LOCATE_parser_prod, 2222);
+    nit_abort("Uninitialized attribute %s", "_n_kwreadable", LOCATE_parser___parser_prod, 2222);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AReadAble____n_kwreadable(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AWriteAble___empty_init(val_t p0, int* init_table){
-  int itpos59 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AWriteAble].i;
+void parser___parser_prod___AWriteAble___empty_init(val_t p0, int* init_table){
+  int itpos59 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWriteAble].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos59]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2226;
-  fra.me.meth = LOCATE_parser_prod___AWriteAble___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -11877,17 +11877,17 @@ void parser_prod___AWriteAble___empty_init(val_t p0, int* init_table){
   init_table[itpos59] = 1;
   return;
 }
-void parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos60 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AWriteAble].i;
+void parser___parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos60 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWriteAble].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos60]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2228;
-  fra.me.meth = LOCATE_parser_prod___AWriteAble___init_awriteable;
+  fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___init_awriteable;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -11899,9 +11899,9 @@ void parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, va
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:2234 */
-  CALL_parser_prod___AWriteAble___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AWriteAble___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2235 */
-  ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2236 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -11911,7 +11911,7 @@ void parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -11920,12 +11920,12 @@ void parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, va
     /* ./parser//parser_prod.nit:2237 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2237);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2237);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:2239 */
-  ATTR_parser_nodes___AAble____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2240 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -11935,7 +11935,7 @@ void parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -11944,36 +11944,36 @@ void parser_prod___AWriteAble___init_awriteable(val_t p0, val_t p1, val_t p2, va
     /* ./parser//parser_prod.nit:2241 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2241);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2241);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:2243 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2243);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2243);
   }
-  ATTR_parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:2244 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2244);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2244);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos60] = 1;
   return;
 }
-void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2247;
-  fra.me.meth = LOCATE_parser_prod___AWriteAble___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -11984,7 +11984,7 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2249 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -11993,7 +11993,7 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -12007,7 +12007,7 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12016,26 +12016,26 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2251 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2251);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2251);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2252 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2252);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2252);
       }
       /* ./parser//parser_prod.nit:2253 */
-      ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2255 */
-      ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2257 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2259 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAble____n_visibility(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -12044,7 +12044,7 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -12058,7 +12058,7 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12067,35 +12067,35 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2261 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2261);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2261);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2262 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2262);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2262);
       }
       /* ./parser//parser_prod.nit:2263 */
-      ATTR_parser_nodes___AAble____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2265 */
-      ATTR_parser_nodes___AAble____n_visibility(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2267 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2269 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwwritable", LOCATE_parser_prod, 2269);
+    nit_abort("Uninitialized attribute %s", "_n_kwwritable", LOCATE_parser___parser_prod, 2269);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -12108,7 +12108,7 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12117,20 +12117,20 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2271 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2271);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2271);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2272 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwwritable, ID_TKwwritable)) /*cast TKwwritable*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwwritable, ID_parser___parser_nodes___TKwwritable)) /*cast TKwwritable*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2272);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2272);
       }
       /* ./parser//parser_prod.nit:2273 */
-      ATTR_parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2275 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2275);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2275);
     }
     /* ./parser//parser_prod.nit:2277 */
     goto label1;
@@ -12139,15 +12139,15 @@ void parser_prod___AWriteAble___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AWriteAble___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AWriteAble___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2281;
-  fra.me.meth = LOCATE_parser_prod___AWriteAble___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AWriteAble___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -12156,7 +12156,7 @@ void parser_prod___AWriteAble___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2283 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -12165,23 +12165,23 @@ void parser_prod___AWriteAble___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2284 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwredef, ID_TKwredef)) /*cast TKwredef*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAble____n_kwredef(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwredef, ID_parser___parser_nodes___TKwredef)) /*cast TKwredef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2284);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2284);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2286 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAble____n_visibility(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -12190,41 +12190,41 @@ void parser_prod___AWriteAble___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2287 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAble____n_visibility(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AVisibility, ID_AVisibility)) /*cast AVisibility*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAble____n_visibility(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AVisibility, ID_parser___parser_nodes___AVisibility)) /*cast AVisibility*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2287);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2287);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2289 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwwritable", LOCATE_parser_prod, 2289);
+    nit_abort("Uninitialized attribute %s", "_n_kwwritable", LOCATE_parser___parser_prod, 2289);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AWriteAble____n_kwwritable(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIdMethid___empty_init(val_t p0, int* init_table){
-  int itpos61 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIdMethid].i;
+void parser___parser_prod___AIdMethid___empty_init(val_t p0, int* init_table){
+  int itpos61 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIdMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos61]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2293;
-  fra.me.meth = LOCATE_parser_prod___AIdMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -12233,16 +12233,16 @@ void parser_prod___AIdMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos61] = 1;
   return;
 }
-void parser_prod___AIdMethid___init_aidmethid(val_t p0, val_t p1, int* init_table){
-  int itpos62 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIdMethid].i;
+void parser___parser_prod___AIdMethid___init_aidmethid(val_t p0, val_t p1, int* init_table){
+  int itpos62 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIdMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos62]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2295;
-  fra.me.meth = LOCATE_parser_prod___AIdMethid___init_aidmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___init_aidmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12250,33 +12250,33 @@ void parser_prod___AIdMethid___init_aidmethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2299 */
-  CALL_parser_prod___AIdMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AIdMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2300 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2300);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2300);
   }
-  ATTR_parser_nodes___AIdMethid____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2301 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2301);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2301);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos62] = 1;
   return;
 }
-void parser_prod___AIdMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AIdMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2304;
-  fra.me.meth = LOCATE_parser_prod___AIdMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -12287,16 +12287,16 @@ void parser_prod___AIdMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2306 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIdMethid____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 2306);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2306);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIdMethid____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -12309,7 +12309,7 @@ void parser_prod___AIdMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12318,20 +12318,20 @@ void parser_prod___AIdMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2308 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2308);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2308);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2309 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2309);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2309);
       }
       /* ./parser//parser_prod.nit:2310 */
-      ATTR_parser_nodes___AIdMethid____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2312 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2312);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2312);
     }
     /* ./parser//parser_prod.nit:2314 */
     goto label1;
@@ -12340,14 +12340,14 @@ void parser_prod___AIdMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIdMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AIdMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2318;
-  fra.me.meth = LOCATE_parser_prod___AIdMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AIdMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12355,25 +12355,25 @@ void parser_prod___AIdMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2320 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIdMethid____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 2320);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2320);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AIdMethid____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AIdMethid____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APlusMethid___empty_init(val_t p0, int* init_table){
-  int itpos63 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APlusMethid].i;
+void parser___parser_prod___APlusMethid___empty_init(val_t p0, int* init_table){
+  int itpos63 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos63]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2324;
-  fra.me.meth = LOCATE_parser_prod___APlusMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -12382,16 +12382,16 @@ void parser_prod___APlusMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos63] = 1;
   return;
 }
-void parser_prod___APlusMethid___init_aplusmethid(val_t p0, val_t p1, int* init_table){
-  int itpos64 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APlusMethid].i;
+void parser___parser_prod___APlusMethid___init_aplusmethid(val_t p0, val_t p1, int* init_table){
+  int itpos64 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos64]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2326;
-  fra.me.meth = LOCATE_parser_prod___APlusMethid___init_aplusmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___init_aplusmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12399,33 +12399,33 @@ void parser_prod___APlusMethid___init_aplusmethid(val_t p0, val_t p1, int* init_
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2330 */
-  CALL_parser_prod___APlusMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___APlusMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2331 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2331);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2331);
   }
-  ATTR_parser_nodes___APlusMethid____n_plus(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2332 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2332);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2332);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos64] = 1;
   return;
 }
-void parser_prod___APlusMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___APlusMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2335;
-  fra.me.meth = LOCATE_parser_prod___APlusMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -12436,16 +12436,16 @@ void parser_prod___APlusMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2337 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APlusMethid____n_plus(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_plus", LOCATE_parser_prod, 2337);
+    nit_abort("Uninitialized attribute %s", "_n_plus", LOCATE_parser___parser_prod, 2337);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___APlusMethid____n_plus(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -12458,7 +12458,7 @@ void parser_prod___APlusMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12467,20 +12467,20 @@ void parser_prod___APlusMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2339 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2339);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2339);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2340 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TPlus, ID_TPlus)) /*cast TPlus*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TPlus, ID_parser___parser_nodes___TPlus)) /*cast TPlus*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2340);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2340);
       }
       /* ./parser//parser_prod.nit:2341 */
-      ATTR_parser_nodes___APlusMethid____n_plus(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2343 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2343);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2343);
     }
     /* ./parser//parser_prod.nit:2345 */
     goto label1;
@@ -12489,14 +12489,14 @@ void parser_prod___APlusMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APlusMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___APlusMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2349;
-  fra.me.meth = LOCATE_parser_prod___APlusMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12504,25 +12504,25 @@ void parser_prod___APlusMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2351 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APlusMethid____n_plus(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_plus", LOCATE_parser_prod, 2351);
+    nit_abort("Uninitialized attribute %s", "_n_plus", LOCATE_parser___parser_prod, 2351);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___APlusMethid____n_plus(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___APlusMethid____n_plus(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMinusMethid___empty_init(val_t p0, int* init_table){
-  int itpos65 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMinusMethid].i;
+void parser___parser_prod___AMinusMethid___empty_init(val_t p0, int* init_table){
+  int itpos65 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos65]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2355;
-  fra.me.meth = LOCATE_parser_prod___AMinusMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -12531,16 +12531,16 @@ void parser_prod___AMinusMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos65] = 1;
   return;
 }
-void parser_prod___AMinusMethid___init_aminusmethid(val_t p0, val_t p1, int* init_table){
-  int itpos66 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMinusMethid].i;
+void parser___parser_prod___AMinusMethid___init_aminusmethid(val_t p0, val_t p1, int* init_table){
+  int itpos66 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos66]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2357;
-  fra.me.meth = LOCATE_parser_prod___AMinusMethid___init_aminusmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___init_aminusmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12548,33 +12548,33 @@ void parser_prod___AMinusMethid___init_aminusmethid(val_t p0, val_t p1, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2361 */
-  CALL_parser_prod___AMinusMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AMinusMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2362 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2362);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2362);
   }
-  ATTR_parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2363 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2363);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2363);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos66] = 1;
   return;
 }
-void parser_prod___AMinusMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AMinusMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2366;
-  fra.me.meth = LOCATE_parser_prod___AMinusMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -12585,16 +12585,16 @@ void parser_prod___AMinusMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2368 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AMinusMethid____n_minus(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser_prod, 2368);
+    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 2368);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -12607,7 +12607,7 @@ void parser_prod___AMinusMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12616,20 +12616,20 @@ void parser_prod___AMinusMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2370 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2370);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2370);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2371 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TMinus, ID_TMinus)) /*cast TMinus*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMinus, ID_parser___parser_nodes___TMinus)) /*cast TMinus*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2371);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2371);
       }
       /* ./parser//parser_prod.nit:2372 */
-      ATTR_parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2374 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2374);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2374);
     }
     /* ./parser//parser_prod.nit:2376 */
     goto label1;
@@ -12638,14 +12638,14 @@ void parser_prod___AMinusMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMinusMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AMinusMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2380;
-  fra.me.meth = LOCATE_parser_prod___AMinusMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12653,25 +12653,25 @@ void parser_prod___AMinusMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2382 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AMinusMethid____n_minus(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser_prod, 2382);
+    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 2382);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AMinusMethid____n_minus(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarMethid___empty_init(val_t p0, int* init_table){
-  int itpos67 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarMethid].i;
+void parser___parser_prod___AStarMethid___empty_init(val_t p0, int* init_table){
+  int itpos67 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos67]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2386;
-  fra.me.meth = LOCATE_parser_prod___AStarMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -12680,16 +12680,16 @@ void parser_prod___AStarMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos67] = 1;
   return;
 }
-void parser_prod___AStarMethid___init_astarmethid(val_t p0, val_t p1, int* init_table){
-  int itpos68 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarMethid].i;
+void parser___parser_prod___AStarMethid___init_astarmethid(val_t p0, val_t p1, int* init_table){
+  int itpos68 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos68]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2388;
-  fra.me.meth = LOCATE_parser_prod___AStarMethid___init_astarmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___init_astarmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12697,33 +12697,33 @@ void parser_prod___AStarMethid___init_astarmethid(val_t p0, val_t p1, int* init_
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2392 */
-  CALL_parser_prod___AStarMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AStarMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2393 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2393);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2393);
   }
-  ATTR_parser_nodes___AStarMethid____n_star(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2394 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2394);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2394);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos68] = 1;
   return;
 }
-void parser_prod___AStarMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStarMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2397;
-  fra.me.meth = LOCATE_parser_prod___AStarMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -12734,16 +12734,16 @@ void parser_prod___AStarMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2399 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStarMethid____n_star(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_star", LOCATE_parser_prod, 2399);
+    nit_abort("Uninitialized attribute %s", "_n_star", LOCATE_parser___parser_prod, 2399);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStarMethid____n_star(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -12756,7 +12756,7 @@ void parser_prod___AStarMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12765,20 +12765,20 @@ void parser_prod___AStarMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2401 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2401);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2401);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2402 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TStar, ID_TStar)) /*cast TStar*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TStar, ID_parser___parser_nodes___TStar)) /*cast TStar*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2402);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2402);
       }
       /* ./parser//parser_prod.nit:2403 */
-      ATTR_parser_nodes___AStarMethid____n_star(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2405 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2405);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2405);
     }
     /* ./parser//parser_prod.nit:2407 */
     goto label1;
@@ -12787,14 +12787,14 @@ void parser_prod___AStarMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStarMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2411;
-  fra.me.meth = LOCATE_parser_prod___AStarMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12802,25 +12802,25 @@ void parser_prod___AStarMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2413 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStarMethid____n_star(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_star", LOCATE_parser_prod, 2413);
+    nit_abort("Uninitialized attribute %s", "_n_star", LOCATE_parser___parser_prod, 2413);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AStarMethid____n_star(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AStarMethid____n_star(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASlashMethid___empty_init(val_t p0, int* init_table){
-  int itpos69 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASlashMethid].i;
+void parser___parser_prod___ASlashMethid___empty_init(val_t p0, int* init_table){
+  int itpos69 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos69]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2417;
-  fra.me.meth = LOCATE_parser_prod___ASlashMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -12829,16 +12829,16 @@ void parser_prod___ASlashMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos69] = 1;
   return;
 }
-void parser_prod___ASlashMethid___init_aslashmethid(val_t p0, val_t p1, int* init_table){
-  int itpos70 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASlashMethid].i;
+void parser___parser_prod___ASlashMethid___init_aslashmethid(val_t p0, val_t p1, int* init_table){
+  int itpos70 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos70]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2419;
-  fra.me.meth = LOCATE_parser_prod___ASlashMethid___init_aslashmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___init_aslashmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12846,33 +12846,33 @@ void parser_prod___ASlashMethid___init_aslashmethid(val_t p0, val_t p1, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2423 */
-  CALL_parser_prod___ASlashMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ASlashMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2424 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2424);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2424);
   }
-  ATTR_parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2425 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2425);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2425);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos70] = 1;
   return;
 }
-void parser_prod___ASlashMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASlashMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2428;
-  fra.me.meth = LOCATE_parser_prod___ASlashMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -12883,16 +12883,16 @@ void parser_prod___ASlashMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2430 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASlashMethid____n_slash(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_slash", LOCATE_parser_prod, 2430);
+    nit_abort("Uninitialized attribute %s", "_n_slash", LOCATE_parser___parser_prod, 2430);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -12905,7 +12905,7 @@ void parser_prod___ASlashMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -12914,20 +12914,20 @@ void parser_prod___ASlashMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2432 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2432);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2432);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2433 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TSlash, ID_TSlash)) /*cast TSlash*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TSlash, ID_parser___parser_nodes___TSlash)) /*cast TSlash*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2433);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2433);
       }
       /* ./parser//parser_prod.nit:2434 */
-      ATTR_parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2436 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2436);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2436);
     }
     /* ./parser//parser_prod.nit:2438 */
     goto label1;
@@ -12936,14 +12936,14 @@ void parser_prod___ASlashMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASlashMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASlashMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2442;
-  fra.me.meth = LOCATE_parser_prod___ASlashMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12951,25 +12951,25 @@ void parser_prod___ASlashMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2444 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASlashMethid____n_slash(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_slash", LOCATE_parser_prod, 2444);
+    nit_abort("Uninitialized attribute %s", "_n_slash", LOCATE_parser___parser_prod, 2444);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASlashMethid____n_slash(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APercentMethid___empty_init(val_t p0, int* init_table){
-  int itpos71 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APercentMethid].i;
+void parser___parser_prod___APercentMethid___empty_init(val_t p0, int* init_table){
+  int itpos71 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos71]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2448;
-  fra.me.meth = LOCATE_parser_prod___APercentMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -12978,16 +12978,16 @@ void parser_prod___APercentMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos71] = 1;
   return;
 }
-void parser_prod___APercentMethid___init_apercentmethid(val_t p0, val_t p1, int* init_table){
-  int itpos72 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APercentMethid].i;
+void parser___parser_prod___APercentMethid___init_apercentmethid(val_t p0, val_t p1, int* init_table){
+  int itpos72 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos72]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2450;
-  fra.me.meth = LOCATE_parser_prod___APercentMethid___init_apercentmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___init_apercentmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -12995,33 +12995,33 @@ void parser_prod___APercentMethid___init_apercentmethid(val_t p0, val_t p1, int*
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2454 */
-  CALL_parser_prod___APercentMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___APercentMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2455 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2455);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2455);
   }
-  ATTR_parser_nodes___APercentMethid____n_percent(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2456 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2456);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2456);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos72] = 1;
   return;
 }
-void parser_prod___APercentMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___APercentMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2459;
-  fra.me.meth = LOCATE_parser_prod___APercentMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -13032,16 +13032,16 @@ void parser_prod___APercentMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2461 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APercentMethid____n_percent(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_percent", LOCATE_parser_prod, 2461);
+    nit_abort("Uninitialized attribute %s", "_n_percent", LOCATE_parser___parser_prod, 2461);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___APercentMethid____n_percent(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -13054,7 +13054,7 @@ void parser_prod___APercentMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -13063,20 +13063,20 @@ void parser_prod___APercentMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2463 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2463);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2463);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2464 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TPercent, ID_TPercent)) /*cast TPercent*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TPercent, ID_parser___parser_nodes___TPercent)) /*cast TPercent*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2464);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2464);
       }
       /* ./parser//parser_prod.nit:2465 */
-      ATTR_parser_nodes___APercentMethid____n_percent(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2467 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2467);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2467);
     }
     /* ./parser//parser_prod.nit:2469 */
     goto label1;
@@ -13085,14 +13085,14 @@ void parser_prod___APercentMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APercentMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___APercentMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2473;
-  fra.me.meth = LOCATE_parser_prod___APercentMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13100,25 +13100,25 @@ void parser_prod___APercentMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2475 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APercentMethid____n_percent(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_percent", LOCATE_parser_prod, 2475);
+    nit_abort("Uninitialized attribute %s", "_n_percent", LOCATE_parser___parser_prod, 2475);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___APercentMethid____n_percent(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___APercentMethid____n_percent(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEqMethid___empty_init(val_t p0, int* init_table){
-  int itpos73 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEqMethid].i;
+void parser___parser_prod___AEqMethid___empty_init(val_t p0, int* init_table){
+  int itpos73 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos73]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2479;
-  fra.me.meth = LOCATE_parser_prod___AEqMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -13127,16 +13127,16 @@ void parser_prod___AEqMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos73] = 1;
   return;
 }
-void parser_prod___AEqMethid___init_aeqmethid(val_t p0, val_t p1, int* init_table){
-  int itpos74 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEqMethid].i;
+void parser___parser_prod___AEqMethid___init_aeqmethid(val_t p0, val_t p1, int* init_table){
+  int itpos74 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos74]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2481;
-  fra.me.meth = LOCATE_parser_prod___AEqMethid___init_aeqmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___init_aeqmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13144,33 +13144,33 @@ void parser_prod___AEqMethid___init_aeqmethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2485 */
-  CALL_parser_prod___AEqMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AEqMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2486 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2486);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2486);
   }
-  ATTR_parser_nodes___AEqMethid____n_eq(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2487 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2487);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2487);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos74] = 1;
   return;
 }
-void parser_prod___AEqMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AEqMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2490;
-  fra.me.meth = LOCATE_parser_prod___AEqMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -13181,16 +13181,16 @@ void parser_prod___AEqMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2492 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEqMethid____n_eq(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_eq", LOCATE_parser_prod, 2492);
+    nit_abort("Uninitialized attribute %s", "_n_eq", LOCATE_parser___parser_prod, 2492);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AEqMethid____n_eq(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -13203,7 +13203,7 @@ void parser_prod___AEqMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -13212,20 +13212,20 @@ void parser_prod___AEqMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2494 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2494);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2494);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2495 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TEq, ID_TEq)) /*cast TEq*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TEq, ID_parser___parser_nodes___TEq)) /*cast TEq*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2495);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2495);
       }
       /* ./parser//parser_prod.nit:2496 */
-      ATTR_parser_nodes___AEqMethid____n_eq(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2498 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2498);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2498);
     }
     /* ./parser//parser_prod.nit:2500 */
     goto label1;
@@ -13234,14 +13234,14 @@ void parser_prod___AEqMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEqMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AEqMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2504;
-  fra.me.meth = LOCATE_parser_prod___AEqMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13249,25 +13249,25 @@ void parser_prod___AEqMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2506 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEqMethid____n_eq(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_eq", LOCATE_parser_prod, 2506);
+    nit_abort("Uninitialized attribute %s", "_n_eq", LOCATE_parser___parser_prod, 2506);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AEqMethid____n_eq(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AEqMethid____n_eq(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANeMethid___empty_init(val_t p0, int* init_table){
-  int itpos75 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANeMethid].i;
+void parser___parser_prod___ANeMethid___empty_init(val_t p0, int* init_table){
+  int itpos75 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos75]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2510;
-  fra.me.meth = LOCATE_parser_prod___ANeMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -13276,16 +13276,16 @@ void parser_prod___ANeMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos75] = 1;
   return;
 }
-void parser_prod___ANeMethid___init_anemethid(val_t p0, val_t p1, int* init_table){
-  int itpos76 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANeMethid].i;
+void parser___parser_prod___ANeMethid___init_anemethid(val_t p0, val_t p1, int* init_table){
+  int itpos76 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos76]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2512;
-  fra.me.meth = LOCATE_parser_prod___ANeMethid___init_anemethid;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___init_anemethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13293,33 +13293,33 @@ void parser_prod___ANeMethid___init_anemethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2516 */
-  CALL_parser_prod___ANeMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ANeMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2517 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2517);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2517);
   }
-  ATTR_parser_nodes___ANeMethid____n_ne(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2518 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2518);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2518);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos76] = 1;
   return;
 }
-void parser_prod___ANeMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ANeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2521;
-  fra.me.meth = LOCATE_parser_prod___ANeMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -13330,16 +13330,16 @@ void parser_prod___ANeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2523 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANeMethid____n_ne(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ne", LOCATE_parser_prod, 2523);
+    nit_abort("Uninitialized attribute %s", "_n_ne", LOCATE_parser___parser_prod, 2523);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANeMethid____n_ne(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -13352,7 +13352,7 @@ void parser_prod___ANeMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -13361,20 +13361,20 @@ void parser_prod___ANeMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2525 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2525);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2525);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2526 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TNe, ID_TNe)) /*cast TNe*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TNe, ID_parser___parser_nodes___TNe)) /*cast TNe*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2526);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2526);
       }
       /* ./parser//parser_prod.nit:2527 */
-      ATTR_parser_nodes___ANeMethid____n_ne(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2529 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2529);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2529);
     }
     /* ./parser//parser_prod.nit:2531 */
     goto label1;
@@ -13383,14 +13383,14 @@ void parser_prod___ANeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANeMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ANeMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2535;
-  fra.me.meth = LOCATE_parser_prod___ANeMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13398,25 +13398,25 @@ void parser_prod___ANeMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2537 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANeMethid____n_ne(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ne", LOCATE_parser_prod, 2537);
+    nit_abort("Uninitialized attribute %s", "_n_ne", LOCATE_parser___parser_prod, 2537);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ANeMethid____n_ne(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ANeMethid____n_ne(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALeMethid___empty_init(val_t p0, int* init_table){
-  int itpos77 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALeMethid].i;
+void parser___parser_prod___ALeMethid___empty_init(val_t p0, int* init_table){
+  int itpos77 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos77]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2541;
-  fra.me.meth = LOCATE_parser_prod___ALeMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -13425,16 +13425,16 @@ void parser_prod___ALeMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos77] = 1;
   return;
 }
-void parser_prod___ALeMethid___init_alemethid(val_t p0, val_t p1, int* init_table){
-  int itpos78 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALeMethid].i;
+void parser___parser_prod___ALeMethid___init_alemethid(val_t p0, val_t p1, int* init_table){
+  int itpos78 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos78]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2543;
-  fra.me.meth = LOCATE_parser_prod___ALeMethid___init_alemethid;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___init_alemethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13442,33 +13442,33 @@ void parser_prod___ALeMethid___init_alemethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2547 */
-  CALL_parser_prod___ALeMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ALeMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2548 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2548);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2548);
   }
-  ATTR_parser_nodes___ALeMethid____n_le(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2549 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2549);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2549);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos78] = 1;
   return;
 }
-void parser_prod___ALeMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2552;
-  fra.me.meth = LOCATE_parser_prod___ALeMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -13479,16 +13479,16 @@ void parser_prod___ALeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2554 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALeMethid____n_le(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_le", LOCATE_parser_prod, 2554);
+    nit_abort("Uninitialized attribute %s", "_n_le", LOCATE_parser___parser_prod, 2554);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ALeMethid____n_le(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -13501,7 +13501,7 @@ void parser_prod___ALeMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -13510,20 +13510,20 @@ void parser_prod___ALeMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2556 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2556);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2556);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2557 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TLe, ID_TLe)) /*cast TLe*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TLe, ID_parser___parser_nodes___TLe)) /*cast TLe*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2557);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2557);
       }
       /* ./parser//parser_prod.nit:2558 */
-      ATTR_parser_nodes___ALeMethid____n_le(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2560 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2560);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2560);
     }
     /* ./parser//parser_prod.nit:2562 */
     goto label1;
@@ -13532,14 +13532,14 @@ void parser_prod___ALeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALeMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALeMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2566;
-  fra.me.meth = LOCATE_parser_prod___ALeMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13547,25 +13547,25 @@ void parser_prod___ALeMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2568 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALeMethid____n_le(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_le", LOCATE_parser_prod, 2568);
+    nit_abort("Uninitialized attribute %s", "_n_le", LOCATE_parser___parser_prod, 2568);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ALeMethid____n_le(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ALeMethid____n_le(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGeMethid___empty_init(val_t p0, int* init_table){
-  int itpos79 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGeMethid].i;
+void parser___parser_prod___AGeMethid___empty_init(val_t p0, int* init_table){
+  int itpos79 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos79]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2572;
-  fra.me.meth = LOCATE_parser_prod___AGeMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -13574,16 +13574,16 @@ void parser_prod___AGeMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos79] = 1;
   return;
 }
-void parser_prod___AGeMethid___init_agemethid(val_t p0, val_t p1, int* init_table){
-  int itpos80 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGeMethid].i;
+void parser___parser_prod___AGeMethid___init_agemethid(val_t p0, val_t p1, int* init_table){
+  int itpos80 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos80]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2574;
-  fra.me.meth = LOCATE_parser_prod___AGeMethid___init_agemethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___init_agemethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13591,33 +13591,33 @@ void parser_prod___AGeMethid___init_agemethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2578 */
-  CALL_parser_prod___AGeMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AGeMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2579 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2579);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2579);
   }
-  ATTR_parser_nodes___AGeMethid____n_ge(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2580 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2580);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2580);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos80] = 1;
   return;
 }
-void parser_prod___AGeMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AGeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2583;
-  fra.me.meth = LOCATE_parser_prod___AGeMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -13628,16 +13628,16 @@ void parser_prod___AGeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2585 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AGeMethid____n_ge(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ge", LOCATE_parser_prod, 2585);
+    nit_abort("Uninitialized attribute %s", "_n_ge", LOCATE_parser___parser_prod, 2585);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AGeMethid____n_ge(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -13650,7 +13650,7 @@ void parser_prod___AGeMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -13659,20 +13659,20 @@ void parser_prod___AGeMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2587 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2587);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2587);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2588 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TGe, ID_TGe)) /*cast TGe*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TGe, ID_parser___parser_nodes___TGe)) /*cast TGe*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2588);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2588);
       }
       /* ./parser//parser_prod.nit:2589 */
-      ATTR_parser_nodes___AGeMethid____n_ge(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2591 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2591);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2591);
     }
     /* ./parser//parser_prod.nit:2593 */
     goto label1;
@@ -13681,14 +13681,14 @@ void parser_prod___AGeMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGeMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AGeMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2597;
-  fra.me.meth = LOCATE_parser_prod___AGeMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13696,25 +13696,25 @@ void parser_prod___AGeMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2599 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AGeMethid____n_ge(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ge", LOCATE_parser_prod, 2599);
+    nit_abort("Uninitialized attribute %s", "_n_ge", LOCATE_parser___parser_prod, 2599);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AGeMethid____n_ge(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AGeMethid____n_ge(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALtMethid___empty_init(val_t p0, int* init_table){
-  int itpos81 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALtMethid].i;
+void parser___parser_prod___ALtMethid___empty_init(val_t p0, int* init_table){
+  int itpos81 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos81]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2603;
-  fra.me.meth = LOCATE_parser_prod___ALtMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -13723,16 +13723,16 @@ void parser_prod___ALtMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos81] = 1;
   return;
 }
-void parser_prod___ALtMethid___init_altmethid(val_t p0, val_t p1, int* init_table){
-  int itpos82 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALtMethid].i;
+void parser___parser_prod___ALtMethid___init_altmethid(val_t p0, val_t p1, int* init_table){
+  int itpos82 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos82]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2605;
-  fra.me.meth = LOCATE_parser_prod___ALtMethid___init_altmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___init_altmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13740,33 +13740,33 @@ void parser_prod___ALtMethid___init_altmethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2609 */
-  CALL_parser_prod___ALtMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ALtMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2610 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2610);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2610);
   }
-  ATTR_parser_nodes___ALtMethid____n_lt(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2611 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2611);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2611);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos82] = 1;
   return;
 }
-void parser_prod___ALtMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALtMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2614;
-  fra.me.meth = LOCATE_parser_prod___ALtMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -13777,16 +13777,16 @@ void parser_prod___ALtMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2616 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALtMethid____n_lt(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_lt", LOCATE_parser_prod, 2616);
+    nit_abort("Uninitialized attribute %s", "_n_lt", LOCATE_parser___parser_prod, 2616);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ALtMethid____n_lt(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -13799,7 +13799,7 @@ void parser_prod___ALtMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -13808,20 +13808,20 @@ void parser_prod___ALtMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2618 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2618);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2618);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2619 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TLt, ID_TLt)) /*cast TLt*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TLt, ID_parser___parser_nodes___TLt)) /*cast TLt*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2619);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2619);
       }
       /* ./parser//parser_prod.nit:2620 */
-      ATTR_parser_nodes___ALtMethid____n_lt(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2622 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2622);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2622);
     }
     /* ./parser//parser_prod.nit:2624 */
     goto label1;
@@ -13830,14 +13830,14 @@ void parser_prod___ALtMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALtMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALtMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2628;
-  fra.me.meth = LOCATE_parser_prod___ALtMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13845,25 +13845,25 @@ void parser_prod___ALtMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2630 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALtMethid____n_lt(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_lt", LOCATE_parser_prod, 2630);
+    nit_abort("Uninitialized attribute %s", "_n_lt", LOCATE_parser___parser_prod, 2630);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ALtMethid____n_lt(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ALtMethid____n_lt(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGtMethid___empty_init(val_t p0, int* init_table){
-  int itpos83 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGtMethid].i;
+void parser___parser_prod___AGtMethid___empty_init(val_t p0, int* init_table){
+  int itpos83 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos83]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2634;
-  fra.me.meth = LOCATE_parser_prod___AGtMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -13872,16 +13872,16 @@ void parser_prod___AGtMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos83] = 1;
   return;
 }
-void parser_prod___AGtMethid___init_agtmethid(val_t p0, val_t p1, int* init_table){
-  int itpos84 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGtMethid].i;
+void parser___parser_prod___AGtMethid___init_agtmethid(val_t p0, val_t p1, int* init_table){
+  int itpos84 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos84]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2636;
-  fra.me.meth = LOCATE_parser_prod___AGtMethid___init_agtmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___init_agtmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13889,33 +13889,33 @@ void parser_prod___AGtMethid___init_agtmethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2640 */
-  CALL_parser_prod___AGtMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AGtMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2641 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2641);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2641);
   }
-  ATTR_parser_nodes___AGtMethid____n_gt(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2642 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2642);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2642);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos84] = 1;
   return;
 }
-void parser_prod___AGtMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AGtMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2645;
-  fra.me.meth = LOCATE_parser_prod___AGtMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -13926,16 +13926,16 @@ void parser_prod___AGtMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2647 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AGtMethid____n_gt(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_gt", LOCATE_parser_prod, 2647);
+    nit_abort("Uninitialized attribute %s", "_n_gt", LOCATE_parser___parser_prod, 2647);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AGtMethid____n_gt(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -13948,7 +13948,7 @@ void parser_prod___AGtMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -13957,20 +13957,20 @@ void parser_prod___AGtMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2649 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2649);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2649);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2650 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TGt, ID_TGt)) /*cast TGt*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TGt, ID_parser___parser_nodes___TGt)) /*cast TGt*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2650);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2650);
       }
       /* ./parser//parser_prod.nit:2651 */
-      ATTR_parser_nodes___AGtMethid____n_gt(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2653 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2653);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2653);
     }
     /* ./parser//parser_prod.nit:2655 */
     goto label1;
@@ -13979,14 +13979,14 @@ void parser_prod___AGtMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGtMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AGtMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2659;
-  fra.me.meth = LOCATE_parser_prod___AGtMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -13994,25 +13994,25 @@ void parser_prod___AGtMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2661 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AGtMethid____n_gt(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_gt", LOCATE_parser_prod, 2661);
+    nit_abort("Uninitialized attribute %s", "_n_gt", LOCATE_parser___parser_prod, 2661);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AGtMethid____n_gt(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AGtMethid____n_gt(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALlMethid___empty_init(val_t p0, int* init_table){
-  int itpos85 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALlMethid].i;
+void parser___parser_prod___ALlMethid___empty_init(val_t p0, int* init_table){
+  int itpos85 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos85]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2665;
-  fra.me.meth = LOCATE_parser_prod___ALlMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -14021,16 +14021,16 @@ void parser_prod___ALlMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos85] = 1;
   return;
 }
-void parser_prod___ALlMethid___init_allmethid(val_t p0, val_t p1, int* init_table){
-  int itpos86 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALlMethid].i;
+void parser___parser_prod___ALlMethid___init_allmethid(val_t p0, val_t p1, int* init_table){
+  int itpos86 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos86]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2667;
-  fra.me.meth = LOCATE_parser_prod___ALlMethid___init_allmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___init_allmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -14038,33 +14038,33 @@ void parser_prod___ALlMethid___init_allmethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2671 */
-  CALL_parser_prod___ALlMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ALlMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2672 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2672);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2672);
   }
-  ATTR_parser_nodes___ALlMethid____n_ll(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2673 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2673);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2673);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos86] = 1;
   return;
 }
-void parser_prod___ALlMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALlMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2676;
-  fra.me.meth = LOCATE_parser_prod___ALlMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -14075,16 +14075,16 @@ void parser_prod___ALlMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2678 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALlMethid____n_ll(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ll", LOCATE_parser_prod, 2678);
+    nit_abort("Uninitialized attribute %s", "_n_ll", LOCATE_parser___parser_prod, 2678);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ALlMethid____n_ll(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -14097,7 +14097,7 @@ void parser_prod___ALlMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -14106,20 +14106,20 @@ void parser_prod___ALlMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2680 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2680);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2680);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2681 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TLl, ID_TLl)) /*cast TLl*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TLl, ID_parser___parser_nodes___TLl)) /*cast TLl*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2681);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2681);
       }
       /* ./parser//parser_prod.nit:2682 */
-      ATTR_parser_nodes___ALlMethid____n_ll(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2684 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2684);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2684);
     }
     /* ./parser//parser_prod.nit:2686 */
     goto label1;
@@ -14128,14 +14128,14 @@ void parser_prod___ALlMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALlMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALlMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2690;
-  fra.me.meth = LOCATE_parser_prod___ALlMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -14143,25 +14143,25 @@ void parser_prod___ALlMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2692 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALlMethid____n_ll(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ll", LOCATE_parser_prod, 2692);
+    nit_abort("Uninitialized attribute %s", "_n_ll", LOCATE_parser___parser_prod, 2692);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ALlMethid____n_ll(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ALlMethid____n_ll(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGgMethid___empty_init(val_t p0, int* init_table){
-  int itpos87 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGgMethid].i;
+void parser___parser_prod___AGgMethid___empty_init(val_t p0, int* init_table){
+  int itpos87 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos87]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2696;
-  fra.me.meth = LOCATE_parser_prod___AGgMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -14170,16 +14170,16 @@ void parser_prod___AGgMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos87] = 1;
   return;
 }
-void parser_prod___AGgMethid___init_aggmethid(val_t p0, val_t p1, int* init_table){
-  int itpos88 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGgMethid].i;
+void parser___parser_prod___AGgMethid___init_aggmethid(val_t p0, val_t p1, int* init_table){
+  int itpos88 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos88]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2698;
-  fra.me.meth = LOCATE_parser_prod___AGgMethid___init_aggmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___init_aggmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -14187,33 +14187,33 @@ void parser_prod___AGgMethid___init_aggmethid(val_t p0, val_t p1, int* init_tabl
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2702 */
-  CALL_parser_prod___AGgMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AGgMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2703 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2703);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2703);
   }
-  ATTR_parser_nodes___AGgMethid____n_gg(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2704 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2704);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2704);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos88] = 1;
   return;
 }
-void parser_prod___AGgMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AGgMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2707;
-  fra.me.meth = LOCATE_parser_prod___AGgMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -14224,16 +14224,16 @@ void parser_prod___AGgMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2709 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AGgMethid____n_gg(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_gg", LOCATE_parser_prod, 2709);
+    nit_abort("Uninitialized attribute %s", "_n_gg", LOCATE_parser___parser_prod, 2709);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AGgMethid____n_gg(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -14246,7 +14246,7 @@ void parser_prod___AGgMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -14255,20 +14255,20 @@ void parser_prod___AGgMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2711 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2711);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2711);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2712 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TGg, ID_TGg)) /*cast TGg*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TGg, ID_parser___parser_nodes___TGg)) /*cast TGg*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2712);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2712);
       }
       /* ./parser//parser_prod.nit:2713 */
-      ATTR_parser_nodes___AGgMethid____n_gg(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2715 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2715);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2715);
     }
     /* ./parser//parser_prod.nit:2717 */
     goto label1;
@@ -14277,14 +14277,14 @@ void parser_prod___AGgMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGgMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AGgMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2721;
-  fra.me.meth = LOCATE_parser_prod___AGgMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -14292,25 +14292,25 @@ void parser_prod___AGgMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2723 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AGgMethid____n_gg(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_gg", LOCATE_parser_prod, 2723);
+    nit_abort("Uninitialized attribute %s", "_n_gg", LOCATE_parser___parser_prod, 2723);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AGgMethid____n_gg(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AGgMethid____n_gg(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABraMethid___empty_init(val_t p0, int* init_table){
-  int itpos89 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraMethid].i;
+void parser___parser_prod___ABraMethid___empty_init(val_t p0, int* init_table){
+  int itpos89 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos89]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2727;
-  fra.me.meth = LOCATE_parser_prod___ABraMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -14319,16 +14319,16 @@ void parser_prod___ABraMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos89] = 1;
   return;
 }
-void parser_prod___ABraMethid___init_abramethid(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos90 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraMethid].i;
+void parser___parser_prod___ABraMethid___init_abramethid(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos90 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos90]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2729;
-  fra.me.meth = LOCATE_parser_prod___ABraMethid___init_abramethid;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___init_abramethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -14338,46 +14338,46 @@ void parser_prod___ABraMethid___init_abramethid(val_t p0, val_t p1, val_t p2, in
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2734 */
-  CALL_parser_prod___ABraMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ABraMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2735 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2735);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2735);
   }
-  ATTR_parser_nodes___ABraMethid____n_obra(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2736 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2736);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2736);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2737 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2737);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2737);
   }
-  ATTR_parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2738 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2738);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2738);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos90] = 1;
   return;
 }
-void parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2741;
-  fra.me.meth = LOCATE_parser_prod___ABraMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -14388,16 +14388,16 @@ void parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2743 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser_prod, 2743);
+    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2743);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraMethid____n_obra(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -14410,7 +14410,7 @@ void parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -14419,35 +14419,35 @@ void parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2745 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2745);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2745);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2746 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TObra, ID_TObra)) /*cast TObra*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TObra, ID_parser___parser_nodes___TObra)) /*cast TObra*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2746);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2746);
       }
       /* ./parser//parser_prod.nit:2747 */
-      ATTR_parser_nodes___ABraMethid____n_obra(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2749 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2749);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2749);
     }
     /* ./parser//parser_prod.nit:2751 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2753 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser_prod, 2753);
+    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2753);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -14460,7 +14460,7 @@ void parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -14469,20 +14469,20 @@ void parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2755 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2755);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2755);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2756 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TCbra, ID_TCbra)) /*cast TCbra*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TCbra, ID_parser___parser_nodes___TCbra)) /*cast TCbra*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2756);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2756);
       }
       /* ./parser//parser_prod.nit:2757 */
-      ATTR_parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2759 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2759);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2759);
     }
     /* ./parser//parser_prod.nit:2761 */
     goto label1;
@@ -14491,14 +14491,14 @@ void parser_prod___ABraMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABraMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABraMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2765;
-  fra.me.meth = LOCATE_parser_prod___ABraMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -14507,33 +14507,33 @@ void parser_prod___ABraMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2767 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser_prod, 2767);
+    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2767);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ABraMethid____n_obra(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABraMethid____n_obra(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2768 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser_prod, 2768);
+    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2768);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABraMethid____n_cbra(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarshipMethid___empty_init(val_t p0, int* init_table){
-  int itpos91 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarshipMethid].i;
+void parser___parser_prod___AStarshipMethid___empty_init(val_t p0, int* init_table){
+  int itpos91 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos91]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2772;
-  fra.me.meth = LOCATE_parser_prod___AStarshipMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -14542,16 +14542,16 @@ void parser_prod___AStarshipMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos91] = 1;
   return;
 }
-void parser_prod___AStarshipMethid___init_astarshipmethid(val_t p0, val_t p1, int* init_table){
-  int itpos92 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarshipMethid].i;
+void parser___parser_prod___AStarshipMethid___init_astarshipmethid(val_t p0, val_t p1, int* init_table){
+  int itpos92 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos92]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2774;
-  fra.me.meth = LOCATE_parser_prod___AStarshipMethid___init_astarshipmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___init_astarshipmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -14559,33 +14559,33 @@ void parser_prod___AStarshipMethid___init_astarshipmethid(val_t p0, val_t p1, in
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2778 */
-  CALL_parser_prod___AStarshipMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AStarshipMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2779 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2779);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2779);
   }
-  ATTR_parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2780 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2780);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2780);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos92] = 1;
   return;
 }
-void parser_prod___AStarshipMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStarshipMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2783;
-  fra.me.meth = LOCATE_parser_prod___AStarshipMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -14596,16 +14596,16 @@ void parser_prod___AStarshipMethid___replace_child(val_t p0, val_t p1, val_t p2)
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2785 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_starship", LOCATE_parser_prod, 2785);
+    nit_abort("Uninitialized attribute %s", "_n_starship", LOCATE_parser___parser_prod, 2785);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -14618,7 +14618,7 @@ void parser_prod___AStarshipMethid___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -14627,20 +14627,20 @@ void parser_prod___AStarshipMethid___replace_child(val_t p0, val_t p1, val_t p2)
       /* ./parser//parser_prod.nit:2787 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2787);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2787);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2788 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TStarship, ID_TStarship)) /*cast TStarship*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TStarship, ID_parser___parser_nodes___TStarship)) /*cast TStarship*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2788);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2788);
       }
       /* ./parser//parser_prod.nit:2789 */
-      ATTR_parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2791 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2791);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2791);
     }
     /* ./parser//parser_prod.nit:2793 */
     goto label1;
@@ -14649,14 +14649,14 @@ void parser_prod___AStarshipMethid___replace_child(val_t p0, val_t p1, val_t p2)
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarshipMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStarshipMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2797;
-  fra.me.meth = LOCATE_parser_prod___AStarshipMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -14664,25 +14664,25 @@ void parser_prod___AStarshipMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2799 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_starship", LOCATE_parser_prod, 2799);
+    nit_abort("Uninitialized attribute %s", "_n_starship", LOCATE_parser___parser_prod, 2799);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AStarshipMethid____n_starship(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAssignMethid___empty_init(val_t p0, int* init_table){
-  int itpos93 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAssignMethid].i;
+void parser___parser_prod___AAssignMethid___empty_init(val_t p0, int* init_table){
+  int itpos93 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssignMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos93]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2803;
-  fra.me.meth = LOCATE_parser_prod___AAssignMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -14691,16 +14691,16 @@ void parser_prod___AAssignMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos93] = 1;
   return;
 }
-void parser_prod___AAssignMethid___init_aassignmethid(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos94 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAssignMethid].i;
+void parser___parser_prod___AAssignMethid___init_aassignmethid(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos94 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssignMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos94]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2805;
-  fra.me.meth = LOCATE_parser_prod___AAssignMethid___init_aassignmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___init_aassignmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -14710,46 +14710,46 @@ void parser_prod___AAssignMethid___init_aassignmethid(val_t p0, val_t p1, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2810 */
-  CALL_parser_prod___AAssignMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AAssignMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2811 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2811);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2811);
   }
-  ATTR_parser_nodes___AAssignMethid____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2812 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2812);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2812);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2813 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2813);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2813);
   }
-  ATTR_parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2814 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2814);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2814);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos94] = 1;
   return;
 }
-void parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2817;
-  fra.me.meth = LOCATE_parser_prod___AAssignMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -14760,16 +14760,16 @@ void parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2819 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignMethid____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 2819);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2819);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignMethid____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -14782,7 +14782,7 @@ void parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -14791,35 +14791,35 @@ void parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2821 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2821);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2821);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2822 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2822);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2822);
       }
       /* ./parser//parser_prod.nit:2823 */
-      ATTR_parser_nodes___AAssignMethid____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2825 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2825);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2825);
     }
     /* ./parser//parser_prod.nit:2827 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2829 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 2829);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2829);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -14832,7 +14832,7 @@ void parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -14841,20 +14841,20 @@ void parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2831 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2831);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2831);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2832 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2832);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2832);
       }
       /* ./parser//parser_prod.nit:2833 */
-      ATTR_parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2835 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2835);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2835);
     }
     /* ./parser//parser_prod.nit:2837 */
     goto label1;
@@ -14863,14 +14863,14 @@ void parser_prod___AAssignMethid___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAssignMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAssignMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2841;
-  fra.me.meth = LOCATE_parser_prod___AAssignMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssignMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -14879,33 +14879,33 @@ void parser_prod___AAssignMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2843 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignMethid____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 2843);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 2843);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAssignMethid____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignMethid____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2844 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 2844);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2844);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignMethid____n_assign(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABraassignMethid___empty_init(val_t p0, int* init_table){
-  int itpos95 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraassignMethid].i;
+void parser___parser_prod___ABraassignMethid___empty_init(val_t p0, int* init_table){
+  int itpos95 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraassignMethid].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos95]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2848;
-  fra.me.meth = LOCATE_parser_prod___ABraassignMethid___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -14914,16 +14914,16 @@ void parser_prod___ABraassignMethid___empty_init(val_t p0, int* init_table){
   init_table[itpos95] = 1;
   return;
 }
-void parser_prod___ABraassignMethid___init_abraassignmethid(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos96 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraassignMethid].i;
+void parser___parser_prod___ABraassignMethid___init_abraassignmethid(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos96 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraassignMethid].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos96]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2850;
-  fra.me.meth = LOCATE_parser_prod___ABraassignMethid___init_abraassignmethid;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___init_abraassignmethid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -14935,59 +14935,59 @@ void parser_prod___ABraassignMethid___init_abraassignmethid(val_t p0, val_t p1,
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:2856 */
-  CALL_parser_prod___ABraassignMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ABraassignMethid___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2857 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2857);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2857);
   }
-  ATTR_parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2858 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2858);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2858);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2859 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2859);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2859);
   }
-  ATTR_parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2860 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2860);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2860);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2861 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2861);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2861);
   }
-  ATTR_parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:2862 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2862);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2862);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos96] = 1;
   return;
 }
-void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2865;
-  fra.me.meth = LOCATE_parser_prod___ABraassignMethid___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -14998,16 +14998,16 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2867 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser_prod, 2867);
+    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2867);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -15020,7 +15020,7 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -15029,35 +15029,35 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
       /* ./parser//parser_prod.nit:2869 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2869);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2869);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2870 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TObra, ID_TObra)) /*cast TObra*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TObra, ID_parser___parser_nodes___TObra)) /*cast TObra*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2870);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2870);
       }
       /* ./parser//parser_prod.nit:2871 */
-      ATTR_parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2873 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2873);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2873);
     }
     /* ./parser//parser_prod.nit:2875 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2877 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser_prod, 2877);
+    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2877);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -15070,7 +15070,7 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -15079,35 +15079,35 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
       /* ./parser//parser_prod.nit:2879 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2879);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2879);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2880 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TCbra, ID_TCbra)) /*cast TCbra*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TCbra, ID_parser___parser_nodes___TCbra)) /*cast TCbra*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2880);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2880);
       }
       /* ./parser//parser_prod.nit:2881 */
-      ATTR_parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2883 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2883);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2883);
     }
     /* ./parser//parser_prod.nit:2885 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2887 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 2887);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2887);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -15120,7 +15120,7 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -15129,20 +15129,20 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
       /* ./parser//parser_prod.nit:2889 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2889);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2889);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2890 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2890);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2890);
       }
       /* ./parser//parser_prod.nit:2891 */
-      ATTR_parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2893 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 2893);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 2893);
     }
     /* ./parser//parser_prod.nit:2895 */
     goto label1;
@@ -15151,14 +15151,14 @@ void parser_prod___ABraassignMethid___replace_child(val_t p0, val_t p1, val_t p2
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABraassignMethid___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABraassignMethid___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2899;
-  fra.me.meth = LOCATE_parser_prod___ABraassignMethid___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraassignMethid___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -15167,41 +15167,41 @@ void parser_prod___ABraassignMethid___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2901 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser_prod, 2901);
+    nit_abort("Uninitialized attribute %s", "_n_obra", LOCATE_parser___parser_prod, 2901);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABraassignMethid____n_obra(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2902 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser_prod, 2902);
+    nit_abort("Uninitialized attribute %s", "_n_cbra", LOCATE_parser___parser_prod, 2902);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABraassignMethid____n_cbra(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:2903 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 2903);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 2903);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABraassignMethid____n_assign(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASignature___empty_init(val_t p0, int* init_table){
-  int itpos97 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASignature].i;
+void parser___parser_prod___ASignature___empty_init(val_t p0, int* init_table){
+  int itpos97 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASignature].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos97]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2907;
-  fra.me.meth = LOCATE_parser_prod___ASignature___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ASignature___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -15210,17 +15210,17 @@ void parser_prod___ASignature___empty_init(val_t p0, int* init_table){
   init_table[itpos97] = 1;
   return;
 }
-void parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos98 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASignature].i;
+void parser___parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos98 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASignature].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos98]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2909;
-  fra.me.meth = LOCATE_parser_prod___ASignature___init_asignature;
+  fra.me.meth = LOCATE_parser___parser_prod___ASignature___init_asignature;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -15232,10 +15232,10 @@ void parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, va
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:2915 */
-  CALL_parser_prod___ASignature___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___ASignature___init_asignature_1));
+  CALL_parser___parser_prod___ASignature___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___init_asignature_1));
   /* ./parser//parser_prod.nit:2921 */
-  ATTR_parser_nodes___ASignature____n_type(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2922 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -15245,7 +15245,7 @@ void parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -15254,25 +15254,25 @@ void parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, va
     /* ./parser//parser_prod.nit:2923 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2923);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2923);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___ASignature___init_asignature_2));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___init_asignature_2));
   stack_frame_head = fra.me.prev;
   init_table[itpos98] = 1;
   return;
 }
-  void OC_parser_prod___ASignature___init_asignature_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASignature___init_asignature_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:2916 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASignature___init_asignature;
+    fra.me.meth = LOCATE_parser___parser_prod___ASignature___init_asignature;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -15282,34 +15282,34 @@ void parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, va
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:2917 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AParam, ID_AParam)) /*cast AParam*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AParam, ID_parser___parser_nodes___AParam)) /*cast AParam*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2917);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2917);
     }
     /* ./parser//parser_prod.nit:2918 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ASignature____n_params(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser_prod, 2918);
+      nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2918);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ASignature____n_params(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ASignature____n_params(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:2919 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___ASignature___init_asignature_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASignature___init_asignature_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:2925 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASignature___init_asignature;
+    fra.me.meth = LOCATE_parser___parser_prod___ASignature___init_asignature;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -15319,25 +15319,25 @@ void parser_prod___ASignature___init_asignature(val_t p0, val_t p1, val_t p2, va
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:2926 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AClosureDecl, ID_AClosureDecl)) /*cast AClosureDecl*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDecl, ID_parser___parser_nodes___AClosureDecl)) /*cast AClosureDecl*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2926);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2926);
     }
     /* ./parser//parser_prod.nit:2927 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ASignature____n_closure_decls(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser_prod, 2927);
+      nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2927);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ASignature____n_closure_decls(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:2928 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -15346,9 +15346,9 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2932;
-  fra.me.meth = LOCATE_parser_prod___ASignature___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ASignature___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -15360,29 +15360,29 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:2934 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser_prod, 2934);
+    nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2934);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:2934 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:2935 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser_prod, 2935);
+        nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2935);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -15391,7 +15391,7 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -15405,59 +15405,59 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:2937 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AParam, ID_AParam)) /*cast AParam*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AParam, ID_parser___parser_nodes___AParam)) /*cast AParam*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2937);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2937);
           }
           /* ./parser//parser_prod.nit:2938 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser_prod, 2938);
+            nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2938);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:2939 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2939);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2939);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:2941 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser_prod, 2941);
+            nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2941);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:2943 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
   /* ./parser//parser_prod.nit:2946 */
-  fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -15466,7 +15466,7 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -15480,7 +15480,7 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -15489,49 +15489,49 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:2948 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2948);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2948);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:2949 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2949);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2949);
       }
       /* ./parser//parser_prod.nit:2950 */
-      ATTR_parser_nodes___ASignature____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:2952 */
-      ATTR_parser_nodes___ASignature____n_type(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:2954 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:2956 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser_prod, 2956);
+    nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2956);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:2956 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:2957 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser_prod, 2957);
+        nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2957);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -15540,7 +15540,7 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -15554,53 +15554,53 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:2959 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AClosureDecl, ID_AClosureDecl)) /*cast AClosureDecl*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDecl, ID_parser___parser_nodes___AClosureDecl)) /*cast AClosureDecl*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 2959);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 2959);
           }
           /* ./parser//parser_prod.nit:2960 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser_prod, 2960);
+            nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2960);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:2961 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2961);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2961);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:2963 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser_prod, 2963);
+            nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2963);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:2965 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label3;
     }
   }
@@ -15609,15 +15609,15 @@ void parser_prod___ASignature___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASignature___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASignature___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2970;
-  fra.me.meth = LOCATE_parser_prod___ASignature___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ASignature___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -15626,15 +15626,15 @@ void parser_prod___ASignature___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:2972 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser_prod, 2972);
+    nit_abort("Uninitialized attribute %s", "_n_params", LOCATE_parser___parser_prod, 2972);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASignature____n_params(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ASignature___visit_all_1));
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASignature____n_params(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___visit_all_1));
   /* ./parser//parser_prod.nit:2975 */
-  fra.me.REG[2] = ATTR_parser_nodes___ASignature____n_type(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -15643,40 +15643,40 @@ void parser_prod___ASignature___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:2976 */
-    fra.me.REG[2] = ATTR_parser_nodes___ASignature____n_type(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ASignature____n_type(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2976);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2976);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:2978 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser_prod, 2978);
+    nit_abort("Uninitialized attribute %s", "_n_closure_decls", LOCATE_parser___parser_prod, 2978);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ASignature___visit_all_2));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASignature____n_closure_decls(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASignature___visit_all_2));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ASignature___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASignature___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASignature___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ASignature___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -15685,18 +15685,18 @@ void parser_prod___ASignature___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:2973 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___ASignature___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASignature___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASignature___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ASignature___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -15705,19 +15705,19 @@ void parser_prod___ASignature___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:2979 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AParam___empty_init(val_t p0, int* init_table){
-  int itpos99 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AParam].i;
+void parser___parser_prod___AParam___empty_init(val_t p0, int* init_table){
+  int itpos99 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParam].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos99]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2984;
-  fra.me.meth = LOCATE_parser_prod___AParam___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AParam___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -15726,17 +15726,17 @@ void parser_prod___AParam___empty_init(val_t p0, int* init_table){
   init_table[itpos99] = 1;
   return;
 }
-void parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos100 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AParam].i;
+void parser___parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos100 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParam].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos100]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 2986;
-  fra.me.meth = LOCATE_parser_prod___AParam___init_aparam;
+  fra.me.meth = LOCATE_parser___parser_prod___AParam___init_aparam;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -15748,22 +15748,22 @@ void parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3,
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:2992 */
-  CALL_parser_prod___AParam___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AParam___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:2993 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 2993);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 2993);
   }
-  ATTR_parser_nodes___AParam____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:2994 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2994);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2994);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:2995 */
-  ATTR_parser_nodes___AParam____n_type(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:2996 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -15773,7 +15773,7 @@ void parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -15782,12 +15782,12 @@ void parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3,
     /* ./parser//parser_prod.nit:2997 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 2997);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 2997);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:2999 */
-  ATTR_parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3000 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -15797,7 +15797,7 @@ void parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -15806,23 +15806,23 @@ void parser_prod___AParam___init_aparam(val_t p0, val_t p1, val_t p2, val_t p3,
     /* ./parser//parser_prod.nit:3001 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3001);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3001);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos100] = 1;
   return;
 }
-void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3005;
-  fra.me.meth = LOCATE_parser_prod___AParam___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AParam___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -15833,16 +15833,16 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3007 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AParam____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3007);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3007);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AParam____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -15855,7 +15855,7 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -15864,26 +15864,26 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3009 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3009);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3009);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3010 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3010);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3010);
       }
       /* ./parser//parser_prod.nit:3011 */
-      ATTR_parser_nodes___AParam____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3013 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3013);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3013);
     }
     /* ./parser//parser_prod.nit:3015 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3017 */
-  fra.me.REG[3] = ATTR_parser_nodes___AParam____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -15892,7 +15892,7 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -15906,7 +15906,7 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -15915,26 +15915,26 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3019 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3019);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3019);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3020 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3020);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3020);
       }
       /* ./parser//parser_prod.nit:3021 */
-      ATTR_parser_nodes___AParam____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3023 */
-      ATTR_parser_nodes___AParam____n_type(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3025 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3027 */
-  fra.me.REG[3] = ATTR_parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -15943,7 +15943,7 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -15957,7 +15957,7 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -15966,20 +15966,20 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3029 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3029);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3029);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3030 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TDotdotdot, ID_TDotdotdot)) /*cast TDotdotdot*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TDotdotdot, ID_parser___parser_nodes___TDotdotdot)) /*cast TDotdotdot*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3030);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3030);
       }
       /* ./parser//parser_prod.nit:3031 */
-      ATTR_parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3033 */
-      ATTR_parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3035 */
     goto label1;
@@ -15988,15 +15988,15 @@ void parser_prod___AParam___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AParam___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AParam___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3039;
-  fra.me.meth = LOCATE_parser_prod___AParam___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AParam___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -16005,15 +16005,15 @@ void parser_prod___AParam___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3041 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AParam____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3041);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3041);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AParam____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AParam____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3042 */
-  fra.me.REG[2] = ATTR_parser_nodes___AParam____n_type(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16022,23 +16022,23 @@ void parser_prod___AParam___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3043 */
-    fra.me.REG[2] = ATTR_parser_nodes___AParam____n_type(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AParam____n_type(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3043);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3043);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3045 */
-  fra.me.REG[2] = ATTR_parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16047,33 +16047,33 @@ void parser_prod___AParam___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3046 */
-    fra.me.REG[0] = ATTR_parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_TDotdotdot, ID_TDotdotdot)) /*cast TDotdotdot*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AParam____n_dotdotdot(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TDotdotdot, ID_parser___parser_nodes___TDotdotdot)) /*cast TDotdotdot*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3046);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3046);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AClosureDecl___empty_init(val_t p0, int* init_table){
-  int itpos101 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AClosureDecl].i;
+void parser___parser_prod___AClosureDecl___empty_init(val_t p0, int* init_table){
+  int itpos101 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDecl].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos101]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3051;
-  fra.me.meth = LOCATE_parser_prod___AClosureDecl___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -16082,17 +16082,17 @@ void parser_prod___AClosureDecl___empty_init(val_t p0, int* init_table){
   init_table[itpos101] = 1;
   return;
 }
-void parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
-  int itpos102 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AClosureDecl].i;
+void parser___parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
+  int itpos102 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDecl].i;
   struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos102]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3053;
-  fra.me.meth = LOCATE_parser_prod___AClosureDecl___init_aclosuredecl;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___init_aclosuredecl;
   fra.me.has_broke = 0;
   fra.me.REG_size = 6;
   fra.me.REG[0] = NIT_NULL;
@@ -16108,9 +16108,9 @@ void parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2
   fra.me.REG[4] = p4;
   fra.me.REG[5] = p5;
   /* ./parser//parser_prod.nit:3061 */
-  CALL_parser_prod___AClosureDecl___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AClosureDecl___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3062 */
-  ATTR_parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3063 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -16120,7 +16120,7 @@ void parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -16129,51 +16129,51 @@ void parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:3064 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3064);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3064);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3066 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3066);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3066);
   }
-  ATTR_parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3067 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3067);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3067);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3068 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3068);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3068);
   }
-  ATTR_parser_nodes___AClosureDecl____n_id(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3069 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3069);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3069);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3070 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3070);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3070);
   }
-  ATTR_parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:3071 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3071);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3071);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3072 */
-  ATTR_parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:3073 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -16183,7 +16183,7 @@ void parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -16192,23 +16192,23 @@ void parser_prod___AClosureDecl___init_aclosuredecl(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:3074 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3074);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3074);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos102] = 1;
   return;
 }
-void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3078;
-  fra.me.meth = LOCATE_parser_prod___AClosureDecl___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -16219,7 +16219,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3080 */
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16228,7 +16228,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -16242,7 +16242,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -16251,35 +16251,35 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3082 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3082);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3082);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3083 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3083);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3083);
       }
       /* ./parser//parser_prod.nit:3084 */
-      ATTR_parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3086 */
-      ATTR_parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3088 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3090 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDecl____n_bang(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser_prod, 3090);
+    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 3090);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -16292,7 +16292,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -16301,35 +16301,35 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3092 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3092);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3092);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3093 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TBang, ID_TBang)) /*cast TBang*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TBang, ID_parser___parser_nodes___TBang)) /*cast TBang*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3093);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3093);
       }
       /* ./parser//parser_prod.nit:3094 */
-      ATTR_parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3096 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3096);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3096);
     }
     /* ./parser//parser_prod.nit:3098 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3100 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDecl____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3100);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3100);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDecl____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -16342,7 +16342,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -16351,35 +16351,35 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3102 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3102);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3102);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3103 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3103);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3103);
       }
       /* ./parser//parser_prod.nit:3104 */
-      ATTR_parser_nodes___AClosureDecl____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3106 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3106);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3106);
     }
     /* ./parser//parser_prod.nit:3108 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3110 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDecl____n_signature(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_signature", LOCATE_parser_prod, 3110);
+    nit_abort("Uninitialized attribute %s", "_n_signature", LOCATE_parser___parser_prod, 3110);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -16392,7 +16392,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -16401,26 +16401,26 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3112 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3112);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3112);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3113 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ASignature, ID_ASignature)) /*cast ASignature*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ASignature, ID_parser___parser_nodes___ASignature)) /*cast ASignature*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3113);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3113);
       }
       /* ./parser//parser_prod.nit:3114 */
-      ATTR_parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3116 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3116);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3116);
     }
     /* ./parser//parser_prod.nit:3118 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3120 */
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16429,7 +16429,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -16443,7 +16443,7 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -16452,20 +16452,20 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3122 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3122);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3122);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3123 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3123);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3123);
       }
       /* ./parser//parser_prod.nit:3124 */
-      ATTR_parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3126 */
-      ATTR_parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3128 */
     goto label1;
@@ -16474,15 +16474,15 @@ void parser_prod___AClosureDecl___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AClosureDecl___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AClosureDecl___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3132;
-  fra.me.meth = LOCATE_parser_prod___AClosureDecl___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDecl___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -16491,7 +16491,7 @@ void parser_prod___AClosureDecl___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3134 */
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16500,47 +16500,47 @@ void parser_prod___AClosureDecl___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3135 */
-    fra.me.REG[2] = ATTR_parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDecl____n_kwbreak(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3135);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3135);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3137 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDecl____n_bang(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser_prod, 3137);
+    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 3137);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDecl____n_bang(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3138 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDecl____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3138);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3138);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDecl____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDecl____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3139 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDecl____n_signature(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_signature", LOCATE_parser_prod, 3139);
+    nit_abort("Uninitialized attribute %s", "_n_signature", LOCATE_parser___parser_prod, 3139);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDecl____n_signature(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3140 */
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16549,33 +16549,33 @@ void parser_prod___AClosureDecl___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3141 */
-    fra.me.REG[0] = ATTR_parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AClosureDecl____n_expr(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3141);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3141);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AType___empty_init(val_t p0, int* init_table){
-  int itpos103 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AType].i;
+void parser___parser_prod___AType___empty_init(val_t p0, int* init_table){
+  int itpos103 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AType].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos103]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3146;
-  fra.me.meth = LOCATE_parser_prod___AType___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AType___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -16584,17 +16584,17 @@ void parser_prod___AType___empty_init(val_t p0, int* init_table){
   init_table[itpos103] = 1;
   return;
 }
-void parser_prod___AType___init_atype(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos104 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AType].i;
+void parser___parser_prod___AType___init_atype(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos104 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AType].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos104]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3148;
-  fra.me.meth = LOCATE_parser_prod___AType___init_atype;
+  fra.me.meth = LOCATE_parser___parser_prod___AType___init_atype;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -16606,9 +16606,9 @@ void parser_prod___AType___init_atype(val_t p0, val_t p1, val_t p2, val_t p3, in
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:3154 */
-  CALL_parser_prod___AType___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AType___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3155 */
-  ATTR_parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3156 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -16618,7 +16618,7 @@ void parser_prod___AType___init_atype(val_t p0, val_t p1, val_t p2, val_t p3, in
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -16627,38 +16627,38 @@ void parser_prod___AType___init_atype(val_t p0, val_t p1, val_t p2, val_t p3, in
     /* ./parser//parser_prod.nit:3157 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3157);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3157);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3159 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3159);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3159);
   }
-  ATTR_parser_nodes___AType____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3160 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3160);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3160);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___AType___init_atype_1));
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AType___init_atype_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos104] = 1;
   return;
 }
-  void OC_parser_prod___AType___init_atype_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AType___init_atype_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:3161 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AType___init_atype;
+    fra.me.meth = LOCATE_parser___parser_prod___AType___init_atype;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -16668,25 +16668,25 @@ void parser_prod___AType___init_atype(val_t p0, val_t p1, val_t p2, val_t p3, in
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:3162 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AType, ID_AType)) /*cast AType*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3162);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3162);
     }
     /* ./parser//parser_prod.nit:3163 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AType____n_types(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser_prod, 3163);
+      nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3163);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AType____n_types(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AType____n_types(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:3164 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -16695,9 +16695,9 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3168;
-  fra.me.meth = LOCATE_parser_prod___AType___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AType___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -16708,7 +16708,7 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3170 */
-  fra.me.REG[3] = ATTR_parser_nodes___AType____n_kwnullable(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16717,7 +16717,7 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -16731,7 +16731,7 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -16740,35 +16740,35 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3172 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3172);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3172);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3173 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnullable, ID_TKwnullable)) /*cast TKwnullable*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3173);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3173);
       }
       /* ./parser//parser_prod.nit:3174 */
-      ATTR_parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3176 */
-      ATTR_parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3178 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3180 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AType____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3180);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3180);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AType____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -16781,7 +16781,7 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -16790,49 +16790,49 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3182 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3182);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3182);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3183 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3183);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3183);
       }
       /* ./parser//parser_prod.nit:3184 */
-      ATTR_parser_nodes___AType____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3186 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3186);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3186);
     }
     /* ./parser//parser_prod.nit:3188 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3190 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser_prod, 3190);
+    nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3190);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AType____n_types(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:3190 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:3191 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser_prod, 3191);
+        nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3191);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AType____n_types(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -16841,7 +16841,7 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -16855,53 +16855,53 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:3193 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3193);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3193);
           }
           /* ./parser//parser_prod.nit:3194 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser_prod, 3194);
+            nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3194);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AType____n_types(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:3195 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3195);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3195);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:3197 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser_prod, 3197);
+            nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3197);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AType____n_types(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:3199 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -16910,15 +16910,15 @@ void parser_prod___AType___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AType___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AType___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3204;
-  fra.me.meth = LOCATE_parser_prod___AType___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AType___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -16927,7 +16927,7 @@ void parser_prod___AType___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3206 */
-  fra.me.REG[2] = ATTR_parser_nodes___AType____n_kwnullable(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -16936,48 +16936,48 @@ void parser_prod___AType___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3207 */
-    fra.me.REG[2] = ATTR_parser_nodes___AType____n_kwnullable(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnullable, ID_TKwnullable)) /*cast TKwnullable*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AType____n_kwnullable(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3207);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3207);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3209 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AType____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3209);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3209);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AType____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AType____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3210 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser_prod, 3210);
+    nit_abort("Uninitialized attribute %s", "_n_types", LOCATE_parser___parser_prod, 3210);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AType____n_types(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AType___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AType____n_types(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AType___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AType___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AType___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AType___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AType___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -16986,19 +16986,19 @@ void parser_prod___AType___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:3211 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ALabel___empty_init(val_t p0, int* init_table){
-  int itpos105 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALabel].i;
+void parser___parser_prod___ALabel___empty_init(val_t p0, int* init_table){
+  int itpos105 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALabel].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos105]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3216;
-  fra.me.meth = LOCATE_parser_prod___ALabel___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ALabel___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -17007,16 +17007,16 @@ void parser_prod___ALabel___empty_init(val_t p0, int* init_table){
   init_table[itpos105] = 1;
   return;
 }
-void parser_prod___ALabel___init_alabel(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos106 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALabel].i;
+void parser___parser_prod___ALabel___init_alabel(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos106 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALabel].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos106]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3218;
-  fra.me.meth = LOCATE_parser_prod___ALabel___init_alabel;
+  fra.me.meth = LOCATE_parser___parser_prod___ALabel___init_alabel;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -17026,46 +17026,46 @@ void parser_prod___ALabel___init_alabel(val_t p0, val_t p1, val_t p2, int* init_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3223 */
-  CALL_parser_prod___ALabel___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ALabel___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3224 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3224);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3224);
   }
-  ATTR_parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3225 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3225);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3225);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3226 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3226);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3226);
   }
-  ATTR_parser_nodes___ALabel____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3227 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3227);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3227);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos106] = 1;
   return;
 }
-void parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3230;
-  fra.me.meth = LOCATE_parser_prod___ALabel___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ALabel___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -17076,16 +17076,16 @@ void parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3232 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALabel____n_kwlabel(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwlabel", LOCATE_parser_prod, 3232);
+    nit_abort("Uninitialized attribute %s", "_n_kwlabel", LOCATE_parser___parser_prod, 3232);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -17098,7 +17098,7 @@ void parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -17107,35 +17107,35 @@ void parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3234 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3234);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3234);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3235 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwlabel, ID_TKwlabel)) /*cast TKwlabel*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwlabel, ID_parser___parser_nodes___TKwlabel)) /*cast TKwlabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3235);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3235);
       }
       /* ./parser//parser_prod.nit:3236 */
-      ATTR_parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3238 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3238);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3238);
     }
     /* ./parser//parser_prod.nit:3240 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3242 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALabel____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3242);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3242);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ALabel____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -17148,7 +17148,7 @@ void parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -17157,20 +17157,20 @@ void parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3244 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3244);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3244);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3245 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3245);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3245);
       }
       /* ./parser//parser_prod.nit:3246 */
-      ATTR_parser_nodes___ALabel____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3248 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3248);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3248);
     }
     /* ./parser//parser_prod.nit:3250 */
     goto label1;
@@ -17179,14 +17179,14 @@ void parser_prod___ALabel___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALabel___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALabel___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3254;
-  fra.me.meth = LOCATE_parser_prod___ALabel___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ALabel___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -17195,33 +17195,33 @@ void parser_prod___ALabel___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3256 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALabel____n_kwlabel(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwlabel", LOCATE_parser_prod, 3256);
+    nit_abort("Uninitialized attribute %s", "_n_kwlabel", LOCATE_parser___parser_prod, 3256);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabel____n_kwlabel(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3257 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALabel____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3257);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3257);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ALabel____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ALabel____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABlockExpr___empty_init(val_t p0, int* init_table){
-  int itpos107 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABlockExpr].i;
+void parser___parser_prod___ABlockExpr___empty_init(val_t p0, int* init_table){
+  int itpos107 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABlockExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos107]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3261;
-  fra.me.meth = LOCATE_parser_prod___ABlockExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -17230,15 +17230,15 @@ void parser_prod___ABlockExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos107] = 1;
   return;
 }
-void parser_prod___ABlockExpr___init_ablockexpr(val_t p0, val_t p1, int* init_table){
-  int itpos108 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABlockExpr].i;
+void parser___parser_prod___ABlockExpr___init_ablockexpr(val_t p0, val_t p1, int* init_table){
+  int itpos108 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABlockExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   if (init_table[itpos108]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3263;
-  fra.me.meth = LOCATE_parser_prod___ABlockExpr___init_ablockexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___init_ablockexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -17246,22 +17246,22 @@ void parser_prod___ABlockExpr___init_ablockexpr(val_t p0, val_t p1, int* init_ta
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3267 */
-  CALL_parser_prod___ABlockExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___ABlockExpr___init_ablockexpr_1));
+  CALL_parser___parser_prod___ABlockExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABlockExpr___init_ablockexpr_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos108] = 1;
   return;
 }
-  void OC_parser_prod___ABlockExpr___init_ablockexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABlockExpr___init_ablockexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
     /* ./parser//parser_prod.nit:3268 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABlockExpr___init_ablockexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___init_ablockexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -17271,25 +17271,25 @@ void parser_prod___ABlockExpr___init_ablockexpr(val_t p0, val_t p1, int* init_ta
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:3269 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3269);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3269);
     }
     /* ./parser//parser_prod.nit:3270 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ABlockExpr____n_expr(closctx->REG[0])!=NIT_NULL);
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3270);
+      nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3270);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ABlockExpr____n_expr(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
     /* ./parser//parser_prod.nit:3271 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -17298,9 +17298,9 @@ void parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3275;
-  fra.me.meth = LOCATE_parser_prod___ABlockExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -17312,29 +17312,29 @@ void parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3277 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3277);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3277);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
       /* ./parser//parser_prod.nit:3277 */
       REGB2 = REGB0;
       /* ./parser//parser_prod.nit:3278 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3278);
+        nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3278);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -17343,7 +17343,7 @@ void parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
@@ -17357,53 +17357,53 @@ void parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
           /* ./parser//parser_prod.nit:3280 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3280);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3280);
           }
           /* ./parser//parser_prod.nit:3281 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3281);
+            nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3281);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
           /* ./parser//parser_prod.nit:3282 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3282);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3282);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
           /* ./parser//parser_prod.nit:3284 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3284);
+            nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3284);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
         /* ./parser//parser_prod.nit:3286 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -17412,14 +17412,14 @@ void parser_prod___ABlockExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABlockExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABlockExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3291;
-  fra.me.meth = LOCATE_parser_prod___ABlockExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -17427,24 +17427,24 @@ void parser_prod___ABlockExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3293 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3293);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3293);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ABlockExpr___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABlockExpr____n_expr(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABlockExpr___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ABlockExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABlockExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABlockExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ABlockExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -17453,19 +17453,19 @@ void parser_prod___ABlockExpr___visit_all(val_t p0, val_t p1){
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
     /* ./parser//parser_prod.nit:3294 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AVardeclExpr___empty_init(val_t p0, int* init_table){
-  int itpos109 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVardeclExpr].i;
+void parser___parser_prod___AVardeclExpr___empty_init(val_t p0, int* init_table){
+  int itpos109 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVardeclExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos109]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3299;
-  fra.me.meth = LOCATE_parser_prod___AVardeclExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -17474,17 +17474,17 @@ void parser_prod___AVardeclExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos109] = 1;
   return;
 }
-void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
-  int itpos110 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVardeclExpr].i;
+void parser___parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
+  int itpos110 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVardeclExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos110]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3301;
-  fra.me.meth = LOCATE_parser_prod___AVardeclExpr___init_avardeclexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___init_avardeclexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 6;
   fra.me.REG[0] = NIT_NULL;
@@ -17500,35 +17500,35 @@ void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2
   fra.me.REG[4] = p4;
   fra.me.REG[5] = p5;
   /* ./parser//parser_prod.nit:3309 */
-  CALL_parser_prod___AVardeclExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AVardeclExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3310 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3310);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3310);
   }
-  ATTR_parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3311 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3311);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3311);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3312 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3312);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3312);
   }
-  ATTR_parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3313 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3313);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3313);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3314 */
-  ATTR_parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3315 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -17538,7 +17538,7 @@ void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -17547,12 +17547,12 @@ void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:3316 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3316);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3316);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3318 */
-  ATTR_parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:3319 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -17562,7 +17562,7 @@ void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -17571,12 +17571,12 @@ void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:3320 */
     REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3320);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3320);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3322 */
-  ATTR_parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:3323 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -17586,7 +17586,7 @@ void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -17595,23 +17595,23 @@ void parser_prod___AVardeclExpr___init_avardeclexpr(val_t p0, val_t p1, val_t p2
     /* ./parser//parser_prod.nit:3324 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3324);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3324);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos110] = 1;
   return;
 }
-void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3328;
-  fra.me.meth = LOCATE_parser_prod___AVardeclExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -17622,16 +17622,16 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3330 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser_prod, 3330);
+    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 3330);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -17644,7 +17644,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -17653,35 +17653,35 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3332 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3332);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3332);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3333 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwvar, ID_TKwvar)) /*cast TKwvar*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwvar, ID_parser___parser_nodes___TKwvar)) /*cast TKwvar*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3333);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3333);
       }
       /* ./parser//parser_prod.nit:3334 */
-      ATTR_parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3336 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3336);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3336);
     }
     /* ./parser//parser_prod.nit:3338 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3340 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVardeclExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3340);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3340);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -17694,7 +17694,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -17703,26 +17703,26 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3342 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3342);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3342);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3343 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3343);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3343);
       }
       /* ./parser//parser_prod.nit:3344 */
-      ATTR_parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3346 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3346);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3346);
     }
     /* ./parser//parser_prod.nit:3348 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3350 */
-  fra.me.REG[3] = ATTR_parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -17731,7 +17731,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -17745,7 +17745,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -17754,26 +17754,26 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3352 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3352);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3352);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3353 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3353);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3353);
       }
       /* ./parser//parser_prod.nit:3354 */
-      ATTR_parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3356 */
-      ATTR_parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3358 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3360 */
-  fra.me.REG[3] = ATTR_parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -17782,7 +17782,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -17796,7 +17796,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -17805,26 +17805,26 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3362 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3362);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3362);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3363 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3363);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3363);
       }
       /* ./parser//parser_prod.nit:3364 */
-      ATTR_parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3366 */
-      ATTR_parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3368 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3370 */
-  fra.me.REG[3] = ATTR_parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -17833,7 +17833,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -17847,7 +17847,7 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -17856,20 +17856,20 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3372 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3372);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3372);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3373 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3373);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3373);
       }
       /* ./parser//parser_prod.nit:3374 */
-      ATTR_parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3376 */
-      ATTR_parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3378 */
     goto label1;
@@ -17878,15 +17878,15 @@ void parser_prod___AVardeclExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AVardeclExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AVardeclExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3382;
-  fra.me.meth = LOCATE_parser_prod___AVardeclExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AVardeclExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -17895,23 +17895,23 @@ void parser_prod___AVardeclExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3384 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser_prod, 3384);
+    nit_abort("Uninitialized attribute %s", "_n_kwvar", LOCATE_parser___parser_prod, 3384);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_kwvar(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3385 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVardeclExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 3385);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 3385);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3386 */
-  fra.me.REG[2] = ATTR_parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -17920,23 +17920,23 @@ void parser_prod___AVardeclExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3387 */
-    fra.me.REG[2] = ATTR_parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_type(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3387);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3387);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3389 */
-  fra.me.REG[2] = ATTR_parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -17945,23 +17945,23 @@ void parser_prod___AVardeclExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3390 */
-    fra.me.REG[2] = ATTR_parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_assign(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3390);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3390);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3392 */
-  fra.me.REG[2] = ATTR_parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -17970,33 +17970,33 @@ void parser_prod___AVardeclExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3393 */
-    fra.me.REG[0] = ATTR_parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AVardeclExpr____n_expr(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3393);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3393);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AReturnExpr___empty_init(val_t p0, int* init_table){
-  int itpos111 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AReturnExpr].i;
+void parser___parser_prod___AReturnExpr___empty_init(val_t p0, int* init_table){
+  int itpos111 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReturnExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos111]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3398;
-  fra.me.meth = LOCATE_parser_prod___AReturnExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -18005,17 +18005,17 @@ void parser_prod___AReturnExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos111] = 1;
   return;
 }
-void parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos112 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AReturnExpr].i;
+void parser___parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos112 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AReturnExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos112]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3400;
-  fra.me.meth = LOCATE_parser_prod___AReturnExpr___init_areturnexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___init_areturnexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -18025,9 +18025,9 @@ void parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3405 */
-  CALL_parser_prod___AReturnExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AReturnExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3406 */
-  ATTR_parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3407 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -18037,7 +18037,7 @@ void parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -18046,12 +18046,12 @@ void parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2,
     /* ./parser//parser_prod.nit:3408 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3408);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3408);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3410 */
-  ATTR_parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3411 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -18061,7 +18061,7 @@ void parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -18070,23 +18070,23 @@ void parser_prod___AReturnExpr___init_areturnexpr(val_t p0, val_t p1, val_t p2,
     /* ./parser//parser_prod.nit:3412 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3412);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3412);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos112] = 1;
   return;
 }
-void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3416;
-  fra.me.meth = LOCATE_parser_prod___AReturnExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -18097,7 +18097,7 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3418 */
-  fra.me.REG[3] = ATTR_parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18106,7 +18106,7 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -18120,7 +18120,7 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18129,26 +18129,26 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3420 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3420);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3420);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3421 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwreturn, ID_parser___parser_nodes___TKwreturn)) /*cast TKwreturn*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3421);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3421);
       }
       /* ./parser//parser_prod.nit:3422 */
-      ATTR_parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3424 */
-      ATTR_parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3426 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3428 */
-  fra.me.REG[3] = ATTR_parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18157,7 +18157,7 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -18171,7 +18171,7 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18180,20 +18180,20 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3430 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3430);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3430);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3431 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3431);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3431);
       }
       /* ./parser//parser_prod.nit:3432 */
-      ATTR_parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3434 */
-      ATTR_parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3436 */
     goto label1;
@@ -18202,15 +18202,15 @@ void parser_prod___AReturnExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AReturnExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AReturnExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3440;
-  fra.me.meth = LOCATE_parser_prod___AReturnExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AReturnExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -18219,7 +18219,7 @@ void parser_prod___AReturnExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3442 */
-  fra.me.REG[2] = ATTR_parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18228,23 +18228,23 @@ void parser_prod___AReturnExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3443 */
-    fra.me.REG[2] = ATTR_parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwreturn, ID_TKwreturn)) /*cast TKwreturn*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AReturnExpr____n_kwreturn(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwreturn, ID_parser___parser_nodes___TKwreturn)) /*cast TKwreturn*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3443);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3443);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3445 */
-  fra.me.REG[2] = ATTR_parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18253,33 +18253,33 @@ void parser_prod___AReturnExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3446 */
-    fra.me.REG[0] = ATTR_parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AReturnExpr____n_expr(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3446);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3446);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABreakExpr___empty_init(val_t p0, int* init_table){
-  int itpos113 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABreakExpr].i;
+void parser___parser_prod___ABreakExpr___empty_init(val_t p0, int* init_table){
+  int itpos113 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos113]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3451;
-  fra.me.meth = LOCATE_parser_prod___ABreakExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -18288,17 +18288,17 @@ void parser_prod___ABreakExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos113] = 1;
   return;
 }
-void parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos114 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABreakExpr].i;
+void parser___parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos114 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos114]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3453;
-  fra.me.meth = LOCATE_parser_prod___ABreakExpr___init_abreakexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___init_abreakexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -18310,22 +18310,22 @@ void parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, va
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:3459 */
-  CALL_parser_prod___ABreakExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ABreakExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3460 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3460);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3460);
   }
-  ATTR_parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3461 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3461);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3461);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3462 */
-  ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3463 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -18335,7 +18335,7 @@ void parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -18344,12 +18344,12 @@ void parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, va
     /* ./parser//parser_prod.nit:3464 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3464);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3464);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3466 */
-  ATTR_parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3467 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -18359,7 +18359,7 @@ void parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -18368,23 +18368,23 @@ void parser_prod___ABreakExpr___init_abreakexpr(val_t p0, val_t p1, val_t p2, va
     /* ./parser//parser_prod.nit:3468 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3468);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3468);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos114] = 1;
   return;
 }
-void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3472;
-  fra.me.meth = LOCATE_parser_prod___ABreakExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -18395,16 +18395,16 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3474 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser_prod, 3474);
+    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 3474);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -18417,7 +18417,7 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18426,26 +18426,26 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3476 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3476);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3476);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3477 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3477);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3477);
       }
       /* ./parser//parser_prod.nit:3478 */
-      ATTR_parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3480 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3480);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3480);
     }
     /* ./parser//parser_prod.nit:3482 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3484 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18454,7 +18454,7 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -18468,7 +18468,7 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18477,26 +18477,26 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3486 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3486);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3486);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3487 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3487);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3487);
       }
       /* ./parser//parser_prod.nit:3488 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3490 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3492 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3494 */
-  fra.me.REG[3] = ATTR_parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18505,7 +18505,7 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -18519,7 +18519,7 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18528,20 +18528,20 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3496 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3496);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3496);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3497 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3497);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3497);
       }
       /* ./parser//parser_prod.nit:3498 */
-      ATTR_parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3500 */
-      ATTR_parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3502 */
     goto label1;
@@ -18550,15 +18550,15 @@ void parser_prod___ABreakExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABreakExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABreakExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3506;
-  fra.me.meth = LOCATE_parser_prod___ABreakExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -18567,15 +18567,15 @@ void parser_prod___ABreakExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3508 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser_prod, 3508);
+    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 3508);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABreakExpr____n_kwbreak(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3509 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18584,23 +18584,23 @@ void parser_prod___ABreakExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3510 */
-    fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3510);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3510);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3512 */
-  fra.me.REG[2] = ATTR_parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18609,33 +18609,33 @@ void parser_prod___ABreakExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3513 */
-    fra.me.REG[0] = ATTR_parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___ABreakExpr____n_expr(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3513);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3513);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAbortExpr___empty_init(val_t p0, int* init_table){
-  int itpos115 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAbortExpr].i;
+void parser___parser_prod___AAbortExpr___empty_init(val_t p0, int* init_table){
+  int itpos115 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbortExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos115]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3518;
-  fra.me.meth = LOCATE_parser_prod___AAbortExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -18644,16 +18644,16 @@ void parser_prod___AAbortExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos115] = 1;
   return;
 }
-void parser_prod___AAbortExpr___init_aabortexpr(val_t p0, val_t p1, int* init_table){
-  int itpos116 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAbortExpr].i;
+void parser___parser_prod___AAbortExpr___init_aabortexpr(val_t p0, val_t p1, int* init_table){
+  int itpos116 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAbortExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos116]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3520;
-  fra.me.meth = LOCATE_parser_prod___AAbortExpr___init_aabortexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___init_aabortexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -18661,33 +18661,33 @@ void parser_prod___AAbortExpr___init_aabortexpr(val_t p0, val_t p1, int* init_ta
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3524 */
-  CALL_parser_prod___AAbortExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AAbortExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3525 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3525);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3525);
   }
-  ATTR_parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3526 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3526);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3526);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos116] = 1;
   return;
 }
-void parser_prod___AAbortExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAbortExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3529;
-  fra.me.meth = LOCATE_parser_prod___AAbortExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -18698,16 +18698,16 @@ void parser_prod___AAbortExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3531 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwabort", LOCATE_parser_prod, 3531);
+    nit_abort("Uninitialized attribute %s", "_n_kwabort", LOCATE_parser___parser_prod, 3531);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -18720,7 +18720,7 @@ void parser_prod___AAbortExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18729,20 +18729,20 @@ void parser_prod___AAbortExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3533 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3533);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3533);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3534 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwabort, ID_TKwabort)) /*cast TKwabort*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwabort, ID_parser___parser_nodes___TKwabort)) /*cast TKwabort*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3534);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3534);
       }
       /* ./parser//parser_prod.nit:3535 */
-      ATTR_parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3537 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3537);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3537);
     }
     /* ./parser//parser_prod.nit:3539 */
     goto label1;
@@ -18751,14 +18751,14 @@ void parser_prod___AAbortExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAbortExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAbortExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3543;
-  fra.me.meth = LOCATE_parser_prod___AAbortExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AAbortExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -18766,25 +18766,25 @@ void parser_prod___AAbortExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3545 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwabort", LOCATE_parser_prod, 3545);
+    nit_abort("Uninitialized attribute %s", "_n_kwabort", LOCATE_parser___parser_prod, 3545);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAbortExpr____n_kwabort(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AContinueExpr___empty_init(val_t p0, int* init_table){
-  int itpos117 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AContinueExpr].i;
+void parser___parser_prod___AContinueExpr___empty_init(val_t p0, int* init_table){
+  int itpos117 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AContinueExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos117]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3549;
-  fra.me.meth = LOCATE_parser_prod___AContinueExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -18793,17 +18793,17 @@ void parser_prod___AContinueExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos117] = 1;
   return;
 }
-void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos118 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AContinueExpr].i;
+void parser___parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos118 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AContinueExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos118]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3551;
-  fra.me.meth = LOCATE_parser_prod___AContinueExpr___init_acontinueexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___init_acontinueexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -18815,9 +18815,9 @@ void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:3557 */
-  CALL_parser_prod___AContinueExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AContinueExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3558 */
-  ATTR_parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3559 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -18827,7 +18827,7 @@ void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -18836,12 +18836,12 @@ void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t
     /* ./parser//parser_prod.nit:3560 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3560);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3560);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3562 */
-  ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3563 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -18851,7 +18851,7 @@ void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -18860,12 +18860,12 @@ void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t
     /* ./parser//parser_prod.nit:3564 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3564);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3564);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3566 */
-  ATTR_parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3567 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -18875,7 +18875,7 @@ void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -18884,23 +18884,23 @@ void parser_prod___AContinueExpr___init_acontinueexpr(val_t p0, val_t p1, val_t
     /* ./parser//parser_prod.nit:3568 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3568);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3568);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos118] = 1;
   return;
 }
-void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3572;
-  fra.me.meth = LOCATE_parser_prod___AContinueExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -18911,7 +18911,7 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3574 */
-  fra.me.REG[3] = ATTR_parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18920,7 +18920,7 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -18934,7 +18934,7 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18943,26 +18943,26 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3576 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3576);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3576);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3577 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwcontinue, ID_TKwcontinue)) /*cast TKwcontinue*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwcontinue, ID_parser___parser_nodes___TKwcontinue)) /*cast TKwcontinue*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3577);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3577);
       }
       /* ./parser//parser_prod.nit:3578 */
-      ATTR_parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3580 */
-      ATTR_parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3582 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3584 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -18971,7 +18971,7 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -18985,7 +18985,7 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -18994,26 +18994,26 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3586 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3586);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3586);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3587 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3587);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3587);
       }
       /* ./parser//parser_prod.nit:3588 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3590 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3592 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3594 */
-  fra.me.REG[3] = ATTR_parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19022,7 +19022,7 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -19036,7 +19036,7 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19045,20 +19045,20 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3596 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3596);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3596);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3597 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3597);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3597);
       }
       /* ./parser//parser_prod.nit:3598 */
-      ATTR_parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3600 */
-      ATTR_parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3602 */
     goto label1;
@@ -19067,15 +19067,15 @@ void parser_prod___AContinueExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AContinueExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AContinueExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3606;
-  fra.me.meth = LOCATE_parser_prod___AContinueExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AContinueExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -19084,7 +19084,7 @@ void parser_prod___AContinueExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3608 */
-  fra.me.REG[2] = ATTR_parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19093,23 +19093,23 @@ void parser_prod___AContinueExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3609 */
-    fra.me.REG[2] = ATTR_parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwcontinue, ID_TKwcontinue)) /*cast TKwcontinue*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AContinueExpr____n_kwcontinue(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwcontinue, ID_parser___parser_nodes___TKwcontinue)) /*cast TKwcontinue*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3609);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3609);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3611 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19118,23 +19118,23 @@ void parser_prod___AContinueExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3612 */
-    fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3612);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3612);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3614 */
-  fra.me.REG[2] = ATTR_parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19143,33 +19143,33 @@ void parser_prod___AContinueExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3615 */
-    fra.me.REG[0] = ATTR_parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AContinueExpr____n_expr(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3615);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3615);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ADoExpr___empty_init(val_t p0, int* init_table){
-  int itpos119 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ADoExpr].i;
+void parser___parser_prod___ADoExpr___empty_init(val_t p0, int* init_table){
+  int itpos119 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos119]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3620;
-  fra.me.meth = LOCATE_parser_prod___ADoExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -19178,17 +19178,17 @@ void parser_prod___ADoExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos119] = 1;
   return;
 }
-void parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos120 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ADoExpr].i;
+void parser___parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos120 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos120]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3622;
-  fra.me.meth = LOCATE_parser_prod___ADoExpr___init_adoexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___init_adoexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -19200,22 +19200,22 @@ void parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:3628 */
-  CALL_parser_prod___ADoExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ADoExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3629 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3629);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3629);
   }
-  ATTR_parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3630 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3630);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3630);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3631 */
-  ATTR_parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3632 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -19225,7 +19225,7 @@ void parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -19234,12 +19234,12 @@ void parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3
     /* ./parser//parser_prod.nit:3633 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3633);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3633);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3635 */
-  ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3636 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -19249,7 +19249,7 @@ void parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -19258,23 +19258,23 @@ void parser_prod___ADoExpr___init_adoexpr(val_t p0, val_t p1, val_t p2, val_t p3
     /* ./parser//parser_prod.nit:3637 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3637);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3637);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos120] = 1;
   return;
 }
-void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3641;
-  fra.me.meth = LOCATE_parser_prod___ADoExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -19285,16 +19285,16 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3643 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser_prod, 3643);
+    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3643);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -19307,7 +19307,7 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19316,26 +19316,26 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3645 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3645);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3645);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3646 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3646);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3646);
       }
       /* ./parser//parser_prod.nit:3647 */
-      ATTR_parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3649 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3649);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3649);
     }
     /* ./parser//parser_prod.nit:3651 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3653 */
-  fra.me.REG[3] = ATTR_parser_nodes___ADoExpr____n_block(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19344,7 +19344,7 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -19358,7 +19358,7 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19367,26 +19367,26 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3655 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3655);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3655);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3656 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3656);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3656);
       }
       /* ./parser//parser_prod.nit:3657 */
-      ATTR_parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3659 */
-      ATTR_parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3661 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3663 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19395,7 +19395,7 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -19409,7 +19409,7 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19418,20 +19418,20 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3665 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3665);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3665);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3666 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3666);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3666);
       }
       /* ./parser//parser_prod.nit:3667 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3669 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3671 */
     goto label1;
@@ -19440,15 +19440,15 @@ void parser_prod___ADoExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ADoExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ADoExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3675;
-  fra.me.meth = LOCATE_parser_prod___ADoExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -19457,15 +19457,15 @@ void parser_prod___ADoExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3677 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser_prod, 3677);
+    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3677);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ADoExpr____n_kwdo(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3678 */
-  fra.me.REG[2] = ATTR_parser_nodes___ADoExpr____n_block(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19474,23 +19474,23 @@ void parser_prod___ADoExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3679 */
-    fra.me.REG[2] = ATTR_parser_nodes___ADoExpr____n_block(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ADoExpr____n_block(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3679);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3679);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3681 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19499,33 +19499,33 @@ void parser_prod___ADoExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3682 */
-    fra.me.REG[0] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3682);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3682);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIfExpr___empty_init(val_t p0, int* init_table){
-  int itpos121 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIfExpr].i;
+void parser___parser_prod___AIfExpr___empty_init(val_t p0, int* init_table){
+  int itpos121 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos121]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3687;
-  fra.me.meth = LOCATE_parser_prod___AIfExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -19534,17 +19534,17 @@ void parser_prod___AIfExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos121] = 1;
   return;
 }
-void parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos122 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIfExpr].i;
+void parser___parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos122 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos122]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3689;
-  fra.me.meth = LOCATE_parser_prod___AIfExpr___init_aifexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___init_aifexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -19558,35 +19558,35 @@ void parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
   /* ./parser//parser_prod.nit:3696 */
-  CALL_parser_prod___AIfExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AIfExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3697 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3697);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3697);
   }
-  ATTR_parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3698 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3698);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3698);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3699 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3699);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3699);
   }
-  ATTR_parser_nodes___AIfExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3700 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3700);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3700);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3701 */
-  ATTR_parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3702 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -19596,7 +19596,7 @@ void parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -19605,12 +19605,12 @@ void parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3
     /* ./parser//parser_prod.nit:3703 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3703);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3703);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3705 */
-  ATTR_parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:3706 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -19620,7 +19620,7 @@ void parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -19629,23 +19629,23 @@ void parser_prod___AIfExpr___init_aifexpr(val_t p0, val_t p1, val_t p2, val_t p3
     /* ./parser//parser_prod.nit:3707 */
     REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3707);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3707);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos122] = 1;
   return;
 }
-void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3711;
-  fra.me.meth = LOCATE_parser_prod___AIfExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -19656,16 +19656,16 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3713 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser_prod, 3713);
+    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3713);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -19678,7 +19678,7 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19687,35 +19687,35 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3715 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3715);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3715);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3716 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwif, ID_parser___parser_nodes___TKwif)) /*cast TKwif*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3716);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3716);
       }
       /* ./parser//parser_prod.nit:3717 */
-      ATTR_parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3719 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3719);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3719);
     }
     /* ./parser//parser_prod.nit:3721 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3723 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3723);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3723);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -19728,7 +19728,7 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19737,26 +19737,26 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3725 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3725);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3725);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3726 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3726);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3726);
       }
       /* ./parser//parser_prod.nit:3727 */
-      ATTR_parser_nodes___AIfExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3729 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3729);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3729);
     }
     /* ./parser//parser_prod.nit:3731 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3733 */
-  fra.me.REG[3] = ATTR_parser_nodes___AIfExpr____n_then(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19765,7 +19765,7 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -19779,7 +19779,7 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19788,26 +19788,26 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3735 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3735);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3735);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3736 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3736);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3736);
       }
       /* ./parser//parser_prod.nit:3737 */
-      ATTR_parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3739 */
-      ATTR_parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3741 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3743 */
-  fra.me.REG[3] = ATTR_parser_nodes___AIfExpr____n_else(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19816,7 +19816,7 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -19830,7 +19830,7 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -19839,20 +19839,20 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3745 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3745);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3745);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3746 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3746);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3746);
       }
       /* ./parser//parser_prod.nit:3747 */
-      ATTR_parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3749 */
-      ATTR_parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3751 */
     goto label1;
@@ -19861,15 +19861,15 @@ void parser_prod___AIfExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIfExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AIfExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3755;
-  fra.me.meth = LOCATE_parser_prod___AIfExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -19878,23 +19878,23 @@ void parser_prod___AIfExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3757 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser_prod, 3757);
+    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3757);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfExpr____n_kwif(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3758 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3758);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3758);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIfExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3759 */
-  fra.me.REG[2] = ATTR_parser_nodes___AIfExpr____n_then(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19903,23 +19903,23 @@ void parser_prod___AIfExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3760 */
-    fra.me.REG[2] = ATTR_parser_nodes___AIfExpr____n_then(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AIfExpr____n_then(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3760);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3760);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3762 */
-  fra.me.REG[2] = ATTR_parser_nodes___AIfExpr____n_else(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -19928,33 +19928,33 @@ void parser_prod___AIfExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3763 */
-    fra.me.REG[0] = ATTR_parser_nodes___AIfExpr____n_else(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AIfExpr____n_else(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3763);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3763);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIfexprExpr___empty_init(val_t p0, int* init_table){
-  int itpos123 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIfexprExpr].i;
+void parser___parser_prod___AIfexprExpr___empty_init(val_t p0, int* init_table){
+  int itpos123 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfexprExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos123]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3768;
-  fra.me.meth = LOCATE_parser_prod___AIfexprExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -19963,16 +19963,16 @@ void parser_prod___AIfexprExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos123] = 1;
   return;
 }
-void parser_prod___AIfexprExpr___init_aifexprexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
-  int itpos124 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIfexprExpr].i;
+void parser___parser_prod___AIfexprExpr___init_aifexprexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
+  int itpos124 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIfexprExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos124]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3770;
-  fra.me.meth = LOCATE_parser_prod___AIfexprExpr___init_aifexprexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___init_aifexprexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 7;
   fra.me.REG[0] = NIT_NULL;
@@ -19990,98 +19990,98 @@ void parser_prod___AIfexprExpr___init_aifexprexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[5] = p5;
   fra.me.REG[6] = p6;
   /* ./parser//parser_prod.nit:3779 */
-  CALL_parser_prod___AIfexprExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AIfexprExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3780 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3780);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3780);
   }
-  ATTR_parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3781 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3781);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3781);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3782 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3782);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3782);
   }
-  ATTR_parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3783 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3783);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3783);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3784 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3784);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3784);
   }
-  ATTR_parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3785 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3785);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3785);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3786 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3786);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3786);
   }
-  ATTR_parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:3787 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3787);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3787);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3788 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3788);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3788);
   }
-  ATTR_parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:3789 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3789);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3789);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3790 */
   REGB0 = TAG_Bool(fra.me.REG[6]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3790);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3790);
   }
-  ATTR_parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]) = fra.me.REG[6];
+  ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]) = fra.me.REG[6];
   /* ./parser//parser_prod.nit:3791 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3791);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3791);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos124] = 1;
   return;
 }
-void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3794;
-  fra.me.meth = LOCATE_parser_prod___AIfexprExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -20092,16 +20092,16 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3796 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser_prod, 3796);
+    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3796);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20114,7 +20114,7 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20123,35 +20123,35 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3798 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3798);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3798);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3799 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwif, ID_TKwif)) /*cast TKwif*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwif, ID_parser___parser_nodes___TKwif)) /*cast TKwif*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3799);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3799);
       }
       /* ./parser//parser_prod.nit:3800 */
-      ATTR_parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3802 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3802);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3802);
     }
     /* ./parser//parser_prod.nit:3804 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3806 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3806);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3806);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20164,7 +20164,7 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20173,35 +20173,35 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3808 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3808);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3808);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3809 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3809);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3809);
       }
       /* ./parser//parser_prod.nit:3810 */
-      ATTR_parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3812 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3812);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3812);
     }
     /* ./parser//parser_prod.nit:3814 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3816 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwthen", LOCATE_parser_prod, 3816);
+    nit_abort("Uninitialized attribute %s", "_n_kwthen", LOCATE_parser___parser_prod, 3816);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20214,7 +20214,7 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20223,35 +20223,35 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3818 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3818);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3818);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3819 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwthen, ID_TKwthen)) /*cast TKwthen*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwthen, ID_parser___parser_nodes___TKwthen)) /*cast TKwthen*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3819);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3819);
       }
       /* ./parser//parser_prod.nit:3820 */
-      ATTR_parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3822 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3822);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3822);
     }
     /* ./parser//parser_prod.nit:3824 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3826 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_then(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_then", LOCATE_parser_prod, 3826);
+    nit_abort("Uninitialized attribute %s", "_n_then", LOCATE_parser___parser_prod, 3826);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20264,7 +20264,7 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20273,35 +20273,35 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3828 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3828);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3828);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3829 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3829);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3829);
       }
       /* ./parser//parser_prod.nit:3830 */
-      ATTR_parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3832 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3832);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3832);
     }
     /* ./parser//parser_prod.nit:3834 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3836 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwelse", LOCATE_parser_prod, 3836);
+    nit_abort("Uninitialized attribute %s", "_n_kwelse", LOCATE_parser___parser_prod, 3836);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20314,7 +20314,7 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20323,35 +20323,35 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3838 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3838);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3838);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3839 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwelse, ID_TKwelse)) /*cast TKwelse*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwelse, ID_parser___parser_nodes___TKwelse)) /*cast TKwelse*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3839);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3839);
       }
       /* ./parser//parser_prod.nit:3840 */
-      ATTR_parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3842 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3842);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3842);
     }
     /* ./parser//parser_prod.nit:3844 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3846 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_else(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_else", LOCATE_parser_prod, 3846);
+    nit_abort("Uninitialized attribute %s", "_n_else", LOCATE_parser___parser_prod, 3846);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20364,7 +20364,7 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20373,20 +20373,20 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3848 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3848);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3848);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3849 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3849);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3849);
       }
       /* ./parser//parser_prod.nit:3850 */
-      ATTR_parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3852 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3852);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3852);
     }
     /* ./parser//parser_prod.nit:3854 */
     goto label1;
@@ -20395,14 +20395,14 @@ void parser_prod___AIfexprExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIfexprExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AIfexprExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3858;
-  fra.me.meth = LOCATE_parser_prod___AIfexprExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AIfexprExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -20411,65 +20411,65 @@ void parser_prod___AIfexprExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3860 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser_prod, 3860);
+    nit_abort("Uninitialized attribute %s", "_n_kwif", LOCATE_parser___parser_prod, 3860);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwif(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3861 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3861);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3861);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3862 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwthen", LOCATE_parser_prod, 3862);
+    nit_abort("Uninitialized attribute %s", "_n_kwthen", LOCATE_parser___parser_prod, 3862);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwthen(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3863 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_then(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_then", LOCATE_parser_prod, 3863);
+    nit_abort("Uninitialized attribute %s", "_n_then", LOCATE_parser___parser_prod, 3863);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_then(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3864 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwelse", LOCATE_parser_prod, 3864);
+    nit_abort("Uninitialized attribute %s", "_n_kwelse", LOCATE_parser___parser_prod, 3864);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIfexprExpr____n_kwelse(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3865 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIfexprExpr____n_else(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_else", LOCATE_parser_prod, 3865);
+    nit_abort("Uninitialized attribute %s", "_n_else", LOCATE_parser___parser_prod, 3865);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AIfexprExpr____n_else(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AWhileExpr___empty_init(val_t p0, int* init_table){
-  int itpos125 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AWhileExpr].i;
+void parser___parser_prod___AWhileExpr___empty_init(val_t p0, int* init_table){
+  int itpos125 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWhileExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos125]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3869;
-  fra.me.meth = LOCATE_parser_prod___AWhileExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -20478,17 +20478,17 @@ void parser_prod___AWhileExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos125] = 1;
   return;
 }
-void parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
-  int itpos126 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AWhileExpr].i;
+void parser___parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
+  int itpos126 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AWhileExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos126]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3871;
-  fra.me.meth = LOCATE_parser_prod___AWhileExpr___init_awhileexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___init_awhileexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 6;
   fra.me.REG[0] = NIT_NULL;
@@ -20504,48 +20504,48 @@ void parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, va
   fra.me.REG[4] = p4;
   fra.me.REG[5] = p5;
   /* ./parser//parser_prod.nit:3879 */
-  CALL_parser_prod___AWhileExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AWhileExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3880 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3880);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3880);
   }
-  ATTR_parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3881 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3881);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3881);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3882 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3882);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3882);
   }
-  ATTR_parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3883 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3883);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3883);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3884 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3884);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3884);
   }
-  ATTR_parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3885 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3885);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3885);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3886 */
-  ATTR_parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = fra.me.REG[4];
+  ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = fra.me.REG[4];
   /* ./parser//parser_prod.nit:3887 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -20555,7 +20555,7 @@ void parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -20564,12 +20564,12 @@ void parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, va
     /* ./parser//parser_prod.nit:3888 */
     REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3888);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3888);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3890 */
-  ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[5];
+  ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[5];
   /* ./parser//parser_prod.nit:3891 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -20579,7 +20579,7 @@ void parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -20588,23 +20588,23 @@ void parser_prod___AWhileExpr___init_awhileexpr(val_t p0, val_t p1, val_t p2, va
     /* ./parser//parser_prod.nit:3892 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3892);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3892);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos126] = 1;
   return;
 }
-void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3896;
-  fra.me.meth = LOCATE_parser_prod___AWhileExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -20615,16 +20615,16 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3898 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwwhile", LOCATE_parser_prod, 3898);
+    nit_abort("Uninitialized attribute %s", "_n_kwwhile", LOCATE_parser___parser_prod, 3898);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20637,7 +20637,7 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20646,35 +20646,35 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3900 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3900);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3900);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3901 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwwhile, ID_TKwwhile)) /*cast TKwwhile*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwwhile, ID_parser___parser_nodes___TKwwhile)) /*cast TKwwhile*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3901);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3901);
       }
       /* ./parser//parser_prod.nit:3902 */
-      ATTR_parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3904 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3904);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3904);
     }
     /* ./parser//parser_prod.nit:3906 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3908 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWhileExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3908);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3908);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20687,7 +20687,7 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20696,35 +20696,35 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3910 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3910);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3910);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3911 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3911);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3911);
       }
       /* ./parser//parser_prod.nit:3912 */
-      ATTR_parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3914 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3914);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3914);
     }
     /* ./parser//parser_prod.nit:3916 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3918 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser_prod, 3918);
+    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3918);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -20737,7 +20737,7 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20746,26 +20746,26 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3920 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3920);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3920);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3921 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3921);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3921);
       }
       /* ./parser//parser_prod.nit:3922 */
-      ATTR_parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3924 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3924);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3924);
     }
     /* ./parser//parser_prod.nit:3926 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3928 */
-  fra.me.REG[3] = ATTR_parser_nodes___AWhileExpr____n_block(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -20774,7 +20774,7 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -20788,7 +20788,7 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20797,26 +20797,26 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3930 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3930);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3930);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3931 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3931);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3931);
       }
       /* ./parser//parser_prod.nit:3932 */
-      ATTR_parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3934 */
-      ATTR_parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3936 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3938 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -20825,7 +20825,7 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -20839,7 +20839,7 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -20848,20 +20848,20 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3940 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3940);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3940);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3941 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3941);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3941);
       }
       /* ./parser//parser_prod.nit:3942 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3944 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:3946 */
     goto label1;
@@ -20870,15 +20870,15 @@ void parser_prod___AWhileExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AWhileExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AWhileExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3950;
-  fra.me.meth = LOCATE_parser_prod___AWhileExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___AWhileExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -20887,31 +20887,31 @@ void parser_prod___AWhileExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:3952 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwwhile", LOCATE_parser_prod, 3952);
+    nit_abort("Uninitialized attribute %s", "_n_kwwhile", LOCATE_parser___parser_prod, 3952);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AWhileExpr____n_kwwhile(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3953 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWhileExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 3953);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 3953);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AWhileExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3954 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser_prod, 3954);
+    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 3954);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AWhileExpr____n_kwdo(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:3955 */
-  fra.me.REG[2] = ATTR_parser_nodes___AWhileExpr____n_block(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -20920,23 +20920,23 @@ void parser_prod___AWhileExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3956 */
-    fra.me.REG[2] = ATTR_parser_nodes___AWhileExpr____n_block(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AWhileExpr____n_block(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3956);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3956);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:3958 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -20945,33 +20945,33 @@ void parser_prod___AWhileExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:3959 */
-    fra.me.REG[0] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3959);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3959);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALoopExpr___empty_init(val_t p0, int* init_table){
-  int itpos127 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALoopExpr].i;
+void parser___parser_prod___ALoopExpr___empty_init(val_t p0, int* init_table){
+  int itpos127 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALoopExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos127]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3964;
-  fra.me.meth = LOCATE_parser_prod___ALoopExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -20980,17 +20980,17 @@ void parser_prod___ALoopExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos127] = 1;
   return;
 }
-void parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos128 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALoopExpr].i;
+void parser___parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos128 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALoopExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos128]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3966;
-  fra.me.meth = LOCATE_parser_prod___ALoopExpr___init_aloopexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___init_aloopexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -21002,22 +21002,22 @@ void parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   /* ./parser//parser_prod.nit:3972 */
-  CALL_parser_prod___ALoopExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___ALoopExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:3973 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 3973);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 3973);
   }
-  ATTR_parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:3974 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3974);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3974);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   /* ./parser//parser_prod.nit:3975 */
-  ATTR_parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
+  ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
   /* ./parser//parser_prod.nit:3976 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -21027,7 +21027,7 @@ void parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -21036,12 +21036,12 @@ void parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_
     /* ./parser//parser_prod.nit:3977 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3977);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3977);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   /* ./parser//parser_prod.nit:3979 */
-  ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[3];
+  ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[3];
   /* ./parser//parser_prod.nit:3980 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
@@ -21051,7 +21051,7 @@ void parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
@@ -21060,23 +21060,23 @@ void parser_prod___ALoopExpr___init_aloopexpr(val_t p0, val_t p1, val_t p2, val_
     /* ./parser//parser_prod.nit:3981 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3981);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3981);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos128] = 1;
   return;
 }
-void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 3985;
-  fra.me.meth = LOCATE_parser_prod___ALoopExpr___replace_child;
+  fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -21087,16 +21087,16 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   /* ./parser//parser_prod.nit:3987 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwloop", LOCATE_parser_prod, 3987);
+    nit_abort("Uninitialized attribute %s", "_n_kwloop", LOCATE_parser___parser_prod, 3987);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -21109,7 +21109,7 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -21118,26 +21118,26 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3989 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3989);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3989);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:3990 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwloop, ID_TKwloop)) /*cast TKwloop*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwloop, ID_parser___parser_nodes___TKwloop)) /*cast TKwloop*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 3990);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 3990);
       }
       /* ./parser//parser_prod.nit:3991 */
-      ATTR_parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:3993 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 3993);
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 3993);
     }
     /* ./parser//parser_prod.nit:3995 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:3997 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALoopExpr____n_block(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21146,7 +21146,7 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -21160,7 +21160,7 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -21169,26 +21169,26 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:3999 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 3999);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 3999);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:4000 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4000);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4000);
       }
       /* ./parser//parser_prod.nit:4001 */
-      ATTR_parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:4003 */
-      ATTR_parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:4005 */
     goto label1;
   }
   /* ./parser//parser_prod.nit:4007 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21197,7 +21197,7 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
@@ -21211,7 +21211,7 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
@@ -21220,20 +21220,20 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
       /* ./parser//parser_prod.nit:4009 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4009);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4009);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
       /* ./parser//parser_prod.nit:4010 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4010);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4010);
       }
       /* ./parser//parser_prod.nit:4011 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
     } else {
       /* ./parser//parser_prod.nit:4013 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
     }
     /* ./parser//parser_prod.nit:4015 */
     goto label1;
@@ -21242,15 +21242,15 @@ void parser_prod___ALoopExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALoopExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALoopExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 4019;
-  fra.me.meth = LOCATE_parser_prod___ALoopExpr___visit_all;
+  fra.me.meth = LOCATE_parser___parser_prod___ALoopExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -21259,15 +21259,15 @@ void parser_prod___ALoopExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   /* ./parser//parser_prod.nit:4021 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0])!=NIT_NULL);
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwloop", LOCATE_parser_prod, 4021);
+    nit_abort("Uninitialized attribute %s", "_n_kwloop", LOCATE_parser___parser_prod, 4021);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALoopExpr____n_kwloop(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   /* ./parser//parser_prod.nit:4022 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALoopExpr____n_block(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21276,23 +21276,23 @@ void parser_prod___ALoopExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:4023 */
-    fra.me.REG[2] = ATTR_parser_nodes___ALoopExpr____n_block(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ALoopExpr____n_block(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4023);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4023);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
   /* ./parser//parser_prod.nit:4025 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21301,33 +21301,33 @@ void parser_prod___ALoopExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
     /* ./parser//parser_prod.nit:4026 */
-    fra.me.REG[0] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+    fra.me.REG[0] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4026);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4026);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AForExpr___empty_init(val_t p0, int* init_table){
-  int itpos129 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AForExpr].i;
+void parser___parser_prod___AForExpr___empty_init(val_t p0, int* init_table){
+  int itpos129 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AForExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos129]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 4031;
-  fra.me.meth = LOCATE_parser_prod___AForExpr___empty_init;
+  fra.me.meth = LOCATE_parser___parser_prod___AForExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -21336,17 +21336,17 @@ void parser_prod___AForExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos129] = 1;
   return;
 }
-void parser_prod___AForExpr___init_aforexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
-  int itpos130 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AForExpr].i;
+void parser___parser_prod___AForExpr___init_aforexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
+  int itpos130 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AForExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos130]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
+  fra.me.file = LOCATE_parser___parser_prod;
   fra.me.line = 4033;
-  fra.me.meth = LOCATE_parser_prod___AForExpr___init_aforexpr;
+  fra.me.meth = LOCATE_parser___parser_prod___AForExpr___init_aforexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 7;
   fra.me.REG[0] = NIT_NULL;
@@ -21364,62 +21364,50 @@ void parser_prod___AForExpr___init_aforexpr(val_t p0, val_t p1, val_t p2, val_t
   fra.me.REG[5] = p5;
   fra.me.REG[6] = p6;
   /* ./parser//parser_prod.nit:4042 */
-  CALL_parser_prod___AForExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_parser___parser_prod___AForExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   /* ./parser//parser_prod.nit:4043 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4043);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4043);
   }
-  ATTR_parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]) = fra.me.REG[1];
+  ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]) = fra.me.REG[1];
   /* ./parser//parser_prod.nit:4044 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4044);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4044);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4045 */
-  REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
-  if (UNTAG_Bool(REGB0)) {
-  } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4045);
-  }
-  ATTR_parser_nodes___AForExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4046 */
-  REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
-  if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4046);
-  }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4047 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AForExpr___init_aforexpr_1));
+  /* ./parser//parser_prod.nit:4050 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4047);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4050);
   }
-  ATTR_parser_nodes___AForExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:4048 */
+  ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:4051 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4048);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4051);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4049 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4052 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4049);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4052);
   }
-  ATTR_parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:4050 */
+  ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:4053 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4050);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4053);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4051 */
-  ATTR_parser_nodes___AForExpr____n_block(fra.me.REG[0]) = fra.me.REG[5];
-  /* ./parser//parser_prod.nit:4052 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4054 */
+  ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]) = fra.me.REG[5];
+  /* ./parser//parser_prod.nit:4055 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21428,22 +21416,22 @@ void parser_prod___AForExpr___init_aforexpr(val_t p0, val_t p1, val_t p2, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4053 */
+    /* ./parser//parser_prod.nit:4056 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4053);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4056);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
-  /* ./parser//parser_prod.nit:4055 */
-  ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[6];
-  /* ./parser//parser_prod.nit:4056 */
+  /* ./parser//parser_prod.nit:4058 */
+  ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[6];
+  /* ./parser//parser_prod.nit:4059 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21452,32 +21440,72 @@ void parser_prod___AForExpr___init_aforexpr(val_t p0, val_t p1, val_t p2, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4057 */
+    /* ./parser//parser_prod.nit:4060 */
     REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4057);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4060);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos130] = 1;
   return;
 }
-void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
+  void OC_parser___parser_prod___AForExpr___init_aforexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+    struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+    val_t REGB0;
+    fun_t CREG[1];
+    val_t tmp;
+    /* ./parser//parser_prod.nit:4045 */
+    fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+    fra.me.file = LOCATE_parser___parser_prod;
+    fra.me.line = 0;
+    fra.me.meth = LOCATE_parser___parser_prod___AForExpr___init_aforexpr;
+    fra.me.has_broke = 0;
+    fra.me.REG_size = 2;
+    fra.me.REG[0] = NIT_NULL;
+    fra.me.REG[1] = NIT_NULL;
+    fra.me.closure_ctx = closctx_param;
+    fra.me.closure_funs = CREG;
+    fra.me.REG[0] = p0;
+    CREG[0] = clos_fun0;
+    /* ./parser//parser_prod.nit:4046 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
+    if (UNTAG_Bool(REGB0)) {
+    } else {
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4046);
+    }
+    /* ./parser//parser_prod.nit:4047 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(closctx->REG[0])!=NIT_NULL);
+    if (UNTAG_Bool(REGB0)) {
+    } else {
+      nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4047);
+    }
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AForExpr____n_ids(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:4048 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    stack_frame_head = fra.me.prev;
+    return;
+  }
+void parser___parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
+  val_t REGB2;
+  val_t REGB3;
+  val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4061;
-  fra.me.meth = LOCATE_parser_prod___AForExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4064;
+  fra.me.meth = LOCATE_parser___parser_prod___AForExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -21487,21 +21515,21 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4063 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_kwfor(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4066 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwfor", LOCATE_parser_prod, 4063);
+    nit_abort("Uninitialized attribute %s", "_n_kwfor", LOCATE_parser___parser_prod, 4066);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4064 */
+    /* ./parser//parser_prod.nit:4067 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -21510,98 +21538,146 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4065 */
+      /* ./parser//parser_prod.nit:4068 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4065);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4068);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4066 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwfor, ID_TKwfor)) /*cast TKwfor*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4069 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwfor, ID_parser___parser_nodes___TKwfor)) /*cast TKwfor*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4066);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4069);
       }
-      /* ./parser//parser_prod.nit:4067 */
-      ATTR_parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4070 */
+      ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4069 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4069);
+      /* ./parser//parser_prod.nit:4072 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4072);
     }
-    /* ./parser//parser_prod.nit:4071 */
+    /* ./parser//parser_prod.nit:4074 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4073 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_id(fra.me.REG[0])!=NIT_NULL);
-  if (UNTAG_Bool(REGB0)) {
-  } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 4073);
-  }
-  fra.me.REG[3] = ATTR_parser_nodes___AForExpr____n_id(fra.me.REG[0]);
-  REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
-  if (UNTAG_Bool(REGB0)) {
+  /* ./parser//parser_prod.nit:4076 */
+  REGB0 = TAG_Int(0);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
+  if (UNTAG_Bool(REGB1)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
-    REGB0 = REGB1;
+    nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4076);
   }
-  if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4074 */
-    REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
-    if (UNTAG_Bool(REGB0)) {
-    } else {
-      REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
-      if (UNTAG_Bool(REGB1)) {
-        REGB1 = TAG_Bool(false);
-        REGB0 = REGB1;
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
+  while(1) {
+    /* ./../lib/standard//kernel.nit:215 */
+    REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+    /* ./../lib/standard//kernel.nit:335 */
+    if (UNTAG_Bool(REGB2)) {
+      /* ./parser//parser_prod.nit:4076 */
+      REGB2 = REGB0;
+      /* ./parser//parser_prod.nit:4077 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
+      if (UNTAG_Bool(REGB3)) {
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
-        REGB0 = REGB1;
-      }
-    }
-    REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
-    if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4075 */
-      REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
-      if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4075);
+        nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4077);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4076 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
-      if (UNTAG_Bool(REGB0)) {
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
+      if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4076);
+        REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
+        if (UNTAG_Bool(REGB4)) {
+          REGB4 = TAG_Bool(false);
+          REGB3 = REGB4;
+        } else {
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB3 = REGB4;
+        }
       }
-      /* ./parser//parser_prod.nit:4077 */
-      ATTR_parser_nodes___AForExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      if (UNTAG_Bool(REGB3)) {
+        /* ./parser//parser_prod.nit:4078 */
+        REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+        if (UNTAG_Bool(REGB3)) {
+        } else {
+          REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+          if (UNTAG_Bool(REGB4)) {
+            REGB4 = TAG_Bool(false);
+            REGB3 = REGB4;
+          } else {
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB3 = REGB4;
+          }
+        }
+        REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
+        if (UNTAG_Bool(REGB3)) {
+          /* ./parser//parser_prod.nit:4079 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
+          if (UNTAG_Bool(REGB3)) {
+          } else {
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4079);
+          }
+          /* ./parser//parser_prod.nit:4080 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
+          if (UNTAG_Bool(REGB3)) {
+          } else {
+            nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4080);
+          }
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:4081 */
+          REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+          if (UNTAG_Bool(REGB3)) {
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4081);
+          }
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+        } else {
+          /* ./parser//parser_prod.nit:4083 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
+          if (UNTAG_Bool(REGB3)) {
+          } else {
+            nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4083);
+          }
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+        }
+        /* ./parser//parser_prod.nit:4085 */
+        goto label1;
+      }
+      /* ./../lib/standard//kernel.nit:337 */
+      REGB2 = TAG_Int(1);
+      /* ./../lib/standard//kernel.nit:218 */
+      REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
+      /* ./../lib/standard//kernel.nit:337 */
+      REGB0 = REGB2;
     } else {
-      /* ./parser//parser_prod.nit:4079 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4079);
+      /* ./../lib/standard//kernel.nit:335 */
+      goto label2;
     }
-    /* ./parser//parser_prod.nit:4081 */
-    goto label1;
   }
-  /* ./parser//parser_prod.nit:4083 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  label2: while(0);
+  /* ./parser//parser_prod.nit:4088 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4083);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4088);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AForExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4084 */
+    /* ./parser//parser_prod.nit:4089 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -21610,48 +21686,48 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4085 */
+      /* ./parser//parser_prod.nit:4090 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4085);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4090);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4086 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4091 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4086);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4091);
       }
-      /* ./parser//parser_prod.nit:4087 */
-      ATTR_parser_nodes___AForExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4092 */
+      ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4089 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4089);
+      /* ./parser//parser_prod.nit:4094 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4094);
     }
-    /* ./parser//parser_prod.nit:4091 */
+    /* ./parser//parser_prod.nit:4096 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4093 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4098 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser_prod, 4093);
+    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 4098);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4094 */
+    /* ./parser//parser_prod.nit:4099 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -21660,35 +21736,35 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4095 */
+      /* ./parser//parser_prod.nit:4100 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4095);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4100);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4096 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4101 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4096);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4101);
       }
-      /* ./parser//parser_prod.nit:4097 */
-      ATTR_parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4102 */
+      ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4099 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4099);
+      /* ./parser//parser_prod.nit:4104 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4104);
     }
-    /* ./parser//parser_prod.nit:4101 */
+    /* ./parser//parser_prod.nit:4106 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4103 */
-  fra.me.REG[3] = ATTR_parser_nodes___AForExpr____n_block(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4108 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21697,12 +21773,12 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4104 */
+    /* ./parser//parser_prod.nit:4109 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -21711,35 +21787,35 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4105 */
+      /* ./parser//parser_prod.nit:4110 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4105);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4110);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4106 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4111 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4106);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4111);
       }
-      /* ./parser//parser_prod.nit:4107 */
-      ATTR_parser_nodes___AForExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4112 */
+      ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4109 */
-      ATTR_parser_nodes___AForExpr____n_block(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:4114 */
+      ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:4111 */
+    /* ./parser//parser_prod.nit:4116 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4113 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4118 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21748,12 +21824,12 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4114 */
+    /* ./parser//parser_prod.nit:4119 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -21762,46 +21838,46 @@ void parser_prod___AForExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4115 */
+      /* ./parser//parser_prod.nit:4120 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4115);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4120);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4116 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4121 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4116);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4121);
       }
-      /* ./parser//parser_prod.nit:4117 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4122 */
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4119 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:4124 */
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:4121 */
+    /* ./parser//parser_prod.nit:4126 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AForExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AForExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4125;
-  fra.me.meth = LOCATE_parser_prod___AForExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4130;
+  fra.me.meth = LOCATE_parser___parser_prod___AForExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -21809,40 +21885,40 @@ void parser_prod___AForExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4127 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_kwfor(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4132 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwfor", LOCATE_parser_prod, 4127);
+    nit_abort("Uninitialized attribute %s", "_n_kwfor", LOCATE_parser___parser_prod, 4132);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4128 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AForExpr____n_kwfor(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4133 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 4128);
+    nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 4133);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AForExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4129 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AForExpr____n_ids(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AForExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:4136 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4129);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4136);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AForExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4130 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AForExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AForExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4137 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser_prod, 4130);
+    nit_abort("Uninitialized attribute %s", "_n_kwdo", LOCATE_parser___parser_prod, 4137);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4131 */
-  fra.me.REG[2] = ATTR_parser_nodes___AForExpr____n_block(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AForExpr____n_kwdo(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4138 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21851,23 +21927,23 @@ void parser_prod___AForExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4132 */
-    fra.me.REG[2] = ATTR_parser_nodes___AForExpr____n_block(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:4139 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AForExpr____n_block(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4132);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4139);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:4134 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4141 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21876,33 +21952,53 @@ void parser_prod___AForExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4135 */
-    fra.me.REG[0] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+    /* ./parser//parser_prod.nit:4142 */
+    fra.me.REG[0] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4135);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4142);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAssertExpr___empty_init(val_t p0, int* init_table){
-  int itpos131 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAssertExpr].i;
+  void OC_parser___parser_prod___AForExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+    struct {struct stack_frame_t me;} fra;
+    fun_t CREG[1];
+    val_t tmp;
+    fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+    fra.me.file = LOCATE_parser___parser_prod;
+    fra.me.line = 0;
+    fra.me.meth = LOCATE_parser___parser_prod___AForExpr___visit_all;
+    fra.me.has_broke = 0;
+    fra.me.REG_size = 1;
+    fra.me.REG[0] = NIT_NULL;
+    fra.me.closure_ctx = closctx_param;
+    fra.me.closure_funs = CREG;
+    fra.me.REG[0] = p0;
+    CREG[0] = clos_fun0;
+    /* ./parser//parser_prod.nit:4134 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    stack_frame_head = fra.me.prev;
+    return;
+  }
+void parser___parser_prod___AAssertExpr___empty_init(val_t p0, int* init_table){
+  int itpos131 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssertExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos131]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4140;
-  fra.me.meth = LOCATE_parser_prod___AAssertExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4147;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -21911,17 +22007,17 @@ void parser_prod___AAssertExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos131] = 1;
   return;
 }
-void parser_prod___AAssertExpr___init_aassertexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos132 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAssertExpr].i;
+void parser___parser_prod___AAssertExpr___init_aassertexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos132 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAssertExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos132]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4142;
-  fra.me.meth = LOCATE_parser_prod___AAssertExpr___init_aassertexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4149;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___init_aassertexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -21934,24 +22030,24 @@ void parser_prod___AAssertExpr___init_aassertexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:4149 */
-  CALL_parser_prod___AAssertExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4150 */
+  /* ./parser//parser_prod.nit:4156 */
+  CALL_parser___parser_prod___AAssertExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4157 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4150);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4157);
   }
-  ATTR_parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4151 */
+  ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4158 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4151);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4158);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4152 */
-  ATTR_parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4153 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4159 */
+  ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4160 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21960,35 +22056,35 @@ void parser_prod___AAssertExpr___init_aassertexpr(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4154 */
+    /* ./parser//parser_prod.nit:4161 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4154);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4161);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
-  /* ./parser//parser_prod.nit:4156 */
+  /* ./parser//parser_prod.nit:4163 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4156);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4163);
   }
-  ATTR_parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:4157 */
+  ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:4164 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4157);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4164);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4158 */
-  ATTR_parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:4159 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4165 */
+  ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:4166 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -21997,32 +22093,32 @@ void parser_prod___AAssertExpr___init_aassertexpr(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4160 */
+    /* ./parser//parser_prod.nit:4167 */
     REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4160);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4167);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos132] = 1;
   return;
 }
-void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4164;
-  fra.me.meth = LOCATE_parser_prod___AAssertExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4171;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -22032,21 +22128,21 @@ void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4166 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4173 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwassert", LOCATE_parser_prod, 4166);
+    nit_abort("Uninitialized attribute %s", "_n_kwassert", LOCATE_parser___parser_prod, 4173);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4167 */
+    /* ./parser//parser_prod.nit:4174 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22055,35 +22151,35 @@ void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4168 */
+      /* ./parser//parser_prod.nit:4175 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4168);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4175);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4169 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwassert, ID_TKwassert)) /*cast TKwassert*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4176 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwassert, ID_parser___parser_nodes___TKwassert)) /*cast TKwassert*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4169);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4176);
       }
-      /* ./parser//parser_prod.nit:4170 */
-      ATTR_parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4177 */
+      ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4172 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4172);
+      /* ./parser//parser_prod.nit:4179 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4179);
     }
-    /* ./parser//parser_prod.nit:4174 */
+    /* ./parser//parser_prod.nit:4181 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4176 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAssertExpr____n_id(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4183 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -22092,12 +22188,12 @@ void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4177 */
+    /* ./parser//parser_prod.nit:4184 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22106,48 +22202,48 @@ void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4178 */
+      /* ./parser//parser_prod.nit:4185 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4178);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4185);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4179 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4186 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4179);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4186);
       }
-      /* ./parser//parser_prod.nit:4180 */
-      ATTR_parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4187 */
+      ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4182 */
-      ATTR_parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:4189 */
+      ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:4184 */
+    /* ./parser//parser_prod.nit:4191 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4186 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssertExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4193 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4186);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4193);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4187 */
+    /* ./parser//parser_prod.nit:4194 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22156,35 +22252,35 @@ void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4188 */
+      /* ./parser//parser_prod.nit:4195 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4188);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4195);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4189 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4196 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4189);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4196);
       }
-      /* ./parser//parser_prod.nit:4190 */
-      ATTR_parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4197 */
+      ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4192 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4192);
+      /* ./parser//parser_prod.nit:4199 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4199);
     }
-    /* ./parser//parser_prod.nit:4194 */
+    /* ./parser//parser_prod.nit:4201 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4196 */
-  fra.me.REG[3] = ATTR_parser_nodes___AAssertExpr____n_else(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4203 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -22193,12 +22289,12 @@ void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4197 */
+    /* ./parser//parser_prod.nit:4204 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22207,46 +22303,46 @@ void parser_prod___AAssertExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4198 */
+      /* ./parser//parser_prod.nit:4205 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4198);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4205);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4199 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4206 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4199);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4206);
       }
-      /* ./parser//parser_prod.nit:4200 */
-      ATTR_parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4207 */
+      ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4202 */
-      ATTR_parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:4209 */
+      ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:4204 */
+    /* ./parser//parser_prod.nit:4211 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAssertExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAssertExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4208;
-  fra.me.meth = LOCATE_parser_prod___AAssertExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4215;
+  fra.me.meth = LOCATE_parser___parser_prod___AAssertExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -22254,16 +22350,16 @@ void parser_prod___AAssertExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4210 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4217 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwassert", LOCATE_parser_prod, 4210);
+    nit_abort("Uninitialized attribute %s", "_n_kwassert", LOCATE_parser___parser_prod, 4217);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4211 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAssertExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssertExpr____n_kwassert(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4218 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -22272,31 +22368,31 @@ void parser_prod___AAssertExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4212 */
-    fra.me.REG[2] = ATTR_parser_nodes___AAssertExpr____n_id(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+    /* ./parser//parser_prod.nit:4219 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AAssertExpr____n_id(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4212);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4219);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:4214 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssertExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4221 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4214);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4221);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4215 */
-  fra.me.REG[2] = ATTR_parser_nodes___AAssertExpr____n_else(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssertExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4222 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -22305,33 +22401,33 @@ void parser_prod___AAssertExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4216 */
-    fra.me.REG[0] = ATTR_parser_nodes___AAssertExpr____n_else(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:4223 */
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AAssertExpr____n_else(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4216);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4223);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOnceExpr___empty_init(val_t p0, int* init_table){
-  int itpos133 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOnceExpr].i;
+void parser___parser_prod___AOnceExpr___empty_init(val_t p0, int* init_table){
+  int itpos133 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOnceExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos133]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4221;
-  fra.me.meth = LOCATE_parser_prod___AOnceExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4228;
+  fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -22340,16 +22436,16 @@ void parser_prod___AOnceExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos133] = 1;
   return;
 }
-void parser_prod___AOnceExpr___init_aonceexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos134 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOnceExpr].i;
+void parser___parser_prod___AOnceExpr___init_aonceexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos134 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOnceExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos134]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4223;
-  fra.me.meth = LOCATE_parser_prod___AOnceExpr___init_aonceexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4230;
+  fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___init_aonceexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -22358,47 +22454,47 @@ void parser_prod___AOnceExpr___init_aonceexpr(val_t p0, val_t p1, val_t p2, int*
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4228 */
-  CALL_parser_prod___AOnceExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4229 */
+  /* ./parser//parser_prod.nit:4235 */
+  CALL_parser___parser_prod___AOnceExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4236 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4229);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4236);
   }
-  ATTR_parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4230 */
+  ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4237 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4230);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4237);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4231 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4238 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4231);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4238);
   }
-  ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4232 */
+  ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4239 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4232);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4239);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos134] = 1;
   return;
 }
-void parser_prod___AOnceExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AOnceExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4235;
-  fra.me.meth = LOCATE_parser_prod___AOnceExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4242;
+  fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -22408,21 +22504,21 @@ void parser_prod___AOnceExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4237 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4244 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwonce", LOCATE_parser_prod, 4237);
+    nit_abort("Uninitialized attribute %s", "_n_kwonce", LOCATE_parser___parser_prod, 4244);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4238 */
+    /* ./parser//parser_prod.nit:4245 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22431,48 +22527,48 @@ void parser_prod___AOnceExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4239 */
+      /* ./parser//parser_prod.nit:4246 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4239);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4246);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4240 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwonce, ID_TKwonce)) /*cast TKwonce*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4247 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwonce, ID_parser___parser_nodes___TKwonce)) /*cast TKwonce*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4240);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4247);
       }
-      /* ./parser//parser_prod.nit:4241 */
-      ATTR_parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4248 */
+      ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4243 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4243);
+      /* ./parser//parser_prod.nit:4250 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4250);
     }
-    /* ./parser//parser_prod.nit:4245 */
+    /* ./parser//parser_prod.nit:4252 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4247 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4254 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4247);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4254);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4248 */
+    /* ./parser//parser_prod.nit:4255 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22481,45 +22577,45 @@ void parser_prod___AOnceExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4249 */
+      /* ./parser//parser_prod.nit:4256 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4249);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4256);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4250 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4257 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4250);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4257);
       }
-      /* ./parser//parser_prod.nit:4251 */
-      ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4258 */
+      ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4253 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4253);
+      /* ./parser//parser_prod.nit:4260 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4260);
     }
-    /* ./parser//parser_prod.nit:4255 */
+    /* ./parser//parser_prod.nit:4262 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOnceExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AOnceExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4259;
-  fra.me.meth = LOCATE_parser_prod___AOnceExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4266;
+  fra.me.meth = LOCATE_parser___parser_prod___AOnceExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -22527,34 +22623,34 @@ void parser_prod___AOnceExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4261 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4268 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwonce", LOCATE_parser_prod, 4261);
+    nit_abort("Uninitialized attribute %s", "_n_kwonce", LOCATE_parser___parser_prod, 4268);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4262 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AOnceExpr____n_kwonce(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4269 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4262);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4269);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASendExpr___empty_init(val_t p0, int* init_table){
-  int itpos135 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASendExpr].i;
+void parser___parser_prod___ASendExpr___empty_init(val_t p0, int* init_table){
+  int itpos135 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASendExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos135]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4266;
-  fra.me.meth = LOCATE_parser_prod___ASendExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4273;
+  fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -22563,50 +22659,50 @@ void parser_prod___ASendExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos135] = 1;
   return;
 }
-void parser_prod___ASendExpr___init_asendexpr(val_t p0, val_t p1, int* init_table){
-  int itpos136 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASendExpr].i;
+void parser___parser_prod___ASendExpr___init_asendexpr(val_t p0, val_t p1, int* init_table){
+  int itpos136 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASendExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos136]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4268;
-  fra.me.meth = LOCATE_parser_prod___ASendExpr___init_asendexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4275;
+  fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___init_asendexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4272 */
-  CALL_parser_prod___ASendExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4273 */
+  /* ./parser//parser_prod.nit:4279 */
+  CALL_parser___parser_prod___ASendExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4280 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4273);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4280);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4274 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4281 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4274);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4281);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos136] = 1;
   return;
 }
-void parser_prod___ASendExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASendExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4277;
-  fra.me.meth = LOCATE_parser_prod___ASendExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4284;
+  fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -22616,21 +22712,21 @@ void parser_prod___ASendExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4279 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4286 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4279);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4286);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4280 */
+    /* ./parser//parser_prod.nit:4287 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22639,71 +22735,71 @@ void parser_prod___ASendExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4281 */
+      /* ./parser//parser_prod.nit:4288 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4281);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4288);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4282 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4289 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4282);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4289);
       }
-      /* ./parser//parser_prod.nit:4283 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4290 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4285 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4285);
+      /* ./parser//parser_prod.nit:4292 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4292);
     }
-    /* ./parser//parser_prod.nit:4287 */
+    /* ./parser//parser_prod.nit:4294 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASendExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASendExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4291;
-  fra.me.meth = LOCATE_parser_prod___ASendExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4298;
+  fra.me.meth = LOCATE_parser___parser_prod___ASendExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4293 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4300 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4293);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4300);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABinopExpr___empty_init(val_t p0, int* init_table){
-  int itpos137 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABinopExpr].i;
+void parser___parser_prod___ABinopExpr___empty_init(val_t p0, int* init_table){
+  int itpos137 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABinopExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos137]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4297;
-  fra.me.meth = LOCATE_parser_prod___ABinopExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4304;
+  fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -22712,16 +22808,16 @@ void parser_prod___ABinopExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos137] = 1;
   return;
 }
-void parser_prod___ABinopExpr___init_abinopexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos138 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABinopExpr].i;
+void parser___parser_prod___ABinopExpr___init_abinopexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos138 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABinopExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos138]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4299;
-  fra.me.meth = LOCATE_parser_prod___ABinopExpr___init_abinopexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4306;
+  fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___init_abinopexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -22730,47 +22826,47 @@ void parser_prod___ABinopExpr___init_abinopexpr(val_t p0, val_t p1, val_t p2, in
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4304 */
-  CALL_parser_prod___ABinopExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4305 */
+  /* ./parser//parser_prod.nit:4311 */
+  CALL_parser___parser_prod___ABinopExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4312 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4305);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4312);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4306 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4313 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4306);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4313);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4307 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4314 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4307);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4314);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4308 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4315 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4308);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4315);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos138] = 1;
   return;
 }
-void parser_prod___ABinopExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABinopExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4311;
-  fra.me.meth = LOCATE_parser_prod___ABinopExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4318;
+  fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -22780,21 +22876,21 @@ void parser_prod___ABinopExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4313 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4320 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4313);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4320);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4314 */
+    /* ./parser//parser_prod.nit:4321 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22803,48 +22899,48 @@ void parser_prod___ABinopExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4315 */
+      /* ./parser//parser_prod.nit:4322 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4315);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4322);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4316 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4323 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4316);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4323);
       }
-      /* ./parser//parser_prod.nit:4317 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4324 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4319 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4319);
+      /* ./parser//parser_prod.nit:4326 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4326);
     }
-    /* ./parser//parser_prod.nit:4321 */
+    /* ./parser//parser_prod.nit:4328 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4323 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4330 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4323);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4330);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4324 */
+    /* ./parser//parser_prod.nit:4331 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -22853,45 +22949,45 @@ void parser_prod___ABinopExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4325 */
+      /* ./parser//parser_prod.nit:4332 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4325);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4332);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4326 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4333 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4326);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4333);
       }
-      /* ./parser//parser_prod.nit:4327 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4334 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4329 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4329);
+      /* ./parser//parser_prod.nit:4336 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4336);
     }
-    /* ./parser//parser_prod.nit:4331 */
+    /* ./parser//parser_prod.nit:4338 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABinopExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABinopExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4335;
-  fra.me.meth = LOCATE_parser_prod___ABinopExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4342;
+  fra.me.meth = LOCATE_parser___parser_prod___ABinopExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -22899,34 +22995,34 @@ void parser_prod___ABinopExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4337 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4344 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4337);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4344);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4338 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4345 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4338);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4345);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOrExpr___empty_init(val_t p0, int* init_table){
-  int itpos139 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOrExpr].i;
+void parser___parser_prod___AOrExpr___empty_init(val_t p0, int* init_table){
+  int itpos139 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos139]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4342;
-  fra.me.meth = LOCATE_parser_prod___AOrExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4349;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -22935,16 +23031,16 @@ void parser_prod___AOrExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos139] = 1;
   return;
 }
-void parser_prod___AOrExpr___init_aorexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos140 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOrExpr].i;
+void parser___parser_prod___AOrExpr___init_aorexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos140 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos140]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4344;
-  fra.me.meth = LOCATE_parser_prod___AOrExpr___init_aorexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4351;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___init_aorexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -22953,47 +23049,47 @@ void parser_prod___AOrExpr___init_aorexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4349 */
-  CALL_parser_prod___AOrExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4350 */
+  /* ./parser//parser_prod.nit:4356 */
+  CALL_parser___parser_prod___AOrExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4357 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4350);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4357);
   }
-  ATTR_parser_nodes___AOrExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4351 */
+  ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4358 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4351);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4358);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4352 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4359 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4352);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4359);
   }
-  ATTR_parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4353 */
+  ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4360 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4353);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4360);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos140] = 1;
   return;
 }
-void parser_prod___AOrExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AOrExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4356;
-  fra.me.meth = LOCATE_parser_prod___AOrExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4363;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -23003,21 +23099,21 @@ void parser_prod___AOrExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4358 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4365 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4358);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4365);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AOrExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4359 */
+    /* ./parser//parser_prod.nit:4366 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23026,48 +23122,48 @@ void parser_prod___AOrExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4360 */
+      /* ./parser//parser_prod.nit:4367 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4360);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4367);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4361 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4368 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4361);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4368);
       }
-      /* ./parser//parser_prod.nit:4362 */
-      ATTR_parser_nodes___AOrExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4369 */
+      ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4364 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4364);
+      /* ./parser//parser_prod.nit:4371 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4371);
     }
-    /* ./parser//parser_prod.nit:4366 */
+    /* ./parser//parser_prod.nit:4373 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4368 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4375 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4368);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4375);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4369 */
+    /* ./parser//parser_prod.nit:4376 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23076,45 +23172,45 @@ void parser_prod___AOrExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4370 */
+      /* ./parser//parser_prod.nit:4377 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4370);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4377);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4371 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4378 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4371);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4378);
       }
-      /* ./parser//parser_prod.nit:4372 */
-      ATTR_parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4379 */
+      ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4374 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4374);
+      /* ./parser//parser_prod.nit:4381 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4381);
     }
-    /* ./parser//parser_prod.nit:4376 */
+    /* ./parser//parser_prod.nit:4383 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOrExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AOrExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4380;
-  fra.me.meth = LOCATE_parser_prod___AOrExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4387;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23122,34 +23218,34 @@ void parser_prod___AOrExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4382 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4389 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4382);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4389);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AOrExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4383 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AOrExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4390 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4383);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4390);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AOrExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAndExpr___empty_init(val_t p0, int* init_table){
-  int itpos141 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAndExpr].i;
+void parser___parser_prod___AAndExpr___empty_init(val_t p0, int* init_table){
+  int itpos141 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAndExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos141]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4387;
-  fra.me.meth = LOCATE_parser_prod___AAndExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4394;
+  fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -23158,16 +23254,16 @@ void parser_prod___AAndExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos141] = 1;
   return;
 }
-void parser_prod___AAndExpr___init_aandexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos142 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAndExpr].i;
+void parser___parser_prod___AAndExpr___init_aandexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos142 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAndExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos142]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4389;
-  fra.me.meth = LOCATE_parser_prod___AAndExpr___init_aandexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4396;
+  fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___init_aandexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23176,47 +23272,47 @@ void parser_prod___AAndExpr___init_aandexpr(val_t p0, val_t p1, val_t p2, int* i
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4394 */
-  CALL_parser_prod___AAndExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4395 */
+  /* ./parser//parser_prod.nit:4401 */
+  CALL_parser___parser_prod___AAndExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4402 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4395);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4402);
   }
-  ATTR_parser_nodes___AAndExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4396 */
+  ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4403 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4396);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4403);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4397 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4404 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4397);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4404);
   }
-  ATTR_parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4398 */
+  ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4405 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4398);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4405);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos142] = 1;
   return;
 }
-void parser_prod___AAndExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAndExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4401;
-  fra.me.meth = LOCATE_parser_prod___AAndExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4408;
+  fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -23226,21 +23322,21 @@ void parser_prod___AAndExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4403 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAndExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4410 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4403);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4410);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAndExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4404 */
+    /* ./parser//parser_prod.nit:4411 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23249,48 +23345,48 @@ void parser_prod___AAndExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4405 */
+      /* ./parser//parser_prod.nit:4412 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4405);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4412);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4406 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4413 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4406);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4413);
       }
-      /* ./parser//parser_prod.nit:4407 */
-      ATTR_parser_nodes___AAndExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4414 */
+      ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4409 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4409);
+      /* ./parser//parser_prod.nit:4416 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4416);
     }
-    /* ./parser//parser_prod.nit:4411 */
+    /* ./parser//parser_prod.nit:4418 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4413 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAndExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4420 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4413);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4420);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4414 */
+    /* ./parser//parser_prod.nit:4421 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23299,45 +23395,45 @@ void parser_prod___AAndExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4415 */
+      /* ./parser//parser_prod.nit:4422 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4415);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4422);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4416 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4423 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4416);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4423);
       }
-      /* ./parser//parser_prod.nit:4417 */
-      ATTR_parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4424 */
+      ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4419 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4419);
+      /* ./parser//parser_prod.nit:4426 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4426);
     }
-    /* ./parser//parser_prod.nit:4421 */
+    /* ./parser//parser_prod.nit:4428 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAndExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAndExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4425;
-  fra.me.meth = LOCATE_parser_prod___AAndExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4432;
+  fra.me.meth = LOCATE_parser___parser_prod___AAndExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23345,34 +23441,34 @@ void parser_prod___AAndExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4427 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAndExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4434 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4427);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4434);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAndExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4428 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAndExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAndExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4435 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4428);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4435);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAndExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOrElseExpr___empty_init(val_t p0, int* init_table){
-  int itpos143 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOrElseExpr].i;
+void parser___parser_prod___AOrElseExpr___empty_init(val_t p0, int* init_table){
+  int itpos143 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrElseExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos143]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4432;
-  fra.me.meth = LOCATE_parser_prod___AOrElseExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4439;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -23381,16 +23477,16 @@ void parser_prod___AOrElseExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos143] = 1;
   return;
 }
-void parser_prod___AOrElseExpr___init_aorelseexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos144 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOrElseExpr].i;
+void parser___parser_prod___AOrElseExpr___init_aorelseexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos144 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrElseExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos144]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4434;
-  fra.me.meth = LOCATE_parser_prod___AOrElseExpr___init_aorelseexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4441;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___init_aorelseexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23399,47 +23495,47 @@ void parser_prod___AOrElseExpr___init_aorelseexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4439 */
-  CALL_parser_prod___AOrElseExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4440 */
+  /* ./parser//parser_prod.nit:4446 */
+  CALL_parser___parser_prod___AOrElseExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4447 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4440);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4447);
   }
-  ATTR_parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4441 */
+  ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4448 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4441);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4448);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4442 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4449 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4442);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4449);
   }
-  ATTR_parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4443 */
+  ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4450 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4443);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4450);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos144] = 1;
   return;
 }
-void parser_prod___AOrElseExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AOrElseExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4446;
-  fra.me.meth = LOCATE_parser_prod___AOrElseExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4453;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -23449,21 +23545,21 @@ void parser_prod___AOrElseExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4448 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4455 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4448);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4455);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4449 */
+    /* ./parser//parser_prod.nit:4456 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23472,48 +23568,48 @@ void parser_prod___AOrElseExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4450 */
+      /* ./parser//parser_prod.nit:4457 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4450);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4457);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4451 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4458 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4451);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4458);
       }
-      /* ./parser//parser_prod.nit:4452 */
-      ATTR_parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4459 */
+      ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4454 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4454);
+      /* ./parser//parser_prod.nit:4461 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4461);
     }
-    /* ./parser//parser_prod.nit:4456 */
+    /* ./parser//parser_prod.nit:4463 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4458 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4465 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4458);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4465);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4459 */
+    /* ./parser//parser_prod.nit:4466 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23522,45 +23618,45 @@ void parser_prod___AOrElseExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4460 */
+      /* ./parser//parser_prod.nit:4467 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4460);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4467);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4461 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4468 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4461);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4468);
       }
-      /* ./parser//parser_prod.nit:4462 */
-      ATTR_parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4469 */
+      ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4464 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4464);
+      /* ./parser//parser_prod.nit:4471 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4471);
     }
-    /* ./parser//parser_prod.nit:4466 */
+    /* ./parser//parser_prod.nit:4473 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOrElseExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AOrElseExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4470;
-  fra.me.meth = LOCATE_parser_prod___AOrElseExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4477;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrElseExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23568,34 +23664,34 @@ void parser_prod___AOrElseExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4472 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4479 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4472);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4479);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4473 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4480 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4473);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4480);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AOrElseExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANotExpr___empty_init(val_t p0, int* init_table){
-  int itpos145 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANotExpr].i;
+void parser___parser_prod___ANotExpr___empty_init(val_t p0, int* init_table){
+  int itpos145 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANotExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos145]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4477;
-  fra.me.meth = LOCATE_parser_prod___ANotExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4484;
+  fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -23604,16 +23700,16 @@ void parser_prod___ANotExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos145] = 1;
   return;
 }
-void parser_prod___ANotExpr___init_anotexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos146 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANotExpr].i;
+void parser___parser_prod___ANotExpr___init_anotexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos146 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANotExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos146]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4479;
-  fra.me.meth = LOCATE_parser_prod___ANotExpr___init_anotexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4486;
+  fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___init_anotexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23622,47 +23718,47 @@ void parser_prod___ANotExpr___init_anotexpr(val_t p0, val_t p1, val_t p2, int* i
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4484 */
-  CALL_parser_prod___ANotExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4485 */
+  /* ./parser//parser_prod.nit:4491 */
+  CALL_parser___parser_prod___ANotExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4492 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4485);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4492);
   }
-  ATTR_parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4486 */
+  ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4493 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4486);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4493);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4487 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4494 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4487);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4494);
   }
-  ATTR_parser_nodes___ANotExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4488 */
+  ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4495 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4488);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4495);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos146] = 1;
   return;
 }
-void parser_prod___ANotExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ANotExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4491;
-  fra.me.meth = LOCATE_parser_prod___ANotExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4498;
+  fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -23672,21 +23768,21 @@ void parser_prod___ANotExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4493 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4500 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser_prod, 4493);
+    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 4500);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4494 */
+    /* ./parser//parser_prod.nit:4501 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23695,48 +23791,48 @@ void parser_prod___ANotExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4495 */
+      /* ./parser//parser_prod.nit:4502 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4495);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4502);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4496 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4503 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnot, ID_parser___parser_nodes___TKwnot)) /*cast TKwnot*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4496);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4503);
       }
-      /* ./parser//parser_prod.nit:4497 */
-      ATTR_parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4504 */
+      ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4499 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4499);
+      /* ./parser//parser_prod.nit:4506 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4506);
     }
-    /* ./parser//parser_prod.nit:4501 */
+    /* ./parser//parser_prod.nit:4508 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4503 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANotExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4510 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4503);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4510);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANotExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4504 */
+    /* ./parser//parser_prod.nit:4511 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23745,45 +23841,45 @@ void parser_prod___ANotExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4505 */
+      /* ./parser//parser_prod.nit:4512 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4505);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4512);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4506 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4513 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4506);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4513);
       }
-      /* ./parser//parser_prod.nit:4507 */
-      ATTR_parser_nodes___ANotExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4514 */
+      ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4509 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4509);
+      /* ./parser//parser_prod.nit:4516 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4516);
     }
-    /* ./parser//parser_prod.nit:4511 */
+    /* ./parser//parser_prod.nit:4518 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANotExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ANotExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4515;
-  fra.me.meth = LOCATE_parser_prod___ANotExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4522;
+  fra.me.meth = LOCATE_parser___parser_prod___ANotExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23791,34 +23887,34 @@ void parser_prod___ANotExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4517 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4524 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser_prod, 4517);
+    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 4524);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4518 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANotExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ANotExpr____n_kwnot(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4525 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4518);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4525);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ANotExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ANotExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEqExpr___empty_init(val_t p0, int* init_table){
-  int itpos147 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEqExpr].i;
+void parser___parser_prod___AEqExpr___empty_init(val_t p0, int* init_table){
+  int itpos147 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos147]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4522;
-  fra.me.meth = LOCATE_parser_prod___AEqExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4529;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -23827,16 +23923,16 @@ void parser_prod___AEqExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos147] = 1;
   return;
 }
-void parser_prod___AEqExpr___init_aeqexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos148 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEqExpr].i;
+void parser___parser_prod___AEqExpr___init_aeqexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos148 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEqExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos148]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4524;
-  fra.me.meth = LOCATE_parser_prod___AEqExpr___init_aeqexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4531;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___init_aeqexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -23845,47 +23941,47 @@ void parser_prod___AEqExpr___init_aeqexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4529 */
-  CALL_parser_prod___AEqExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4530 */
+  /* ./parser//parser_prod.nit:4536 */
+  CALL_parser___parser_prod___AEqExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4537 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4530);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4537);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4531 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4538 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4531);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4538);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4532 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4539 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4532);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4539);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4533 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4540 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4533);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4540);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos148] = 1;
   return;
 }
-void parser_prod___AEqExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AEqExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4536;
-  fra.me.meth = LOCATE_parser_prod___AEqExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4543;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -23895,21 +23991,21 @@ void parser_prod___AEqExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4538 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4545 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4538);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4545);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4539 */
+    /* ./parser//parser_prod.nit:4546 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23918,48 +24014,48 @@ void parser_prod___AEqExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4540 */
+      /* ./parser//parser_prod.nit:4547 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4540);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4547);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4541 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4548 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4541);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4548);
       }
-      /* ./parser//parser_prod.nit:4542 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4549 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4544 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4544);
+      /* ./parser//parser_prod.nit:4551 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4551);
     }
-    /* ./parser//parser_prod.nit:4546 */
+    /* ./parser//parser_prod.nit:4553 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4548 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4555 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4548);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4555);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4549 */
+    /* ./parser//parser_prod.nit:4556 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -23968,45 +24064,45 @@ void parser_prod___AEqExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4550 */
+      /* ./parser//parser_prod.nit:4557 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4550);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4557);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4551 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4558 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4551);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4558);
       }
-      /* ./parser//parser_prod.nit:4552 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4559 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4554 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4554);
+      /* ./parser//parser_prod.nit:4561 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4561);
     }
-    /* ./parser//parser_prod.nit:4556 */
+    /* ./parser//parser_prod.nit:4563 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEqExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AEqExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4560;
-  fra.me.meth = LOCATE_parser_prod___AEqExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4567;
+  fra.me.meth = LOCATE_parser___parser_prod___AEqExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24014,34 +24110,34 @@ void parser_prod___AEqExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4562 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4569 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4562);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4569);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4563 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4570 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4563);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4570);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEeExpr___empty_init(val_t p0, int* init_table){
-  int itpos149 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEeExpr].i;
+void parser___parser_prod___AEeExpr___empty_init(val_t p0, int* init_table){
+  int itpos149 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEeExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos149]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4567;
-  fra.me.meth = LOCATE_parser_prod___AEeExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4574;
+  fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -24050,16 +24146,16 @@ void parser_prod___AEeExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos149] = 1;
   return;
 }
-void parser_prod___AEeExpr___init_aeeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos150 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEeExpr].i;
+void parser___parser_prod___AEeExpr___init_aeeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos150 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEeExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos150]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4569;
-  fra.me.meth = LOCATE_parser_prod___AEeExpr___init_aeeexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4576;
+  fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___init_aeeexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24068,47 +24164,47 @@ void parser_prod___AEeExpr___init_aeeexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4574 */
-  CALL_parser_prod___AEeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4575 */
+  /* ./parser//parser_prod.nit:4581 */
+  CALL_parser___parser_prod___AEeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4582 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4575);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4582);
   }
-  ATTR_parser_nodes___AEeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4576 */
+  ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4583 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4576);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4583);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4577 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4584 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4577);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4584);
   }
-  ATTR_parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4578 */
+  ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4585 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4578);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4585);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos150] = 1;
   return;
 }
-void parser_prod___AEeExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AEeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4581;
-  fra.me.meth = LOCATE_parser_prod___AEeExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4588;
+  fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -24118,21 +24214,21 @@ void parser_prod___AEeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4583 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4590 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4583);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4590);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AEeExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4584 */
+    /* ./parser//parser_prod.nit:4591 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24141,48 +24237,48 @@ void parser_prod___AEeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4585 */
+      /* ./parser//parser_prod.nit:4592 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4585);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4592);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4586 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4593 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4586);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4593);
       }
-      /* ./parser//parser_prod.nit:4587 */
-      ATTR_parser_nodes___AEeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4594 */
+      ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4589 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4589);
+      /* ./parser//parser_prod.nit:4596 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4596);
     }
-    /* ./parser//parser_prod.nit:4591 */
+    /* ./parser//parser_prod.nit:4598 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4593 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4600 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4593);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4600);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4594 */
+    /* ./parser//parser_prod.nit:4601 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24191,45 +24287,45 @@ void parser_prod___AEeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4595 */
+      /* ./parser//parser_prod.nit:4602 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4595);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4602);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4596 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4603 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4596);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4603);
       }
-      /* ./parser//parser_prod.nit:4597 */
-      ATTR_parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4604 */
+      ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4599 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4599);
+      /* ./parser//parser_prod.nit:4606 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4606);
     }
-    /* ./parser//parser_prod.nit:4601 */
+    /* ./parser//parser_prod.nit:4608 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEeExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AEeExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4605;
-  fra.me.meth = LOCATE_parser_prod___AEeExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4612;
+  fra.me.meth = LOCATE_parser___parser_prod___AEeExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24237,34 +24333,34 @@ void parser_prod___AEeExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4607 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4614 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4607);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4614);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AEeExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4608 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AEeExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4615 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4608);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4615);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AEeExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANeExpr___empty_init(val_t p0, int* init_table){
-  int itpos151 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANeExpr].i;
+void parser___parser_prod___ANeExpr___empty_init(val_t p0, int* init_table){
+  int itpos151 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos151]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4612;
-  fra.me.meth = LOCATE_parser_prod___ANeExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4619;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -24273,16 +24369,16 @@ void parser_prod___ANeExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos151] = 1;
   return;
 }
-void parser_prod___ANeExpr___init_aneexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos152 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANeExpr].i;
+void parser___parser_prod___ANeExpr___init_aneexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos152 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANeExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos152]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4614;
-  fra.me.meth = LOCATE_parser_prod___ANeExpr___init_aneexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4621;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___init_aneexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24291,47 +24387,47 @@ void parser_prod___ANeExpr___init_aneexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4619 */
-  CALL_parser_prod___ANeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4620 */
+  /* ./parser//parser_prod.nit:4626 */
+  CALL_parser___parser_prod___ANeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4627 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4620);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4627);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4621 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4628 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4621);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4628);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4622 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4629 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4622);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4629);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4623 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4630 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4623);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4630);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos152] = 1;
   return;
 }
-void parser_prod___ANeExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ANeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4626;
-  fra.me.meth = LOCATE_parser_prod___ANeExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4633;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -24341,21 +24437,21 @@ void parser_prod___ANeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4628 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4635 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4628);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4635);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4629 */
+    /* ./parser//parser_prod.nit:4636 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24364,48 +24460,48 @@ void parser_prod___ANeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4630 */
+      /* ./parser//parser_prod.nit:4637 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4630);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4637);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4631 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4638 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4631);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4638);
       }
-      /* ./parser//parser_prod.nit:4632 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4639 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4634 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4634);
+      /* ./parser//parser_prod.nit:4641 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4641);
     }
-    /* ./parser//parser_prod.nit:4636 */
+    /* ./parser//parser_prod.nit:4643 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4638 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4645 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4638);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4645);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4639 */
+    /* ./parser//parser_prod.nit:4646 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24414,45 +24510,45 @@ void parser_prod___ANeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4640 */
+      /* ./parser//parser_prod.nit:4647 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4640);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4647);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4641 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4648 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4641);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4648);
       }
-      /* ./parser//parser_prod.nit:4642 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4649 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4644 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4644);
+      /* ./parser//parser_prod.nit:4651 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4651);
     }
-    /* ./parser//parser_prod.nit:4646 */
+    /* ./parser//parser_prod.nit:4653 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANeExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ANeExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4650;
-  fra.me.meth = LOCATE_parser_prod___ANeExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4657;
+  fra.me.meth = LOCATE_parser___parser_prod___ANeExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24460,34 +24556,34 @@ void parser_prod___ANeExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4652 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4659 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4652);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4659);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4653 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4660 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4653);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4660);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALtExpr___empty_init(val_t p0, int* init_table){
-  int itpos153 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALtExpr].i;
+void parser___parser_prod___ALtExpr___empty_init(val_t p0, int* init_table){
+  int itpos153 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos153]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4657;
-  fra.me.meth = LOCATE_parser_prod___ALtExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4664;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -24496,16 +24592,16 @@ void parser_prod___ALtExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos153] = 1;
   return;
 }
-void parser_prod___ALtExpr___init_altexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos154 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALtExpr].i;
+void parser___parser_prod___ALtExpr___init_altexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos154 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALtExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos154]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4659;
-  fra.me.meth = LOCATE_parser_prod___ALtExpr___init_altexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4666;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___init_altexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24514,47 +24610,47 @@ void parser_prod___ALtExpr___init_altexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4664 */
-  CALL_parser_prod___ALtExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4665 */
+  /* ./parser//parser_prod.nit:4671 */
+  CALL_parser___parser_prod___ALtExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4672 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4665);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4672);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4666 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4673 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4666);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4673);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4667 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4674 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4667);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4674);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4668 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4675 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4668);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4675);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos154] = 1;
   return;
 }
-void parser_prod___ALtExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALtExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4671;
-  fra.me.meth = LOCATE_parser_prod___ALtExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4678;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -24564,21 +24660,21 @@ void parser_prod___ALtExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4673 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4680 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4673);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4680);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4674 */
+    /* ./parser//parser_prod.nit:4681 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24587,48 +24683,48 @@ void parser_prod___ALtExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4675 */
+      /* ./parser//parser_prod.nit:4682 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4675);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4682);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4676 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4683 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4676);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4683);
       }
-      /* ./parser//parser_prod.nit:4677 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4684 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4679 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4679);
+      /* ./parser//parser_prod.nit:4686 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4686);
     }
-    /* ./parser//parser_prod.nit:4681 */
+    /* ./parser//parser_prod.nit:4688 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4683 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4690 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4683);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4690);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4684 */
+    /* ./parser//parser_prod.nit:4691 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24637,45 +24733,45 @@ void parser_prod___ALtExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4685 */
+      /* ./parser//parser_prod.nit:4692 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4685);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4692);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4686 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4693 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4686);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4693);
       }
-      /* ./parser//parser_prod.nit:4687 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4694 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4689 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4689);
+      /* ./parser//parser_prod.nit:4696 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4696);
     }
-    /* ./parser//parser_prod.nit:4691 */
+    /* ./parser//parser_prod.nit:4698 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALtExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALtExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4695;
-  fra.me.meth = LOCATE_parser_prod___ALtExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4702;
+  fra.me.meth = LOCATE_parser___parser_prod___ALtExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24683,34 +24779,34 @@ void parser_prod___ALtExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4697 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4704 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4697);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4704);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4698 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4705 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4698);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4705);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALeExpr___empty_init(val_t p0, int* init_table){
-  int itpos155 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALeExpr].i;
+void parser___parser_prod___ALeExpr___empty_init(val_t p0, int* init_table){
+  int itpos155 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos155]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4702;
-  fra.me.meth = LOCATE_parser_prod___ALeExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4709;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -24719,16 +24815,16 @@ void parser_prod___ALeExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos155] = 1;
   return;
 }
-void parser_prod___ALeExpr___init_aleexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos156 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALeExpr].i;
+void parser___parser_prod___ALeExpr___init_aleexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos156 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALeExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos156]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4704;
-  fra.me.meth = LOCATE_parser_prod___ALeExpr___init_aleexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4711;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___init_aleexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24737,47 +24833,47 @@ void parser_prod___ALeExpr___init_aleexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4709 */
-  CALL_parser_prod___ALeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4710 */
+  /* ./parser//parser_prod.nit:4716 */
+  CALL_parser___parser_prod___ALeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4717 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4710);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4717);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4711 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4718 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4711);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4718);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4712 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4719 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4712);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4719);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4713 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4720 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4713);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4720);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos156] = 1;
   return;
 }
-void parser_prod___ALeExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4716;
-  fra.me.meth = LOCATE_parser_prod___ALeExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4723;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -24787,21 +24883,21 @@ void parser_prod___ALeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4718 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4725 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4718);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4725);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4719 */
+    /* ./parser//parser_prod.nit:4726 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24810,48 +24906,48 @@ void parser_prod___ALeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4720 */
+      /* ./parser//parser_prod.nit:4727 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4720);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4727);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4721 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4728 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4721);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4728);
       }
-      /* ./parser//parser_prod.nit:4722 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4729 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4724 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4724);
+      /* ./parser//parser_prod.nit:4731 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4731);
     }
-    /* ./parser//parser_prod.nit:4726 */
+    /* ./parser//parser_prod.nit:4733 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4728 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4735 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4728);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4735);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4729 */
+    /* ./parser//parser_prod.nit:4736 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -24860,45 +24956,45 @@ void parser_prod___ALeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4730 */
+      /* ./parser//parser_prod.nit:4737 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4730);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4737);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4731 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4738 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4731);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4738);
       }
-      /* ./parser//parser_prod.nit:4732 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4739 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4734 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4734);
+      /* ./parser//parser_prod.nit:4741 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4741);
     }
-    /* ./parser//parser_prod.nit:4736 */
+    /* ./parser//parser_prod.nit:4743 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALeExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALeExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4740;
-  fra.me.meth = LOCATE_parser_prod___ALeExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4747;
+  fra.me.meth = LOCATE_parser___parser_prod___ALeExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24906,34 +25002,34 @@ void parser_prod___ALeExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4742 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4749 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4742);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4749);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4743 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4750 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4743);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4750);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALlExpr___empty_init(val_t p0, int* init_table){
-  int itpos157 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALlExpr].i;
+void parser___parser_prod___ALlExpr___empty_init(val_t p0, int* init_table){
+  int itpos157 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos157]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4747;
-  fra.me.meth = LOCATE_parser_prod___ALlExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4754;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -24942,16 +25038,16 @@ void parser_prod___ALlExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos157] = 1;
   return;
 }
-void parser_prod___ALlExpr___init_allexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos158 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALlExpr].i;
+void parser___parser_prod___ALlExpr___init_allexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos158 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALlExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos158]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4749;
-  fra.me.meth = LOCATE_parser_prod___ALlExpr___init_allexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4756;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___init_allexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -24960,47 +25056,47 @@ void parser_prod___ALlExpr___init_allexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4754 */
-  CALL_parser_prod___ALlExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4755 */
+  /* ./parser//parser_prod.nit:4761 */
+  CALL_parser___parser_prod___ALlExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4762 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4755);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4762);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4756 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4763 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4756);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4763);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4757 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4764 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4757);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4764);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4758 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4765 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4758);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4765);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos158] = 1;
   return;
 }
-void parser_prod___ALlExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALlExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4761;
-  fra.me.meth = LOCATE_parser_prod___ALlExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4768;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -25010,21 +25106,21 @@ void parser_prod___ALlExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4763 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4770 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4763);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4770);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4764 */
+    /* ./parser//parser_prod.nit:4771 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25033,48 +25129,48 @@ void parser_prod___ALlExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4765 */
+      /* ./parser//parser_prod.nit:4772 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4765);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4772);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4766 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4773 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4766);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4773);
       }
-      /* ./parser//parser_prod.nit:4767 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4774 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4769 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4769);
+      /* ./parser//parser_prod.nit:4776 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4776);
     }
-    /* ./parser//parser_prod.nit:4771 */
+    /* ./parser//parser_prod.nit:4778 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4773 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4780 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4773);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4780);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4774 */
+    /* ./parser//parser_prod.nit:4781 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25083,45 +25179,45 @@ void parser_prod___ALlExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4775 */
+      /* ./parser//parser_prod.nit:4782 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4775);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4782);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4776 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4783 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4776);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4783);
       }
-      /* ./parser//parser_prod.nit:4777 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4784 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4779 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4779);
+      /* ./parser//parser_prod.nit:4786 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4786);
     }
-    /* ./parser//parser_prod.nit:4781 */
+    /* ./parser//parser_prod.nit:4788 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALlExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALlExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4785;
-  fra.me.meth = LOCATE_parser_prod___ALlExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4792;
+  fra.me.meth = LOCATE_parser___parser_prod___ALlExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25129,34 +25225,34 @@ void parser_prod___ALlExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4787 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4794 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4787);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4794);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4788 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4795 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4788);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4795);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGtExpr___empty_init(val_t p0, int* init_table){
-  int itpos159 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGtExpr].i;
+void parser___parser_prod___AGtExpr___empty_init(val_t p0, int* init_table){
+  int itpos159 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos159]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4792;
-  fra.me.meth = LOCATE_parser_prod___AGtExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4799;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -25165,16 +25261,16 @@ void parser_prod___AGtExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos159] = 1;
   return;
 }
-void parser_prod___AGtExpr___init_agtexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos160 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGtExpr].i;
+void parser___parser_prod___AGtExpr___init_agtexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos160 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGtExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos160]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4794;
-  fra.me.meth = LOCATE_parser_prod___AGtExpr___init_agtexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4801;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___init_agtexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25183,47 +25279,47 @@ void parser_prod___AGtExpr___init_agtexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4799 */
-  CALL_parser_prod___AGtExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4800 */
+  /* ./parser//parser_prod.nit:4806 */
+  CALL_parser___parser_prod___AGtExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4807 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4800);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4807);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4801 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4808 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4801);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4808);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4802 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4809 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4802);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4809);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4803 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4810 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4803);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4810);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos160] = 1;
   return;
 }
-void parser_prod___AGtExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AGtExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4806;
-  fra.me.meth = LOCATE_parser_prod___AGtExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4813;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -25233,21 +25329,21 @@ void parser_prod___AGtExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4808 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4815 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4808);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4815);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4809 */
+    /* ./parser//parser_prod.nit:4816 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25256,48 +25352,48 @@ void parser_prod___AGtExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4810 */
+      /* ./parser//parser_prod.nit:4817 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4810);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4817);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4811 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4818 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4811);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4818);
       }
-      /* ./parser//parser_prod.nit:4812 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4819 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4814 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4814);
+      /* ./parser//parser_prod.nit:4821 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4821);
     }
-    /* ./parser//parser_prod.nit:4816 */
+    /* ./parser//parser_prod.nit:4823 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4818 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4825 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4818);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4825);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4819 */
+    /* ./parser//parser_prod.nit:4826 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25306,45 +25402,45 @@ void parser_prod___AGtExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4820 */
+      /* ./parser//parser_prod.nit:4827 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4820);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4827);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4821 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4828 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4821);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4828);
       }
-      /* ./parser//parser_prod.nit:4822 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4829 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4824 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4824);
+      /* ./parser//parser_prod.nit:4831 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4831);
     }
-    /* ./parser//parser_prod.nit:4826 */
+    /* ./parser//parser_prod.nit:4833 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGtExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AGtExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4830;
-  fra.me.meth = LOCATE_parser_prod___AGtExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4837;
+  fra.me.meth = LOCATE_parser___parser_prod___AGtExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25352,34 +25448,34 @@ void parser_prod___AGtExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4832 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4839 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4832);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4839);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4833 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4840 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4833);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4840);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGeExpr___empty_init(val_t p0, int* init_table){
-  int itpos161 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGeExpr].i;
+void parser___parser_prod___AGeExpr___empty_init(val_t p0, int* init_table){
+  int itpos161 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos161]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4837;
-  fra.me.meth = LOCATE_parser_prod___AGeExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4844;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -25388,16 +25484,16 @@ void parser_prod___AGeExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos161] = 1;
   return;
 }
-void parser_prod___AGeExpr___init_ageexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos162 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGeExpr].i;
+void parser___parser_prod___AGeExpr___init_ageexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos162 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGeExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos162]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4839;
-  fra.me.meth = LOCATE_parser_prod___AGeExpr___init_ageexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4846;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___init_ageexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25406,47 +25502,47 @@ void parser_prod___AGeExpr___init_ageexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4844 */
-  CALL_parser_prod___AGeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4845 */
+  /* ./parser//parser_prod.nit:4851 */
+  CALL_parser___parser_prod___AGeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4852 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4845);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4852);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4846 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4853 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4846);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4853);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4847 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4854 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4847);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4854);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4848 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4855 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4848);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4855);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos162] = 1;
   return;
 }
-void parser_prod___AGeExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AGeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4851;
-  fra.me.meth = LOCATE_parser_prod___AGeExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4858;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -25456,21 +25552,21 @@ void parser_prod___AGeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4853 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4860 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4853);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4860);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4854 */
+    /* ./parser//parser_prod.nit:4861 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25479,48 +25575,48 @@ void parser_prod___AGeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4855 */
+      /* ./parser//parser_prod.nit:4862 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4855);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4862);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4856 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4863 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4856);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4863);
       }
-      /* ./parser//parser_prod.nit:4857 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4864 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4859 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4859);
+      /* ./parser//parser_prod.nit:4866 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4866);
     }
-    /* ./parser//parser_prod.nit:4861 */
+    /* ./parser//parser_prod.nit:4868 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4863 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4870 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4863);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4870);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4864 */
+    /* ./parser//parser_prod.nit:4871 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25529,45 +25625,45 @@ void parser_prod___AGeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4865 */
+      /* ./parser//parser_prod.nit:4872 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4865);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4872);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4866 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4873 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4866);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4873);
       }
-      /* ./parser//parser_prod.nit:4867 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4874 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4869 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4869);
+      /* ./parser//parser_prod.nit:4876 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4876);
     }
-    /* ./parser//parser_prod.nit:4871 */
+    /* ./parser//parser_prod.nit:4878 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGeExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AGeExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4875;
-  fra.me.meth = LOCATE_parser_prod___AGeExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4882;
+  fra.me.meth = LOCATE_parser___parser_prod___AGeExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25575,34 +25671,34 @@ void parser_prod___AGeExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4877 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4884 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4877);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4884);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4878 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4885 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4878);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4885);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGgExpr___empty_init(val_t p0, int* init_table){
-  int itpos163 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGgExpr].i;
+void parser___parser_prod___AGgExpr___empty_init(val_t p0, int* init_table){
+  int itpos163 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos163]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4882;
-  fra.me.meth = LOCATE_parser_prod___AGgExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4889;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -25611,16 +25707,16 @@ void parser_prod___AGgExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos163] = 1;
   return;
 }
-void parser_prod___AGgExpr___init_aggexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos164 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AGgExpr].i;
+void parser___parser_prod___AGgExpr___init_aggexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos164 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AGgExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos164]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4884;
-  fra.me.meth = LOCATE_parser_prod___AGgExpr___init_aggexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4891;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___init_aggexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25629,47 +25725,47 @@ void parser_prod___AGgExpr___init_aggexpr(val_t p0, val_t p1, val_t p2, int* ini
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4889 */
-  CALL_parser_prod___AGgExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4890 */
+  /* ./parser//parser_prod.nit:4896 */
+  CALL_parser___parser_prod___AGgExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4897 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4890);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4897);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4891 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4898 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4891);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4898);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4892 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4899 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4892);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4899);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4893 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4900 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4893);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4900);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos164] = 1;
   return;
 }
-void parser_prod___AGgExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AGgExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4896;
-  fra.me.meth = LOCATE_parser_prod___AGgExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4903;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -25679,21 +25775,21 @@ void parser_prod___AGgExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4898 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4905 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4898);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4905);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4899 */
+    /* ./parser//parser_prod.nit:4906 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25702,48 +25798,48 @@ void parser_prod___AGgExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4900 */
+      /* ./parser//parser_prod.nit:4907 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4900);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4907);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4901 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4908 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4901);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4908);
       }
-      /* ./parser//parser_prod.nit:4902 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4909 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4904 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4904);
+      /* ./parser//parser_prod.nit:4911 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4911);
     }
-    /* ./parser//parser_prod.nit:4906 */
+    /* ./parser//parser_prod.nit:4913 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4908 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4915 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4908);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4915);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4909 */
+    /* ./parser//parser_prod.nit:4916 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25752,45 +25848,45 @@ void parser_prod___AGgExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4910 */
+      /* ./parser//parser_prod.nit:4917 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4910);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4917);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4911 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4918 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4911);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4918);
       }
-      /* ./parser//parser_prod.nit:4912 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4919 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4914 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4914);
+      /* ./parser//parser_prod.nit:4921 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4921);
     }
-    /* ./parser//parser_prod.nit:4916 */
+    /* ./parser//parser_prod.nit:4923 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AGgExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AGgExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4920;
-  fra.me.meth = LOCATE_parser_prod___AGgExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4927;
+  fra.me.meth = LOCATE_parser___parser_prod___AGgExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25798,34 +25894,34 @@ void parser_prod___AGgExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4922 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4929 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4922);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4929);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4923 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4930 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4923);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 4930);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIsaExpr___empty_init(val_t p0, int* init_table){
-  int itpos165 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIsaExpr].i;
+void parser___parser_prod___AIsaExpr___empty_init(val_t p0, int* init_table){
+  int itpos165 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIsaExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos165]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4927;
-  fra.me.meth = LOCATE_parser_prod___AIsaExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4934;
+  fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -25834,16 +25930,16 @@ void parser_prod___AIsaExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos165] = 1;
   return;
 }
-void parser_prod___AIsaExpr___init_aisaexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos166 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIsaExpr].i;
+void parser___parser_prod___AIsaExpr___init_aisaexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos166 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIsaExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos166]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4929;
-  fra.me.meth = LOCATE_parser_prod___AIsaExpr___init_aisaexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4936;
+  fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___init_aisaexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -25852,47 +25948,47 @@ void parser_prod___AIsaExpr___init_aisaexpr(val_t p0, val_t p1, val_t p2, int* i
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4934 */
-  CALL_parser_prod___AIsaExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4935 */
+  /* ./parser//parser_prod.nit:4941 */
+  CALL_parser___parser_prod___AIsaExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4942 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4935);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4942);
   }
-  ATTR_parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4936 */
+  ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4943 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4936);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4943);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4937 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4944 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4937);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4944);
   }
-  ATTR_parser_nodes___AIsaExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4938 */
+  ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4945 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4938);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4945);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos166] = 1;
   return;
 }
-void parser_prod___AIsaExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AIsaExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4941;
-  fra.me.meth = LOCATE_parser_prod___AIsaExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4948;
+  fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -25902,21 +25998,21 @@ void parser_prod___AIsaExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4943 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIsaExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4950 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4943);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4950);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4944 */
+    /* ./parser//parser_prod.nit:4951 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25925,48 +26021,48 @@ void parser_prod___AIsaExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4945 */
+      /* ./parser//parser_prod.nit:4952 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4945);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4952);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4946 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4953 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4946);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4953);
       }
-      /* ./parser//parser_prod.nit:4947 */
-      ATTR_parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4954 */
+      ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4949 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4949);
+      /* ./parser//parser_prod.nit:4956 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4956);
     }
-    /* ./parser//parser_prod.nit:4951 */
+    /* ./parser//parser_prod.nit:4958 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4953 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIsaExpr____n_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4960 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 4953);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 4960);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIsaExpr____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4954 */
+    /* ./parser//parser_prod.nit:4961 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -25975,45 +26071,45 @@ void parser_prod___AIsaExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4955 */
+      /* ./parser//parser_prod.nit:4962 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4955);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4962);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4956 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4963 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4956);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4963);
       }
-      /* ./parser//parser_prod.nit:4957 */
-      ATTR_parser_nodes___AIsaExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4964 */
+      ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4959 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4959);
+      /* ./parser//parser_prod.nit:4966 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 4966);
     }
-    /* ./parser//parser_prod.nit:4961 */
+    /* ./parser//parser_prod.nit:4968 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIsaExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AIsaExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4965;
-  fra.me.meth = LOCATE_parser_prod___AIsaExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4972;
+  fra.me.meth = LOCATE_parser___parser_prod___AIsaExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26021,34 +26117,34 @@ void parser_prod___AIsaExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:4967 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIsaExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4974 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4967);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4974);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:4968 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIsaExpr____n_type(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIsaExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:4975 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 4968);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 4975);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AIsaExpr____n_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AIsaExpr____n_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APlusExpr___empty_init(val_t p0, int* init_table){
-  int itpos167 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APlusExpr].i;
+void parser___parser_prod___APlusExpr___empty_init(val_t p0, int* init_table){
+  int itpos167 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos167]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4972;
-  fra.me.meth = LOCATE_parser_prod___APlusExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4979;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -26057,16 +26153,16 @@ void parser_prod___APlusExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos167] = 1;
   return;
 }
-void parser_prod___APlusExpr___init_aplusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos168 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APlusExpr].i;
+void parser___parser_prod___APlusExpr___init_aplusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos168 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos168]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4974;
-  fra.me.meth = LOCATE_parser_prod___APlusExpr___init_aplusexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4981;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___init_aplusexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26075,47 +26171,47 @@ void parser_prod___APlusExpr___init_aplusexpr(val_t p0, val_t p1, val_t p2, int*
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4979 */
-  CALL_parser_prod___APlusExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:4980 */
+  /* ./parser//parser_prod.nit:4986 */
+  CALL_parser___parser_prod___APlusExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:4987 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4980);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4987);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:4981 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:4988 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4981);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4988);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:4982 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:4989 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 4982);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 4989);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:4983 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:4990 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4983);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4990);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos168] = 1;
   return;
 }
-void parser_prod___APlusExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___APlusExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 4986;
-  fra.me.meth = LOCATE_parser_prod___APlusExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 4993;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -26125,21 +26221,21 @@ void parser_prod___APlusExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:4988 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:4995 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 4988);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 4995);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4989 */
+    /* ./parser//parser_prod.nit:4996 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26148,48 +26244,48 @@ void parser_prod___APlusExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:4990 */
+      /* ./parser//parser_prod.nit:4997 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 4990);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 4997);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:4991 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:4998 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 4991);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 4998);
       }
-      /* ./parser//parser_prod.nit:4992 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:4999 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:4994 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 4994);
+      /* ./parser//parser_prod.nit:5001 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5001);
     }
-    /* ./parser//parser_prod.nit:4996 */
+    /* ./parser//parser_prod.nit:5003 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:4998 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5005 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 4998);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5005);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:4999 */
+    /* ./parser//parser_prod.nit:5006 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26198,45 +26294,45 @@ void parser_prod___APlusExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5000 */
+      /* ./parser//parser_prod.nit:5007 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5000);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5007);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5001 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5008 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5001);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5008);
       }
-      /* ./parser//parser_prod.nit:5002 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5009 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5004 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5004);
+      /* ./parser//parser_prod.nit:5011 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5011);
     }
-    /* ./parser//parser_prod.nit:5006 */
+    /* ./parser//parser_prod.nit:5013 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APlusExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___APlusExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5010;
-  fra.me.meth = LOCATE_parser_prod___APlusExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5017;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26244,34 +26340,34 @@ void parser_prod___APlusExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5012 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5019 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5012);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5019);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5013 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5020 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5013);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5020);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMinusExpr___empty_init(val_t p0, int* init_table){
-  int itpos169 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMinusExpr].i;
+void parser___parser_prod___AMinusExpr___empty_init(val_t p0, int* init_table){
+  int itpos169 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos169]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5017;
-  fra.me.meth = LOCATE_parser_prod___AMinusExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5024;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -26280,16 +26376,16 @@ void parser_prod___AMinusExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos169] = 1;
   return;
 }
-void parser_prod___AMinusExpr___init_aminusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos170 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMinusExpr].i;
+void parser___parser_prod___AMinusExpr___init_aminusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos170 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos170]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5019;
-  fra.me.meth = LOCATE_parser_prod___AMinusExpr___init_aminusexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5026;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___init_aminusexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26298,47 +26394,47 @@ void parser_prod___AMinusExpr___init_aminusexpr(val_t p0, val_t p1, val_t p2, in
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5024 */
-  CALL_parser_prod___AMinusExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5025 */
+  /* ./parser//parser_prod.nit:5031 */
+  CALL_parser___parser_prod___AMinusExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5032 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5025);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5032);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5026 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5033 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5026);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5033);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5027 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5034 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5027);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5034);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5028 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5035 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5028);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5035);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos170] = 1;
   return;
 }
-void parser_prod___AMinusExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AMinusExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5031;
-  fra.me.meth = LOCATE_parser_prod___AMinusExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5038;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -26348,21 +26444,21 @@ void parser_prod___AMinusExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5033 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5040 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5033);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5040);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5034 */
+    /* ./parser//parser_prod.nit:5041 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26371,48 +26467,48 @@ void parser_prod___AMinusExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5035 */
+      /* ./parser//parser_prod.nit:5042 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5035);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5042);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5036 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5043 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5036);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5043);
       }
-      /* ./parser//parser_prod.nit:5037 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5044 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5039 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5039);
+      /* ./parser//parser_prod.nit:5046 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5046);
     }
-    /* ./parser//parser_prod.nit:5041 */
+    /* ./parser//parser_prod.nit:5048 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5043 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5050 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5043);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5050);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5044 */
+    /* ./parser//parser_prod.nit:5051 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26421,45 +26517,45 @@ void parser_prod___AMinusExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5045 */
+      /* ./parser//parser_prod.nit:5052 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5045);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5052);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5046 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5053 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5046);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5053);
       }
-      /* ./parser//parser_prod.nit:5047 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5054 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5049 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5049);
+      /* ./parser//parser_prod.nit:5056 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5056);
     }
-    /* ./parser//parser_prod.nit:5051 */
+    /* ./parser//parser_prod.nit:5058 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMinusExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AMinusExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5055;
-  fra.me.meth = LOCATE_parser_prod___AMinusExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5062;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26467,34 +26563,34 @@ void parser_prod___AMinusExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5057 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5064 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5057);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5064);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5058 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5065 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5058);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5065);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarshipExpr___empty_init(val_t p0, int* init_table){
-  int itpos171 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarshipExpr].i;
+void parser___parser_prod___AStarshipExpr___empty_init(val_t p0, int* init_table){
+  int itpos171 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos171]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5062;
-  fra.me.meth = LOCATE_parser_prod___AStarshipExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5069;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -26503,16 +26599,16 @@ void parser_prod___AStarshipExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos171] = 1;
   return;
 }
-void parser_prod___AStarshipExpr___init_astarshipexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos172 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarshipExpr].i;
+void parser___parser_prod___AStarshipExpr___init_astarshipexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos172 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarshipExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos172]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5064;
-  fra.me.meth = LOCATE_parser_prod___AStarshipExpr___init_astarshipexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5071;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___init_astarshipexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26521,47 +26617,47 @@ void parser_prod___AStarshipExpr___init_astarshipexpr(val_t p0, val_t p1, val_t
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5069 */
-  CALL_parser_prod___AStarshipExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5070 */
+  /* ./parser//parser_prod.nit:5076 */
+  CALL_parser___parser_prod___AStarshipExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5077 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5070);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5077);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5071 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5078 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5071);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5078);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5072 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5079 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5072);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5079);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5073 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5080 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5073);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5080);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos172] = 1;
   return;
 }
-void parser_prod___AStarshipExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStarshipExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5076;
-  fra.me.meth = LOCATE_parser_prod___AStarshipExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5083;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -26571,21 +26667,21 @@ void parser_prod___AStarshipExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5078 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5085 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5078);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5085);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5079 */
+    /* ./parser//parser_prod.nit:5086 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26594,48 +26690,48 @@ void parser_prod___AStarshipExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5080 */
+      /* ./parser//parser_prod.nit:5087 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5080);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5087);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5081 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5088 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5081);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5088);
       }
-      /* ./parser//parser_prod.nit:5082 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5089 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5084 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5084);
+      /* ./parser//parser_prod.nit:5091 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5091);
     }
-    /* ./parser//parser_prod.nit:5086 */
+    /* ./parser//parser_prod.nit:5093 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5088 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5095 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5088);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5095);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5089 */
+    /* ./parser//parser_prod.nit:5096 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26644,45 +26740,45 @@ void parser_prod___AStarshipExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5090 */
+      /* ./parser//parser_prod.nit:5097 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5090);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5097);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5091 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5098 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5091);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5098);
       }
-      /* ./parser//parser_prod.nit:5092 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5099 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5094 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5094);
+      /* ./parser//parser_prod.nit:5101 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5101);
     }
-    /* ./parser//parser_prod.nit:5096 */
+    /* ./parser//parser_prod.nit:5103 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarshipExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStarshipExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5100;
-  fra.me.meth = LOCATE_parser_prod___AStarshipExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5107;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarshipExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26690,34 +26786,34 @@ void parser_prod___AStarshipExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5102 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5109 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5102);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5109);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5103 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5110 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5103);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5110);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarExpr___empty_init(val_t p0, int* init_table){
-  int itpos173 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarExpr].i;
+void parser___parser_prod___AStarExpr___empty_init(val_t p0, int* init_table){
+  int itpos173 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos173]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5107;
-  fra.me.meth = LOCATE_parser_prod___AStarExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5114;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -26726,16 +26822,16 @@ void parser_prod___AStarExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos173] = 1;
   return;
 }
-void parser_prod___AStarExpr___init_astarexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos174 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStarExpr].i;
+void parser___parser_prod___AStarExpr___init_astarexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos174 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStarExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos174]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5109;
-  fra.me.meth = LOCATE_parser_prod___AStarExpr___init_astarexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5116;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___init_astarexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26744,47 +26840,47 @@ void parser_prod___AStarExpr___init_astarexpr(val_t p0, val_t p1, val_t p2, int*
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5114 */
-  CALL_parser_prod___AStarExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5115 */
+  /* ./parser//parser_prod.nit:5121 */
+  CALL_parser___parser_prod___AStarExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5122 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5115);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5122);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5116 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5123 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5116);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5123);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5117 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5124 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5117);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5124);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5118 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5125 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5118);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5125);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos174] = 1;
   return;
 }
-void parser_prod___AStarExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStarExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5121;
-  fra.me.meth = LOCATE_parser_prod___AStarExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5128;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -26794,21 +26890,21 @@ void parser_prod___AStarExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5123 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5130 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5123);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5130);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5124 */
+    /* ./parser//parser_prod.nit:5131 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26817,48 +26913,48 @@ void parser_prod___AStarExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5125 */
+      /* ./parser//parser_prod.nit:5132 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5125);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5132);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5126 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5133 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5126);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5133);
       }
-      /* ./parser//parser_prod.nit:5127 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5134 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5129 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5129);
+      /* ./parser//parser_prod.nit:5136 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5136);
     }
-    /* ./parser//parser_prod.nit:5131 */
+    /* ./parser//parser_prod.nit:5138 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5133 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5140 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5133);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5140);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5134 */
+    /* ./parser//parser_prod.nit:5141 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -26867,45 +26963,45 @@ void parser_prod___AStarExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5135 */
+      /* ./parser//parser_prod.nit:5142 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5135);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5142);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5136 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5143 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5136);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5143);
       }
-      /* ./parser//parser_prod.nit:5137 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5144 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5139 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5139);
+      /* ./parser//parser_prod.nit:5146 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5146);
     }
-    /* ./parser//parser_prod.nit:5141 */
+    /* ./parser//parser_prod.nit:5148 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStarExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStarExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5145;
-  fra.me.meth = LOCATE_parser_prod___AStarExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5152;
+  fra.me.meth = LOCATE_parser___parser_prod___AStarExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26913,34 +27009,34 @@ void parser_prod___AStarExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5147 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5154 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5147);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5154);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5148 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5155 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5148);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5155);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASlashExpr___empty_init(val_t p0, int* init_table){
-  int itpos175 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASlashExpr].i;
+void parser___parser_prod___ASlashExpr___empty_init(val_t p0, int* init_table){
+  int itpos175 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos175]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5152;
-  fra.me.meth = LOCATE_parser_prod___ASlashExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5159;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -26949,16 +27045,16 @@ void parser_prod___ASlashExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos175] = 1;
   return;
 }
-void parser_prod___ASlashExpr___init_aslashexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos176 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASlashExpr].i;
+void parser___parser_prod___ASlashExpr___init_aslashexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos176 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASlashExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos176]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5154;
-  fra.me.meth = LOCATE_parser_prod___ASlashExpr___init_aslashexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5161;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___init_aslashexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -26967,47 +27063,47 @@ void parser_prod___ASlashExpr___init_aslashexpr(val_t p0, val_t p1, val_t p2, in
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5159 */
-  CALL_parser_prod___ASlashExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5160 */
+  /* ./parser//parser_prod.nit:5166 */
+  CALL_parser___parser_prod___ASlashExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5167 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5160);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5167);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5161 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5168 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5161);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5168);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5162 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5169 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5162);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5169);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5163 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5170 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5163);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5170);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos176] = 1;
   return;
 }
-void parser_prod___ASlashExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASlashExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5166;
-  fra.me.meth = LOCATE_parser_prod___ASlashExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5173;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -27017,21 +27113,21 @@ void parser_prod___ASlashExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5168 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5175 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5168);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5175);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5169 */
+    /* ./parser//parser_prod.nit:5176 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27040,48 +27136,48 @@ void parser_prod___ASlashExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5170 */
+      /* ./parser//parser_prod.nit:5177 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5170);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5177);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5171 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5178 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5171);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5178);
       }
-      /* ./parser//parser_prod.nit:5172 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5179 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5174 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5174);
+      /* ./parser//parser_prod.nit:5181 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5181);
     }
-    /* ./parser//parser_prod.nit:5176 */
+    /* ./parser//parser_prod.nit:5183 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5178 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5185 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5178);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5185);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5179 */
+    /* ./parser//parser_prod.nit:5186 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27090,45 +27186,45 @@ void parser_prod___ASlashExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5180 */
+      /* ./parser//parser_prod.nit:5187 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5180);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5187);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5181 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5188 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5181);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5188);
       }
-      /* ./parser//parser_prod.nit:5182 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5189 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5184 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5184);
+      /* ./parser//parser_prod.nit:5191 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5191);
     }
-    /* ./parser//parser_prod.nit:5186 */
+    /* ./parser//parser_prod.nit:5193 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASlashExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASlashExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5190;
-  fra.me.meth = LOCATE_parser_prod___ASlashExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5197;
+  fra.me.meth = LOCATE_parser___parser_prod___ASlashExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -27136,34 +27232,34 @@ void parser_prod___ASlashExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5192 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5199 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5192);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5199);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5193 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5200 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5193);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5200);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APercentExpr___empty_init(val_t p0, int* init_table){
-  int itpos177 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APercentExpr].i;
+void parser___parser_prod___APercentExpr___empty_init(val_t p0, int* init_table){
+  int itpos177 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos177]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5197;
-  fra.me.meth = LOCATE_parser_prod___APercentExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5204;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -27172,16 +27268,16 @@ void parser_prod___APercentExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos177] = 1;
   return;
 }
-void parser_prod___APercentExpr___init_apercentexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos178 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APercentExpr].i;
+void parser___parser_prod___APercentExpr___init_apercentexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos178 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APercentExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos178]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5199;
-  fra.me.meth = LOCATE_parser_prod___APercentExpr___init_apercentexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5206;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___init_apercentexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -27190,47 +27286,47 @@ void parser_prod___APercentExpr___init_apercentexpr(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5204 */
-  CALL_parser_prod___APercentExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5205 */
+  /* ./parser//parser_prod.nit:5211 */
+  CALL_parser___parser_prod___APercentExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5212 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5205);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5212);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5206 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5213 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5206);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5213);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5207 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5214 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5207);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5214);
   }
-  ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5208 */
+  ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5215 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5208);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5215);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos178] = 1;
   return;
 }
-void parser_prod___APercentExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___APercentExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5211;
-  fra.me.meth = LOCATE_parser_prod___APercentExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5218;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -27240,21 +27336,21 @@ void parser_prod___APercentExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5213 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5220 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5213);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5220);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5214 */
+    /* ./parser//parser_prod.nit:5221 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27263,48 +27359,48 @@ void parser_prod___APercentExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5215 */
+      /* ./parser//parser_prod.nit:5222 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5215);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5222);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5216 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5223 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5216);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5223);
       }
-      /* ./parser//parser_prod.nit:5217 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5224 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5219 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5219);
+      /* ./parser//parser_prod.nit:5226 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5226);
     }
-    /* ./parser//parser_prod.nit:5221 */
+    /* ./parser//parser_prod.nit:5228 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5223 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5230 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5223);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5230);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5224 */
+    /* ./parser//parser_prod.nit:5231 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27313,45 +27409,45 @@ void parser_prod___APercentExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5225 */
+      /* ./parser//parser_prod.nit:5232 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5225);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5232);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5226 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5233 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5226);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5233);
       }
-      /* ./parser//parser_prod.nit:5227 */
-      ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5234 */
+      ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5229 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5229);
+      /* ./parser//parser_prod.nit:5236 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5236);
     }
-    /* ./parser//parser_prod.nit:5231 */
+    /* ./parser//parser_prod.nit:5238 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APercentExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___APercentExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5235;
-  fra.me.meth = LOCATE_parser_prod___APercentExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5242;
+  fra.me.meth = LOCATE_parser___parser_prod___APercentExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -27359,34 +27455,34 @@ void parser_prod___APercentExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5237 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5244 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5237);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5244);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5238 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5245 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 5238);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 5245);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABinopExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AUminusExpr___empty_init(val_t p0, int* init_table){
-  int itpos179 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AUminusExpr].i;
+void parser___parser_prod___AUminusExpr___empty_init(val_t p0, int* init_table){
+  int itpos179 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AUminusExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos179]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5242;
-  fra.me.meth = LOCATE_parser_prod___AUminusExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5249;
+  fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -27395,16 +27491,16 @@ void parser_prod___AUminusExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos179] = 1;
   return;
 }
-void parser_prod___AUminusExpr___init_auminusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos180 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AUminusExpr].i;
+void parser___parser_prod___AUminusExpr___init_auminusexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos180 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AUminusExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos180]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5244;
-  fra.me.meth = LOCATE_parser_prod___AUminusExpr___init_auminusexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5251;
+  fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___init_auminusexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -27413,47 +27509,47 @@ void parser_prod___AUminusExpr___init_auminusexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5249 */
-  CALL_parser_prod___AUminusExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5250 */
+  /* ./parser//parser_prod.nit:5256 */
+  CALL_parser___parser_prod___AUminusExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5257 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5250);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5257);
   }
-  ATTR_parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5251 */
+  ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5258 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5251);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5258);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5252 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5259 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5252);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5259);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5253 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5260 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5253);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5260);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos180] = 1;
   return;
 }
-void parser_prod___AUminusExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AUminusExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5256;
-  fra.me.meth = LOCATE_parser_prod___AUminusExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5263;
+  fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -27463,21 +27559,21 @@ void parser_prod___AUminusExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5258 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AUminusExpr____n_minus(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5265 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser_prod, 5258);
+    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 5265);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5259 */
+    /* ./parser//parser_prod.nit:5266 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27486,48 +27582,48 @@ void parser_prod___AUminusExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5260 */
+      /* ./parser//parser_prod.nit:5267 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5260);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5267);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5261 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TMinus, ID_TMinus)) /*cast TMinus*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5268 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMinus, ID_parser___parser_nodes___TMinus)) /*cast TMinus*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5261);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5268);
       }
-      /* ./parser//parser_prod.nit:5262 */
-      ATTR_parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5269 */
+      ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5264 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5264);
+      /* ./parser//parser_prod.nit:5271 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5271);
     }
-    /* ./parser//parser_prod.nit:5266 */
+    /* ./parser//parser_prod.nit:5273 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5268 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5275 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5268);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5275);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5269 */
+    /* ./parser//parser_prod.nit:5276 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27536,45 +27632,45 @@ void parser_prod___AUminusExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5270 */
+      /* ./parser//parser_prod.nit:5277 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5270);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5277);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5271 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5278 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5271);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5278);
       }
-      /* ./parser//parser_prod.nit:5272 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5279 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5274 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5274);
+      /* ./parser//parser_prod.nit:5281 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5281);
     }
-    /* ./parser//parser_prod.nit:5276 */
+    /* ./parser//parser_prod.nit:5283 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AUminusExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AUminusExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5280;
-  fra.me.meth = LOCATE_parser_prod___AUminusExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5287;
+  fra.me.meth = LOCATE_parser___parser_prod___AUminusExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -27582,34 +27678,34 @@ void parser_prod___AUminusExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5282 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AUminusExpr____n_minus(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5289 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser_prod, 5282);
+    nit_abort("Uninitialized attribute %s", "_n_minus", LOCATE_parser___parser_prod, 5289);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5283 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AUminusExpr____n_minus(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5290 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5283);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5290);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANewExpr___empty_init(val_t p0, int* init_table){
-  int itpos181 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANewExpr].i;
+void parser___parser_prod___ANewExpr___empty_init(val_t p0, int* init_table){
+  int itpos181 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANewExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos181]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5287;
-  fra.me.meth = LOCATE_parser_prod___ANewExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5294;
+  fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -27618,17 +27714,17 @@ void parser_prod___ANewExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos181] = 1;
   return;
 }
-void parser_prod___ANewExpr___init_anewexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos182 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANewExpr].i;
+void parser___parser_prod___ANewExpr___init_anewexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos182 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANewExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos182]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5289;
-  fra.me.meth = LOCATE_parser_prod___ANewExpr___init_anewexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5296;
+  fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___init_anewexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -27641,37 +27737,37 @@ void parser_prod___ANewExpr___init_anewexpr(val_t p0, val_t p1, val_t p2, val_t
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:5296 */
-  CALL_parser_prod___ANewExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5297 */
+  /* ./parser//parser_prod.nit:5303 */
+  CALL_parser___parser_prod___ANewExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5304 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5297);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5304);
   }
-  ATTR_parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5298 */
+  ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5305 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5298);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5305);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5299 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5306 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5299);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5306);
   }
-  ATTR_parser_nodes___ANewExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5300 */
+  ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5307 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5300);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5307);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5301 */
-  ATTR_parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:5302 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5308 */
+  ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:5309 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -27680,34 +27776,34 @@ void parser_prod___ANewExpr___init_anewexpr(val_t p0, val_t p1, val_t p2, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5303 */
+    /* ./parser//parser_prod.nit:5310 */
     REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5303);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5310);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   }
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_parser_prod___ANewExpr___init_anewexpr_1));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ANewExpr___init_anewexpr_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos182] = 1;
   return;
 }
-  void OC_parser_prod___ANewExpr___init_anewexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ANewExpr___init_anewexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5305 */
+    /* ./parser//parser_prod.nit:5312 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ANewExpr___init_anewexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___init_anewexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -27716,26 +27812,26 @@ void parser_prod___ANewExpr___init_anewexpr(val_t p0, val_t p1, val_t p2, val_t
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5306 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:5313 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5306);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5313);
     }
-    /* ./parser//parser_prod.nit:5307 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5314 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5307);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5314);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ANewExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5308 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ANewExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5315 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -27744,9 +27840,9 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5312;
-  fra.me.meth = LOCATE_parser_prod___ANewExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5319;
+  fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -27756,21 +27852,21 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5314 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5321 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser_prod, 5314);
+    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 5321);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5315 */
+    /* ./parser//parser_prod.nit:5322 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27779,48 +27875,48 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5316 */
+      /* ./parser//parser_prod.nit:5323 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5316);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5323);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5317 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnew, ID_TKwnew)) /*cast TKwnew*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5324 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnew, ID_parser___parser_nodes___TKwnew)) /*cast TKwnew*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5317);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5324);
       }
-      /* ./parser//parser_prod.nit:5318 */
-      ATTR_parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5325 */
+      ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5320 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5320);
+      /* ./parser//parser_prod.nit:5327 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5327);
     }
-    /* ./parser//parser_prod.nit:5322 */
+    /* ./parser//parser_prod.nit:5329 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5324 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5331 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 5324);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 5331);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANewExpr____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5325 */
+    /* ./parser//parser_prod.nit:5332 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27829,35 +27925,35 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5326 */
+      /* ./parser//parser_prod.nit:5333 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5326);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5333);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5327 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5334 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5327);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5334);
       }
-      /* ./parser//parser_prod.nit:5328 */
-      ATTR_parser_nodes___ANewExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5335 */
+      ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5330 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5330);
+      /* ./parser//parser_prod.nit:5337 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5337);
     }
-    /* ./parser//parser_prod.nit:5332 */
+    /* ./parser//parser_prod.nit:5339 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5334 */
-  fra.me.REG[3] = ATTR_parser_nodes___ANewExpr____n_id(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5341 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -27866,12 +27962,12 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5335 */
+    /* ./parser//parser_prod.nit:5342 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -27880,58 +27976,58 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5336 */
+      /* ./parser//parser_prod.nit:5343 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5336);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5343);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5337 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5344 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5337);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5344);
       }
-      /* ./parser//parser_prod.nit:5338 */
-      ATTR_parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5345 */
+      ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5340 */
-      ATTR_parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:5347 */
+      ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:5342 */
+    /* ./parser//parser_prod.nit:5349 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5344 */
+  /* ./parser//parser_prod.nit:5351 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5344);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5351);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:5344 */
+      /* ./parser//parser_prod.nit:5351 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:5345 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:5352 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5345);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5352);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -27940,12 +28036,12 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:5346 */
+        /* ./parser//parser_prod.nit:5353 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -27954,53 +28050,53 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:5347 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:5354 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5347);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5354);
           }
-          /* ./parser//parser_prod.nit:5348 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5355 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5348);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5355);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:5349 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:5356 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5349);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5356);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:5351 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5358 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5351);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5358);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:5353 */
+        /* ./parser//parser_prod.nit:5360 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -28009,15 +28105,15 @@ void parser_prod___ANewExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANewExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ANewExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5358;
-  fra.me.meth = LOCATE_parser_prod___ANewExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5365;
+  fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -28025,24 +28121,24 @@ void parser_prod___ANewExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5360 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5367 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser_prod, 5360);
+    nit_abort("Uninitialized attribute %s", "_n_kwnew", LOCATE_parser___parser_prod, 5367);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5361 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_type(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ANewExpr____n_kwnew(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5368 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 5361);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 5368);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ANewExpr____n_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5362 */
-  fra.me.REG[2] = ATTR_parser_nodes___ANewExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ANewExpr____n_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5369 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -28051,40 +28147,40 @@ void parser_prod___ANewExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5363 */
-    fra.me.REG[2] = ATTR_parser_nodes___ANewExpr____n_id(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+    /* ./parser//parser_prod.nit:5370 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ANewExpr____n_id(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5363);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5370);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:5365 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5372 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5365);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5372);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ANewExpr___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ANewExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ANewExpr___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ANewExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ANewExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ANewExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ANewExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -28092,20 +28188,20 @@ void parser_prod___ANewExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5366 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5373 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AAttrExpr___empty_init(val_t p0, int* init_table){
-  int itpos183 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrExpr].i;
+void parser___parser_prod___AAttrExpr___empty_init(val_t p0, int* init_table){
+  int itpos183 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos183]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5371;
-  fra.me.meth = LOCATE_parser_prod___AAttrExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5378;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -28114,16 +28210,16 @@ void parser_prod___AAttrExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos183] = 1;
   return;
 }
-void parser_prod___AAttrExpr___init_aattrexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos184 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrExpr].i;
+void parser___parser_prod___AAttrExpr___init_aattrexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos184 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos184]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5373;
-  fra.me.meth = LOCATE_parser_prod___AAttrExpr___init_aattrexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5380;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___init_aattrexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -28132,47 +28228,47 @@ void parser_prod___AAttrExpr___init_aattrexpr(val_t p0, val_t p1, val_t p2, int*
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5378 */
-  CALL_parser_prod___AAttrExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5379 */
+  /* ./parser//parser_prod.nit:5385 */
+  CALL_parser___parser_prod___AAttrExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5386 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5379);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5386);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5380 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5387 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5380);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5387);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5381 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5388 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5381);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5388);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5382 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5389 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5382);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5389);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos184] = 1;
   return;
 }
-void parser_prod___AAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5385;
-  fra.me.meth = LOCATE_parser_prod___AAttrExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5392;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -28182,21 +28278,21 @@ void parser_prod___AAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5387 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5394 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5387);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5394);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5388 */
+    /* ./parser//parser_prod.nit:5395 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28205,48 +28301,48 @@ void parser_prod___AAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5389 */
+      /* ./parser//parser_prod.nit:5396 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5389);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5396);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5390 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5397 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5390);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5397);
       }
-      /* ./parser//parser_prod.nit:5391 */
-      ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5398 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5393 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5393);
+      /* ./parser//parser_prod.nit:5400 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5400);
     }
-    /* ./parser//parser_prod.nit:5395 */
+    /* ./parser//parser_prod.nit:5402 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5397 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5404 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5397);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5404);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5398 */
+    /* ./parser//parser_prod.nit:5405 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28255,45 +28351,45 @@ void parser_prod___AAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5399 */
+      /* ./parser//parser_prod.nit:5406 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5399);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5406);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5400 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5407 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5400);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5407);
       }
-      /* ./parser//parser_prod.nit:5401 */
-      ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5408 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5403 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5403);
+      /* ./parser//parser_prod.nit:5410 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5410);
     }
-    /* ./parser//parser_prod.nit:5405 */
+    /* ./parser//parser_prod.nit:5412 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAttrExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAttrExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5409;
-  fra.me.meth = LOCATE_parser_prod___AAttrExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5416;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -28301,34 +28397,34 @@ void parser_prod___AAttrExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5411 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5418 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5411);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5418);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5412 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5419 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5412);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5419);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAttrAssignExpr___empty_init(val_t p0, int* init_table){
-  int itpos185 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrAssignExpr].i;
+void parser___parser_prod___AAttrAssignExpr___empty_init(val_t p0, int* init_table){
+  int itpos185 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrAssignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos185]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5416;
-  fra.me.meth = LOCATE_parser_prod___AAttrAssignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5423;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -28337,16 +28433,16 @@ void parser_prod___AAttrAssignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos185] = 1;
   return;
 }
-void parser_prod___AAttrAssignExpr___init_aattrassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos186 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrAssignExpr].i;
+void parser___parser_prod___AAttrAssignExpr___init_aattrassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos186 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrAssignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos186]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5418;
-  fra.me.meth = LOCATE_parser_prod___AAttrAssignExpr___init_aattrassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5425;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___init_aattrassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -28359,73 +28455,73 @@ void parser_prod___AAttrAssignExpr___init_aattrassignexpr(val_t p0, val_t p1, va
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:5425 */
-  CALL_parser_prod___AAttrAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5426 */
+  /* ./parser//parser_prod.nit:5432 */
+  CALL_parser___parser_prod___AAttrAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5433 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5426);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5433);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5427 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5434 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5427);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5434);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5428 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5435 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5428);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5435);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5429 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5436 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5429);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5436);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5430 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5437 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5430);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5437);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:5431 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:5438 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5431);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5438);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5432 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5439 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5432);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5439);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:5433 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:5440 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5433);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5440);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos186] = 1;
   return;
 }
-void parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5436;
-  fra.me.meth = LOCATE_parser_prod___AAttrAssignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5443;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -28435,21 +28531,21 @@ void parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5438 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5445 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5438);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5445);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5439 */
+    /* ./parser//parser_prod.nit:5446 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28458,48 +28554,48 @@ void parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5440 */
+      /* ./parser//parser_prod.nit:5447 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5440);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5447);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5441 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5448 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5441);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5448);
       }
-      /* ./parser//parser_prod.nit:5442 */
-      ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5449 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5444 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5444);
+      /* ./parser//parser_prod.nit:5451 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5451);
     }
-    /* ./parser//parser_prod.nit:5446 */
+    /* ./parser//parser_prod.nit:5453 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5448 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5455 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5448);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5455);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5449 */
+    /* ./parser//parser_prod.nit:5456 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28508,48 +28604,48 @@ void parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5450 */
+      /* ./parser//parser_prod.nit:5457 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5450);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5457);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5451 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5458 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5451);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5458);
       }
-      /* ./parser//parser_prod.nit:5452 */
-      ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5459 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5454 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5454);
+      /* ./parser//parser_prod.nit:5461 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5461);
     }
-    /* ./parser//parser_prod.nit:5456 */
+    /* ./parser//parser_prod.nit:5463 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5458 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5465 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 5458);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5465);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5459 */
+    /* ./parser//parser_prod.nit:5466 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28558,48 +28654,48 @@ void parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5460 */
+      /* ./parser//parser_prod.nit:5467 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5460);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5467);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5461 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5468 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5461);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5468);
       }
-      /* ./parser//parser_prod.nit:5462 */
-      ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5469 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5464 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5464);
+      /* ./parser//parser_prod.nit:5471 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5471);
     }
-    /* ./parser//parser_prod.nit:5466 */
+    /* ./parser//parser_prod.nit:5473 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5468 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5475 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5468);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5475);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5469 */
+    /* ./parser//parser_prod.nit:5476 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28608,45 +28704,45 @@ void parser_prod___AAttrAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5470 */
+      /* ./parser//parser_prod.nit:5477 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5470);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5477);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5471 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5478 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5471);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5478);
       }
-      /* ./parser//parser_prod.nit:5472 */
-      ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5479 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5474 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5474);
+      /* ./parser//parser_prod.nit:5481 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5481);
     }
-    /* ./parser//parser_prod.nit:5476 */
+    /* ./parser//parser_prod.nit:5483 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAttrAssignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAttrAssignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5480;
-  fra.me.meth = LOCATE_parser_prod___AAttrAssignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5487;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrAssignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -28654,50 +28750,50 @@ void parser_prod___AAttrAssignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5482 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5489 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5482);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5489);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5483 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5490 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5483);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5490);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5484 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5491 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 5484);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5491);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5485 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5492 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5485);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5492);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAttrReassignExpr___empty_init(val_t p0, int* init_table){
-  int itpos187 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrReassignExpr].i;
+void parser___parser_prod___AAttrReassignExpr___empty_init(val_t p0, int* init_table){
+  int itpos187 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrReassignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos187]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5489;
-  fra.me.meth = LOCATE_parser_prod___AAttrReassignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5496;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -28706,16 +28802,16 @@ void parser_prod___AAttrReassignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos187] = 1;
   return;
 }
-void parser_prod___AAttrReassignExpr___init_aattrreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos188 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAttrReassignExpr].i;
+void parser___parser_prod___AAttrReassignExpr___init_aattrreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos188 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAttrReassignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos188]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5491;
-  fra.me.meth = LOCATE_parser_prod___AAttrReassignExpr___init_aattrreassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5498;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___init_aattrreassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -28728,73 +28824,73 @@ void parser_prod___AAttrReassignExpr___init_aattrreassignexpr(val_t p0, val_t p1
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:5498 */
-  CALL_parser_prod___AAttrReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5499 */
+  /* ./parser//parser_prod.nit:5505 */
+  CALL_parser___parser_prod___AAttrReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5506 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5499);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5506);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5500 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5507 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5500);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5507);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5501 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5508 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5501);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5508);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5502 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5509 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5502);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5509);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5503 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5510 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5503);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5510);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:5504 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:5511 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5504);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5511);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5505 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5512 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5505);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5512);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:5506 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:5513 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5506);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5513);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos188] = 1;
   return;
 }
-void parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5509;
-  fra.me.meth = LOCATE_parser_prod___AAttrReassignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5516;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -28804,21 +28900,21 @@ void parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5511 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5518 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5511);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5518);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5512 */
+    /* ./parser//parser_prod.nit:5519 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28827,48 +28923,48 @@ void parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5513 */
+      /* ./parser//parser_prod.nit:5520 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5513);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5520);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5514 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5521 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5514);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5521);
       }
-      /* ./parser//parser_prod.nit:5515 */
-      ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5522 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5517 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5517);
+      /* ./parser//parser_prod.nit:5524 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5524);
     }
-    /* ./parser//parser_prod.nit:5519 */
+    /* ./parser//parser_prod.nit:5526 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5521 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5528 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5521);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5528);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5522 */
+    /* ./parser//parser_prod.nit:5529 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28877,48 +28973,48 @@ void parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5523 */
+      /* ./parser//parser_prod.nit:5530 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5523);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5530);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5524 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5531 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5524);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5531);
       }
-      /* ./parser//parser_prod.nit:5525 */
-      ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5532 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5527 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5527);
+      /* ./parser//parser_prod.nit:5534 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5534);
     }
-    /* ./parser//parser_prod.nit:5529 */
+    /* ./parser//parser_prod.nit:5536 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5531 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5538 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 5531);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5538);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5532 */
+    /* ./parser//parser_prod.nit:5539 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28927,48 +29023,48 @@ void parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5533 */
+      /* ./parser//parser_prod.nit:5540 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5533);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5540);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5534 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAssignOp, ID_AAssignOp)) /*cast AAssignOp*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5541 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5534);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5541);
       }
-      /* ./parser//parser_prod.nit:5535 */
-      ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5542 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5537 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5537);
+      /* ./parser//parser_prod.nit:5544 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5544);
     }
-    /* ./parser//parser_prod.nit:5539 */
+    /* ./parser//parser_prod.nit:5546 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5541 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5548 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5541);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5548);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5542 */
+    /* ./parser//parser_prod.nit:5549 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -28977,45 +29073,45 @@ void parser_prod___AAttrReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5543 */
+      /* ./parser//parser_prod.nit:5550 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5543);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5550);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5544 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5551 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5544);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5551);
       }
-      /* ./parser//parser_prod.nit:5545 */
-      ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5552 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5547 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5547);
+      /* ./parser//parser_prod.nit:5554 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5554);
     }
-    /* ./parser//parser_prod.nit:5549 */
+    /* ./parser//parser_prod.nit:5556 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAttrReassignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAttrReassignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5553;
-  fra.me.meth = LOCATE_parser_prod___AAttrReassignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5560;
+  fra.me.meth = LOCATE_parser___parser_prod___AAttrReassignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -29023,50 +29119,50 @@ void parser_prod___AAttrReassignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5555 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5562 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5555);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5562);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5556 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5563 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5556);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5563);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5557 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5564 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 5557);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5564);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5558 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5565 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5558);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5565);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACallExpr___empty_init(val_t p0, int* init_table){
-  int itpos189 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACallExpr].i;
+void parser___parser_prod___ACallExpr___empty_init(val_t p0, int* init_table){
+  int itpos189 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos189]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5562;
-  fra.me.meth = LOCATE_parser_prod___ACallExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5569;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -29075,16 +29171,16 @@ void parser_prod___ACallExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos189] = 1;
   return;
 }
-void parser_prod___ACallExpr___init_acallexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos190 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACallExpr].i;
+void parser___parser_prod___ACallExpr___init_acallexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos190 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos190]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5564;
-  fra.me.meth = LOCATE_parser_prod___ACallExpr___init_acallexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5571;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___init_acallexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -29097,50 +29193,50 @@ void parser_prod___ACallExpr___init_acallexpr(val_t p0, val_t p1, val_t p2, val_
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:5571 */
-  CALL_parser_prod___ACallExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5572 */
+  /* ./parser//parser_prod.nit:5578 */
+  CALL_parser___parser_prod___ACallExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5579 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5572);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5579);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5573 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5580 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5573);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5580);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5574 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5581 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5574);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5581);
   }
-  ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5575 */
+  ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5582 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5575);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5582);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___ACallExpr___init_acallexpr_1));
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_parser_prod___ACallExpr___init_acallexpr_2));
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___init_acallexpr_1));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[4])(fra.me.REG[4], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___init_acallexpr_2));
   stack_frame_head = fra.me.prev;
   init_table[itpos190] = 1;
   return;
 }
-  void OC_parser_prod___ACallExpr___init_acallexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallExpr___init_acallexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5576 */
+    /* ./parser//parser_prod.nit:5583 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallExpr___init_acallexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___init_acallexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -29149,35 +29245,35 @@ void parser_prod___ACallExpr___init_acallexpr(val_t p0, val_t p1, val_t p2, val_
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5577 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:5584 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5577);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5584);
     }
-    /* ./parser//parser_prod.nit:5578 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5585 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5578);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5585);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ACallFormExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5579 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5586 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___ACallExpr___init_acallexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallExpr___init_acallexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5581 */
+    /* ./parser//parser_prod.nit:5588 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallExpr___init_acallexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___init_acallexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -29186,26 +29282,26 @@ void parser_prod___ACallExpr___init_acallexpr(val_t p0, val_t p1, val_t p2, val_
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5582 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AClosureDef, ID_AClosureDef)) /*cast AClosureDef*/;
+    /* ./parser//parser_prod.nit:5589 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5582);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5589);
     }
-    /* ./parser//parser_prod.nit:5583 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5590 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 5583);
+      nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5590);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5584 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5591 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -29214,9 +29310,9 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5588;
-  fra.me.meth = LOCATE_parser_prod___ACallExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5595;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -29226,21 +29322,21 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5590 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5597 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5590);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5597);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5591 */
+    /* ./parser//parser_prod.nit:5598 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -29249,48 +29345,48 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5592 */
+      /* ./parser//parser_prod.nit:5599 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5592);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5599);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5593 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5600 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5593);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5600);
       }
-      /* ./parser//parser_prod.nit:5594 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5601 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5596 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5596);
+      /* ./parser//parser_prod.nit:5603 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5603);
     }
-    /* ./parser//parser_prod.nit:5598 */
+    /* ./parser//parser_prod.nit:5605 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5600 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5607 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5600);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5607);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5601 */
+    /* ./parser//parser_prod.nit:5608 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -29299,58 +29395,58 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5602 */
+      /* ./parser//parser_prod.nit:5609 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5602);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5609);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5603 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5610 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5603);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5610);
       }
-      /* ./parser//parser_prod.nit:5604 */
-      ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5611 */
+      ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5606 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5606);
+      /* ./parser//parser_prod.nit:5613 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5613);
     }
-    /* ./parser//parser_prod.nit:5608 */
+    /* ./parser//parser_prod.nit:5615 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5610 */
+  /* ./parser//parser_prod.nit:5617 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5610);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5617);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:5610 */
+      /* ./parser//parser_prod.nit:5617 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:5611 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:5618 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5611);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5618);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -29359,12 +29455,12 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:5612 */
+        /* ./parser//parser_prod.nit:5619 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -29373,82 +29469,82 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:5613 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:5620 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5613);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5620);
           }
-          /* ./parser//parser_prod.nit:5614 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5621 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5614);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5621);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:5615 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:5622 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5615);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5622);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:5617 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5624 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5617);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5624);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:5619 */
+        /* ./parser//parser_prod.nit:5626 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:5622 */
+  /* ./parser//parser_prod.nit:5629 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 5622);
+    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5629);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:5622 */
+      /* ./parser//parser_prod.nit:5629 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:5623 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:5630 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 5623);
+        nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5630);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -29457,12 +29553,12 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:5624 */
+        /* ./parser//parser_prod.nit:5631 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -29471,53 +29567,53 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:5625 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AClosureDef, ID_AClosureDef)) /*cast AClosureDef*/;
+          /* ./parser//parser_prod.nit:5632 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5625);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5632);
           }
-          /* ./parser//parser_prod.nit:5626 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5633 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 5626);
+            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5633);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:5627 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:5634 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5627);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5634);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:5629 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5636 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 5629);
+            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5636);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:5631 */
+        /* ./parser//parser_prod.nit:5638 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label3;
     }
   }
@@ -29526,14 +29622,14 @@ void parser_prod___ACallExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACallExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ACallExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5636;
-  fra.me.meth = LOCATE_parser_prod___ACallExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5643;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -29541,49 +29637,49 @@ void parser_prod___ACallExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5638 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5645 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5638);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5645);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5639 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5646 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5639);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5646);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5640 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5647 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5640);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5647);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ACallExpr___visit_all_1));
-  /* ./parser//parser_prod.nit:5643 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:5650 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 5643);
+    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5650);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ACallExpr___visit_all_2));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallExpr___visit_all_2));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ACallExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -29591,19 +29687,19 @@ void parser_prod___ACallExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5641 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5648 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___ACallExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -29611,20 +29707,20 @@ void parser_prod___ACallExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5644 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5651 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ACallAssignExpr___empty_init(val_t p0, int* init_table){
-  int itpos191 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACallAssignExpr].i;
+void parser___parser_prod___ACallAssignExpr___empty_init(val_t p0, int* init_table){
+  int itpos191 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallAssignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos191]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5649;
-  fra.me.meth = LOCATE_parser_prod___ACallAssignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5656;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -29633,16 +29729,16 @@ void parser_prod___ACallAssignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos191] = 1;
   return;
 }
-void parser_prod___ACallAssignExpr___init_acallassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
-  int itpos192 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACallAssignExpr].i;
+void parser___parser_prod___ACallAssignExpr___init_acallassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
+  int itpos192 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallAssignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos192]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5651;
-  fra.me.meth = LOCATE_parser_prod___ACallAssignExpr___init_acallassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5658;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___init_acallassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 6;
   fra.me.REG[0] = NIT_NULL;
@@ -29657,75 +29753,75 @@ void parser_prod___ACallAssignExpr___init_acallassignexpr(val_t p0, val_t p1, va
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
   fra.me.REG[5] = p5;
-  /* ./parser//parser_prod.nit:5659 */
-  CALL_parser_prod___ACallAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5660 */
+  /* ./parser//parser_prod.nit:5666 */
+  CALL_parser___parser_prod___ACallAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5667 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5660);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5667);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5661 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5668 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5661);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5668);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5662 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5669 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5662);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5669);
   }
-  ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5663 */
+  ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5670 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5663);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5670);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___ACallAssignExpr___init_acallassignexpr_1));
-  /* ./parser//parser_prod.nit:5669 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallAssignExpr___init_acallassignexpr_1));
+  /* ./parser//parser_prod.nit:5676 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5669);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5676);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:5670 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:5677 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5670);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5677);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5671 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5678 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5671);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5678);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[5];
-  /* ./parser//parser_prod.nit:5672 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[5];
+  /* ./parser//parser_prod.nit:5679 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5672);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5679);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos192] = 1;
   return;
 }
-  void OC_parser_prod___ACallAssignExpr___init_acallassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallAssignExpr___init_acallassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5664 */
+    /* ./parser//parser_prod.nit:5671 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallAssignExpr___init_acallassignexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___init_acallassignexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -29734,26 +29830,26 @@ void parser_prod___ACallAssignExpr___init_acallassignexpr(val_t p0, val_t p1, va
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5665 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:5672 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5665);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5672);
     }
-    /* ./parser//parser_prod.nit:5666 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5673 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5666);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5673);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ACallFormExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5667 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5674 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -29762,9 +29858,9 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5675;
-  fra.me.meth = LOCATE_parser_prod___ACallAssignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5682;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -29774,21 +29870,21 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5677 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5684 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5677);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5684);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5678 */
+    /* ./parser//parser_prod.nit:5685 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -29797,48 +29893,48 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5679 */
+      /* ./parser//parser_prod.nit:5686 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5679);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5686);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5680 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5687 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5680);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5687);
       }
-      /* ./parser//parser_prod.nit:5681 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5688 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5683 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5683);
+      /* ./parser//parser_prod.nit:5690 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5690);
     }
-    /* ./parser//parser_prod.nit:5685 */
+    /* ./parser//parser_prod.nit:5692 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5687 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5694 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5687);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5694);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5688 */
+    /* ./parser//parser_prod.nit:5695 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -29847,58 +29943,58 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5689 */
+      /* ./parser//parser_prod.nit:5696 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5689);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5696);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5690 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5697 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5690);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5697);
       }
-      /* ./parser//parser_prod.nit:5691 */
-      ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5698 */
+      ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5693 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5693);
+      /* ./parser//parser_prod.nit:5700 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5700);
     }
-    /* ./parser//parser_prod.nit:5695 */
+    /* ./parser//parser_prod.nit:5702 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5697 */
+  /* ./parser//parser_prod.nit:5704 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5697);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5704);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:5697 */
+      /* ./parser//parser_prod.nit:5704 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:5698 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:5705 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5698);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5705);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -29907,12 +30003,12 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:5699 */
+        /* ./parser//parser_prod.nit:5706 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -29921,72 +30017,72 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:5700 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:5707 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5700);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5707);
           }
-          /* ./parser//parser_prod.nit:5701 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5708 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5701);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5708);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:5702 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:5709 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5702);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5709);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:5704 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5711 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5704);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5711);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:5706 */
+        /* ./parser//parser_prod.nit:5713 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:5709 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5716 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 5709);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5716);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5710 */
+    /* ./parser//parser_prod.nit:5717 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -29995,48 +30091,48 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5711 */
+      /* ./parser//parser_prod.nit:5718 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5711);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5718);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5712 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5719 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5712);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5719);
       }
-      /* ./parser//parser_prod.nit:5713 */
-      ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5720 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5715 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5715);
+      /* ./parser//parser_prod.nit:5722 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5722);
     }
-    /* ./parser//parser_prod.nit:5717 */
+    /* ./parser//parser_prod.nit:5724 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5719 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5726 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5719);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5726);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5720 */
+    /* ./parser//parser_prod.nit:5727 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -30045,45 +30141,45 @@ void parser_prod___ACallAssignExpr___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5721 */
+      /* ./parser//parser_prod.nit:5728 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5721);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5728);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5722 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5729 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5722);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5729);
       }
-      /* ./parser//parser_prod.nit:5723 */
-      ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5730 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5725 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5725);
+      /* ./parser//parser_prod.nit:5732 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5732);
     }
-    /* ./parser//parser_prod.nit:5727 */
+    /* ./parser//parser_prod.nit:5734 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACallAssignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ACallAssignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5731;
-  fra.me.meth = LOCATE_parser_prod___ACallAssignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5738;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -30091,57 +30187,57 @@ void parser_prod___ACallAssignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5733 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5740 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5733);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5740);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5734 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5741 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5734);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5741);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5735 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5742 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5735);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5742);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ACallAssignExpr___visit_all_1));
-  /* ./parser//parser_prod.nit:5738 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallAssignExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:5745 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 5738);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 5745);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5739 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5746 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5739);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5746);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ACallAssignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallAssignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallAssignExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallAssignExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -30149,20 +30245,20 @@ void parser_prod___ACallAssignExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5736 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5743 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ACallReassignExpr___empty_init(val_t p0, int* init_table){
-  int itpos193 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACallReassignExpr].i;
+void parser___parser_prod___ACallReassignExpr___empty_init(val_t p0, int* init_table){
+  int itpos193 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallReassignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos193]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5743;
-  fra.me.meth = LOCATE_parser_prod___ACallReassignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5750;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -30171,16 +30267,16 @@ void parser_prod___ACallReassignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos193] = 1;
   return;
 }
-void parser_prod___ACallReassignExpr___init_acallreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
-  int itpos194 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACallReassignExpr].i;
+void parser___parser_prod___ACallReassignExpr___init_acallreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, int* init_table){
+  int itpos194 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACallReassignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos194]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5745;
-  fra.me.meth = LOCATE_parser_prod___ACallReassignExpr___init_acallreassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5752;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 6;
   fra.me.REG[0] = NIT_NULL;
@@ -30195,75 +30291,75 @@ void parser_prod___ACallReassignExpr___init_acallreassignexpr(val_t p0, val_t p1
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
   fra.me.REG[5] = p5;
-  /* ./parser//parser_prod.nit:5753 */
-  CALL_parser_prod___ACallReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5754 */
+  /* ./parser//parser_prod.nit:5760 */
+  CALL_parser___parser_prod___ACallReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5761 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5754);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5761);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5755 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5762 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5755);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5762);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5756 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5763 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5756);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5763);
   }
-  ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5757 */
+  ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5764 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5757);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5764);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___ACallReassignExpr___init_acallreassignexpr_1));
-  /* ./parser//parser_prod.nit:5763 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr_1));
+  /* ./parser//parser_prod.nit:5770 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5763);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5770);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:5764 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:5771 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5764);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5771);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5765 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5772 */
   REGB0 = TAG_Bool(fra.me.REG[5]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5765);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5772);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[5];
-  /* ./parser//parser_prod.nit:5766 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[5];
+  /* ./parser//parser_prod.nit:5773 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5766);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5773);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos194] = 1;
   return;
 }
-  void OC_parser_prod___ACallReassignExpr___init_acallreassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5758 */
+    /* ./parser//parser_prod.nit:5765 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallReassignExpr___init_acallreassignexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___init_acallreassignexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -30272,26 +30368,26 @@ void parser_prod___ACallReassignExpr___init_acallreassignexpr(val_t p0, val_t p1
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5759 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:5766 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5759);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5766);
     }
-    /* ./parser//parser_prod.nit:5760 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5767 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5760);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5767);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ACallFormExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5761 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5768 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -30300,9 +30396,9 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5769;
-  fra.me.meth = LOCATE_parser_prod___ACallReassignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5776;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -30312,21 +30408,21 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5771 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5778 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5771);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5778);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5772 */
+    /* ./parser//parser_prod.nit:5779 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -30335,48 +30431,48 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5773 */
+      /* ./parser//parser_prod.nit:5780 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5773);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5780);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5774 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5781 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5774);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5781);
       }
-      /* ./parser//parser_prod.nit:5775 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5782 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5777 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5777);
+      /* ./parser//parser_prod.nit:5784 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5784);
     }
-    /* ./parser//parser_prod.nit:5779 */
+    /* ./parser//parser_prod.nit:5786 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5781 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5788 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5781);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5788);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5782 */
+    /* ./parser//parser_prod.nit:5789 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -30385,58 +30481,58 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5783 */
+      /* ./parser//parser_prod.nit:5790 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5783);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5790);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5784 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5791 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5784);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5791);
       }
-      /* ./parser//parser_prod.nit:5785 */
-      ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5792 */
+      ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5787 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5787);
+      /* ./parser//parser_prod.nit:5794 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5794);
     }
-    /* ./parser//parser_prod.nit:5789 */
+    /* ./parser//parser_prod.nit:5796 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5791 */
+  /* ./parser//parser_prod.nit:5798 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5791);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5798);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:5791 */
+      /* ./parser//parser_prod.nit:5798 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:5792 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:5799 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5792);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5799);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -30445,12 +30541,12 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:5793 */
+        /* ./parser//parser_prod.nit:5800 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -30459,72 +30555,72 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:5794 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:5801 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5794);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5801);
           }
-          /* ./parser//parser_prod.nit:5795 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5802 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5795);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5802);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:5796 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:5803 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5796);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5803);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:5798 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5805 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5798);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5805);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:5800 */
+        /* ./parser//parser_prod.nit:5807 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:5803 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5810 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 5803);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5810);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5804 */
+    /* ./parser//parser_prod.nit:5811 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -30533,48 +30629,48 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5805 */
+      /* ./parser//parser_prod.nit:5812 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5805);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5812);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5806 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAssignOp, ID_AAssignOp)) /*cast AAssignOp*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5813 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5806);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5813);
       }
-      /* ./parser//parser_prod.nit:5807 */
-      ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5814 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5809 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5809);
+      /* ./parser//parser_prod.nit:5816 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5816);
     }
-    /* ./parser//parser_prod.nit:5811 */
+    /* ./parser//parser_prod.nit:5818 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5813 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5820 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5813);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5820);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5814 */
+    /* ./parser//parser_prod.nit:5821 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -30583,45 +30679,45 @@ void parser_prod___ACallReassignExpr___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5815 */
+      /* ./parser//parser_prod.nit:5822 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5815);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5822);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5816 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5823 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5816);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5823);
       }
-      /* ./parser//parser_prod.nit:5817 */
-      ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5824 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5819 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5819);
+      /* ./parser//parser_prod.nit:5826 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5826);
     }
-    /* ./parser//parser_prod.nit:5821 */
+    /* ./parser//parser_prod.nit:5828 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACallReassignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ACallReassignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5825;
-  fra.me.meth = LOCATE_parser_prod___ACallReassignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5832;
+  fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -30629,57 +30725,57 @@ void parser_prod___ACallReassignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5827 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5834 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5827);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5834);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5828 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5835 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 5828);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 5835);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5829 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5836 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5829);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5836);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ACallReassignExpr___visit_all_1));
-  /* ./parser//parser_prod.nit:5832 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACallFormExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ACallReassignExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:5839 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 5832);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 5839);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5833 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5840 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 5833);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 5840);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ACallReassignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ACallReassignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ACallReassignExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ACallReassignExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -30687,20 +30783,20 @@ void parser_prod___ACallReassignExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5830 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5837 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ASuperExpr___empty_init(val_t p0, int* init_table){
-  int itpos195 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperExpr].i;
+void parser___parser_prod___ASuperExpr___empty_init(val_t p0, int* init_table){
+  int itpos195 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos195]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5837;
-  fra.me.meth = LOCATE_parser_prod___ASuperExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5844;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -30709,17 +30805,17 @@ void parser_prod___ASuperExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos195] = 1;
   return;
 }
-void parser_prod___ASuperExpr___init_asuperexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos196 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperExpr].i;
+void parser___parser_prod___ASuperExpr___init_asuperexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos196 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos196]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5839;
-  fra.me.meth = LOCATE_parser_prod___ASuperExpr___init_asuperexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5846;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___init_asuperexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -30730,11 +30826,11 @@ void parser_prod___ASuperExpr___init_asuperexpr(val_t p0, val_t p1, val_t p2, va
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:5845 */
-  CALL_parser_prod___ASuperExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5846 */
-  ATTR_parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5847 */
+  /* ./parser//parser_prod.nit:5852 */
+  CALL_parser___parser_prod___ASuperExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5853 */
+  ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5854 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -30743,47 +30839,47 @@ void parser_prod___ASuperExpr___init_asuperexpr(val_t p0, val_t p1, val_t p2, va
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5848 */
+    /* ./parser//parser_prod.nit:5855 */
     REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5848);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5855);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
-  /* ./parser//parser_prod.nit:5850 */
+  /* ./parser//parser_prod.nit:5857 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5850);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5857);
   }
-  ATTR_parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5851 */
+  ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5858 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5851);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5858);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___ASuperExpr___init_asuperexpr_1));
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperExpr___init_asuperexpr_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos196] = 1;
   return;
 }
-  void OC_parser_prod___ASuperExpr___init_asuperexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASuperExpr___init_asuperexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5852 */
+    /* ./parser//parser_prod.nit:5859 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASuperExpr___init_asuperexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___init_asuperexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -30792,26 +30888,26 @@ void parser_prod___ASuperExpr___init_asuperexpr(val_t p0, val_t p1, val_t p2, va
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5853 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:5860 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5853);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5860);
     }
-    /* ./parser//parser_prod.nit:5854 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5861 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5854);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5861);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ASuperExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5855 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ASuperExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5862 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -30820,9 +30916,9 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5859;
-  fra.me.meth = LOCATE_parser_prod___ASuperExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5866;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -30832,8 +30928,8 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5861 */
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5868 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -30842,12 +30938,12 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5862 */
+    /* ./parser//parser_prod.nit:5869 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -30856,48 +30952,48 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5863 */
+      /* ./parser//parser_prod.nit:5870 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5863);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5870);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5864 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AQualified, ID_AQualified)) /*cast AQualified*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5871 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AQualified, ID_parser___parser_nodes___AQualified)) /*cast AQualified*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5864);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5871);
       }
-      /* ./parser//parser_prod.nit:5865 */
-      ATTR_parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5872 */
+      ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5867 */
-      ATTR_parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:5874 */
+      ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:5869 */
+    /* ./parser//parser_prod.nit:5876 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5871 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5878 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser_prod, 5871);
+    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 5878);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5872 */
+    /* ./parser//parser_prod.nit:5879 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -30906,58 +31002,58 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5873 */
+      /* ./parser//parser_prod.nit:5880 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5873);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5880);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5874 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5881 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5874);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5881);
       }
-      /* ./parser//parser_prod.nit:5875 */
-      ATTR_parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5882 */
+      ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5877 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5877);
+      /* ./parser//parser_prod.nit:5884 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5884);
     }
-    /* ./parser//parser_prod.nit:5879 */
+    /* ./parser//parser_prod.nit:5886 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5881 */
+  /* ./parser//parser_prod.nit:5888 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5881);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5888);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:5881 */
+      /* ./parser//parser_prod.nit:5888 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:5882 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:5889 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5882);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5889);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -30966,12 +31062,12 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:5883 */
+        /* ./parser//parser_prod.nit:5890 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -30980,53 +31076,53 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:5884 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:5891 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5884);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5891);
           }
-          /* ./parser//parser_prod.nit:5885 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5892 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5885);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5892);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:5886 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:5893 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5886);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5893);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:5888 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5895 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5888);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5895);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:5890 */
+        /* ./parser//parser_prod.nit:5897 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -31035,15 +31131,15 @@ void parser_prod___ASuperExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASuperExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASuperExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5895;
-  fra.me.meth = LOCATE_parser_prod___ASuperExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5902;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -31051,8 +31147,8 @@ void parser_prod___ASuperExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5897 */
-  fra.me.REG[2] = ATTR_parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5904 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -31061,48 +31157,48 @@ void parser_prod___ASuperExpr___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5898 */
-    fra.me.REG[2] = ATTR_parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AQualified, ID_AQualified)) /*cast AQualified*/;
+    /* ./parser//parser_prod.nit:5905 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperExpr____n_qualified(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AQualified, ID_parser___parser_nodes___AQualified)) /*cast AQualified*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5898);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5905);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:5900 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5907 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser_prod, 5900);
+    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 5907);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5901 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASuperExpr____n_kwsuper(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5908 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5901);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5908);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ASuperExpr___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASuperExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperExpr___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ASuperExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASuperExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASuperExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ASuperExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -31110,20 +31206,20 @@ void parser_prod___ASuperExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5902 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5909 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AInitExpr___empty_init(val_t p0, int* init_table){
-  int itpos197 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInitExpr].i;
+void parser___parser_prod___AInitExpr___empty_init(val_t p0, int* init_table){
+  int itpos197 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos197]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5907;
-  fra.me.meth = LOCATE_parser_prod___AInitExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5914;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -31132,16 +31228,16 @@ void parser_prod___AInitExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos197] = 1;
   return;
 }
-void parser_prod___AInitExpr___init_ainitexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos198 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInitExpr].i;
+void parser___parser_prod___AInitExpr___init_ainitexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos198 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos198]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5909;
-  fra.me.meth = LOCATE_parser_prod___AInitExpr___init_ainitexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5916;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___init_ainitexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -31152,49 +31248,49 @@ void parser_prod___AInitExpr___init_ainitexpr(val_t p0, val_t p1, val_t p2, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:5915 */
-  CALL_parser_prod___AInitExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5916 */
+  /* ./parser//parser_prod.nit:5922 */
+  CALL_parser___parser_prod___AInitExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5923 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5916);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5923);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5917 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5924 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5917);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5924);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:5918 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:5925 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5918);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5925);
   }
-  ATTR_parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:5919 */
+  ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:5926 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5919);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5926);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___AInitExpr___init_ainitexpr_1));
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AInitExpr___init_ainitexpr_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos198] = 1;
   return;
 }
-  void OC_parser_prod___AInitExpr___init_ainitexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AInitExpr___init_ainitexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5920 */
+    /* ./parser//parser_prod.nit:5927 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AInitExpr___init_ainitexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___init_ainitexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -31203,26 +31299,26 @@ void parser_prod___AInitExpr___init_ainitexpr(val_t p0, val_t p1, val_t p2, val_
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5921 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:5928 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5921);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5928);
     }
-    /* ./parser//parser_prod.nit:5922 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5929 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5922);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5929);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AInitExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5923 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AInitExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5930 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -31231,9 +31327,9 @@ void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5927;
-  fra.me.meth = LOCATE_parser_prod___AInitExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5934;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -31243,21 +31339,21 @@ void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5929 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5936 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5929);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5936);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5930 */
+    /* ./parser//parser_prod.nit:5937 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -31266,48 +31362,48 @@ void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5931 */
+      /* ./parser//parser_prod.nit:5938 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5931);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5938);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5932 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5939 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5932);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5939);
       }
-      /* ./parser//parser_prod.nit:5933 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5940 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5935 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5935);
+      /* ./parser//parser_prod.nit:5942 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5942);
     }
-    /* ./parser//parser_prod.nit:5937 */
+    /* ./parser//parser_prod.nit:5944 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5939 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5946 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser_prod, 5939);
+    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 5946);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5940 */
+    /* ./parser//parser_prod.nit:5947 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -31316,58 +31412,58 @@ void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:5941 */
+      /* ./parser//parser_prod.nit:5948 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5941);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5948);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:5942 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwinit, ID_TKwinit)) /*cast TKwinit*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:5949 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwinit, ID_parser___parser_nodes___TKwinit)) /*cast TKwinit*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5942);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5949);
       }
-      /* ./parser//parser_prod.nit:5943 */
-      ATTR_parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:5950 */
+      ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:5945 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 5945);
+      /* ./parser//parser_prod.nit:5952 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 5952);
     }
-    /* ./parser//parser_prod.nit:5947 */
+    /* ./parser//parser_prod.nit:5954 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:5949 */
+  /* ./parser//parser_prod.nit:5956 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5949);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5956);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:5949 */
+      /* ./parser//parser_prod.nit:5956 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:5950 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:5957 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5950);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5957);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -31376,12 +31472,12 @@ void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:5951 */
+        /* ./parser//parser_prod.nit:5958 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -31390,53 +31486,53 @@ void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:5952 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:5959 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5952);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5959);
           }
-          /* ./parser//parser_prod.nit:5953 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5960 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5953);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5960);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:5954 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:5961 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5954);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5961);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:5956 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:5963 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5956);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5963);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:5958 */
+        /* ./parser//parser_prod.nit:5965 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -31445,14 +31541,14 @@ void parser_prod___AInitExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AInitExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AInitExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5963;
-  fra.me.meth = LOCATE_parser_prod___AInitExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5970;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -31460,41 +31556,41 @@ void parser_prod___AInitExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:5965 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:5972 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5965);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 5972);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5966 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5973 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser_prod, 5966);
+    nit_abort("Uninitialized attribute %s", "_n_kwinit", LOCATE_parser___parser_prod, 5973);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:5967 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AInitExpr____n_kwinit(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:5974 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5967);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5974);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AInitExpr___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AInitExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AInitExpr___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AInitExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AInitExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AInitExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AInitExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -31502,20 +31598,20 @@ void parser_prod___AInitExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5968 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5975 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ABraExpr___empty_init(val_t p0, int* init_table){
-  int itpos199 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraExpr].i;
+void parser___parser_prod___ABraExpr___empty_init(val_t p0, int* init_table){
+  int itpos199 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos199]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5973;
-  fra.me.meth = LOCATE_parser_prod___ABraExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5980;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -31524,16 +31620,16 @@ void parser_prod___ABraExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos199] = 1;
   return;
 }
-void parser_prod___ABraExpr___init_abraexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos200 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraExpr].i;
+void parser___parser_prod___ABraExpr___init_abraexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos200 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos200]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5975;
-  fra.me.meth = LOCATE_parser_prod___ABraExpr___init_abraexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 5982;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___init_abraexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -31544,37 +31640,37 @@ void parser_prod___ABraExpr___init_abraexpr(val_t p0, val_t p1, val_t p2, val_t
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:5981 */
-  CALL_parser_prod___ABraExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:5982 */
+  /* ./parser//parser_prod.nit:5988 */
+  CALL_parser___parser_prod___ABraExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:5989 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 5982);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 5989);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:5983 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:5990 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 5983);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 5990);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ABraExpr___init_abraexpr_1));
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___ABraExpr___init_abraexpr_2));
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___init_abraexpr_1));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___init_abraexpr_2));
   stack_frame_head = fra.me.prev;
   init_table[itpos200] = 1;
   return;
 }
-  void OC_parser_prod___ABraExpr___init_abraexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraExpr___init_abraexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5984 */
+    /* ./parser//parser_prod.nit:5991 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraExpr___init_abraexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___init_abraexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -31583,35 +31679,35 @@ void parser_prod___ABraExpr___init_abraexpr(val_t p0, val_t p1, val_t p2, val_t
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5985 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:5992 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5985);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5992);
     }
-    /* ./parser//parser_prod.nit:5986 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5993 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 5986);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 5993);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ABraFormExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5987 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5994 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___ABraExpr___init_abraexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraExpr___init_abraexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:5989 */
+    /* ./parser//parser_prod.nit:5996 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraExpr___init_abraexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___init_abraexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -31620,26 +31716,26 @@ void parser_prod___ABraExpr___init_abraexpr(val_t p0, val_t p1, val_t p2, val_t
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:5990 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AClosureDef, ID_AClosureDef)) /*cast AClosureDef*/;
+    /* ./parser//parser_prod.nit:5997 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 5990);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 5997);
     }
-    /* ./parser//parser_prod.nit:5991 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:5998 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 5991);
+      nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 5998);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:5992 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:5999 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -31648,9 +31744,9 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 5996;
-  fra.me.meth = LOCATE_parser_prod___ABraExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6003;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -31660,21 +31756,21 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:5998 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6005 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 5998);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6005);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:5999 */
+    /* ./parser//parser_prod.nit:6006 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -31683,58 +31779,58 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6000 */
+      /* ./parser//parser_prod.nit:6007 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6000);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6007);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6001 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6008 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6001);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6008);
       }
-      /* ./parser//parser_prod.nit:6002 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6009 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6004 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6004);
+      /* ./parser//parser_prod.nit:6011 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6011);
     }
-    /* ./parser//parser_prod.nit:6006 */
+    /* ./parser//parser_prod.nit:6013 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6008 */
+  /* ./parser//parser_prod.nit:6015 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6008);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6015);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6008 */
+      /* ./parser//parser_prod.nit:6015 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6009 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6016 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6009);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6016);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -31743,12 +31839,12 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6010 */
+        /* ./parser//parser_prod.nit:6017 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -31757,82 +31853,82 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6011 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:6018 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6011);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6018);
           }
-          /* ./parser//parser_prod.nit:6012 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6019 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6012);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6019);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6013 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6020 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6013);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6020);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6015 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6022 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6015);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6022);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6017 */
+        /* ./parser//parser_prod.nit:6024 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:6020 */
+  /* ./parser//parser_prod.nit:6027 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6020);
+    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6027);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6020 */
+      /* ./parser//parser_prod.nit:6027 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6021 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6028 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6021);
+        nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6028);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -31841,12 +31937,12 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6022 */
+        /* ./parser//parser_prod.nit:6029 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -31855,53 +31951,53 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6023 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AClosureDef, ID_AClosureDef)) /*cast AClosureDef*/;
+          /* ./parser//parser_prod.nit:6030 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6023);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6030);
           }
-          /* ./parser//parser_prod.nit:6024 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6031 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6024);
+            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6031);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6025 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6032 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6025);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6032);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6027 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6034 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6027);
+            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6034);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6029 */
+        /* ./parser//parser_prod.nit:6036 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label3;
     }
   }
@@ -31910,14 +32006,14 @@ void parser_prod___ABraExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABraExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABraExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6034;
-  fra.me.meth = LOCATE_parser_prod___ABraExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6041;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -31925,41 +32021,41 @@ void parser_prod___ABraExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6036 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6043 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6036);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6043);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6037 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6044 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6037);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6044);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ABraExpr___visit_all_1));
-  /* ./parser//parser_prod.nit:6040 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:6047 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6040);
+    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6047);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ABraExpr___visit_all_2));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASendExpr____n_closure_defs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraExpr___visit_all_2));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ABraExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -31967,19 +32063,19 @@ void parser_prod___ABraExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6038 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6045 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___ABraExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -31987,20 +32083,20 @@ void parser_prod___ABraExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6041 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6048 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ABraAssignExpr___empty_init(val_t p0, int* init_table){
-  int itpos201 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraAssignExpr].i;
+void parser___parser_prod___ABraAssignExpr___empty_init(val_t p0, int* init_table){
+  int itpos201 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraAssignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos201]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6046;
-  fra.me.meth = LOCATE_parser_prod___ABraAssignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6053;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -32009,16 +32105,16 @@ void parser_prod___ABraAssignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos201] = 1;
   return;
 }
-void parser_prod___ABraAssignExpr___init_abraassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos202 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraAssignExpr].i;
+void parser___parser_prod___ABraAssignExpr___init_abraassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos202 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraAssignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos202]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6048;
-  fra.me.meth = LOCATE_parser_prod___ABraAssignExpr___init_abraassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6055;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___init_abraassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -32031,62 +32127,62 @@ void parser_prod___ABraAssignExpr___init_abraassignexpr(val_t p0, val_t p1, val_
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:6055 */
-  CALL_parser_prod___ABraAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6056 */
+  /* ./parser//parser_prod.nit:6062 */
+  CALL_parser___parser_prod___ABraAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6063 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6056);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6063);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6057 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6064 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6057);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6064);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ABraAssignExpr___init_abraassignexpr_1));
-  /* ./parser//parser_prod.nit:6063 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraAssignExpr___init_abraassignexpr_1));
+  /* ./parser//parser_prod.nit:6070 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6063);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6070);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:6064 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:6071 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6064);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6071);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6065 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6072 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6065);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6072);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:6066 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:6073 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6066);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6073);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos202] = 1;
   return;
 }
-  void OC_parser_prod___ABraAssignExpr___init_abraassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraAssignExpr___init_abraassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:6058 */
+    /* ./parser//parser_prod.nit:6065 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraAssignExpr___init_abraassignexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___init_abraassignexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -32095,26 +32191,26 @@ void parser_prod___ABraAssignExpr___init_abraassignexpr(val_t p0, val_t p1, val_
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6059 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:6066 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6059);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6066);
     }
-    /* ./parser//parser_prod.nit:6060 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:6067 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6060);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6067);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ABraFormExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:6061 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6068 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -32123,9 +32219,9 @@ void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6069;
-  fra.me.meth = LOCATE_parser_prod___ABraAssignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6076;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -32135,21 +32231,21 @@ void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6071 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6078 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6071);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6078);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6072 */
+    /* ./parser//parser_prod.nit:6079 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -32158,58 +32254,58 @@ void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6073 */
+      /* ./parser//parser_prod.nit:6080 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6073);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6080);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6074 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6081 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6074);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6081);
       }
-      /* ./parser//parser_prod.nit:6075 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6082 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6077 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6077);
+      /* ./parser//parser_prod.nit:6084 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6084);
     }
-    /* ./parser//parser_prod.nit:6079 */
+    /* ./parser//parser_prod.nit:6086 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6081 */
+  /* ./parser//parser_prod.nit:6088 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6081);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6088);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6081 */
+      /* ./parser//parser_prod.nit:6088 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6082 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6089 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6082);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6089);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -32218,12 +32314,12 @@ void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6083 */
+        /* ./parser//parser_prod.nit:6090 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -32232,72 +32328,72 @@ void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6084 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:6091 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6084);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6091);
           }
-          /* ./parser//parser_prod.nit:6085 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6092 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6085);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6092);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6086 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6093 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6086);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6093);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6088 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6095 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6088);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6095);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6090 */
+        /* ./parser//parser_prod.nit:6097 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:6093 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6100 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 6093);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6100);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6094 */
+    /* ./parser//parser_prod.nit:6101 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -32306,48 +32402,48 @@ void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6095 */
+      /* ./parser//parser_prod.nit:6102 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6095);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6102);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6096 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6103 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6096);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6103);
       }
-      /* ./parser//parser_prod.nit:6097 */
-      ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6104 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6099 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6099);
+      /* ./parser//parser_prod.nit:6106 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6106);
     }
-    /* ./parser//parser_prod.nit:6101 */
+    /* ./parser//parser_prod.nit:6108 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6103 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6110 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6103);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6110);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6104 */
+    /* ./parser//parser_prod.nit:6111 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -32356,45 +32452,45 @@ void parser_prod___ABraAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6105 */
+      /* ./parser//parser_prod.nit:6112 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6105);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6112);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6106 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6113 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6106);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6113);
       }
-      /* ./parser//parser_prod.nit:6107 */
-      ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6114 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6109 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6109);
+      /* ./parser//parser_prod.nit:6116 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6116);
     }
-    /* ./parser//parser_prod.nit:6111 */
+    /* ./parser//parser_prod.nit:6118 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABraAssignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABraAssignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6115;
-  fra.me.meth = LOCATE_parser_prod___ABraAssignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6122;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -32402,49 +32498,49 @@ void parser_prod___ABraAssignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6117 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6124 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6117);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6124);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6118 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6125 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6118);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6125);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ABraAssignExpr___visit_all_1));
-  /* ./parser//parser_prod.nit:6121 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraAssignExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:6128 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 6121);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6128);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6122 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6129 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6122);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6129);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ABraAssignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraAssignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraAssignExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraAssignExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -32452,20 +32548,20 @@ void parser_prod___ABraAssignExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6119 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6126 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ABraReassignExpr___empty_init(val_t p0, int* init_table){
-  int itpos203 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraReassignExpr].i;
+void parser___parser_prod___ABraReassignExpr___empty_init(val_t p0, int* init_table){
+  int itpos203 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraReassignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos203]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6126;
-  fra.me.meth = LOCATE_parser_prod___ABraReassignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6133;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -32474,16 +32570,16 @@ void parser_prod___ABraReassignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos203] = 1;
   return;
 }
-void parser_prod___ABraReassignExpr___init_abrareassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos204 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABraReassignExpr].i;
+void parser___parser_prod___ABraReassignExpr___init_abrareassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos204 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABraReassignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos204]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6128;
-  fra.me.meth = LOCATE_parser_prod___ABraReassignExpr___init_abrareassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6135;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -32496,62 +32592,62 @@ void parser_prod___ABraReassignExpr___init_abrareassignexpr(val_t p0, val_t p1,
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:6135 */
-  CALL_parser_prod___ABraReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6136 */
+  /* ./parser//parser_prod.nit:6142 */
+  CALL_parser___parser_prod___ABraReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6143 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6136);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6143);
   }
-  ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6137 */
+  ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6144 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6137);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6144);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ABraReassignExpr___init_abrareassignexpr_1));
-  /* ./parser//parser_prod.nit:6143 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr_1));
+  /* ./parser//parser_prod.nit:6150 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6143);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6150);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:6144 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:6151 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6144);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6151);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6145 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6152 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6145);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6152);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:6146 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:6153 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6146);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6153);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos204] = 1;
   return;
 }
-  void OC_parser_prod___ABraReassignExpr___init_abrareassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:6138 */
+    /* ./parser//parser_prod.nit:6145 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraReassignExpr___init_abrareassignexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___init_abrareassignexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -32560,26 +32656,26 @@ void parser_prod___ABraReassignExpr___init_abrareassignexpr(val_t p0, val_t p1,
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6139 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:6146 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6139);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6146);
     }
-    /* ./parser//parser_prod.nit:6140 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:6147 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6140);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6147);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ABraFormExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:6141 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6148 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -32588,9 +32684,9 @@ void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6149;
-  fra.me.meth = LOCATE_parser_prod___ABraReassignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6156;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -32600,21 +32696,21 @@ void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6151 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6158 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6151);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6158);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6152 */
+    /* ./parser//parser_prod.nit:6159 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -32623,58 +32719,58 @@ void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6153 */
+      /* ./parser//parser_prod.nit:6160 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6153);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6160);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6154 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6161 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6154);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6161);
       }
-      /* ./parser//parser_prod.nit:6155 */
-      ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6162 */
+      ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6157 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6157);
+      /* ./parser//parser_prod.nit:6164 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6164);
     }
-    /* ./parser//parser_prod.nit:6159 */
+    /* ./parser//parser_prod.nit:6166 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6161 */
+  /* ./parser//parser_prod.nit:6168 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6161);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6168);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6161 */
+      /* ./parser//parser_prod.nit:6168 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6162 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6169 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6162);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6169);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -32683,12 +32779,12 @@ void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6163 */
+        /* ./parser//parser_prod.nit:6170 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -32697,72 +32793,72 @@ void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6164 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:6171 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6164);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6171);
           }
-          /* ./parser//parser_prod.nit:6165 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6172 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6165);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6172);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6166 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6173 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6166);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6173);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6168 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6175 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6168);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6175);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6170 */
+        /* ./parser//parser_prod.nit:6177 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:6173 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6180 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 6173);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6180);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6174 */
+    /* ./parser//parser_prod.nit:6181 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -32771,48 +32867,48 @@ void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6175 */
+      /* ./parser//parser_prod.nit:6182 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6175);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6182);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6176 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAssignOp, ID_AAssignOp)) /*cast AAssignOp*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6183 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6176);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6183);
       }
-      /* ./parser//parser_prod.nit:6177 */
-      ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6184 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6179 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6179);
+      /* ./parser//parser_prod.nit:6186 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6186);
     }
-    /* ./parser//parser_prod.nit:6181 */
+    /* ./parser//parser_prod.nit:6188 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6183 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6190 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6183);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6190);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6184 */
+    /* ./parser//parser_prod.nit:6191 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -32821,45 +32917,45 @@ void parser_prod___ABraReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6185 */
+      /* ./parser//parser_prod.nit:6192 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6185);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6192);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6186 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6193 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6186);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6193);
       }
-      /* ./parser//parser_prod.nit:6187 */
-      ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6194 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6189 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6189);
+      /* ./parser//parser_prod.nit:6196 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6196);
     }
-    /* ./parser//parser_prod.nit:6191 */
+    /* ./parser//parser_prod.nit:6198 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABraReassignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABraReassignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6195;
-  fra.me.meth = LOCATE_parser_prod___ABraReassignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6202;
+  fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -32867,49 +32963,49 @@ void parser_prod___ABraReassignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6197 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6204 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6197);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6204);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6198 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ASendExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6205 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6198);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6205);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___ABraReassignExpr___visit_all_1));
-  /* ./parser//parser_prod.nit:6201 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ABraFormExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ABraReassignExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:6208 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 6201);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6208);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6202 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6209 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6202);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6209);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ABraReassignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ABraReassignExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ABraReassignExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ABraReassignExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -32917,20 +33013,20 @@ void parser_prod___ABraReassignExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6199 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6206 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AClosureCallExpr___empty_init(val_t p0, int* init_table){
-  int itpos205 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AClosureCallExpr].i;
+void parser___parser_prod___AClosureCallExpr___empty_init(val_t p0, int* init_table){
+  int itpos205 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureCallExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos205]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6206;
-  fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6213;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -32939,16 +33035,16 @@ void parser_prod___AClosureCallExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos205] = 1;
   return;
 }
-void parser_prod___AClosureCallExpr___init_aclosurecallexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos206 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AClosureCallExpr].i;
+void parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos206 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureCallExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos206]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6208;
-  fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___init_aclosurecallexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6215;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -32959,37 +33055,37 @@ void parser_prod___AClosureCallExpr___init_aclosurecallexpr(val_t p0, val_t p1,
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:6214 */
-  CALL_parser_prod___AClosureCallExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6215 */
+  /* ./parser//parser_prod.nit:6221 */
+  CALL_parser___parser_prod___AClosureCallExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6222 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6215);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6222);
   }
-  ATTR_parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6216 */
+  ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6223 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6216);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6223);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AClosureCallExpr___init_aclosurecallexpr_1));
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___AClosureCallExpr___init_aclosurecallexpr_2));
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_1));
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_2));
   stack_frame_head = fra.me.prev;
   init_table[itpos206] = 1;
   return;
 }
-  void OC_parser_prod___AClosureCallExpr___init_aclosurecallexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:6217 */
+    /* ./parser//parser_prod.nit:6224 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___init_aclosurecallexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -32998,35 +33094,35 @@ void parser_prod___AClosureCallExpr___init_aclosurecallexpr(val_t p0, val_t p1,
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6218 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:6225 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6218);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6225);
     }
-    /* ./parser//parser_prod.nit:6219 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_args(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:6226 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6219);
+      nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6226);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AClosureCallExpr____n_args(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:6220 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6227 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AClosureCallExpr___init_aclosurecallexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:6222 */
+    /* ./parser//parser_prod.nit:6229 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___init_aclosurecallexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___init_aclosurecallexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -33035,26 +33131,26 @@ void parser_prod___AClosureCallExpr___init_aclosurecallexpr(val_t p0, val_t p1,
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6223 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AClosureDef, ID_AClosureDef)) /*cast AClosureDef*/;
+    /* ./parser//parser_prod.nit:6230 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6223);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6230);
     }
-    /* ./parser//parser_prod.nit:6224 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:6231 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6224);
+      nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6231);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:6225 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6232 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -33063,9 +33159,9 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6229;
-  fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6236;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -33075,21 +33171,21 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6231 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6238 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6231);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6238);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6232 */
+    /* ./parser//parser_prod.nit:6239 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -33098,58 +33194,58 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6233 */
+      /* ./parser//parser_prod.nit:6240 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6233);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6240);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6234 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6241 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6234);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6241);
       }
-      /* ./parser//parser_prod.nit:6235 */
-      ATTR_parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6242 */
+      ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6237 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6237);
+      /* ./parser//parser_prod.nit:6244 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6244);
     }
-    /* ./parser//parser_prod.nit:6239 */
+    /* ./parser//parser_prod.nit:6246 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6241 */
+  /* ./parser//parser_prod.nit:6248 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6241);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6248);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6241 */
+      /* ./parser//parser_prod.nit:6248 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6242 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6249 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6242);
+        nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6249);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -33158,12 +33254,12 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6243 */
+        /* ./parser//parser_prod.nit:6250 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -33172,82 +33268,82 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6244 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:6251 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6244);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6251);
           }
-          /* ./parser//parser_prod.nit:6245 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6252 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6245);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6252);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6246 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6253 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6246);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6253);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6248 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6255 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6248);
+            nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6255);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6250 */
+        /* ./parser//parser_prod.nit:6257 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:6253 */
+  /* ./parser//parser_prod.nit:6260 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6253);
+    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6260);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6253 */
+      /* ./parser//parser_prod.nit:6260 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6254 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6261 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6254);
+        nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6261);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -33256,12 +33352,12 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6255 */
+        /* ./parser//parser_prod.nit:6262 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -33270,53 +33366,53 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6256 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AClosureDef, ID_AClosureDef)) /*cast AClosureDef*/;
+          /* ./parser//parser_prod.nit:6263 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureDef, ID_parser___parser_nodes___AClosureDef)) /*cast AClosureDef*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6256);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6263);
           }
-          /* ./parser//parser_prod.nit:6257 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6264 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6257);
+            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6264);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6258 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6265 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6258);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6265);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6260 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6267 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6260);
+            nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6267);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6262 */
+        /* ./parser//parser_prod.nit:6269 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label3;
     }
   }
@@ -33325,14 +33421,14 @@ void parser_prod___AClosureCallExpr___replace_child(val_t p0, val_t p1, val_t p2
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AClosureCallExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AClosureCallExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6267;
-  fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6274;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -33340,41 +33436,41 @@ void parser_prod___AClosureCallExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6269 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6276 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6269);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6276);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6270 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureCallExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6277 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser_prod, 6270);
+    nit_abort("Uninitialized attribute %s", "_n_args", LOCATE_parser___parser_prod, 6277);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AClosureCallExpr___visit_all_1));
-  /* ./parser//parser_prod.nit:6273 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureCallExpr____n_args(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___visit_all_1));
+  /* ./parser//parser_prod.nit:6280 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser_prod, 6273);
+    nit_abort("Uninitialized attribute %s", "_n_closure_defs", LOCATE_parser___parser_prod, 6280);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AClosureCallExpr___visit_all_2));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AClosureCallExpr____n_closure_defs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureCallExpr___visit_all_2));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AClosureCallExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AClosureCallExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -33382,19 +33478,19 @@ void parser_prod___AClosureCallExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6271 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6278 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-  void OC_parser_prod___AClosureCallExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AClosureCallExpr___visit_all_2(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AClosureCallExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AClosureCallExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -33402,20 +33498,20 @@ void parser_prod___AClosureCallExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6274 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6281 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AVarExpr___empty_init(val_t p0, int* init_table){
-  int itpos207 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVarExpr].i;
+void parser___parser_prod___AVarExpr___empty_init(val_t p0, int* init_table){
+  int itpos207 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos207]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6279;
-  fra.me.meth = LOCATE_parser_prod___AVarExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6286;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -33424,50 +33520,50 @@ void parser_prod___AVarExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos207] = 1;
   return;
 }
-void parser_prod___AVarExpr___init_avarexpr(val_t p0, val_t p1, int* init_table){
-  int itpos208 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVarExpr].i;
+void parser___parser_prod___AVarExpr___init_avarexpr(val_t p0, val_t p1, int* init_table){
+  int itpos208 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos208]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6281;
-  fra.me.meth = LOCATE_parser_prod___AVarExpr___init_avarexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6288;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___init_avarexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6285 */
-  CALL_parser_prod___AVarExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6286 */
+  /* ./parser//parser_prod.nit:6292 */
+  CALL_parser___parser_prod___AVarExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6293 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6286);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6293);
   }
-  ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6287 */
+  ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6294 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6287);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6294);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos208] = 1;
   return;
 }
-void parser_prod___AVarExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AVarExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6290;
-  fra.me.meth = LOCATE_parser_prod___AVarExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6297;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -33477,21 +33573,21 @@ void parser_prod___AVarExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6292 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6299 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6292);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6299);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6293 */
+    /* ./parser//parser_prod.nit:6300 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -33500,71 +33596,71 @@ void parser_prod___AVarExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6294 */
+      /* ./parser//parser_prod.nit:6301 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6294);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6301);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6295 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6302 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6295);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6302);
       }
-      /* ./parser//parser_prod.nit:6296 */
-      ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6303 */
+      ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6298 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6298);
+      /* ./parser//parser_prod.nit:6305 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6305);
     }
-    /* ./parser//parser_prod.nit:6300 */
+    /* ./parser//parser_prod.nit:6307 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AVarExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AVarExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6304;
-  fra.me.meth = LOCATE_parser_prod___AVarExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6311;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6306 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6313 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6306);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6313);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AVarAssignExpr___empty_init(val_t p0, int* init_table){
-  int itpos209 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVarAssignExpr].i;
+void parser___parser_prod___AVarAssignExpr___empty_init(val_t p0, int* init_table){
+  int itpos209 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarAssignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos209]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6310;
-  fra.me.meth = LOCATE_parser_prod___AVarAssignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6317;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -33573,16 +33669,16 @@ void parser_prod___AVarAssignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos209] = 1;
   return;
 }
-void parser_prod___AVarAssignExpr___init_avarassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos210 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVarAssignExpr].i;
+void parser___parser_prod___AVarAssignExpr___init_avarassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos210 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarAssignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos210]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6312;
-  fra.me.meth = LOCATE_parser_prod___AVarAssignExpr___init_avarassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6319;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___init_avarassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -33593,60 +33689,60 @@ void parser_prod___AVarAssignExpr___init_avarassignexpr(val_t p0, val_t p1, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:6318 */
-  CALL_parser_prod___AVarAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6319 */
+  /* ./parser//parser_prod.nit:6325 */
+  CALL_parser___parser_prod___AVarAssignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6326 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6319);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6326);
   }
-  ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6320 */
+  ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6327 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6320);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6327);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6321 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6328 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6321);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6328);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:6322 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:6329 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6322);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6329);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6323 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6330 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6323);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6330);
   }
-  ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:6324 */
+  ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:6331 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6324);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6331);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos210] = 1;
   return;
 }
-void parser_prod___AVarAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AVarAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6327;
-  fra.me.meth = LOCATE_parser_prod___AVarAssignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6334;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -33656,21 +33752,21 @@ void parser_prod___AVarAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6329 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6336 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6329);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6336);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6330 */
+    /* ./parser//parser_prod.nit:6337 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -33679,48 +33775,48 @@ void parser_prod___AVarAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6331 */
+      /* ./parser//parser_prod.nit:6338 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6331);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6338);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6332 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6339 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6332);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6339);
       }
-      /* ./parser//parser_prod.nit:6333 */
-      ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6340 */
+      ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6335 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6335);
+      /* ./parser//parser_prod.nit:6342 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6342);
     }
-    /* ./parser//parser_prod.nit:6337 */
+    /* ./parser//parser_prod.nit:6344 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6339 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6346 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 6339);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6346);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6340 */
+    /* ./parser//parser_prod.nit:6347 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -33729,48 +33825,48 @@ void parser_prod___AVarAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6341 */
+      /* ./parser//parser_prod.nit:6348 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6341);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6348);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6342 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAssign, ID_TAssign)) /*cast TAssign*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6349 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAssign, ID_parser___parser_nodes___TAssign)) /*cast TAssign*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6342);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6349);
       }
-      /* ./parser//parser_prod.nit:6343 */
-      ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6350 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6345 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6345);
+      /* ./parser//parser_prod.nit:6352 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6352);
     }
-    /* ./parser//parser_prod.nit:6347 */
+    /* ./parser//parser_prod.nit:6354 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6349 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6356 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6349);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6356);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6350 */
+    /* ./parser//parser_prod.nit:6357 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -33779,45 +33875,45 @@ void parser_prod___AVarAssignExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6351 */
+      /* ./parser//parser_prod.nit:6358 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6351);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6358);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6352 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6359 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6352);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6359);
       }
-      /* ./parser//parser_prod.nit:6353 */
-      ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6360 */
+      ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6355 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6355);
+      /* ./parser//parser_prod.nit:6362 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6362);
     }
-    /* ./parser//parser_prod.nit:6357 */
+    /* ./parser//parser_prod.nit:6364 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AVarAssignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AVarAssignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6361;
-  fra.me.meth = LOCATE_parser_prod___AVarAssignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6368;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarAssignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -33825,42 +33921,42 @@ void parser_prod___AVarAssignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6363 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6370 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6363);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6370);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6364 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6371 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser_prod, 6364);
+    nit_abort("Uninitialized attribute %s", "_n_assign", LOCATE_parser___parser_prod, 6371);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6365 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAssignFormExpr____n_assign(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6372 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6365);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6372);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAssignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AVarReassignExpr___empty_init(val_t p0, int* init_table){
-  int itpos211 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVarReassignExpr].i;
+void parser___parser_prod___AVarReassignExpr___empty_init(val_t p0, int* init_table){
+  int itpos211 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarReassignExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos211]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6369;
-  fra.me.meth = LOCATE_parser_prod___AVarReassignExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6376;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -33869,16 +33965,16 @@ void parser_prod___AVarReassignExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos211] = 1;
   return;
 }
-void parser_prod___AVarReassignExpr___init_avarreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos212 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AVarReassignExpr].i;
+void parser___parser_prod___AVarReassignExpr___init_avarreassignexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos212 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AVarReassignExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos212]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6371;
-  fra.me.meth = LOCATE_parser_prod___AVarReassignExpr___init_avarreassignexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6378;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___init_avarreassignexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -33889,60 +33985,60 @@ void parser_prod___AVarReassignExpr___init_avarreassignexpr(val_t p0, val_t p1,
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:6377 */
-  CALL_parser_prod___AVarReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6378 */
+  /* ./parser//parser_prod.nit:6384 */
+  CALL_parser___parser_prod___AVarReassignExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6385 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6378);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6385);
   }
-  ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6379 */
+  ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6386 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6379);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6386);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6380 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6387 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6380);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6387);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:6381 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:6388 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6381);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6388);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6382 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6389 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6382);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6389);
   }
-  ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:6383 */
+  ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:6390 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6383);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6390);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos212] = 1;
   return;
 }
-void parser_prod___AVarReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AVarReassignExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6386;
-  fra.me.meth = LOCATE_parser_prod___AVarReassignExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6393;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -33952,21 +34048,21 @@ void parser_prod___AVarReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6388 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6395 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6388);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6395);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6389 */
+    /* ./parser//parser_prod.nit:6396 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -33975,48 +34071,48 @@ void parser_prod___AVarReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6390 */
+      /* ./parser//parser_prod.nit:6397 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6390);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6397);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6391 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6398 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6391);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6398);
       }
-      /* ./parser//parser_prod.nit:6392 */
-      ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6399 */
+      ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6394 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6394);
+      /* ./parser//parser_prod.nit:6401 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6401);
     }
-    /* ./parser//parser_prod.nit:6396 */
+    /* ./parser//parser_prod.nit:6403 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6398 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6405 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 6398);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6405);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6399 */
+    /* ./parser//parser_prod.nit:6406 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34025,48 +34121,48 @@ void parser_prod___AVarReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6400 */
+      /* ./parser//parser_prod.nit:6407 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6400);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6407);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6401 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AAssignOp, ID_AAssignOp)) /*cast AAssignOp*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6408 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AAssignOp, ID_parser___parser_nodes___AAssignOp)) /*cast AAssignOp*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6401);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6408);
       }
-      /* ./parser//parser_prod.nit:6402 */
-      ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6409 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6404 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6404);
+      /* ./parser//parser_prod.nit:6411 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6411);
     }
-    /* ./parser//parser_prod.nit:6406 */
+    /* ./parser//parser_prod.nit:6413 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6408 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6415 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6408);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6415);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6409 */
+    /* ./parser//parser_prod.nit:6416 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34075,45 +34171,45 @@ void parser_prod___AVarReassignExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6410 */
+      /* ./parser//parser_prod.nit:6417 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6410);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6417);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6411 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6418 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6411);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6418);
       }
-      /* ./parser//parser_prod.nit:6412 */
-      ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6419 */
+      ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6414 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6414);
+      /* ./parser//parser_prod.nit:6421 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6421);
     }
-    /* ./parser//parser_prod.nit:6416 */
+    /* ./parser//parser_prod.nit:6423 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AVarReassignExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AVarReassignExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6420;
-  fra.me.meth = LOCATE_parser_prod___AVarReassignExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6427;
+  fra.me.meth = LOCATE_parser___parser_prod___AVarReassignExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -34121,42 +34217,42 @@ void parser_prod___AVarReassignExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6422 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6429 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 6422);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 6429);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6423 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AVarFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6430 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser_prod, 6423);
+    nit_abort("Uninitialized attribute %s", "_n_assign_op", LOCATE_parser___parser_prod, 6430);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6424 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AReassignFormExpr____n_assign_op(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6431 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser_prod, 6424);
+    nit_abort("Uninitialized attribute %s", "_n_value", LOCATE_parser___parser_prod, 6431);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AReassignFormExpr____n_value(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ARangeExpr___empty_init(val_t p0, int* init_table){
-  int itpos213 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ARangeExpr].i;
+void parser___parser_prod___ARangeExpr___empty_init(val_t p0, int* init_table){
+  int itpos213 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ARangeExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos213]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6428;
-  fra.me.meth = LOCATE_parser_prod___ARangeExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6435;
+  fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -34165,16 +34261,16 @@ void parser_prod___ARangeExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos213] = 1;
   return;
 }
-void parser_prod___ARangeExpr___init_arangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos214 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ARangeExpr].i;
+void parser___parser_prod___ARangeExpr___init_arangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos214 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ARangeExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos214]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6430;
-  fra.me.meth = LOCATE_parser_prod___ARangeExpr___init_arangeexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6437;
+  fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___init_arangeexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -34183,47 +34279,47 @@ void parser_prod___ARangeExpr___init_arangeexpr(val_t p0, val_t p1, val_t p2, in
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6435 */
-  CALL_parser_prod___ARangeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6436 */
+  /* ./parser//parser_prod.nit:6442 */
+  CALL_parser___parser_prod___ARangeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6443 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6436);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6443);
   }
-  ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6437 */
+  ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6444 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6437);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6444);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6438 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6445 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6438);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6445);
   }
-  ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:6439 */
+  ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:6446 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6439);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6446);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos214] = 1;
   return;
 }
-void parser_prod___ARangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ARangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6442;
-  fra.me.meth = LOCATE_parser_prod___ARangeExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6449;
+  fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -34233,21 +34329,21 @@ void parser_prod___ARangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6444 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6451 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6444);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6451);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6445 */
+    /* ./parser//parser_prod.nit:6452 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34256,48 +34352,48 @@ void parser_prod___ARangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6446 */
+      /* ./parser//parser_prod.nit:6453 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6446);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6453);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6447 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6454 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6447);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6454);
       }
-      /* ./parser//parser_prod.nit:6448 */
-      ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6455 */
+      ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6450 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6450);
+      /* ./parser//parser_prod.nit:6457 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6457);
     }
-    /* ./parser//parser_prod.nit:6452 */
+    /* ./parser//parser_prod.nit:6459 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6454 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6461 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 6454);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6461);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6455 */
+    /* ./parser//parser_prod.nit:6462 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34306,45 +34402,45 @@ void parser_prod___ARangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6456 */
+      /* ./parser//parser_prod.nit:6463 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6456);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6463);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6457 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6464 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6457);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6464);
       }
-      /* ./parser//parser_prod.nit:6458 */
-      ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6465 */
+      ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6460 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6460);
+      /* ./parser//parser_prod.nit:6467 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6467);
     }
-    /* ./parser//parser_prod.nit:6462 */
+    /* ./parser//parser_prod.nit:6469 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ARangeExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ARangeExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6466;
-  fra.me.meth = LOCATE_parser_prod___ARangeExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6473;
+  fra.me.meth = LOCATE_parser___parser_prod___ARangeExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -34352,34 +34448,34 @@ void parser_prod___ARangeExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6468 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6475 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6468);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6475);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6469 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6476 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 6469);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6476);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACrangeExpr___empty_init(val_t p0, int* init_table){
-  int itpos215 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACrangeExpr].i;
+void parser___parser_prod___ACrangeExpr___empty_init(val_t p0, int* init_table){
+  int itpos215 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACrangeExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos215]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6473;
-  fra.me.meth = LOCATE_parser_prod___ACrangeExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6480;
+  fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -34388,16 +34484,16 @@ void parser_prod___ACrangeExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos215] = 1;
   return;
 }
-void parser_prod___ACrangeExpr___init_acrangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos216 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACrangeExpr].i;
+void parser___parser_prod___ACrangeExpr___init_acrangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos216 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACrangeExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos216]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6475;
-  fra.me.meth = LOCATE_parser_prod___ACrangeExpr___init_acrangeexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6482;
+  fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___init_acrangeexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -34406,47 +34502,47 @@ void parser_prod___ACrangeExpr___init_acrangeexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6480 */
-  CALL_parser_prod___ACrangeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6481 */
+  /* ./parser//parser_prod.nit:6487 */
+  CALL_parser___parser_prod___ACrangeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6488 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6481);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6488);
   }
-  ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6482 */
+  ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6489 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6482);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6489);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6483 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6490 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6483);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6490);
   }
-  ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:6484 */
+  ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:6491 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6484);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6491);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos216] = 1;
   return;
 }
-void parser_prod___ACrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ACrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6487;
-  fra.me.meth = LOCATE_parser_prod___ACrangeExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6494;
+  fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -34456,21 +34552,21 @@ void parser_prod___ACrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6489 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6496 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6489);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6496);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6490 */
+    /* ./parser//parser_prod.nit:6497 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34479,48 +34575,48 @@ void parser_prod___ACrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6491 */
+      /* ./parser//parser_prod.nit:6498 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6491);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6498);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6492 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6499 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6492);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6499);
       }
-      /* ./parser//parser_prod.nit:6493 */
-      ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6500 */
+      ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6495 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6495);
+      /* ./parser//parser_prod.nit:6502 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6502);
     }
-    /* ./parser//parser_prod.nit:6497 */
+    /* ./parser//parser_prod.nit:6504 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6499 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6506 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 6499);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6506);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6500 */
+    /* ./parser//parser_prod.nit:6507 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34529,45 +34625,45 @@ void parser_prod___ACrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6501 */
+      /* ./parser//parser_prod.nit:6508 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6501);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6508);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6502 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6509 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6502);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6509);
       }
-      /* ./parser//parser_prod.nit:6503 */
-      ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6510 */
+      ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6505 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6505);
+      /* ./parser//parser_prod.nit:6512 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6512);
     }
-    /* ./parser//parser_prod.nit:6507 */
+    /* ./parser//parser_prod.nit:6514 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACrangeExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ACrangeExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6511;
-  fra.me.meth = LOCATE_parser_prod___ACrangeExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6518;
+  fra.me.meth = LOCATE_parser___parser_prod___ACrangeExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -34575,34 +34671,34 @@ void parser_prod___ACrangeExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6513 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6520 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6513);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6520);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6514 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6521 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 6514);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6521);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOrangeExpr___empty_init(val_t p0, int* init_table){
-  int itpos217 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOrangeExpr].i;
+void parser___parser_prod___AOrangeExpr___empty_init(val_t p0, int* init_table){
+  int itpos217 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrangeExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos217]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6518;
-  fra.me.meth = LOCATE_parser_prod___AOrangeExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6525;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -34611,16 +34707,16 @@ void parser_prod___AOrangeExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos217] = 1;
   return;
 }
-void parser_prod___AOrangeExpr___init_aorangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos218 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AOrangeExpr].i;
+void parser___parser_prod___AOrangeExpr___init_aorangeexpr(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos218 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AOrangeExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos218]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6520;
-  fra.me.meth = LOCATE_parser_prod___AOrangeExpr___init_aorangeexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6527;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___init_aorangeexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -34629,47 +34725,47 @@ void parser_prod___AOrangeExpr___init_aorangeexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6525 */
-  CALL_parser_prod___AOrangeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6526 */
+  /* ./parser//parser_prod.nit:6532 */
+  CALL_parser___parser_prod___AOrangeExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6533 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6526);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6533);
   }
-  ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6527 */
+  ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6534 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6527);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6534);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:6528 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6535 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6528);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6535);
   }
-  ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:6529 */
+  ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:6536 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6529);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6536);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos218] = 1;
   return;
 }
-void parser_prod___AOrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AOrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6532;
-  fra.me.meth = LOCATE_parser_prod___AOrangeExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6539;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -34679,21 +34775,21 @@ void parser_prod___AOrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6534 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6541 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6534);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6541);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6535 */
+    /* ./parser//parser_prod.nit:6542 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34702,48 +34798,48 @@ void parser_prod___AOrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6536 */
+      /* ./parser//parser_prod.nit:6543 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6536);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6543);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6537 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6544 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6537);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6544);
       }
-      /* ./parser//parser_prod.nit:6538 */
-      ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6545 */
+      ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6540 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6540);
+      /* ./parser//parser_prod.nit:6547 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6547);
     }
-    /* ./parser//parser_prod.nit:6542 */
+    /* ./parser//parser_prod.nit:6549 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:6544 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6551 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 6544);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6551);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6545 */
+    /* ./parser//parser_prod.nit:6552 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -34752,45 +34848,45 @@ void parser_prod___AOrangeExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6546 */
+      /* ./parser//parser_prod.nit:6553 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6546);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6553);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6547 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6554 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6547);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6554);
       }
-      /* ./parser//parser_prod.nit:6548 */
-      ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6555 */
+      ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6550 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6550);
+      /* ./parser//parser_prod.nit:6557 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6557);
     }
-    /* ./parser//parser_prod.nit:6552 */
+    /* ./parser//parser_prod.nit:6559 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AOrangeExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AOrangeExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6556;
-  fra.me.meth = LOCATE_parser_prod___AOrangeExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6563;
+  fra.me.meth = LOCATE_parser___parser_prod___AOrangeExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -34798,34 +34894,34 @@ void parser_prod___AOrangeExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6558 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6565 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 6558);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 6565);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:6559 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ARangeExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:6566 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser_prod, 6559);
+    nit_abort("Uninitialized attribute %s", "_n_expr2", LOCATE_parser___parser_prod, 6566);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ARangeExpr____n_expr2(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AArrayExpr___empty_init(val_t p0, int* init_table){
-  int itpos219 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AArrayExpr].i;
+void parser___parser_prod___AArrayExpr___empty_init(val_t p0, int* init_table){
+  int itpos219 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AArrayExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos219]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6563;
-  fra.me.meth = LOCATE_parser_prod___AArrayExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6570;
+  fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -34834,38 +34930,38 @@ void parser_prod___AArrayExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos219] = 1;
   return;
 }
-void parser_prod___AArrayExpr___init_aarrayexpr(val_t p0, val_t p1, int* init_table){
-  int itpos220 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AArrayExpr].i;
+void parser___parser_prod___AArrayExpr___init_aarrayexpr(val_t p0, val_t p1, int* init_table){
+  int itpos220 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AArrayExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   if (init_table[itpos220]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6565;
-  fra.me.meth = LOCATE_parser_prod___AArrayExpr___init_aarrayexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6572;
+  fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___init_aarrayexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6569 */
-  CALL_parser_prod___AArrayExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___AArrayExpr___init_aarrayexpr_1));
+  /* ./parser//parser_prod.nit:6576 */
+  CALL_parser___parser_prod___AArrayExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AArrayExpr___init_aarrayexpr_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos220] = 1;
   return;
 }
-  void OC_parser_prod___AArrayExpr___init_aarrayexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AArrayExpr___init_aarrayexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:6570 */
+    /* ./parser//parser_prod.nit:6577 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AArrayExpr___init_aarrayexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___init_aarrayexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -34874,26 +34970,26 @@ void parser_prod___AArrayExpr___init_aarrayexpr(val_t p0, val_t p1, int* init_ta
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6571 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:6578 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6571);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6578);
     }
-    /* ./parser//parser_prod.nit:6572 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AArrayExpr____n_exprs(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:6579 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6572);
+      nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6579);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AArrayExpr____n_exprs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:6573 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6580 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -34902,9 +34998,9 @@ void parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6577;
-  fra.me.meth = LOCATE_parser_prod___AArrayExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6584;
+  fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -34914,31 +35010,31 @@ void parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6579 */
+  /* ./parser//parser_prod.nit:6586 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6579);
+    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6586);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6579 */
+      /* ./parser//parser_prod.nit:6586 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6580 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6587 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6580);
+        nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6587);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -34947,12 +35043,12 @@ void parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6581 */
+        /* ./parser//parser_prod.nit:6588 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -34961,53 +35057,53 @@ void parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6582 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:6589 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6582);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6589);
           }
-          /* ./parser//parser_prod.nit:6583 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6590 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6583);
+            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6590);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6584 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6591 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6584);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6591);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6586 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6593 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6586);
+            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6593);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6588 */
+        /* ./parser//parser_prod.nit:6595 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -35016,39 +35112,39 @@ void parser_prod___AArrayExpr___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AArrayExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AArrayExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6593;
-  fra.me.meth = LOCATE_parser_prod___AArrayExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6600;
+  fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6595 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6602 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6595);
+    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6602);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AArrayExpr___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AArrayExpr____n_exprs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AArrayExpr___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AArrayExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AArrayExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AArrayExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AArrayExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -35056,20 +35152,20 @@ void parser_prod___AArrayExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6596 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6603 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ASelfExpr___empty_init(val_t p0, int* init_table){
-  int itpos221 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASelfExpr].i;
+void parser___parser_prod___ASelfExpr___empty_init(val_t p0, int* init_table){
+  int itpos221 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASelfExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos221]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6601;
-  fra.me.meth = LOCATE_parser_prod___ASelfExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6608;
+  fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -35078,50 +35174,50 @@ void parser_prod___ASelfExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos221] = 1;
   return;
 }
-void parser_prod___ASelfExpr___init_aselfexpr(val_t p0, val_t p1, int* init_table){
-  int itpos222 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASelfExpr].i;
+void parser___parser_prod___ASelfExpr___init_aselfexpr(val_t p0, val_t p1, int* init_table){
+  int itpos222 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASelfExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos222]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6603;
-  fra.me.meth = LOCATE_parser_prod___ASelfExpr___init_aselfexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6610;
+  fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___init_aselfexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6607 */
-  CALL_parser_prod___ASelfExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6608 */
+  /* ./parser//parser_prod.nit:6614 */
+  CALL_parser___parser_prod___ASelfExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6615 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6608);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6615);
   }
-  ATTR_parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6609 */
+  ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6616 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6609);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6616);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos222] = 1;
   return;
 }
-void parser_prod___ASelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6612;
-  fra.me.meth = LOCATE_parser_prod___ASelfExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6619;
+  fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -35131,8 +35227,8 @@ void parser_prod___ASelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6614 */
-  fra.me.REG[3] = ATTR_parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6621 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -35141,12 +35237,12 @@ void parser_prod___ASelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6615 */
+    /* ./parser//parser_prod.nit:6622 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -35155,65 +35251,65 @@ void parser_prod___ASelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6616 */
+      /* ./parser//parser_prod.nit:6623 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6616);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6623);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6617 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwself, ID_TKwself)) /*cast TKwself*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6624 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwself, ID_parser___parser_nodes___TKwself)) /*cast TKwself*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6617);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6624);
       }
-      /* ./parser//parser_prod.nit:6618 */
-      ATTR_parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6625 */
+      ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6620 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6620);
+      /* ./parser//parser_prod.nit:6627 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6627);
     }
-    /* ./parser//parser_prod.nit:6622 */
+    /* ./parser//parser_prod.nit:6629 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASelfExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASelfExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6626;
-  fra.me.meth = LOCATE_parser_prod___ASelfExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6633;
+  fra.me.meth = LOCATE_parser___parser_prod___ASelfExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6628 */
-  fra.me.REG[0] = ATTR_parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:6635 */
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASelfExpr____n_kwself(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AImplicitSelfExpr___empty_init(val_t p0, int* init_table){
-  int itpos223 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AImplicitSelfExpr].i;
+void parser___parser_prod___AImplicitSelfExpr___empty_init(val_t p0, int* init_table){
+  int itpos223 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AImplicitSelfExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos223]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6632;
-  fra.me.meth = LOCATE_parser_prod___AImplicitSelfExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6639;
+  fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -35222,32 +35318,32 @@ void parser_prod___AImplicitSelfExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos223] = 1;
   return;
 }
-void parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(val_t p0, int* init_table){
-  int itpos224 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AImplicitSelfExpr].i;
+void parser___parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr(val_t p0, int* init_table){
+  int itpos224 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AImplicitSelfExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos224]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6634;
-  fra.me.meth = LOCATE_parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6641;
+  fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___init_aimplicitselfexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
-  /* ./parser//parser_prod.nit:6636 */
-  CALL_parser_prod___AImplicitSelfExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6643 */
+  CALL_parser___parser_prod___AImplicitSelfExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   stack_frame_head = fra.me.prev;
   init_table[itpos224] = 1;
   return;
 }
-void parser_prod___AImplicitSelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AImplicitSelfExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6639;
-  fra.me.meth = LOCATE_parser_prod___AImplicitSelfExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6646;
+  fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -35259,13 +35355,13 @@ void parser_prod___AImplicitSelfExpr___replace_child(val_t p0, val_t p1, val_t p
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AImplicitSelfExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AImplicitSelfExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6643;
-  fra.me.meth = LOCATE_parser_prod___AImplicitSelfExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6650;
+  fra.me.meth = LOCATE_parser___parser_prod___AImplicitSelfExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -35275,15 +35371,15 @@ void parser_prod___AImplicitSelfExpr___visit_all(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ATrueExpr___empty_init(val_t p0, int* init_table){
-  int itpos225 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ATrueExpr].i;
+void parser___parser_prod___ATrueExpr___empty_init(val_t p0, int* init_table){
+  int itpos225 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATrueExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos225]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6648;
-  fra.me.meth = LOCATE_parser_prod___ATrueExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6655;
+  fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -35292,50 +35388,50 @@ void parser_prod___ATrueExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos225] = 1;
   return;
 }
-void parser_prod___ATrueExpr___init_atrueexpr(val_t p0, val_t p1, int* init_table){
-  int itpos226 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ATrueExpr].i;
+void parser___parser_prod___ATrueExpr___init_atrueexpr(val_t p0, val_t p1, int* init_table){
+  int itpos226 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ATrueExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos226]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6650;
-  fra.me.meth = LOCATE_parser_prod___ATrueExpr___init_atrueexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6657;
+  fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___init_atrueexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6654 */
-  CALL_parser_prod___ATrueExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6655 */
+  /* ./parser//parser_prod.nit:6661 */
+  CALL_parser___parser_prod___ATrueExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6662 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6655);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6662);
   }
-  ATTR_parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6656 */
+  ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6663 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6656);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6663);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos226] = 1;
   return;
 }
-void parser_prod___ATrueExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ATrueExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6659;
-  fra.me.meth = LOCATE_parser_prod___ATrueExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6666;
+  fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -35345,21 +35441,21 @@ void parser_prod___ATrueExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6661 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6668 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwtrue", LOCATE_parser_prod, 6661);
+    nit_abort("Uninitialized attribute %s", "_n_kwtrue", LOCATE_parser___parser_prod, 6668);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6662 */
+    /* ./parser//parser_prod.nit:6669 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -35368,71 +35464,71 @@ void parser_prod___ATrueExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6663 */
+      /* ./parser//parser_prod.nit:6670 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6663);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6670);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6664 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwtrue, ID_TKwtrue)) /*cast TKwtrue*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6671 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwtrue, ID_parser___parser_nodes___TKwtrue)) /*cast TKwtrue*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6664);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6671);
       }
-      /* ./parser//parser_prod.nit:6665 */
-      ATTR_parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6672 */
+      ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6667 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6667);
+      /* ./parser//parser_prod.nit:6674 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6674);
     }
-    /* ./parser//parser_prod.nit:6669 */
+    /* ./parser//parser_prod.nit:6676 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ATrueExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ATrueExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6673;
-  fra.me.meth = LOCATE_parser_prod___ATrueExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6680;
+  fra.me.meth = LOCATE_parser___parser_prod___ATrueExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6675 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6682 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwtrue", LOCATE_parser_prod, 6675);
+    nit_abort("Uninitialized attribute %s", "_n_kwtrue", LOCATE_parser___parser_prod, 6682);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ATrueExpr____n_kwtrue(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFalseExpr___empty_init(val_t p0, int* init_table){
-  int itpos227 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFalseExpr].i;
+void parser___parser_prod___AFalseExpr___empty_init(val_t p0, int* init_table){
+  int itpos227 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFalseExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos227]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6679;
-  fra.me.meth = LOCATE_parser_prod___AFalseExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6686;
+  fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -35441,50 +35537,50 @@ void parser_prod___AFalseExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos227] = 1;
   return;
 }
-void parser_prod___AFalseExpr___init_afalseexpr(val_t p0, val_t p1, int* init_table){
-  int itpos228 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFalseExpr].i;
+void parser___parser_prod___AFalseExpr___init_afalseexpr(val_t p0, val_t p1, int* init_table){
+  int itpos228 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFalseExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos228]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6681;
-  fra.me.meth = LOCATE_parser_prod___AFalseExpr___init_afalseexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6688;
+  fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___init_afalseexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6685 */
-  CALL_parser_prod___AFalseExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6686 */
+  /* ./parser//parser_prod.nit:6692 */
+  CALL_parser___parser_prod___AFalseExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6693 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6686);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6693);
   }
-  ATTR_parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6687 */
+  ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6694 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6687);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6694);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos228] = 1;
   return;
 }
-void parser_prod___AFalseExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AFalseExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6690;
-  fra.me.meth = LOCATE_parser_prod___AFalseExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6697;
+  fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -35494,21 +35590,21 @@ void parser_prod___AFalseExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6692 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6699 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwfalse", LOCATE_parser_prod, 6692);
+    nit_abort("Uninitialized attribute %s", "_n_kwfalse", LOCATE_parser___parser_prod, 6699);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6693 */
+    /* ./parser//parser_prod.nit:6700 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -35517,71 +35613,71 @@ void parser_prod___AFalseExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6694 */
+      /* ./parser//parser_prod.nit:6701 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6694);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6701);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6695 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwfalse, ID_TKwfalse)) /*cast TKwfalse*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6702 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwfalse, ID_parser___parser_nodes___TKwfalse)) /*cast TKwfalse*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6695);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6702);
       }
-      /* ./parser//parser_prod.nit:6696 */
-      ATTR_parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6703 */
+      ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6698 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6698);
+      /* ./parser//parser_prod.nit:6705 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6705);
     }
-    /* ./parser//parser_prod.nit:6700 */
+    /* ./parser//parser_prod.nit:6707 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFalseExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AFalseExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6704;
-  fra.me.meth = LOCATE_parser_prod___AFalseExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6711;
+  fra.me.meth = LOCATE_parser___parser_prod___AFalseExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6706 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6713 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwfalse", LOCATE_parser_prod, 6706);
+    nit_abort("Uninitialized attribute %s", "_n_kwfalse", LOCATE_parser___parser_prod, 6713);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AFalseExpr____n_kwfalse(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANullExpr___empty_init(val_t p0, int* init_table){
-  int itpos229 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANullExpr].i;
+void parser___parser_prod___ANullExpr___empty_init(val_t p0, int* init_table){
+  int itpos229 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANullExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos229]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6710;
-  fra.me.meth = LOCATE_parser_prod___ANullExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6717;
+  fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -35590,50 +35686,50 @@ void parser_prod___ANullExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos229] = 1;
   return;
 }
-void parser_prod___ANullExpr___init_anullexpr(val_t p0, val_t p1, int* init_table){
-  int itpos230 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ANullExpr].i;
+void parser___parser_prod___ANullExpr___init_anullexpr(val_t p0, val_t p1, int* init_table){
+  int itpos230 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ANullExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos230]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6712;
-  fra.me.meth = LOCATE_parser_prod___ANullExpr___init_anullexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6719;
+  fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___init_anullexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6716 */
-  CALL_parser_prod___ANullExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6717 */
+  /* ./parser//parser_prod.nit:6723 */
+  CALL_parser___parser_prod___ANullExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6724 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6717);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6724);
   }
-  ATTR_parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6718 */
+  ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6725 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6718);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6725);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos230] = 1;
   return;
 }
-void parser_prod___ANullExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ANullExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6721;
-  fra.me.meth = LOCATE_parser_prod___ANullExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6728;
+  fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -35643,21 +35739,21 @@ void parser_prod___ANullExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6723 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6730 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser_prod, 6723);
+    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 6730);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6724 */
+    /* ./parser//parser_prod.nit:6731 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -35666,71 +35762,71 @@ void parser_prod___ANullExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6725 */
+      /* ./parser//parser_prod.nit:6732 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6725);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6732);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6726 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6733 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnull, ID_parser___parser_nodes___TKwnull)) /*cast TKwnull*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6726);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6733);
       }
-      /* ./parser//parser_prod.nit:6727 */
-      ATTR_parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6734 */
+      ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6729 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6729);
+      /* ./parser//parser_prod.nit:6736 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6736);
     }
-    /* ./parser//parser_prod.nit:6731 */
+    /* ./parser//parser_prod.nit:6738 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ANullExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ANullExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6735;
-  fra.me.meth = LOCATE_parser_prod___ANullExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6742;
+  fra.me.meth = LOCATE_parser___parser_prod___ANullExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6737 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6744 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser_prod, 6737);
+    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 6744);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ANullExpr____n_kwnull(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIntExpr___empty_init(val_t p0, int* init_table){
-  int itpos231 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIntExpr].i;
+void parser___parser_prod___AIntExpr___empty_init(val_t p0, int* init_table){
+  int itpos231 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos231]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6741;
-  fra.me.meth = LOCATE_parser_prod___AIntExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6748;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -35739,50 +35835,50 @@ void parser_prod___AIntExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos231] = 1;
   return;
 }
-void parser_prod___AIntExpr___init_aintexpr(val_t p0, val_t p1, int* init_table){
-  int itpos232 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIntExpr].i;
+void parser___parser_prod___AIntExpr___init_aintexpr(val_t p0, val_t p1, int* init_table){
+  int itpos232 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIntExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos232]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6743;
-  fra.me.meth = LOCATE_parser_prod___AIntExpr___init_aintexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6750;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___init_aintexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6747 */
-  CALL_parser_prod___AIntExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6748 */
+  /* ./parser//parser_prod.nit:6754 */
+  CALL_parser___parser_prod___AIntExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6755 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6748);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6755);
   }
-  ATTR_parser_nodes___AIntExpr____n_number(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6749 */
+  ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6756 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6749);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6756);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos232] = 1;
   return;
 }
-void parser_prod___AIntExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AIntExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6752;
-  fra.me.meth = LOCATE_parser_prod___AIntExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6759;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -35792,21 +35888,21 @@ void parser_prod___AIntExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6754 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIntExpr____n_number(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6761 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_number", LOCATE_parser_prod, 6754);
+    nit_abort("Uninitialized attribute %s", "_n_number", LOCATE_parser___parser_prod, 6761);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIntExpr____n_number(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6755 */
+    /* ./parser//parser_prod.nit:6762 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -35815,71 +35911,71 @@ void parser_prod___AIntExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6756 */
+      /* ./parser//parser_prod.nit:6763 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6756);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6763);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6757 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TNumber, ID_TNumber)) /*cast TNumber*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6764 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TNumber, ID_parser___parser_nodes___TNumber)) /*cast TNumber*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6757);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6764);
       }
-      /* ./parser//parser_prod.nit:6758 */
-      ATTR_parser_nodes___AIntExpr____n_number(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6765 */
+      ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6760 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6760);
+      /* ./parser//parser_prod.nit:6767 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6767);
     }
-    /* ./parser//parser_prod.nit:6762 */
+    /* ./parser//parser_prod.nit:6769 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIntExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AIntExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6766;
-  fra.me.meth = LOCATE_parser_prod___AIntExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6773;
+  fra.me.meth = LOCATE_parser___parser_prod___AIntExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6768 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIntExpr____n_number(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6775 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_number", LOCATE_parser_prod, 6768);
+    nit_abort("Uninitialized attribute %s", "_n_number", LOCATE_parser___parser_prod, 6775);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AIntExpr____n_number(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AIntExpr____n_number(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFloatExpr___empty_init(val_t p0, int* init_table){
-  int itpos233 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFloatExpr].i;
+void parser___parser_prod___AFloatExpr___empty_init(val_t p0, int* init_table){
+  int itpos233 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFloatExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos233]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6772;
-  fra.me.meth = LOCATE_parser_prod___AFloatExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6779;
+  fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -35888,50 +35984,50 @@ void parser_prod___AFloatExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos233] = 1;
   return;
 }
-void parser_prod___AFloatExpr___init_afloatexpr(val_t p0, val_t p1, int* init_table){
-  int itpos234 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFloatExpr].i;
+void parser___parser_prod___AFloatExpr___init_afloatexpr(val_t p0, val_t p1, int* init_table){
+  int itpos234 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFloatExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos234]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6774;
-  fra.me.meth = LOCATE_parser_prod___AFloatExpr___init_afloatexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6781;
+  fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___init_afloatexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6778 */
-  CALL_parser_prod___AFloatExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6779 */
+  /* ./parser//parser_prod.nit:6785 */
+  CALL_parser___parser_prod___AFloatExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6786 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6779);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6786);
   }
-  ATTR_parser_nodes___AFloatExpr____n_float(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6780 */
+  ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6787 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6780);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6787);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos234] = 1;
   return;
 }
-void parser_prod___AFloatExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AFloatExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6783;
-  fra.me.meth = LOCATE_parser_prod___AFloatExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6790;
+  fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -35941,21 +36037,21 @@ void parser_prod___AFloatExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6785 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFloatExpr____n_float(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6792 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_float", LOCATE_parser_prod, 6785);
+    nit_abort("Uninitialized attribute %s", "_n_float", LOCATE_parser___parser_prod, 6792);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AFloatExpr____n_float(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6786 */
+    /* ./parser//parser_prod.nit:6793 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -35964,71 +36060,71 @@ void parser_prod___AFloatExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6787 */
+      /* ./parser//parser_prod.nit:6794 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6787);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6794);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6788 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TFloat, ID_TFloat)) /*cast TFloat*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6795 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TFloat, ID_parser___parser_nodes___TFloat)) /*cast TFloat*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6788);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6795);
       }
-      /* ./parser//parser_prod.nit:6789 */
-      ATTR_parser_nodes___AFloatExpr____n_float(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6796 */
+      ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6791 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6791);
+      /* ./parser//parser_prod.nit:6798 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6798);
     }
-    /* ./parser//parser_prod.nit:6793 */
+    /* ./parser//parser_prod.nit:6800 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFloatExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AFloatExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6797;
-  fra.me.meth = LOCATE_parser_prod___AFloatExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6804;
+  fra.me.meth = LOCATE_parser___parser_prod___AFloatExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6799 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFloatExpr____n_float(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6806 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_float", LOCATE_parser_prod, 6799);
+    nit_abort("Uninitialized attribute %s", "_n_float", LOCATE_parser___parser_prod, 6806);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AFloatExpr____n_float(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AFloatExpr____n_float(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACharExpr___empty_init(val_t p0, int* init_table){
-  int itpos235 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACharExpr].i;
+void parser___parser_prod___ACharExpr___empty_init(val_t p0, int* init_table){
+  int itpos235 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACharExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos235]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6803;
-  fra.me.meth = LOCATE_parser_prod___ACharExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6810;
+  fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -36037,50 +36133,50 @@ void parser_prod___ACharExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos235] = 1;
   return;
 }
-void parser_prod___ACharExpr___init_acharexpr(val_t p0, val_t p1, int* init_table){
-  int itpos236 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACharExpr].i;
+void parser___parser_prod___ACharExpr___init_acharexpr(val_t p0, val_t p1, int* init_table){
+  int itpos236 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACharExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos236]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6805;
-  fra.me.meth = LOCATE_parser_prod___ACharExpr___init_acharexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6812;
+  fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___init_acharexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6809 */
-  CALL_parser_prod___ACharExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6810 */
+  /* ./parser//parser_prod.nit:6816 */
+  CALL_parser___parser_prod___ACharExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6817 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6810);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6817);
   }
-  ATTR_parser_nodes___ACharExpr____n_char(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6811 */
+  ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6818 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6811);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6818);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos236] = 1;
   return;
 }
-void parser_prod___ACharExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ACharExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6814;
-  fra.me.meth = LOCATE_parser_prod___ACharExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6821;
+  fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -36090,21 +36186,21 @@ void parser_prod___ACharExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6816 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACharExpr____n_char(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6823 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_char", LOCATE_parser_prod, 6816);
+    nit_abort("Uninitialized attribute %s", "_n_char", LOCATE_parser___parser_prod, 6823);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACharExpr____n_char(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6817 */
+    /* ./parser//parser_prod.nit:6824 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -36113,71 +36209,71 @@ void parser_prod___ACharExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6818 */
+      /* ./parser//parser_prod.nit:6825 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6818);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6825);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6819 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TChar, ID_TChar)) /*cast TChar*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6826 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TChar, ID_parser___parser_nodes___TChar)) /*cast TChar*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6819);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6826);
       }
-      /* ./parser//parser_prod.nit:6820 */
-      ATTR_parser_nodes___ACharExpr____n_char(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6827 */
+      ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6822 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6822);
+      /* ./parser//parser_prod.nit:6829 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6829);
     }
-    /* ./parser//parser_prod.nit:6824 */
+    /* ./parser//parser_prod.nit:6831 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACharExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ACharExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6828;
-  fra.me.meth = LOCATE_parser_prod___ACharExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6835;
+  fra.me.meth = LOCATE_parser___parser_prod___ACharExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6830 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACharExpr____n_char(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6837 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_char", LOCATE_parser_prod, 6830);
+    nit_abort("Uninitialized attribute %s", "_n_char", LOCATE_parser___parser_prod, 6837);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ACharExpr____n_char(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ACharExpr____n_char(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStringExpr___empty_init(val_t p0, int* init_table){
-  int itpos237 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStringExpr].i;
+void parser___parser_prod___AStringExpr___empty_init(val_t p0, int* init_table){
+  int itpos237 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStringExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos237]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6834;
-  fra.me.meth = LOCATE_parser_prod___AStringExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6841;
+  fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -36186,50 +36282,50 @@ void parser_prod___AStringExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos237] = 1;
   return;
 }
-void parser_prod___AStringExpr___init_astringexpr(val_t p0, val_t p1, int* init_table){
-  int itpos238 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStringExpr].i;
+void parser___parser_prod___AStringExpr___init_astringexpr(val_t p0, val_t p1, int* init_table){
+  int itpos238 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStringExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos238]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6836;
-  fra.me.meth = LOCATE_parser_prod___AStringExpr___init_astringexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6843;
+  fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___init_astringexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6840 */
-  CALL_parser_prod___AStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6841 */
+  /* ./parser//parser_prod.nit:6847 */
+  CALL_parser___parser_prod___AStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6848 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6841);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6848);
   }
-  ATTR_parser_nodes___AStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6842 */
+  ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6849 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6842);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6849);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos238] = 1;
   return;
 }
-void parser_prod___AStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6845;
-  fra.me.meth = LOCATE_parser_prod___AStringExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6852;
+  fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -36239,21 +36335,21 @@ void parser_prod___AStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6847 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6854 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6847);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6854);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStringExpr____n_string(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6848 */
+    /* ./parser//parser_prod.nit:6855 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -36262,71 +36358,71 @@ void parser_prod___AStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6849 */
+      /* ./parser//parser_prod.nit:6856 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6849);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6856);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6850 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TString, ID_TString)) /*cast TString*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6857 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TString, ID_parser___parser_nodes___TString)) /*cast TString*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6850);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6857);
       }
-      /* ./parser//parser_prod.nit:6851 */
-      ATTR_parser_nodes___AStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6858 */
+      ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6853 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6853);
+      /* ./parser//parser_prod.nit:6860 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6860);
     }
-    /* ./parser//parser_prod.nit:6855 */
+    /* ./parser//parser_prod.nit:6862 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStringExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStringExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6859;
-  fra.me.meth = LOCATE_parser_prod___AStringExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6866;
+  fra.me.meth = LOCATE_parser___parser_prod___AStringExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6861 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6868 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6861);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6868);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AStringExpr____n_string(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AStringExpr____n_string(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStartStringExpr___empty_init(val_t p0, int* init_table){
-  int itpos239 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStartStringExpr].i;
+void parser___parser_prod___AStartStringExpr___empty_init(val_t p0, int* init_table){
+  int itpos239 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStartStringExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos239]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6865;
-  fra.me.meth = LOCATE_parser_prod___AStartStringExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6872;
+  fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -36335,50 +36431,50 @@ void parser_prod___AStartStringExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos239] = 1;
   return;
 }
-void parser_prod___AStartStringExpr___init_astartstringexpr(val_t p0, val_t p1, int* init_table){
-  int itpos240 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AStartStringExpr].i;
+void parser___parser_prod___AStartStringExpr___init_astartstringexpr(val_t p0, val_t p1, int* init_table){
+  int itpos240 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AStartStringExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos240]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6867;
-  fra.me.meth = LOCATE_parser_prod___AStartStringExpr___init_astartstringexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6874;
+  fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___init_astartstringexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6871 */
-  CALL_parser_prod___AStartStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6872 */
+  /* ./parser//parser_prod.nit:6878 */
+  CALL_parser___parser_prod___AStartStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6879 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6872);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6879);
   }
-  ATTR_parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6873 */
+  ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6880 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6873);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6880);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos240] = 1;
   return;
 }
-void parser_prod___AStartStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AStartStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6876;
-  fra.me.meth = LOCATE_parser_prod___AStartStringExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6883;
+  fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -36388,21 +36484,21 @@ void parser_prod___AStartStringExpr___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6878 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStartStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6885 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6878);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6885);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6879 */
+    /* ./parser//parser_prod.nit:6886 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -36411,71 +36507,71 @@ void parser_prod___AStartStringExpr___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6880 */
+      /* ./parser//parser_prod.nit:6887 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6880);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6887);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6881 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TStartString, ID_TStartString)) /*cast TStartString*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6888 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TStartString, ID_parser___parser_nodes___TStartString)) /*cast TStartString*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6881);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6888);
       }
-      /* ./parser//parser_prod.nit:6882 */
-      ATTR_parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6889 */
+      ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6884 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6884);
+      /* ./parser//parser_prod.nit:6891 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6891);
     }
-    /* ./parser//parser_prod.nit:6886 */
+    /* ./parser//parser_prod.nit:6893 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AStartStringExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AStartStringExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6890;
-  fra.me.meth = LOCATE_parser_prod___AStartStringExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6897;
+  fra.me.meth = LOCATE_parser___parser_prod___AStartStringExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6892 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AStartStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6899 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6892);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6899);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AStartStringExpr____n_string(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMidStringExpr___empty_init(val_t p0, int* init_table){
-  int itpos241 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMidStringExpr].i;
+void parser___parser_prod___AMidStringExpr___empty_init(val_t p0, int* init_table){
+  int itpos241 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMidStringExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos241]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6896;
-  fra.me.meth = LOCATE_parser_prod___AMidStringExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6903;
+  fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -36484,50 +36580,50 @@ void parser_prod___AMidStringExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos241] = 1;
   return;
 }
-void parser_prod___AMidStringExpr___init_amidstringexpr(val_t p0, val_t p1, int* init_table){
-  int itpos242 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMidStringExpr].i;
+void parser___parser_prod___AMidStringExpr___init_amidstringexpr(val_t p0, val_t p1, int* init_table){
+  int itpos242 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMidStringExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos242]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6898;
-  fra.me.meth = LOCATE_parser_prod___AMidStringExpr___init_amidstringexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6905;
+  fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___init_amidstringexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6902 */
-  CALL_parser_prod___AMidStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6903 */
+  /* ./parser//parser_prod.nit:6909 */
+  CALL_parser___parser_prod___AMidStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6910 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6903);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6910);
   }
-  ATTR_parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6904 */
+  ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6911 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6904);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6911);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos242] = 1;
   return;
 }
-void parser_prod___AMidStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AMidStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6907;
-  fra.me.meth = LOCATE_parser_prod___AMidStringExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6914;
+  fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -36537,21 +36633,21 @@ void parser_prod___AMidStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6909 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AMidStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6916 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6909);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6916);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6910 */
+    /* ./parser//parser_prod.nit:6917 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -36560,71 +36656,71 @@ void parser_prod___AMidStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6911 */
+      /* ./parser//parser_prod.nit:6918 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6911);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6918);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6912 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TMidString, ID_TMidString)) /*cast TMidString*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6919 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMidString, ID_parser___parser_nodes___TMidString)) /*cast TMidString*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6912);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6919);
       }
-      /* ./parser//parser_prod.nit:6913 */
-      ATTR_parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6920 */
+      ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6915 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6915);
+      /* ./parser//parser_prod.nit:6922 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6922);
     }
-    /* ./parser//parser_prod.nit:6917 */
+    /* ./parser//parser_prod.nit:6924 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMidStringExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AMidStringExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6921;
-  fra.me.meth = LOCATE_parser_prod___AMidStringExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6928;
+  fra.me.meth = LOCATE_parser___parser_prod___AMidStringExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6923 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AMidStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6930 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6923);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6930);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AMidStringExpr____n_string(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEndStringExpr___empty_init(val_t p0, int* init_table){
-  int itpos243 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEndStringExpr].i;
+void parser___parser_prod___AEndStringExpr___empty_init(val_t p0, int* init_table){
+  int itpos243 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEndStringExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos243]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6927;
-  fra.me.meth = LOCATE_parser_prod___AEndStringExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6934;
+  fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -36633,50 +36729,50 @@ void parser_prod___AEndStringExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos243] = 1;
   return;
 }
-void parser_prod___AEndStringExpr___init_aendstringexpr(val_t p0, val_t p1, int* init_table){
-  int itpos244 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AEndStringExpr].i;
+void parser___parser_prod___AEndStringExpr___init_aendstringexpr(val_t p0, val_t p1, int* init_table){
+  int itpos244 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AEndStringExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos244]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6929;
-  fra.me.meth = LOCATE_parser_prod___AEndStringExpr___init_aendstringexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6936;
+  fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___init_aendstringexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6933 */
-  CALL_parser_prod___AEndStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:6934 */
+  /* ./parser//parser_prod.nit:6940 */
+  CALL_parser___parser_prod___AEndStringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:6941 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 6934);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 6941);
   }
-  ATTR_parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:6935 */
+  ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:6942 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6935);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6942);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos244] = 1;
   return;
 }
-void parser_prod___AEndStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AEndStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6938;
-  fra.me.meth = LOCATE_parser_prod___AEndStringExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6945;
+  fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -36686,21 +36782,21 @@ void parser_prod___AEndStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6940 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEndStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6947 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6940);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6947);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:6941 */
+    /* ./parser//parser_prod.nit:6948 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -36709,71 +36805,71 @@ void parser_prod___AEndStringExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:6942 */
+      /* ./parser//parser_prod.nit:6949 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6942);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6949);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:6943 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TEndString, ID_TEndString)) /*cast TEndString*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:6950 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TEndString, ID_parser___parser_nodes___TEndString)) /*cast TEndString*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6943);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6950);
       }
-      /* ./parser//parser_prod.nit:6944 */
-      ATTR_parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:6951 */
+      ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:6946 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 6946);
+      /* ./parser//parser_prod.nit:6953 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 6953);
     }
-    /* ./parser//parser_prod.nit:6948 */
+    /* ./parser//parser_prod.nit:6955 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AEndStringExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AEndStringExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6952;
-  fra.me.meth = LOCATE_parser_prod___AEndStringExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6959;
+  fra.me.meth = LOCATE_parser___parser_prod___AEndStringExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6954 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AEndStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6961 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser_prod, 6954);
+    nit_abort("Uninitialized attribute %s", "_n_string", LOCATE_parser___parser_prod, 6961);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AEndStringExpr____n_string(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASuperstringExpr___empty_init(val_t p0, int* init_table){
-  int itpos245 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperstringExpr].i;
+void parser___parser_prod___ASuperstringExpr___empty_init(val_t p0, int* init_table){
+  int itpos245 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperstringExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos245]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6958;
-  fra.me.meth = LOCATE_parser_prod___ASuperstringExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6965;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -36782,38 +36878,38 @@ void parser_prod___ASuperstringExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos245] = 1;
   return;
 }
-void parser_prod___ASuperstringExpr___init_asuperstringexpr(val_t p0, val_t p1, int* init_table){
-  int itpos246 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperstringExpr].i;
+void parser___parser_prod___ASuperstringExpr___init_asuperstringexpr(val_t p0, val_t p1, int* init_table){
+  int itpos246 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperstringExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   if (init_table[itpos246]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6960;
-  fra.me.meth = LOCATE_parser_prod___ASuperstringExpr___init_asuperstringexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6967;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6964 */
-  CALL_parser_prod___ASuperstringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___ASuperstringExpr___init_asuperstringexpr_1));
+  /* ./parser//parser_prod.nit:6971 */
+  CALL_parser___parser_prod___ASuperstringExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr_1));
   stack_frame_head = fra.me.prev;
   init_table[itpos246] = 1;
   return;
 }
-  void OC_parser_prod___ASuperstringExpr___init_asuperstringexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:6965 */
+    /* ./parser//parser_prod.nit:6972 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASuperstringExpr___init_asuperstringexpr;
+    fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___init_asuperstringexpr;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -36822,26 +36918,26 @@ void parser_prod___ASuperstringExpr___init_asuperstringexpr(val_t p0, val_t p1,
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6966 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:6973 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6966);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6973);
     }
-    /* ./parser//parser_prod.nit:6967 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperstringExpr____n_exprs(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:6974 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6967);
+      nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6974);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ASuperstringExpr____n_exprs(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:6968 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6975 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -36850,9 +36946,9 @@ void parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6972;
-  fra.me.meth = LOCATE_parser_prod___ASuperstringExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6979;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -36862,31 +36958,31 @@ void parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:6974 */
+  /* ./parser//parser_prod.nit:6981 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6974);
+    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6981);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:6974 */
+      /* ./parser//parser_prod.nit:6981 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:6975 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:6982 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6975);
+        nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6982);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -36895,12 +36991,12 @@ void parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:6976 */
+        /* ./parser//parser_prod.nit:6983 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -36909,53 +37005,53 @@ void parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:6977 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+          /* ./parser//parser_prod.nit:6984 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 6977);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 6984);
           }
-          /* ./parser//parser_prod.nit:6978 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6985 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6978);
+            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6985);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:6979 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:6986 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 6979);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 6986);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:6981 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:6988 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6981);
+            nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6988);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:6983 */
+        /* ./parser//parser_prod.nit:6990 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -36964,39 +37060,39 @@ void parser_prod___ASuperstringExpr___replace_child(val_t p0, val_t p1, val_t p2
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASuperstringExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASuperstringExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6988;
-  fra.me.meth = LOCATE_parser_prod___ASuperstringExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 6995;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:6990 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:6997 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser_prod, 6990);
+    nit_abort("Uninitialized attribute %s", "_n_exprs", LOCATE_parser___parser_prod, 6997);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ASuperstringExpr___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASuperstringExpr____n_exprs(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ASuperstringExpr___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ASuperstringExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ASuperstringExpr___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ASuperstringExpr___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ASuperstringExpr___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -37004,20 +37100,20 @@ void parser_prod___ASuperstringExpr___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:6991 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:6998 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AParExpr___empty_init(val_t p0, int* init_table){
-  int itpos247 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AParExpr].i;
+void parser___parser_prod___AParExpr___empty_init(val_t p0, int* init_table){
+  int itpos247 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos247]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6996;
-  fra.me.meth = LOCATE_parser_prod___AParExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7003;
+  fra.me.meth = LOCATE_parser___parser_prod___AParExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -37026,50 +37122,50 @@ void parser_prod___AParExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos247] = 1;
   return;
 }
-void parser_prod___AParExpr___init_aparexpr(val_t p0, val_t p1, int* init_table){
-  int itpos248 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AParExpr].i;
+void parser___parser_prod___AParExpr___init_aparexpr(val_t p0, val_t p1, int* init_table){
+  int itpos248 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AParExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos248]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 6998;
-  fra.me.meth = LOCATE_parser_prod___AParExpr___init_aparexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7005;
+  fra.me.meth = LOCATE_parser___parser_prod___AParExpr___init_aparexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7002 */
-  CALL_parser_prod___AParExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7003 */
+  /* ./parser//parser_prod.nit:7009 */
+  CALL_parser___parser_prod___AParExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7010 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7003);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7010);
   }
-  ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7004 */
+  ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7011 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7004);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7011);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos248] = 1;
   return;
 }
-void parser_prod___AParExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AParExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7007;
-  fra.me.meth = LOCATE_parser_prod___AParExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7014;
+  fra.me.meth = LOCATE_parser___parser_prod___AParExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -37079,21 +37175,21 @@ void parser_prod___AParExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7009 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7016 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7009);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7016);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7010 */
+    /* ./parser//parser_prod.nit:7017 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37102,71 +37198,71 @@ void parser_prod___AParExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7011 */
+      /* ./parser//parser_prod.nit:7018 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7011);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7018);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7012 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7019 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7012);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7019);
       }
-      /* ./parser//parser_prod.nit:7013 */
-      ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7020 */
+      ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7015 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7015);
+      /* ./parser//parser_prod.nit:7022 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7022);
     }
-    /* ./parser//parser_prod.nit:7017 */
+    /* ./parser//parser_prod.nit:7024 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AParExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AParExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7021;
-  fra.me.meth = LOCATE_parser_prod___AParExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7028;
+  fra.me.meth = LOCATE_parser___parser_prod___AParExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7023 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7030 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7023);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7030);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AProxyExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsCastExpr___empty_init(val_t p0, int* init_table){
-  int itpos249 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsCastExpr].i;
+void parser___parser_prod___AAsCastExpr___empty_init(val_t p0, int* init_table){
+  int itpos249 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsCastExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos249]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7027;
-  fra.me.meth = LOCATE_parser_prod___AAsCastExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7034;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -37175,16 +37271,16 @@ void parser_prod___AAsCastExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos249] = 1;
   return;
 }
-void parser_prod___AAsCastExpr___init_aascastexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos250 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsCastExpr].i;
+void parser___parser_prod___AAsCastExpr___init_aascastexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos250 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsCastExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos250]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7029;
-  fra.me.meth = LOCATE_parser_prod___AAsCastExpr___init_aascastexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7036;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___init_aascastexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -37195,60 +37291,60 @@ void parser_prod___AAsCastExpr___init_aascastexpr(val_t p0, val_t p1, val_t p2,
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:7035 */
-  CALL_parser_prod___AAsCastExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7036 */
+  /* ./parser//parser_prod.nit:7042 */
+  CALL_parser___parser_prod___AAsCastExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7043 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7036);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7043);
   }
-  ATTR_parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7037 */
+  ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7044 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7037);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7044);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7038 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7045 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7038);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7045);
   }
-  ATTR_parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7039 */
+  ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7046 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7039);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7046);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7040 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7047 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7040);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7047);
   }
-  ATTR_parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:7041 */
+  ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7048 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7041);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7048);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos250] = 1;
   return;
 }
-void parser_prod___AAsCastExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAsCastExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7044;
-  fra.me.meth = LOCATE_parser_prod___AAsCastExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7051;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -37258,21 +37354,21 @@ void parser_prod___AAsCastExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7046 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7053 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7046);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7053);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7047 */
+    /* ./parser//parser_prod.nit:7054 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37281,48 +37377,48 @@ void parser_prod___AAsCastExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7048 */
+      /* ./parser//parser_prod.nit:7055 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7048);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7055);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7049 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7056 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7049);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7056);
       }
-      /* ./parser//parser_prod.nit:7050 */
-      ATTR_parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7057 */
+      ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7052 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7052);
+      /* ./parser//parser_prod.nit:7059 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7059);
     }
-    /* ./parser//parser_prod.nit:7054 */
+    /* ./parser//parser_prod.nit:7061 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7056 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7063 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7056);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7063);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7057 */
+    /* ./parser//parser_prod.nit:7064 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37331,48 +37427,48 @@ void parser_prod___AAsCastExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7058 */
+      /* ./parser//parser_prod.nit:7065 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7058);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7065);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7059 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7066 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7059);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7066);
       }
-      /* ./parser//parser_prod.nit:7060 */
-      ATTR_parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7067 */
+      ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7062 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7062);
+      /* ./parser//parser_prod.nit:7069 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7069);
     }
-    /* ./parser//parser_prod.nit:7064 */
+    /* ./parser//parser_prod.nit:7071 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7066 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsCastExpr____n_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7073 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 7066);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7073);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7067 */
+    /* ./parser//parser_prod.nit:7074 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37381,45 +37477,45 @@ void parser_prod___AAsCastExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7068 */
+      /* ./parser//parser_prod.nit:7075 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7068);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7075);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7069 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7076 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7069);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7076);
       }
-      /* ./parser//parser_prod.nit:7070 */
-      ATTR_parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7077 */
+      ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7072 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7072);
+      /* ./parser//parser_prod.nit:7079 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7079);
     }
-    /* ./parser//parser_prod.nit:7074 */
+    /* ./parser//parser_prod.nit:7081 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsCastExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAsCastExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7078;
-  fra.me.meth = LOCATE_parser_prod___AAsCastExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7085;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsCastExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -37427,42 +37523,42 @@ void parser_prod___AAsCastExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7080 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7087 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7080);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7087);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7081 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsCastExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7088 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7081);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7088);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7082 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsCastExpr____n_type(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsCastExpr____n_kwas(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7089 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 7082);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7089);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAsCastExpr____n_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsNotnullExpr___empty_init(val_t p0, int* init_table){
-  int itpos251 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsNotnullExpr].i;
+void parser___parser_prod___AAsNotnullExpr___empty_init(val_t p0, int* init_table){
+  int itpos251 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotnullExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos251]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7086;
-  fra.me.meth = LOCATE_parser_prod___AAsNotnullExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7093;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -37471,16 +37567,16 @@ void parser_prod___AAsNotnullExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos251] = 1;
   return;
 }
-void parser_prod___AAsNotnullExpr___init_aasnotnullexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos252 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsNotnullExpr].i;
+void parser___parser_prod___AAsNotnullExpr___init_aasnotnullexpr(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos252 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotnullExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos252]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7088;
-  fra.me.meth = LOCATE_parser_prod___AAsNotnullExpr___init_aasnotnullexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7095;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___init_aasnotnullexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -37493,73 +37589,73 @@ void parser_prod___AAsNotnullExpr___init_aasnotnullexpr(val_t p0, val_t p1, val_
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:7095 */
-  CALL_parser_prod___AAsNotnullExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7096 */
+  /* ./parser//parser_prod.nit:7102 */
+  CALL_parser___parser_prod___AAsNotnullExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7103 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7096);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7103);
   }
-  ATTR_parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7097 */
+  ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7104 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7097);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7104);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7098 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7105 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7098);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7105);
   }
-  ATTR_parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7099 */
+  ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7106 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7099);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7106);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7100 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7107 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7100);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7107);
   }
-  ATTR_parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:7101 */
+  ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7108 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7101);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7108);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7102 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7109 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7102);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7109);
   }
-  ATTR_parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:7103 */
+  ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:7110 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7103);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7110);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos252] = 1;
   return;
 }
-void parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7106;
-  fra.me.meth = LOCATE_parser_prod___AAsNotnullExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7113;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -37569,21 +37665,21 @@ void parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7108 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7115 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7108);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7115);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7109 */
+    /* ./parser//parser_prod.nit:7116 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37592,48 +37688,48 @@ void parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7110 */
+      /* ./parser//parser_prod.nit:7117 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7110);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7117);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7111 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7118 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7111);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7118);
       }
-      /* ./parser//parser_prod.nit:7112 */
-      ATTR_parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7119 */
+      ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7114 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7114);
+      /* ./parser//parser_prod.nit:7121 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7121);
     }
-    /* ./parser//parser_prod.nit:7116 */
+    /* ./parser//parser_prod.nit:7123 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7118 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7125 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7118);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7125);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7119 */
+    /* ./parser//parser_prod.nit:7126 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37642,48 +37738,48 @@ void parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7120 */
+      /* ./parser//parser_prod.nit:7127 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7120);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7127);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7121 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7128 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7121);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7128);
       }
-      /* ./parser//parser_prod.nit:7122 */
-      ATTR_parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7129 */
+      ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7124 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7124);
+      /* ./parser//parser_prod.nit:7131 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7131);
     }
-    /* ./parser//parser_prod.nit:7126 */
+    /* ./parser//parser_prod.nit:7133 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7128 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7135 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser_prod, 7128);
+    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7135);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7129 */
+    /* ./parser//parser_prod.nit:7136 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37692,48 +37788,48 @@ void parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7130 */
+      /* ./parser//parser_prod.nit:7137 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7130);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7137);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7131 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7138 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnot, ID_parser___parser_nodes___TKwnot)) /*cast TKwnot*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7131);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7138);
       }
-      /* ./parser//parser_prod.nit:7132 */
-      ATTR_parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7139 */
+      ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7134 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7134);
+      /* ./parser//parser_prod.nit:7141 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7141);
     }
-    /* ./parser//parser_prod.nit:7136 */
+    /* ./parser//parser_prod.nit:7143 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7138 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7145 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser_prod, 7138);
+    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 7145);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7139 */
+    /* ./parser//parser_prod.nit:7146 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37742,45 +37838,45 @@ void parser_prod___AAsNotnullExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7140 */
+      /* ./parser//parser_prod.nit:7147 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7140);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7147);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7141 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnull, ID_TKwnull)) /*cast TKwnull*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7148 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnull, ID_parser___parser_nodes___TKwnull)) /*cast TKwnull*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7141);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7148);
       }
-      /* ./parser//parser_prod.nit:7142 */
-      ATTR_parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7149 */
+      ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7144 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7144);
+      /* ./parser//parser_prod.nit:7151 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7151);
     }
-    /* ./parser//parser_prod.nit:7146 */
+    /* ./parser//parser_prod.nit:7153 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsNotnullExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAsNotnullExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7150;
-  fra.me.meth = LOCATE_parser_prod___AAsNotnullExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7157;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotnullExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -37788,50 +37884,50 @@ void parser_prod___AAsNotnullExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7152 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7159 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7152);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7159);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7153 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7160 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7153);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7160);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7154 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwas(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7161 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser_prod, 7154);
+    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7161);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7155 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnot(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7162 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser_prod, 7155);
+    nit_abort("Uninitialized attribute %s", "_n_kwnull", LOCATE_parser___parser_prod, 7162);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAsNotnullExpr____n_kwnull(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIssetAttrExpr___empty_init(val_t p0, int* init_table){
-  int itpos253 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIssetAttrExpr].i;
+void parser___parser_prod___AIssetAttrExpr___empty_init(val_t p0, int* init_table){
+  int itpos253 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIssetAttrExpr].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos253]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7159;
-  fra.me.meth = LOCATE_parser_prod___AIssetAttrExpr___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7166;
+  fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -37840,16 +37936,16 @@ void parser_prod___AIssetAttrExpr___empty_init(val_t p0, int* init_table){
   init_table[itpos253] = 1;
   return;
 }
-void parser_prod___AIssetAttrExpr___init_aissetattrexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos254 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AIssetAttrExpr].i;
+void parser___parser_prod___AIssetAttrExpr___init_aissetattrexpr(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos254 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AIssetAttrExpr].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos254]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7161;
-  fra.me.meth = LOCATE_parser_prod___AIssetAttrExpr___init_aissetattrexpr;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7168;
+  fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___init_aissetattrexpr;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -37860,60 +37956,60 @@ void parser_prod___AIssetAttrExpr___init_aissetattrexpr(val_t p0, val_t p1, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:7167 */
-  CALL_parser_prod___AIssetAttrExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7168 */
+  /* ./parser//parser_prod.nit:7174 */
+  CALL_parser___parser_prod___AIssetAttrExpr___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7175 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7168);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7175);
   }
-  ATTR_parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7169 */
+  ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7176 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7169);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7176);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7170 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7177 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7170);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7177);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7171 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7178 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7171);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7178);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7172 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7179 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7172);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7179);
   }
-  ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:7173 */
+  ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7180 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7173);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7180);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos254] = 1;
   return;
 }
-void parser_prod___AIssetAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AIssetAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7176;
-  fra.me.meth = LOCATE_parser_prod___AIssetAttrExpr___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7183;
+  fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -37923,21 +38019,21 @@ void parser_prod___AIssetAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7178 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7185 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwisset", LOCATE_parser_prod, 7178);
+    nit_abort("Uninitialized attribute %s", "_n_kwisset", LOCATE_parser___parser_prod, 7185);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7179 */
+    /* ./parser//parser_prod.nit:7186 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37946,48 +38042,48 @@ void parser_prod___AIssetAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7180 */
+      /* ./parser//parser_prod.nit:7187 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7180);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7187);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7181 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwisset, ID_TKwisset)) /*cast TKwisset*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7188 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwisset, ID_parser___parser_nodes___TKwisset)) /*cast TKwisset*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7181);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7188);
       }
-      /* ./parser//parser_prod.nit:7182 */
-      ATTR_parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7189 */
+      ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7184 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7184);
+      /* ./parser//parser_prod.nit:7191 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7191);
     }
-    /* ./parser//parser_prod.nit:7186 */
+    /* ./parser//parser_prod.nit:7193 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7188 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7195 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7188);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7195);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7189 */
+    /* ./parser//parser_prod.nit:7196 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -37996,48 +38092,48 @@ void parser_prod___AIssetAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7190 */
+      /* ./parser//parser_prod.nit:7197 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7190);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7197);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7191 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7198 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7191);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7198);
       }
-      /* ./parser//parser_prod.nit:7192 */
-      ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7199 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7194 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7194);
+      /* ./parser//parser_prod.nit:7201 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7201);
     }
-    /* ./parser//parser_prod.nit:7196 */
+    /* ./parser//parser_prod.nit:7203 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7198 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7205 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7198);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7205);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7199 */
+    /* ./parser//parser_prod.nit:7206 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38046,45 +38142,45 @@ void parser_prod___AIssetAttrExpr___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7200 */
+      /* ./parser//parser_prod.nit:7207 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7200);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7207);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7201 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TAttrid, ID_TAttrid)) /*cast TAttrid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7208 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TAttrid, ID_parser___parser_nodes___TAttrid)) /*cast TAttrid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7201);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7208);
       }
-      /* ./parser//parser_prod.nit:7202 */
-      ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7209 */
+      ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7204 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7204);
+      /* ./parser//parser_prod.nit:7211 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7211);
     }
-    /* ./parser//parser_prod.nit:7206 */
+    /* ./parser//parser_prod.nit:7213 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AIssetAttrExpr___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AIssetAttrExpr___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7210;
-  fra.me.meth = LOCATE_parser_prod___AIssetAttrExpr___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7217;
+  fra.me.meth = LOCATE_parser___parser_prod___AIssetAttrExpr___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -38092,42 +38188,42 @@ void parser_prod___AIssetAttrExpr___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7212 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7219 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwisset", LOCATE_parser_prod, 7212);
+    nit_abort("Uninitialized attribute %s", "_n_kwisset", LOCATE_parser___parser_prod, 7219);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7213 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AIssetAttrExpr____n_kwisset(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7220 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser_prod, 7213);
+    nit_abort("Uninitialized attribute %s", "_n_expr", LOCATE_parser___parser_prod, 7220);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7214 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAttrFormExpr____n_expr(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7221 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7214);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7221);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAttrFormExpr____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APlusAssignOp___empty_init(val_t p0, int* init_table){
-  int itpos255 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APlusAssignOp].i;
+void parser___parser_prod___APlusAssignOp___empty_init(val_t p0, int* init_table){
+  int itpos255 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusAssignOp].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos255]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7218;
-  fra.me.meth = LOCATE_parser_prod___APlusAssignOp___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7225;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -38136,50 +38232,50 @@ void parser_prod___APlusAssignOp___empty_init(val_t p0, int* init_table){
   init_table[itpos255] = 1;
   return;
 }
-void parser_prod___APlusAssignOp___init_aplusassignop(val_t p0, val_t p1, int* init_table){
-  int itpos256 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_APlusAssignOp].i;
+void parser___parser_prod___APlusAssignOp___init_aplusassignop(val_t p0, val_t p1, int* init_table){
+  int itpos256 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___APlusAssignOp].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos256]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7220;
-  fra.me.meth = LOCATE_parser_prod___APlusAssignOp___init_aplusassignop;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7227;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___init_aplusassignop;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7224 */
-  CALL_parser_prod___APlusAssignOp___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7225 */
+  /* ./parser//parser_prod.nit:7231 */
+  CALL_parser___parser_prod___APlusAssignOp___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7232 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7225);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7232);
   }
-  ATTR_parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7226 */
+  ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7233 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7226);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7233);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos256] = 1;
   return;
 }
-void parser_prod___APlusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___APlusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7229;
-  fra.me.meth = LOCATE_parser_prod___APlusAssignOp___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7236;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -38189,21 +38285,21 @@ void parser_prod___APlusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7231 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7238 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_pluseq", LOCATE_parser_prod, 7231);
+    nit_abort("Uninitialized attribute %s", "_n_pluseq", LOCATE_parser___parser_prod, 7238);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7232 */
+    /* ./parser//parser_prod.nit:7239 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38212,71 +38308,71 @@ void parser_prod___APlusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7233 */
+      /* ./parser//parser_prod.nit:7240 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7233);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7240);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7234 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TPluseq, ID_TPluseq)) /*cast TPluseq*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7241 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TPluseq, ID_parser___parser_nodes___TPluseq)) /*cast TPluseq*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7234);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7241);
       }
-      /* ./parser//parser_prod.nit:7235 */
-      ATTR_parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7242 */
+      ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7237 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7237);
+      /* ./parser//parser_prod.nit:7244 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7244);
     }
-    /* ./parser//parser_prod.nit:7239 */
+    /* ./parser//parser_prod.nit:7246 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___APlusAssignOp___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___APlusAssignOp___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7243;
-  fra.me.meth = LOCATE_parser_prod___APlusAssignOp___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7250;
+  fra.me.meth = LOCATE_parser___parser_prod___APlusAssignOp___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7245 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7252 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_pluseq", LOCATE_parser_prod, 7245);
+    nit_abort("Uninitialized attribute %s", "_n_pluseq", LOCATE_parser___parser_prod, 7252);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___APlusAssignOp____n_pluseq(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMinusAssignOp___empty_init(val_t p0, int* init_table){
-  int itpos257 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMinusAssignOp].i;
+void parser___parser_prod___AMinusAssignOp___empty_init(val_t p0, int* init_table){
+  int itpos257 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusAssignOp].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos257]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7249;
-  fra.me.meth = LOCATE_parser_prod___AMinusAssignOp___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7256;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -38285,50 +38381,50 @@ void parser_prod___AMinusAssignOp___empty_init(val_t p0, int* init_table){
   init_table[itpos257] = 1;
   return;
 }
-void parser_prod___AMinusAssignOp___init_aminusassignop(val_t p0, val_t p1, int* init_table){
-  int itpos258 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AMinusAssignOp].i;
+void parser___parser_prod___AMinusAssignOp___init_aminusassignop(val_t p0, val_t p1, int* init_table){
+  int itpos258 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AMinusAssignOp].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos258]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7251;
-  fra.me.meth = LOCATE_parser_prod___AMinusAssignOp___init_aminusassignop;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7258;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___init_aminusassignop;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7255 */
-  CALL_parser_prod___AMinusAssignOp___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7256 */
+  /* ./parser//parser_prod.nit:7262 */
+  CALL_parser___parser_prod___AMinusAssignOp___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7263 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7256);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7263);
   }
-  ATTR_parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7257 */
+  ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7264 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7257);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7264);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos258] = 1;
   return;
 }
-void parser_prod___AMinusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AMinusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7260;
-  fra.me.meth = LOCATE_parser_prod___AMinusAssignOp___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7267;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -38338,21 +38434,21 @@ void parser_prod___AMinusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7262 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7269 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_minuseq", LOCATE_parser_prod, 7262);
+    nit_abort("Uninitialized attribute %s", "_n_minuseq", LOCATE_parser___parser_prod, 7269);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7263 */
+    /* ./parser//parser_prod.nit:7270 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38361,71 +38457,71 @@ void parser_prod___AMinusAssignOp___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7264 */
+      /* ./parser//parser_prod.nit:7271 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7264);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7271);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7265 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TMinuseq, ID_TMinuseq)) /*cast TMinuseq*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7272 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TMinuseq, ID_parser___parser_nodes___TMinuseq)) /*cast TMinuseq*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7265);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7272);
       }
-      /* ./parser//parser_prod.nit:7266 */
-      ATTR_parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7273 */
+      ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7268 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7268);
+      /* ./parser//parser_prod.nit:7275 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7275);
     }
-    /* ./parser//parser_prod.nit:7270 */
+    /* ./parser//parser_prod.nit:7277 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AMinusAssignOp___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AMinusAssignOp___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7274;
-  fra.me.meth = LOCATE_parser_prod___AMinusAssignOp___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7281;
+  fra.me.meth = LOCATE_parser___parser_prod___AMinusAssignOp___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7276 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7283 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_minuseq", LOCATE_parser_prod, 7276);
+    nit_abort("Uninitialized attribute %s", "_n_minuseq", LOCATE_parser___parser_prod, 7283);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AMinusAssignOp____n_minuseq(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AClosureDef___empty_init(val_t p0, int* init_table){
-  int itpos259 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AClosureDef].i;
+void parser___parser_prod___AClosureDef___empty_init(val_t p0, int* init_table){
+  int itpos259 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDef].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos259]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7280;
-  fra.me.meth = LOCATE_parser_prod___AClosureDef___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7287;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -38434,17 +38530,17 @@ void parser_prod___AClosureDef___empty_init(val_t p0, int* init_table){
   init_table[itpos259] = 1;
   return;
 }
-void parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
-  int itpos260 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AClosureDef].i;
+void parser___parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, val_t p5, val_t p6, int* init_table){
+  int itpos260 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AClosureDef].i;
   struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   if (init_table[itpos260]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7282;
-  fra.me.meth = LOCATE_parser_prod___AClosureDef___init_aclosuredef;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7289;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___init_aclosuredef;
   fra.me.has_broke = 0;
   fra.me.REG_size = 7;
   fra.me.REG[0] = NIT_NULL;
@@ -38461,38 +38557,38 @@ void parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2,
   fra.me.REG[4] = p4;
   fra.me.REG[5] = p5;
   fra.me.REG[6] = p6;
-  /* ./parser//parser_prod.nit:7291 */
-  CALL_parser_prod___AClosureDef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7292 */
+  /* ./parser//parser_prod.nit:7298 */
+  CALL_parser___parser_prod___AClosureDef___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7299 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7292);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7299);
   }
-  ATTR_parser_nodes___AClosureDef____n_bang(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7293 */
+  ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7300 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7293);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7300);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7294 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7301 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7294);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7301);
   }
-  ATTR_parser_nodes___AClosureDef____n_id(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7295 */
+  ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7302 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7295);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7302);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser_prod___AClosureDef___init_aclosuredef_1));
-  /* ./parser//parser_prod.nit:7301 */
-  ATTR_parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:7302 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[3])(fra.me.REG[3], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureDef___init_aclosuredef_1));
+  /* ./parser//parser_prod.nit:7308 */
+  ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:7309 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -38501,22 +38597,22 @@ void parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7303 */
+    /* ./parser//parser_prod.nit:7310 */
     REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7303);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7310);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   }
-  /* ./parser//parser_prod.nit:7305 */
-  ATTR_parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = fra.me.REG[5];
-  /* ./parser//parser_prod.nit:7306 */
+  /* ./parser//parser_prod.nit:7312 */
+  ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = fra.me.REG[5];
+  /* ./parser//parser_prod.nit:7313 */
   REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -38525,22 +38621,22 @@ void parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7307 */
+    /* ./parser//parser_prod.nit:7314 */
     REGB0 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7307);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7314);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
   }
-  /* ./parser//parser_prod.nit:7309 */
-  ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[6];
-  /* ./parser//parser_prod.nit:7310 */
+  /* ./parser//parser_prod.nit:7316 */
+  ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[6];
+  /* ./parser//parser_prod.nit:7317 */
   REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -38549,33 +38645,33 @@ void parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2,
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7311 */
+    /* ./parser//parser_prod.nit:7318 */
     REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7311);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7318);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   init_table[itpos260] = 1;
   return;
 }
-  void OC_parser_prod___AClosureDef___init_aclosuredef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AClosureDef___init_aclosuredef_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:7296 */
+    /* ./parser//parser_prod.nit:7303 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AClosureDef___init_aclosuredef;
+    fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___init_aclosuredef;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -38584,26 +38680,26 @@ void parser_prod___AClosureDef___init_aclosuredef(val_t p0, val_t p1, val_t p2,
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7297 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_TId, ID_TId)) /*cast TId*/;
+    /* ./parser//parser_prod.nit:7304 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7297);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7304);
     }
-    /* ./parser//parser_prod.nit:7298 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_ids(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:7305 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser_prod, 7298);
+      nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7305);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AClosureDef____n_ids(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:7299 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AClosureDef____n_ids(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:7306 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -38612,9 +38708,9 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7315;
-  fra.me.meth = LOCATE_parser_prod___AClosureDef___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7322;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -38624,21 +38720,21 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7317 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_bang(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7324 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser_prod, 7317);
+    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 7324);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_bang(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7318 */
+    /* ./parser//parser_prod.nit:7325 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38647,48 +38743,48 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7319 */
+      /* ./parser//parser_prod.nit:7326 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7319);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7326);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7320 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TBang, ID_TBang)) /*cast TBang*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7327 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TBang, ID_parser___parser_nodes___TBang)) /*cast TBang*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7320);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7327);
       }
-      /* ./parser//parser_prod.nit:7321 */
-      ATTR_parser_nodes___AClosureDef____n_bang(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7328 */
+      ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7323 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7323);
+      /* ./parser//parser_prod.nit:7330 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7330);
     }
-    /* ./parser//parser_prod.nit:7325 */
+    /* ./parser//parser_prod.nit:7332 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7327 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7334 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7327);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7334);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7328 */
+    /* ./parser//parser_prod.nit:7335 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38697,58 +38793,58 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7329 */
+      /* ./parser//parser_prod.nit:7336 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7329);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7336);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7330 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AClosureId, ID_AClosureId)) /*cast AClosureId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7337 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AClosureId, ID_parser___parser_nodes___AClosureId)) /*cast AClosureId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7330);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7337);
       }
-      /* ./parser//parser_prod.nit:7331 */
-      ATTR_parser_nodes___AClosureDef____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7338 */
+      ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7333 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7333);
+      /* ./parser//parser_prod.nit:7340 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7340);
     }
-    /* ./parser//parser_prod.nit:7335 */
+    /* ./parser//parser_prod.nit:7342 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7337 */
+  /* ./parser//parser_prod.nit:7344 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser_prod, 7337);
+    nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7344);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:7337 */
+      /* ./parser//parser_prod.nit:7344 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:7338 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:7345 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser_prod, 7338);
+        nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7345);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -38757,12 +38853,12 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:7339 */
+        /* ./parser//parser_prod.nit:7346 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -38771,59 +38867,59 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:7340 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+          /* ./parser//parser_prod.nit:7347 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7340);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7347);
           }
-          /* ./parser//parser_prod.nit:7341 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:7348 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser_prod, 7341);
+            nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7348);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:7342 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:7349 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7342);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7349);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:7344 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:7351 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser_prod, 7344);
+            nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7351);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:7346 */
+        /* ./parser//parser_prod.nit:7353 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:7349 */
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7356 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -38832,12 +38928,12 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7350 */
+    /* ./parser//parser_prod.nit:7357 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38846,35 +38942,35 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7351 */
+      /* ./parser//parser_prod.nit:7358 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7351);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7358);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7352 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7359 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7352);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7359);
       }
-      /* ./parser//parser_prod.nit:7353 */
-      ATTR_parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7360 */
+      ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7355 */
-      ATTR_parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:7362 */
+      ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:7357 */
+    /* ./parser//parser_prod.nit:7364 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7359 */
-  fra.me.REG[3] = ATTR_parser_nodes___AClosureDef____n_expr(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7366 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -38883,12 +38979,12 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7360 */
+    /* ./parser//parser_prod.nit:7367 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38897,35 +38993,35 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7361 */
+      /* ./parser//parser_prod.nit:7368 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7361);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7368);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7362 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7369 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7362);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7369);
       }
-      /* ./parser//parser_prod.nit:7363 */
-      ATTR_parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7370 */
+      ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7365 */
-      ATTR_parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:7372 */
+      ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:7367 */
+    /* ./parser//parser_prod.nit:7374 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7369 */
-  fra.me.REG[3] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7376 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -38934,12 +39030,12 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7370 */
+    /* ./parser//parser_prod.nit:7377 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -38948,46 +39044,46 @@ void parser_prod___AClosureDef___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7371 */
+      /* ./parser//parser_prod.nit:7378 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7371);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7378);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7372 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7379 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7372);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7379);
       }
-      /* ./parser//parser_prod.nit:7373 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7380 */
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7375 */
-      ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:7382 */
+      ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:7377 */
+    /* ./parser//parser_prod.nit:7384 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7381;
-  fra.me.meth = LOCATE_parser_prod___AClosureDef___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7388;
+  fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -38995,32 +39091,32 @@ void parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7383 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_bang(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7390 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser_prod, 7383);
+    nit_abort("Uninitialized attribute %s", "_n_bang", LOCATE_parser___parser_prod, 7390);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDef____n_bang(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7384 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_id(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDef____n_bang(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7391 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7384);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7391);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDef____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7385 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDef____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7392 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser_prod, 7385);
+    nit_abort("Uninitialized attribute %s", "_n_ids", LOCATE_parser___parser_prod, 7392);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AClosureDef___visit_all_1));
-  /* ./parser//parser_prod.nit:7388 */
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDef____n_ids(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AClosureDef___visit_all_1));
+  /* ./parser//parser_prod.nit:7395 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -39029,23 +39125,23 @@ void parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7389 */
-    fra.me.REG[2] = ATTR_parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwdo, ID_TKwdo)) /*cast TKwdo*/;
+    /* ./parser//parser_prod.nit:7396 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDef____n_kwdo(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwdo, ID_parser___parser_nodes___TKwdo)) /*cast TKwdo*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7389);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7396);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:7391 */
-  fra.me.REG[2] = ATTR_parser_nodes___AClosureDef____n_expr(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7398 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -39054,23 +39150,23 @@ void parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7392 */
-    fra.me.REG[2] = ATTR_parser_nodes___AClosureDef____n_expr(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExpr, ID_AExpr)) /*cast AExpr*/;
+    /* ./parser//parser_prod.nit:7399 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AClosureDef____n_expr(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExpr, ID_parser___parser_nodes___AExpr)) /*cast AExpr*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7392);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7399);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:7394 */
-  fra.me.REG[2] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7401 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -39079,32 +39175,32 @@ void parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7395 */
-    fra.me.REG[0] = ATTR_parser_nodes___ALabelable____n_label(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_ALabel, ID_ALabel)) /*cast ALabel*/;
+    /* ./parser//parser_prod.nit:7402 */
+    fra.me.REG[0] = ATTR_parser___parser_nodes___ALabelable____n_label(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___ALabel, ID_parser___parser_nodes___ALabel)) /*cast ALabel*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7395);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7402);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AClosureDef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AClosureDef___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AClosureDef___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AClosureDef___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -39112,20 +39208,20 @@ void parser_prod___AClosureDef___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7386 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:7393 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ASimpleClosureId___empty_init(val_t p0, int* init_table){
-  int itpos261 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASimpleClosureId].i;
+void parser___parser_prod___ASimpleClosureId___empty_init(val_t p0, int* init_table){
+  int itpos261 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASimpleClosureId].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos261]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7400;
-  fra.me.meth = LOCATE_parser_prod___ASimpleClosureId___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7407;
+  fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -39134,50 +39230,50 @@ void parser_prod___ASimpleClosureId___empty_init(val_t p0, int* init_table){
   init_table[itpos261] = 1;
   return;
 }
-void parser_prod___ASimpleClosureId___init_asimpleclosureid(val_t p0, val_t p1, int* init_table){
-  int itpos262 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASimpleClosureId].i;
+void parser___parser_prod___ASimpleClosureId___init_asimpleclosureid(val_t p0, val_t p1, int* init_table){
+  int itpos262 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASimpleClosureId].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos262]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7402;
-  fra.me.meth = LOCATE_parser_prod___ASimpleClosureId___init_asimpleclosureid;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7409;
+  fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___init_asimpleclosureid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7406 */
-  CALL_parser_prod___ASimpleClosureId___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7407 */
+  /* ./parser//parser_prod.nit:7413 */
+  CALL_parser___parser_prod___ASimpleClosureId___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7414 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7407);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7414);
   }
-  ATTR_parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7408 */
+  ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7415 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7408);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7415);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos262] = 1;
   return;
 }
-void parser_prod___ASimpleClosureId___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASimpleClosureId___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7411;
-  fra.me.meth = LOCATE_parser_prod___ASimpleClosureId___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7418;
+  fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -39187,21 +39283,21 @@ void parser_prod___ASimpleClosureId___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7413 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7420 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7413);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7420);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7414 */
+    /* ./parser//parser_prod.nit:7421 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -39210,71 +39306,71 @@ void parser_prod___ASimpleClosureId___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7415 */
+      /* ./parser//parser_prod.nit:7422 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7415);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7422);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7416 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7423 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7416);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7423);
       }
-      /* ./parser//parser_prod.nit:7417 */
-      ATTR_parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7424 */
+      ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7419 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7419);
+      /* ./parser//parser_prod.nit:7426 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7426);
     }
-    /* ./parser//parser_prod.nit:7421 */
+    /* ./parser//parser_prod.nit:7428 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASimpleClosureId___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASimpleClosureId___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7425;
-  fra.me.meth = LOCATE_parser_prod___ASimpleClosureId___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7432;
+  fra.me.meth = LOCATE_parser___parser_prod___ASimpleClosureId___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7427 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7434 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7427);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7434);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASimpleClosureId____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABreakClosureId___empty_init(val_t p0, int* init_table){
-  int itpos263 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABreakClosureId].i;
+void parser___parser_prod___ABreakClosureId___empty_init(val_t p0, int* init_table){
+  int itpos263 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakClosureId].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos263]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7431;
-  fra.me.meth = LOCATE_parser_prod___ABreakClosureId___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7438;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -39283,50 +39379,50 @@ void parser_prod___ABreakClosureId___empty_init(val_t p0, int* init_table){
   init_table[itpos263] = 1;
   return;
 }
-void parser_prod___ABreakClosureId___init_abreakclosureid(val_t p0, val_t p1, int* init_table){
-  int itpos264 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ABreakClosureId].i;
+void parser___parser_prod___ABreakClosureId___init_abreakclosureid(val_t p0, val_t p1, int* init_table){
+  int itpos264 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ABreakClosureId].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   if (init_table[itpos264]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7433;
-  fra.me.meth = LOCATE_parser_prod___ABreakClosureId___init_abreakclosureid;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7440;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___init_abreakclosureid;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7437 */
-  CALL_parser_prod___ABreakClosureId___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7438 */
+  /* ./parser//parser_prod.nit:7444 */
+  CALL_parser___parser_prod___ABreakClosureId___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7445 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7438);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7445);
   }
-  ATTR_parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7439 */
+  ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7446 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7439);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7446);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   init_table[itpos264] = 1;
   return;
 }
-void parser_prod___ABreakClosureId___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ABreakClosureId___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7442;
-  fra.me.meth = LOCATE_parser_prod___ABreakClosureId___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7449;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -39336,21 +39432,21 @@ void parser_prod___ABreakClosureId___replace_child(val_t p0, val_t p1, val_t p2)
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7444 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7451 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser_prod, 7444);
+    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 7451);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7445 */
+    /* ./parser//parser_prod.nit:7452 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -39359,71 +39455,71 @@ void parser_prod___ABreakClosureId___replace_child(val_t p0, val_t p1, val_t p2)
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7446 */
+      /* ./parser//parser_prod.nit:7453 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7446);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7453);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7447 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwbreak, ID_TKwbreak)) /*cast TKwbreak*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7454 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwbreak, ID_parser___parser_nodes___TKwbreak)) /*cast TKwbreak*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7447);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7454);
       }
-      /* ./parser//parser_prod.nit:7448 */
-      ATTR_parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7455 */
+      ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7450 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7450);
+      /* ./parser//parser_prod.nit:7457 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7457);
     }
-    /* ./parser//parser_prod.nit:7452 */
+    /* ./parser//parser_prod.nit:7459 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ABreakClosureId___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ABreakClosureId___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7456;
-  fra.me.meth = LOCATE_parser_prod___ABreakClosureId___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7463;
+  fra.me.meth = LOCATE_parser___parser_prod___ABreakClosureId___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7458 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7465 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser_prod, 7458);
+    nit_abort("Uninitialized attribute %s", "_n_kwbreak", LOCATE_parser___parser_prod, 7465);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ABreakClosureId____n_kwbreak(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternCalls___empty_init(val_t p0, int* init_table){
-  int itpos265 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternCalls].i;
+void parser___parser_prod___AModuleName___empty_init(val_t p0, int* init_table){
+  int itpos265 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuleName].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
   if (init_table[itpos265]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7462;
-  fra.me.meth = LOCATE_parser_prod___AExternCalls___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7469;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuleName___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
@@ -39432,16 +39528,439 @@ void parser_prod___AExternCalls___empty_init(val_t p0, int* init_table){
   init_table[itpos265] = 1;
   return;
 }
-void parser_prod___AExternCalls___init_aexterncalls(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos266 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternCalls].i;
-  struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
+void parser___parser_prod___AModuleName___init_amodulename(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos266 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AModuleName].i;
+  struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
+  val_t REGB1;
   val_t tmp;
   if (init_table[itpos266]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7464;
-  fra.me.meth = LOCATE_parser_prod___AExternCalls___init_aexterncalls;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7471;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuleName___init_amodulename;
+  fra.me.has_broke = 0;
+  fra.me.REG_size = 4;
+  fra.me.REG[0] = NIT_NULL;
+  fra.me.REG[1] = NIT_NULL;
+  fra.me.REG[2] = NIT_NULL;
+  fra.me.REG[3] = NIT_NULL;
+  fra.me.REG[0] = p0;
+  fra.me.REG[1] = p1;
+  fra.me.REG[2] = p2;
+  fra.me.REG[3] = p3;
+  /* ./parser//parser_prod.nit:7477 */
+  CALL_parser___parser_prod___AModuleName___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7478 */
+  ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7479 */
+  REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    REGB1 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
+    if (UNTAG_Bool(REGB1)) {
+      REGB1 = TAG_Bool(false);
+      REGB0 = REGB1;
+    } else {
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+      REGB0 = REGB1;
+    }
+  }
+  REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+  if (UNTAG_Bool(REGB0)) {
+    /* ./parser//parser_prod.nit:7480 */
+    REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
+    if (UNTAG_Bool(REGB0)) {
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7480);
+    }
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  }
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModuleName___init_amodulename_1));
+  /* ./parser//parser_prod.nit:7487 */
+  REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7487);
+  }
+  ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7488 */
+  REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
+  if (UNTAG_Bool(REGB0)) {
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7488);
+  }
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  stack_frame_head = fra.me.prev;
+  init_table[itpos266] = 1;
+  return;
+}
+  void OC_parser___parser_prod___AModuleName___init_amodulename_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+    struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+    val_t REGB0;
+    fun_t CREG[1];
+    val_t tmp;
+    /* ./parser//parser_prod.nit:7482 */
+    fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+    fra.me.file = LOCATE_parser___parser_prod;
+    fra.me.line = 0;
+    fra.me.meth = LOCATE_parser___parser_prod___AModuleName___init_amodulename;
+    fra.me.has_broke = 0;
+    fra.me.REG_size = 2;
+    fra.me.REG[0] = NIT_NULL;
+    fra.me.REG[1] = NIT_NULL;
+    fra.me.closure_ctx = closctx_param;
+    fra.me.closure_funs = CREG;
+    fra.me.REG[0] = p0;
+    CREG[0] = clos_fun0;
+    /* ./parser//parser_prod.nit:7483 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
+    if (UNTAG_Bool(REGB0)) {
+    } else {
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7483);
+    }
+    /* ./parser//parser_prod.nit:7484 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(closctx->REG[0])!=NIT_NULL);
+    if (UNTAG_Bool(REGB0)) {
+    } else {
+      nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7484);
+    }
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AModuleName____n_path(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:7485 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    stack_frame_head = fra.me.prev;
+    return;
+  }
+void parser___parser_prod___AModuleName___replace_child(val_t p0, val_t p1, val_t p2){
+  struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
+  val_t REGB0;
+  val_t REGB1;
+  val_t REGB2;
+  val_t REGB3;
+  val_t REGB4;
+  val_t tmp;
+  fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7491;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuleName___replace_child;
+  fra.me.has_broke = 0;
+  fra.me.REG_size = 4;
+  fra.me.REG[0] = NIT_NULL;
+  fra.me.REG[1] = NIT_NULL;
+  fra.me.REG[2] = NIT_NULL;
+  fra.me.REG[3] = NIT_NULL;
+  fra.me.REG[0] = p0;
+  fra.me.REG[1] = p1;
+  fra.me.REG[2] = p2;
+  /* ./parser//parser_prod.nit:7493 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]);
+  REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
+    if (UNTAG_Bool(REGB1)) {
+      REGB1 = TAG_Bool(false);
+      REGB0 = REGB1;
+    } else {
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB0 = REGB1;
+    }
+  }
+  if (UNTAG_Bool(REGB0)) {
+    /* ./parser//parser_prod.nit:7494 */
+    REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+    if (UNTAG_Bool(REGB0)) {
+    } else {
+      REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+      if (UNTAG_Bool(REGB1)) {
+        REGB1 = TAG_Bool(false);
+        REGB0 = REGB1;
+      } else {
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB0 = REGB1;
+      }
+    }
+    REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+    if (UNTAG_Bool(REGB0)) {
+      /* ./parser//parser_prod.nit:7495 */
+      REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+      if (UNTAG_Bool(REGB0)) {
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7495);
+      }
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7496 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
+      if (UNTAG_Bool(REGB0)) {
+      } else {
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7496);
+      }
+      /* ./parser//parser_prod.nit:7497 */
+      ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]) = fra.me.REG[2];
+    } else {
+      /* ./parser//parser_prod.nit:7499 */
+      ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]) = NIT_NULL;
+    }
+    /* ./parser//parser_prod.nit:7501 */
+    goto label1;
+  }
+  /* ./parser//parser_prod.nit:7503 */
+  REGB0 = TAG_Int(0);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
+  if (UNTAG_Bool(REGB1)) {
+  } else {
+    nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7503);
+  }
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
+  while(1) {
+    /* ./../lib/standard//kernel.nit:215 */
+    REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+    /* ./../lib/standard//kernel.nit:335 */
+    if (UNTAG_Bool(REGB2)) {
+      /* ./parser//parser_prod.nit:7503 */
+      REGB2 = REGB0;
+      /* ./parser//parser_prod.nit:7504 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
+      if (UNTAG_Bool(REGB3)) {
+      } else {
+        nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7504);
+      }
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
+      if (UNTAG_Bool(REGB3)) {
+      } else {
+        REGB4 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
+        if (UNTAG_Bool(REGB4)) {
+          REGB4 = TAG_Bool(false);
+          REGB3 = REGB4;
+        } else {
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB3 = REGB4;
+        }
+      }
+      if (UNTAG_Bool(REGB3)) {
+        /* ./parser//parser_prod.nit:7505 */
+        REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+        if (UNTAG_Bool(REGB3)) {
+        } else {
+          REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+          if (UNTAG_Bool(REGB4)) {
+            REGB4 = TAG_Bool(false);
+            REGB3 = REGB4;
+          } else {
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB3 = REGB4;
+          }
+        }
+        REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
+        if (UNTAG_Bool(REGB3)) {
+          /* ./parser//parser_prod.nit:7506 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
+          if (UNTAG_Bool(REGB3)) {
+          } else {
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7506);
+          }
+          /* ./parser//parser_prod.nit:7507 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
+          if (UNTAG_Bool(REGB3)) {
+          } else {
+            nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7507);
+          }
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:7508 */
+          REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+          if (UNTAG_Bool(REGB3)) {
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7508);
+          }
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+        } else {
+          /* ./parser//parser_prod.nit:7510 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
+          if (UNTAG_Bool(REGB3)) {
+          } else {
+            nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7510);
+          }
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+        }
+        /* ./parser//parser_prod.nit:7512 */
+        goto label1;
+      }
+      /* ./../lib/standard//kernel.nit:337 */
+      REGB2 = TAG_Int(1);
+      /* ./../lib/standard//kernel.nit:218 */
+      REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
+      /* ./../lib/standard//kernel.nit:337 */
+      REGB0 = REGB2;
+    } else {
+      /* ./../lib/standard//kernel.nit:335 */
+      goto label2;
+    }
+  }
+  label2: while(0);
+  /* ./parser//parser_prod.nit:7515 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0])!=NIT_NULL);
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7515);
+  }
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0]);
+  REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB0 = REGB1;
+  }
+  if (UNTAG_Bool(REGB0)) {
+    /* ./parser//parser_prod.nit:7516 */
+    REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+    if (UNTAG_Bool(REGB0)) {
+    } else {
+      REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+      if (UNTAG_Bool(REGB1)) {
+        REGB1 = TAG_Bool(false);
+        REGB0 = REGB1;
+      } else {
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB0 = REGB1;
+      }
+    }
+    REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+    if (UNTAG_Bool(REGB0)) {
+      /* ./parser//parser_prod.nit:7517 */
+      REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+      if (UNTAG_Bool(REGB0)) {
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7517);
+      }
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7518 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
+      if (UNTAG_Bool(REGB0)) {
+      } else {
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7518);
+      }
+      /* ./parser//parser_prod.nit:7519 */
+      ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0]) = fra.me.REG[2];
+    } else {
+      /* ./parser//parser_prod.nit:7521 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7521);
+    }
+    /* ./parser//parser_prod.nit:7523 */
+    goto label1;
+  }
+  label1: while(0);
+  stack_frame_head = fra.me.prev;
+  return;
+}
+void parser___parser_prod___AModuleName___visit_all(val_t p0, val_t p1){
+  struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
+  val_t REGB0;
+  val_t REGB1;
+  val_t tmp;
+  fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7527;
+  fra.me.meth = LOCATE_parser___parser_prod___AModuleName___visit_all;
+  fra.me.has_broke = 0;
+  fra.me.REG_size = 3;
+  fra.me.REG[0] = NIT_NULL;
+  fra.me.REG[1] = NIT_NULL;
+  fra.me.REG[2] = NIT_NULL;
+  fra.me.REG[0] = p0;
+  fra.me.REG[1] = p1;
+  /* ./parser//parser_prod.nit:7529 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]);
+  REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+    if (UNTAG_Bool(REGB1)) {
+      REGB1 = TAG_Bool(false);
+      REGB0 = REGB1;
+    } else {
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB0 = REGB1;
+    }
+  }
+  REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+  if (UNTAG_Bool(REGB0)) {
+    /* ./parser//parser_prod.nit:7530 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AModuleName____n_quad(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
+    if (UNTAG_Bool(REGB0)) {
+    } else {
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7530);
+    }
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  }
+  /* ./parser//parser_prod.nit:7532 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0])!=NIT_NULL);
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    nit_abort("Uninitialized attribute %s", "_n_path", LOCATE_parser___parser_prod, 7532);
+  }
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AModuleName____n_path(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AModuleName___visit_all_1));
+  /* ./parser//parser_prod.nit:7535 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0])!=NIT_NULL);
+  if (UNTAG_Bool(REGB0)) {
+  } else {
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7535);
+  }
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AModuleName____n_id(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  stack_frame_head = fra.me.prev;
+  return;
+}
+  void OC_parser___parser_prod___AModuleName___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+    struct {struct stack_frame_t me;} fra;
+    fun_t CREG[1];
+    val_t tmp;
+    fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+    fra.me.file = LOCATE_parser___parser_prod;
+    fra.me.line = 0;
+    fra.me.meth = LOCATE_parser___parser_prod___AModuleName___visit_all;
+    fra.me.has_broke = 0;
+    fra.me.REG_size = 1;
+    fra.me.REG[0] = NIT_NULL;
+    fra.me.closure_ctx = closctx_param;
+    fra.me.closure_funs = CREG;
+    fra.me.REG[0] = p0;
+    CREG[0] = clos_fun0;
+    /* ./parser//parser_prod.nit:7533 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    stack_frame_head = fra.me.prev;
+    return;
+  }
+void parser___parser_prod___AExternCalls___empty_init(val_t p0, int* init_table){
+  int itpos267 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCalls].i;
+  struct {struct stack_frame_t me;} fra;
+  val_t tmp;
+  if (init_table[itpos267]) return;
+  fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7539;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___empty_init;
+  fra.me.has_broke = 0;
+  fra.me.REG_size = 1;
+  fra.me.REG[0] = NIT_NULL;
+  fra.me.REG[0] = p0;
+  stack_frame_head = fra.me.prev;
+  init_table[itpos267] = 1;
+  return;
+}
+void parser___parser_prod___AExternCalls___init_aexterncalls(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos268 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCalls].i;
+  struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
+  val_t REGB0;
+  val_t tmp;
+  if (init_table[itpos268]) return;
+  fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7541;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___init_aexterncalls;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -39450,36 +39969,36 @@ void parser_prod___AExternCalls___init_aexterncalls(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7469 */
-  CALL_parser_prod___AExternCalls___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7470 */
+  /* ./parser//parser_prod.nit:7546 */
+  CALL_parser___parser_prod___AExternCalls___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7547 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7470);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7547);
   }
-  ATTR_parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7471 */
+  ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7548 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7471);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7548);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AExternCalls___init_aexterncalls_1));
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AExternCalls___init_aexterncalls_1));
   stack_frame_head = fra.me.prev;
-  init_table[itpos266] = 1;
+  init_table[itpos268] = 1;
   return;
 }
-  void OC_parser_prod___AExternCalls___init_aexterncalls_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AExternCalls___init_aexterncalls_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:7472 */
+    /* ./parser//parser_prod.nit:7549 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AExternCalls___init_aexterncalls;
+    fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___init_aexterncalls;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -39488,26 +40007,26 @@ void parser_prod___AExternCalls___init_aexterncalls(val_t p0, val_t p1, val_t p2
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7473 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_AExternCall, ID_AExternCall)) /*cast AExternCall*/;
+    /* ./parser//parser_prod.nit:7550 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___AExternCall, ID_parser___parser_nodes___AExternCall)) /*cast AExternCall*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7473);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7550);
     }
-    /* ./parser//parser_prod.nit:7474 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_extern_calls(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:7551 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser_prod, 7474);
+      nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7551);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AExternCalls____n_extern_calls(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:7475 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:7552 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -39516,9 +40035,9 @@ void parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7479;
-  fra.me.meth = LOCATE_parser_prod___AExternCalls___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7556;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -39528,21 +40047,21 @@ void parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7481 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7558 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser_prod, 7481);
+    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 7558);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7482 */
+    /* ./parser//parser_prod.nit:7559 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -39551,58 +40070,58 @@ void parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7483 */
+      /* ./parser//parser_prod.nit:7560 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7483);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7560);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7484 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwimport, ID_TKwimport)) /*cast TKwimport*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7561 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwimport, ID_parser___parser_nodes___TKwimport)) /*cast TKwimport*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7484);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7561);
       }
-      /* ./parser//parser_prod.nit:7485 */
-      ATTR_parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7562 */
+      ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7487 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7487);
+      /* ./parser//parser_prod.nit:7564 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7564);
     }
-    /* ./parser//parser_prod.nit:7489 */
+    /* ./parser//parser_prod.nit:7566 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7491 */
+  /* ./parser//parser_prod.nit:7568 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser_prod, 7491);
+    nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7568);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:7491 */
+      /* ./parser//parser_prod.nit:7568 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:7492 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:7569 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser_prod, 7492);
+        nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7569);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -39611,12 +40130,12 @@ void parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:7493 */
+        /* ./parser//parser_prod.nit:7570 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -39625,53 +40144,53 @@ void parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:7494 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AExternCall, ID_AExternCall)) /*cast AExternCall*/;
+          /* ./parser//parser_prod.nit:7571 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AExternCall, ID_parser___parser_nodes___AExternCall)) /*cast AExternCall*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7494);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7571);
           }
-          /* ./parser//parser_prod.nit:7495 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:7572 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser_prod, 7495);
+            nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7572);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:7496 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:7573 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7496);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7573);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:7498 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:7575 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser_prod, 7498);
+            nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7575);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:7500 */
+        /* ./parser//parser_prod.nit:7577 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -39680,14 +40199,14 @@ void parser_prod___AExternCalls___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternCalls___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AExternCalls___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7505;
-  fra.me.meth = LOCATE_parser_prod___AExternCalls___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7582;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -39695,33 +40214,33 @@ void parser_prod___AExternCalls___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7507 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7584 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser_prod, 7507);
+    nit_abort("Uninitialized attribute %s", "_n_kwimport", LOCATE_parser___parser_prod, 7584);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7508 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AExternCalls____n_kwimport(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7585 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser_prod, 7508);
+    nit_abort("Uninitialized attribute %s", "_n_extern_calls", LOCATE_parser___parser_prod, 7585);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___AExternCalls___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AExternCalls____n_extern_calls(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AExternCalls___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AExternCalls___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AExternCalls___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AExternCalls___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AExternCalls___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -39729,54 +40248,54 @@ void parser_prod___AExternCalls___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7509 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:7586 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AExternCall___empty_init(val_t p0, int* init_table){
-  int itpos267 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternCall].i;
+void parser___parser_prod___AExternCall___empty_init(val_t p0, int* init_table){
+  int itpos269 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos267]) return;
+  if (init_table[itpos269]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7514;
-  fra.me.meth = LOCATE_parser_prod___AExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7591;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos267] = 1;
+  init_table[itpos269] = 1;
   return;
 }
-void parser_prod___AExternCall___init_aexterncall(val_t p0, int* init_table){
-  int itpos268 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AExternCall].i;
+void parser___parser_prod___AExternCall___init_aexterncall(val_t p0, int* init_table){
+  int itpos270 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos268]) return;
+  if (init_table[itpos270]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7516;
-  fra.me.meth = LOCATE_parser_prod___AExternCall___init_aexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7593;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCall___init_aexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
-  /* ./parser//parser_prod.nit:7518 */
-  CALL_parser_prod___AExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7595 */
+  CALL_parser___parser_prod___AExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
   stack_frame_head = fra.me.prev;
-  init_table[itpos268] = 1;
+  init_table[itpos270] = 1;
   return;
 }
-void parser_prod___AExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7521;
-  fra.me.meth = LOCATE_parser_prod___AExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7598;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -39788,13 +40307,13 @@ void parser_prod___AExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7525;
-  fra.me.meth = LOCATE_parser_prod___AExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7602;
+  fra.me.meth = LOCATE_parser___parser_prod___AExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
@@ -39804,67 +40323,67 @@ void parser_prod___AExternCall___visit_all(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASuperExternCall___empty_init(val_t p0, int* init_table){
-  int itpos269 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperExternCall].i;
+void parser___parser_prod___ASuperExternCall___empty_init(val_t p0, int* init_table){
+  int itpos271 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos269]) return;
+  if (init_table[itpos271]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7530;
-  fra.me.meth = LOCATE_parser_prod___ASuperExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7607;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos269] = 1;
+  init_table[itpos271] = 1;
   return;
 }
-void parser_prod___ASuperExternCall___init_asuperexterncall(val_t p0, val_t p1, int* init_table){
-  int itpos270 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ASuperExternCall].i;
+void parser___parser_prod___ASuperExternCall___init_asuperexterncall(val_t p0, val_t p1, int* init_table){
+  int itpos272 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ASuperExternCall].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
-  if (init_table[itpos270]) return;
+  if (init_table[itpos272]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7532;
-  fra.me.meth = LOCATE_parser_prod___ASuperExternCall___init_asuperexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7609;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___init_asuperexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7536 */
-  CALL_parser_prod___ASuperExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7537 */
+  /* ./parser//parser_prod.nit:7613 */
+  CALL_parser___parser_prod___ASuperExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7614 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7537);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7614);
   }
-  ATTR_parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7538 */
+  ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7615 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7538);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7615);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
-  init_table[itpos270] = 1;
+  init_table[itpos272] = 1;
   return;
 }
-void parser_prod___ASuperExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ASuperExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7541;
-  fra.me.meth = LOCATE_parser_prod___ASuperExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7618;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -39874,21 +40393,21 @@ void parser_prod___ASuperExternCall___replace_child(val_t p0, val_t p1, val_t p2
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7543 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7620 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser_prod, 7543);
+    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 7620);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7544 */
+    /* ./parser//parser_prod.nit:7621 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -39897,123 +40416,123 @@ void parser_prod___ASuperExternCall___replace_child(val_t p0, val_t p1, val_t p2
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7545 */
+      /* ./parser//parser_prod.nit:7622 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7545);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7622);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7546 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwsuper, ID_TKwsuper)) /*cast TKwsuper*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7623 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwsuper, ID_parser___parser_nodes___TKwsuper)) /*cast TKwsuper*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7546);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7623);
       }
-      /* ./parser//parser_prod.nit:7547 */
-      ATTR_parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7624 */
+      ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7549 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7549);
+      /* ./parser//parser_prod.nit:7626 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7626);
     }
-    /* ./parser//parser_prod.nit:7551 */
+    /* ./parser//parser_prod.nit:7628 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ASuperExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ASuperExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7555;
-  fra.me.meth = LOCATE_parser_prod___ASuperExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7632;
+  fra.me.meth = LOCATE_parser___parser_prod___ASuperExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7557 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7634 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser_prod, 7557);
+    nit_abort("Uninitialized attribute %s", "_n_kwsuper", LOCATE_parser___parser_prod, 7634);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ASuperExternCall____n_kwsuper(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALocalPropExternCall___empty_init(val_t p0, int* init_table){
-  int itpos271 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALocalPropExternCall].i;
+void parser___parser_prod___ALocalPropExternCall___empty_init(val_t p0, int* init_table){
+  int itpos273 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALocalPropExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos271]) return;
+  if (init_table[itpos273]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7561;
-  fra.me.meth = LOCATE_parser_prod___ALocalPropExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7638;
+  fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos271] = 1;
+  init_table[itpos273] = 1;
   return;
 }
-void parser_prod___ALocalPropExternCall___init_alocalpropexterncall(val_t p0, val_t p1, int* init_table){
-  int itpos272 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ALocalPropExternCall].i;
+void parser___parser_prod___ALocalPropExternCall___init_alocalpropexterncall(val_t p0, val_t p1, int* init_table){
+  int itpos274 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ALocalPropExternCall].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
-  if (init_table[itpos272]) return;
+  if (init_table[itpos274]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7563;
-  fra.me.meth = LOCATE_parser_prod___ALocalPropExternCall___init_alocalpropexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7640;
+  fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___init_alocalpropexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7567 */
-  CALL_parser_prod___ALocalPropExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7568 */
+  /* ./parser//parser_prod.nit:7644 */
+  CALL_parser___parser_prod___ALocalPropExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7645 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7568);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7645);
   }
-  ATTR_parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7569 */
+  ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7646 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7569);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7646);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
-  init_table[itpos272] = 1;
+  init_table[itpos274] = 1;
   return;
 }
-void parser_prod___ALocalPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ALocalPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7572;
-  fra.me.meth = LOCATE_parser_prod___ALocalPropExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7649;
+  fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40023,21 +40542,21 @@ void parser_prod___ALocalPropExternCall___replace_child(val_t p0, val_t p1, val_
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7574 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7651 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser_prod, 7574);
+    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7651);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7575 */
+    /* ./parser//parser_prod.nit:7652 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40046,90 +40565,90 @@ void parser_prod___ALocalPropExternCall___replace_child(val_t p0, val_t p1, val_
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7576 */
+      /* ./parser//parser_prod.nit:7653 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7576);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7653);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7577 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7654 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7577);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7654);
       }
-      /* ./parser//parser_prod.nit:7578 */
-      ATTR_parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7655 */
+      ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7580 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7580);
+      /* ./parser//parser_prod.nit:7657 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7657);
     }
-    /* ./parser//parser_prod.nit:7582 */
+    /* ./parser//parser_prod.nit:7659 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ALocalPropExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ALocalPropExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7586;
-  fra.me.meth = LOCATE_parser_prod___ALocalPropExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7663;
+  fra.me.meth = LOCATE_parser___parser_prod___ALocalPropExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7588 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7665 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser_prod, 7588);
+    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7665);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ALocalPropExternCall____n_methid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFullPropExternCall___empty_init(val_t p0, int* init_table){
-  int itpos273 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFullPropExternCall].i;
+void parser___parser_prod___AFullPropExternCall___empty_init(val_t p0, int* init_table){
+  int itpos275 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFullPropExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos273]) return;
+  if (init_table[itpos275]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7592;
-  fra.me.meth = LOCATE_parser_prod___AFullPropExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7669;
+  fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos273] = 1;
+  init_table[itpos275] = 1;
   return;
 }
-void parser_prod___AFullPropExternCall___init_afullpropexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos274 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AFullPropExternCall].i;
+void parser___parser_prod___AFullPropExternCall___init_afullpropexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos276 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AFullPropExternCall].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
-  if (init_table[itpos274]) return;
+  if (init_table[itpos276]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7594;
-  fra.me.meth = LOCATE_parser_prod___AFullPropExternCall___init_afullpropexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7671;
+  fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___init_afullpropexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40140,24 +40659,24 @@ void parser_prod___AFullPropExternCall___init_afullpropexterncall(val_t p0, val_
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:7600 */
-  CALL_parser_prod___AFullPropExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7601 */
+  /* ./parser//parser_prod.nit:7677 */
+  CALL_parser___parser_prod___AFullPropExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7678 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7601);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7678);
   }
-  ATTR_parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7602 */
+  ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7679 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7602);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7679);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7603 */
-  ATTR_parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7604 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7680 */
+  ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7681 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -40166,45 +40685,45 @@ void parser_prod___AFullPropExternCall___init_afullpropexterncall(val_t p0, val_
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7605 */
+    /* ./parser//parser_prod.nit:7682 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7605);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7682);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
-  /* ./parser//parser_prod.nit:7607 */
+  /* ./parser//parser_prod.nit:7684 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7607);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7684);
   }
-  ATTR_parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:7608 */
+  ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7685 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7608);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7685);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
-  init_table[itpos274] = 1;
+  init_table[itpos276] = 1;
   return;
 }
-void parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7611;
-  fra.me.meth = LOCATE_parser_prod___AFullPropExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7688;
+  fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40214,21 +40733,21 @@ void parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7613 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7690 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser_prod, 7613);
+    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7690);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7614 */
+    /* ./parser//parser_prod.nit:7691 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40237,35 +40756,35 @@ void parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7615 */
+      /* ./parser//parser_prod.nit:7692 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7615);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7692);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7616 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7693 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7616);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7693);
       }
-      /* ./parser//parser_prod.nit:7617 */
-      ATTR_parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7694 */
+      ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7619 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7619);
+      /* ./parser//parser_prod.nit:7696 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7696);
     }
-    /* ./parser//parser_prod.nit:7621 */
+    /* ./parser//parser_prod.nit:7698 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7623 */
-  fra.me.REG[3] = ATTR_parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7700 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -40274,12 +40793,12 @@ void parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7624 */
+    /* ./parser//parser_prod.nit:7701 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40288,48 +40807,48 @@ void parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7625 */
+      /* ./parser//parser_prod.nit:7702 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7625);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7702);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7626 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TQuad, ID_TQuad)) /*cast TQuad*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7703 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7626);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7703);
       }
-      /* ./parser//parser_prod.nit:7627 */
-      ATTR_parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7704 */
+      ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7629 */
-      ATTR_parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:7706 */
+      ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:7631 */
+    /* ./parser//parser_prod.nit:7708 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7633 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7710 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser_prod, 7633);
+    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7710);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7634 */
+    /* ./parser//parser_prod.nit:7711 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40338,46 +40857,46 @@ void parser_prod___AFullPropExternCall___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7635 */
+      /* ./parser//parser_prod.nit:7712 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7635);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7712);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7636 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AMethid, ID_AMethid)) /*cast AMethid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7713 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AMethid, ID_parser___parser_nodes___AMethid)) /*cast AMethid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7636);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7713);
       }
-      /* ./parser//parser_prod.nit:7637 */
-      ATTR_parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7714 */
+      ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7639 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7639);
+      /* ./parser//parser_prod.nit:7716 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7716);
     }
-    /* ./parser//parser_prod.nit:7641 */
+    /* ./parser//parser_prod.nit:7718 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AFullPropExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AFullPropExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7645;
-  fra.me.meth = LOCATE_parser_prod___AFullPropExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7722;
+  fra.me.meth = LOCATE_parser___parser_prod___AFullPropExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -40385,16 +40904,16 @@ void parser_prod___AFullPropExternCall___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7647 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7724 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser_prod, 7647);
+    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7724);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7648 */
-  fra.me.REG[2] = ATTR_parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AFullPropExternCall____n_classid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7725 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -40403,93 +40922,93 @@ void parser_prod___AFullPropExternCall___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7649 */
-    fra.me.REG[2] = ATTR_parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TQuad, ID_TQuad)) /*cast TQuad*/;
+    /* ./parser//parser_prod.nit:7726 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___AFullPropExternCall____n_quad(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TQuad, ID_parser___parser_nodes___TQuad)) /*cast TQuad*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7649);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7726);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:7651 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7728 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser_prod, 7651);
+    nit_abort("Uninitialized attribute %s", "_n_methid", LOCATE_parser___parser_prod, 7728);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AFullPropExternCall____n_methid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AInitPropExternCall___empty_init(val_t p0, int* init_table){
-  int itpos275 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInitPropExternCall].i;
+void parser___parser_prod___AInitPropExternCall___empty_init(val_t p0, int* init_table){
+  int itpos277 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitPropExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos275]) return;
+  if (init_table[itpos277]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7655;
-  fra.me.meth = LOCATE_parser_prod___AInitPropExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7732;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos275] = 1;
+  init_table[itpos277] = 1;
   return;
 }
-void parser_prod___AInitPropExternCall___init_ainitpropexterncall(val_t p0, val_t p1, int* init_table){
-  int itpos276 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AInitPropExternCall].i;
+void parser___parser_prod___AInitPropExternCall___init_ainitpropexterncall(val_t p0, val_t p1, int* init_table){
+  int itpos278 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AInitPropExternCall].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
-  if (init_table[itpos276]) return;
+  if (init_table[itpos278]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7657;
-  fra.me.meth = LOCATE_parser_prod___AInitPropExternCall___init_ainitpropexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7734;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___init_ainitpropexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7661 */
-  CALL_parser_prod___AInitPropExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7662 */
+  /* ./parser//parser_prod.nit:7738 */
+  CALL_parser___parser_prod___AInitPropExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7739 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7662);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7739);
   }
-  ATTR_parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7663 */
+  ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7740 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7663);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7740);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
-  init_table[itpos276] = 1;
+  init_table[itpos278] = 1;
   return;
 }
-void parser_prod___AInitPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AInitPropExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7666;
-  fra.me.meth = LOCATE_parser_prod___AInitPropExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7743;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40499,21 +41018,21 @@ void parser_prod___AInitPropExternCall___replace_child(val_t p0, val_t p1, val_t
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7668 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7745 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser_prod, 7668);
+    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7745);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7669 */
+    /* ./parser//parser_prod.nit:7746 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40522,89 +41041,89 @@ void parser_prod___AInitPropExternCall___replace_child(val_t p0, val_t p1, val_t
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7670 */
+      /* ./parser//parser_prod.nit:7747 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7670);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7747);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7671 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7748 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7671);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7748);
       }
-      /* ./parser//parser_prod.nit:7672 */
-      ATTR_parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7749 */
+      ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7674 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7674);
+      /* ./parser//parser_prod.nit:7751 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7751);
     }
-    /* ./parser//parser_prod.nit:7676 */
+    /* ./parser//parser_prod.nit:7753 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AInitPropExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AInitPropExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7680;
-  fra.me.meth = LOCATE_parser_prod___AInitPropExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7757;
+  fra.me.meth = LOCATE_parser___parser_prod___AInitPropExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7682 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7759 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser_prod, 7682);
+    nit_abort("Uninitialized attribute %s", "_n_classid", LOCATE_parser___parser_prod, 7759);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AInitPropExternCall____n_classid(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACastAsExternCall___empty_init(val_t p0, int* init_table){
-  int itpos277 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACastAsExternCall].i;
+void parser___parser_prod___ACastAsExternCall___empty_init(val_t p0, int* init_table){
+  int itpos279 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACastAsExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos277]) return;
+  if (init_table[itpos279]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7686;
-  fra.me.meth = LOCATE_parser_prod___ACastAsExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7763;
+  fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos277] = 1;
+  init_table[itpos279] = 1;
   return;
 }
-void parser_prod___ACastAsExternCall___init_acastasexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos278 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ACastAsExternCall].i;
+void parser___parser_prod___ACastAsExternCall___init_acastasexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos280 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ACastAsExternCall].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
-  if (init_table[itpos278]) return;
+  if (init_table[itpos280]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7688;
-  fra.me.meth = LOCATE_parser_prod___ACastAsExternCall___init_acastasexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7765;
+  fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___init_acastasexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40615,60 +41134,60 @@ void parser_prod___ACastAsExternCall___init_acastasexterncall(val_t p0, val_t p1
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:7694 */
-  CALL_parser_prod___ACastAsExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7695 */
+  /* ./parser//parser_prod.nit:7771 */
+  CALL_parser___parser_prod___ACastAsExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7772 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7695);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7772);
   }
-  ATTR_parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7696 */
+  ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7773 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7696);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7773);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7697 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7774 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7697);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7774);
   }
-  ATTR_parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7698 */
+  ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7775 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7698);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7775);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7699 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7776 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7699);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7776);
   }
-  ATTR_parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:7700 */
+  ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7777 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7700);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7777);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
-  init_table[itpos278] = 1;
+  init_table[itpos280] = 1;
   return;
 }
-void parser_prod___ACastAsExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ACastAsExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7703;
-  fra.me.meth = LOCATE_parser_prod___ACastAsExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7780;
+  fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40678,21 +41197,21 @@ void parser_prod___ACastAsExternCall___replace_child(val_t p0, val_t p1, val_t p
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7705 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7782 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_from_type", LOCATE_parser_prod, 7705);
+    nit_abort("Uninitialized attribute %s", "_n_from_type", LOCATE_parser___parser_prod, 7782);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7706 */
+    /* ./parser//parser_prod.nit:7783 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40701,48 +41220,48 @@ void parser_prod___ACastAsExternCall___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7707 */
+      /* ./parser//parser_prod.nit:7784 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7707);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7784);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7708 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7785 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7708);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7785);
       }
-      /* ./parser//parser_prod.nit:7709 */
-      ATTR_parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7786 */
+      ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7711 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7711);
+      /* ./parser//parser_prod.nit:7788 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7788);
     }
-    /* ./parser//parser_prod.nit:7713 */
+    /* ./parser//parser_prod.nit:7790 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7715 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7792 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7715);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7792);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7716 */
+    /* ./parser//parser_prod.nit:7793 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40751,48 +41270,48 @@ void parser_prod___ACastAsExternCall___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7717 */
+      /* ./parser//parser_prod.nit:7794 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7717);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7794);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7718 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7795 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7718);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7795);
       }
-      /* ./parser//parser_prod.nit:7719 */
-      ATTR_parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7796 */
+      ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7721 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7721);
+      /* ./parser//parser_prod.nit:7798 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7798);
     }
-    /* ./parser//parser_prod.nit:7723 */
+    /* ./parser//parser_prod.nit:7800 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7725 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7802 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_to_type", LOCATE_parser_prod, 7725);
+    nit_abort("Uninitialized attribute %s", "_n_to_type", LOCATE_parser___parser_prod, 7802);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7726 */
+    /* ./parser//parser_prod.nit:7803 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40801,45 +41320,45 @@ void parser_prod___ACastAsExternCall___replace_child(val_t p0, val_t p1, val_t p
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7727 */
+      /* ./parser//parser_prod.nit:7804 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7727);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7804);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7728 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7805 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7728);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7805);
       }
-      /* ./parser//parser_prod.nit:7729 */
-      ATTR_parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7806 */
+      ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7731 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7731);
+      /* ./parser//parser_prod.nit:7808 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7808);
     }
-    /* ./parser//parser_prod.nit:7733 */
+    /* ./parser//parser_prod.nit:7810 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ACastAsExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ACastAsExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7737;
-  fra.me.meth = LOCATE_parser_prod___ACastAsExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7814;
+  fra.me.meth = LOCATE_parser___parser_prod___ACastAsExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -40847,60 +41366,60 @@ void parser_prod___ACastAsExternCall___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7739 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7816 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_from_type", LOCATE_parser_prod, 7739);
+    nit_abort("Uninitialized attribute %s", "_n_from_type", LOCATE_parser___parser_prod, 7816);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7740 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACastAsExternCall____n_from_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7817 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7740);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7817);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7741 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___ACastAsExternCall____n_kwas(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7818 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_to_type", LOCATE_parser_prod, 7741);
+    nit_abort("Uninitialized attribute %s", "_n_to_type", LOCATE_parser___parser_prod, 7818);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ACastAsExternCall____n_to_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsNullableExternCall___empty_init(val_t p0, int* init_table){
-  int itpos279 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsNullableExternCall].i;
+void parser___parser_prod___AAsNullableExternCall___empty_init(val_t p0, int* init_table){
+  int itpos281 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNullableExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos279]) return;
+  if (init_table[itpos281]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7745;
-  fra.me.meth = LOCATE_parser_prod___AAsNullableExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7822;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos279] = 1;
+  init_table[itpos281] = 1;
   return;
 }
-void parser_prod___AAsNullableExternCall___init_aasnullableexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
-  int itpos280 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsNullableExternCall].i;
+void parser___parser_prod___AAsNullableExternCall___init_aasnullableexterncall(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
+  int itpos282 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNullableExternCall].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t tmp;
-  if (init_table[itpos280]) return;
+  if (init_table[itpos282]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7747;
-  fra.me.meth = LOCATE_parser_prod___AAsNullableExternCall___init_aasnullableexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7824;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___init_aasnullableexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40911,60 +41430,60 @@ void parser_prod___AAsNullableExternCall___init_aasnullableexterncall(val_t p0,
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
-  /* ./parser//parser_prod.nit:7753 */
-  CALL_parser_prod___AAsNullableExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7754 */
+  /* ./parser//parser_prod.nit:7830 */
+  CALL_parser___parser_prod___AAsNullableExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7831 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7754);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7831);
   }
-  ATTR_parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7755 */
+  ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7832 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7755);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7832);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7756 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7833 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7756);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7833);
   }
-  ATTR_parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7757 */
+  ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7834 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7757);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7834);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7758 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7835 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7758);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7835);
   }
-  ATTR_parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:7759 */
+  ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7836 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7759);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7836);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
-  init_table[itpos280] = 1;
+  init_table[itpos282] = 1;
   return;
 }
-void parser_prod___AAsNullableExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAsNullableExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7762;
-  fra.me.meth = LOCATE_parser_prod___AAsNullableExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7839;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -40974,21 +41493,21 @@ void parser_prod___AAsNullableExternCall___replace_child(val_t p0, val_t p1, val
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7764 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7841 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 7764);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7841);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7765 */
+    /* ./parser//parser_prod.nit:7842 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -40997,48 +41516,48 @@ void parser_prod___AAsNullableExternCall___replace_child(val_t p0, val_t p1, val
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7766 */
+      /* ./parser//parser_prod.nit:7843 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7766);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7843);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7767 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7844 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7767);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7844);
       }
-      /* ./parser//parser_prod.nit:7768 */
-      ATTR_parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7845 */
+      ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7770 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7770);
+      /* ./parser//parser_prod.nit:7847 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7847);
     }
-    /* ./parser//parser_prod.nit:7772 */
+    /* ./parser//parser_prod.nit:7849 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7774 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7851 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7774);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7851);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7775 */
+    /* ./parser//parser_prod.nit:7852 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -41047,48 +41566,48 @@ void parser_prod___AAsNullableExternCall___replace_child(val_t p0, val_t p1, val
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7776 */
+      /* ./parser//parser_prod.nit:7853 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7776);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7853);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7777 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7854 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7777);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7854);
       }
-      /* ./parser//parser_prod.nit:7778 */
-      ATTR_parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7855 */
+      ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7780 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7780);
+      /* ./parser//parser_prod.nit:7857 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7857);
     }
-    /* ./parser//parser_prod.nit:7782 */
+    /* ./parser//parser_prod.nit:7859 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7784 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7861 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser_prod, 7784);
+    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7861);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7785 */
+    /* ./parser//parser_prod.nit:7862 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -41097,45 +41616,45 @@ void parser_prod___AAsNullableExternCall___replace_child(val_t p0, val_t p1, val
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7786 */
+      /* ./parser//parser_prod.nit:7863 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7786);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7863);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7787 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnullable, ID_TKwnullable)) /*cast TKwnullable*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7864 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7787);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7864);
       }
-      /* ./parser//parser_prod.nit:7788 */
-      ATTR_parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7865 */
+      ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7790 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7790);
+      /* ./parser//parser_prod.nit:7867 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7867);
     }
-    /* ./parser//parser_prod.nit:7792 */
+    /* ./parser//parser_prod.nit:7869 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsNullableExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAsNullableExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7796;
-  fra.me.meth = LOCATE_parser_prod___AAsNullableExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7873;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNullableExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -41143,60 +41662,60 @@ void parser_prod___AAsNullableExternCall___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7798 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7875 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 7798);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7875);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7799 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7876 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7799);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7876);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7800 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwas(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7877 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser_prod, 7800);
+    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7877);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAsNullableExternCall____n_kwnullable(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsNotNullableExternCall___empty_init(val_t p0, int* init_table){
-  int itpos281 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsNotNullableExternCall].i;
+void parser___parser_prod___AAsNotNullableExternCall___empty_init(val_t p0, int* init_table){
+  int itpos283 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotNullableExternCall].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos281]) return;
+  if (init_table[itpos283]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7804;
-  fra.me.meth = LOCATE_parser_prod___AAsNotNullableExternCall___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7881;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos281] = 1;
+  init_table[itpos283] = 1;
   return;
 }
-void parser_prod___AAsNotNullableExternCall___init_aasnotnullableexterncall(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
-  int itpos282 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AAsNotNullableExternCall].i;
+void parser___parser_prod___AAsNotNullableExternCall___init_aasnotnullableexterncall(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
+  int itpos284 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AAsNotNullableExternCall].i;
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
   val_t tmp;
-  if (init_table[itpos282]) return;
+  if (init_table[itpos284]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7806;
-  fra.me.meth = LOCATE_parser_prod___AAsNotNullableExternCall___init_aasnotnullableexterncall;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7883;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___init_aasnotnullableexterncall;
   fra.me.has_broke = 0;
   fra.me.REG_size = 5;
   fra.me.REG[0] = NIT_NULL;
@@ -41209,73 +41728,73 @@ void parser_prod___AAsNotNullableExternCall___init_aasnotnullableexterncall(val_
   fra.me.REG[2] = p2;
   fra.me.REG[3] = p3;
   fra.me.REG[4] = p4;
-  /* ./parser//parser_prod.nit:7813 */
-  CALL_parser_prod___AAsNotNullableExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  /* ./parser//parser_prod.nit:7814 */
+  /* ./parser//parser_prod.nit:7890 */
+  CALL_parser___parser_prod___AAsNotNullableExternCall___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  /* ./parser//parser_prod.nit:7891 */
   REGB0 = TAG_Bool(fra.me.REG[1]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7814);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7891);
   }
-  ATTR_parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7815 */
+  ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:7892 */
   REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7815);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7892);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7816 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7893 */
   REGB0 = TAG_Bool(fra.me.REG[2]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7816);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7893);
   }
-  ATTR_parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7817 */
+  ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7894 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7817);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7894);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7818 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7895 */
   REGB0 = TAG_Bool(fra.me.REG[3]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7818);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7895);
   }
-  ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]) = fra.me.REG[3];
-  /* ./parser//parser_prod.nit:7819 */
+  ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]) = fra.me.REG[3];
+  /* ./parser//parser_prod.nit:7896 */
   REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7819);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7896);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
-  /* ./parser//parser_prod.nit:7820 */
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7897 */
   REGB0 = TAG_Bool(fra.me.REG[4]!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7820);
+    nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 7897);
   }
-  ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[4];
-  /* ./parser//parser_prod.nit:7821 */
+  ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[4];
+  /* ./parser//parser_prod.nit:7898 */
   REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
-    nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7821);
+    nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7898);
   }
-  CALL_parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+  CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
-  init_table[itpos282] = 1;
+  init_table[itpos284] = 1;
   return;
 }
-void parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7824;
-  fra.me.meth = LOCATE_parser_prod___AAsNotNullableExternCall___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7901;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -41285,21 +41804,21 @@ void parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1,
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7826 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7903 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 7826);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7903);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7827 */
+    /* ./parser//parser_prod.nit:7904 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -41308,48 +41827,48 @@ void parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1,
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7828 */
+      /* ./parser//parser_prod.nit:7905 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7828);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7905);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7829 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AType, ID_AType)) /*cast AType*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7906 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AType, ID_parser___parser_nodes___AType)) /*cast AType*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7829);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7906);
       }
-      /* ./parser//parser_prod.nit:7830 */
-      ATTR_parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7907 */
+      ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7832 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7832);
+      /* ./parser//parser_prod.nit:7909 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7909);
     }
-    /* ./parser//parser_prod.nit:7834 */
+    /* ./parser//parser_prod.nit:7911 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7836 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7913 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7836);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7913);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7837 */
+    /* ./parser//parser_prod.nit:7914 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -41358,48 +41877,48 @@ void parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1,
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7838 */
+      /* ./parser//parser_prod.nit:7915 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7838);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7915);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7839 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwas, ID_TKwas)) /*cast TKwas*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7916 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwas, ID_parser___parser_nodes___TKwas)) /*cast TKwas*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7839);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7916);
       }
-      /* ./parser//parser_prod.nit:7840 */
-      ATTR_parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7917 */
+      ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7842 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7842);
+      /* ./parser//parser_prod.nit:7919 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7919);
     }
-    /* ./parser//parser_prod.nit:7844 */
+    /* ./parser//parser_prod.nit:7921 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7846 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7923 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser_prod, 7846);
+    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7923);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7847 */
+    /* ./parser//parser_prod.nit:7924 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -41408,48 +41927,48 @@ void parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1,
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7848 */
+      /* ./parser//parser_prod.nit:7925 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7848);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7925);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7849 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnot, ID_TKwnot)) /*cast TKwnot*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7926 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnot, ID_parser___parser_nodes___TKwnot)) /*cast TKwnot*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7849);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7926);
       }
-      /* ./parser//parser_prod.nit:7850 */
-      ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7927 */
+      ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7852 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7852);
+      /* ./parser//parser_prod.nit:7929 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7929);
     }
-    /* ./parser//parser_prod.nit:7854 */
+    /* ./parser//parser_prod.nit:7931 */
     goto label1;
   }
-  /* ./parser//parser_prod.nit:7856 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7933 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser_prod, 7856);
+    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7933);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]);
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[1]));
   if (UNTAG_Bool(REGB0)) {
   } else {
-    REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+    REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7857 */
+    /* ./parser//parser_prod.nit:7934 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -41458,45 +41977,45 @@ void parser_prod___AAsNotNullableExternCall___replace_child(val_t p0, val_t p1,
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7858 */
+      /* ./parser//parser_prod.nit:7935 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7858);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7935);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7859 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TKwnullable, ID_TKwnullable)) /*cast TKwnullable*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7936 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TKwnullable, ID_parser___parser_nodes___TKwnullable)) /*cast TKwnullable*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7859);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7936);
       }
-      /* ./parser//parser_prod.nit:7860 */
-      ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7937 */
+      ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7862 */
-      nit_abort("Aborted", NULL, LOCATE_parser_prod, 7862);
+      /* ./parser//parser_prod.nit:7939 */
+      nit_abort("Aborted", NULL, LOCATE_parser___parser_prod, 7939);
     }
-    /* ./parser//parser_prod.nit:7864 */
+    /* ./parser//parser_prod.nit:7941 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AAsNotNullableExternCall___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AAsNotNullableExternCall___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7868;
-  fra.me.meth = LOCATE_parser_prod___AAsNotNullableExternCall___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7945;
+  fra.me.meth = LOCATE_parser___parser_prod___AAsNotNullableExternCall___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -41504,69 +42023,69 @@ void parser_prod___AAsNotNullableExternCall___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7870 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:7947 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser_prod, 7870);
+    nit_abort("Uninitialized attribute %s", "_n_type", LOCATE_parser___parser_prod, 7947);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7871 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_type(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7948 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser_prod, 7871);
+    nit_abort("Uninitialized attribute %s", "_n_kwas", LOCATE_parser___parser_prod, 7948);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7872 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwas(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7949 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser_prod, 7872);
+    nit_abort("Uninitialized attribute %s", "_n_kwnot", LOCATE_parser___parser_prod, 7949);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
-  /* ./parser//parser_prod.nit:7873 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnot(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+  /* ./parser//parser_prod.nit:7950 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser_prod, 7873);
+    nit_abort("Uninitialized attribute %s", "_n_kwnullable", LOCATE_parser___parser_prod, 7950);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___AAsNotNullableExternCall____n_kwnullable(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AQualified___empty_init(val_t p0, int* init_table){
-  int itpos283 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AQualified].i;
+void parser___parser_prod___AQualified___empty_init(val_t p0, int* init_table){
+  int itpos285 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AQualified].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos283]) return;
+  if (init_table[itpos285]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7877;
-  fra.me.meth = LOCATE_parser_prod___AQualified___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7954;
+  fra.me.meth = LOCATE_parser___parser_prod___AQualified___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos283] = 1;
+  init_table[itpos285] = 1;
   return;
 }
-void parser_prod___AQualified___init_aqualified(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos284 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_AQualified].i;
+void parser___parser_prod___AQualified___init_aqualified(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos286 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___AQualified].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
-  if (init_table[itpos284]) return;
+  if (init_table[itpos286]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7879;
-  fra.me.meth = LOCATE_parser_prod___AQualified___init_aqualified;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7956;
+  fra.me.meth = LOCATE_parser___parser_prod___AQualified___init_aqualified;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -41575,12 +42094,12 @@ void parser_prod___AQualified___init_aqualified(val_t p0, val_t p1, val_t p2, in
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7884 */
-  CALL_parser_prod___AQualified___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___AQualified___init_aqualified_1));
-  /* ./parser//parser_prod.nit:7890 */
-  ATTR_parser_nodes___AQualified____n_classid(fra.me.REG[0]) = fra.me.REG[2];
-  /* ./parser//parser_prod.nit:7891 */
+  /* ./parser//parser_prod.nit:7961 */
+  CALL_parser___parser_prod___AQualified___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AQualified___init_aqualified_1));
+  /* ./parser//parser_prod.nit:7967 */
+  ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:7968 */
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -41589,33 +42108,33 @@ void parser_prod___AQualified___init_aqualified(val_t p0, val_t p1, val_t p2, in
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7892 */
+    /* ./parser//parser_prod.nit:7969 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
-      nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7892);
+      nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7969);
     }
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
-  init_table[itpos284] = 1;
+  init_table[itpos286] = 1;
   return;
 }
-  void OC_parser_prod___AQualified___init_aqualified_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AQualified___init_aqualified_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:7885 */
+    /* ./parser//parser_prod.nit:7962 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AQualified___init_aqualified;
+    fra.me.meth = LOCATE_parser___parser_prod___AQualified___init_aqualified;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -41624,26 +42143,26 @@ void parser_prod___AQualified___init_aqualified(val_t p0, val_t p1, val_t p2, in
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7886 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_TId, ID_TId)) /*cast TId*/;
+    /* ./parser//parser_prod.nit:7963 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7886);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7963);
     }
-    /* ./parser//parser_prod.nit:7887 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___AQualified____n_id(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:7964 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7887);
+      nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7964);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___AQualified____n_id(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:7888 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___AQualified____n_id(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:7965 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -41652,9 +42171,9 @@ void parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7896;
-  fra.me.meth = LOCATE_parser_prod___AQualified___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7973;
+  fra.me.meth = LOCATE_parser___parser_prod___AQualified___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -41664,31 +42183,31 @@ void parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7898 */
+  /* ./parser//parser_prod.nit:7975 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7898);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7975);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:7898 */
+      /* ./parser//parser_prod.nit:7975 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:7899 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:7976 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7899);
+        nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7976);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -41697,12 +42216,12 @@ void parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:7900 */
+        /* ./parser//parser_prod.nit:7977 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -41711,59 +42230,59 @@ void parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:7901 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TId, ID_TId)) /*cast TId*/;
+          /* ./parser//parser_prod.nit:7978 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TId, ID_parser___parser_nodes___TId)) /*cast TId*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7901);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7978);
           }
-          /* ./parser//parser_prod.nit:7902 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:7979 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7902);
+            nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7979);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:7903 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:7980 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7903);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7980);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:7905 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:7982 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7905);
+            nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 7982);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:7907 */
+        /* ./parser//parser_prod.nit:7984 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
   label2: while(0);
-  /* ./parser//parser_prod.nit:7910 */
-  fra.me.REG[3] = ATTR_parser_nodes___AQualified____n_classid(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:7987 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -41772,12 +42291,12 @@ void parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7911 */
+    /* ./parser//parser_prod.nit:7988 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -41786,46 +42305,46 @@ void parser_prod___AQualified___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
     if (UNTAG_Bool(REGB0)) {
-      /* ./parser//parser_prod.nit:7912 */
+      /* ./parser//parser_prod.nit:7989 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7912);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 7989);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7913 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:7990 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7913);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 7990);
       }
-      /* ./parser//parser_prod.nit:7914 */
-      ATTR_parser_nodes___AQualified____n_classid(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:7991 */
+      ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]) = fra.me.REG[2];
     } else {
-      /* ./parser//parser_prod.nit:7916 */
-      ATTR_parser_nodes___AQualified____n_classid(fra.me.REG[0]) = NIT_NULL;
+      /* ./parser//parser_prod.nit:7993 */
+      ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]) = NIT_NULL;
     }
-    /* ./parser//parser_prod.nit:7918 */
+    /* ./parser//parser_prod.nit:7995 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___AQualified___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___AQualified___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7922;
-  fra.me.meth = LOCATE_parser_prod___AQualified___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 7999;
+  fra.me.meth = LOCATE_parser___parser_prod___AQualified___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -41833,16 +42352,16 @@ void parser_prod___AQualified___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7924 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:8001 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser_prod, 7924);
+    nit_abort("Uninitialized attribute %s", "_n_id", LOCATE_parser___parser_prod, 8001);
   }
-  fra.me.REG[2] = ATTR_parser_nodes___AQualified____n_id(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser_prod___AQualified___visit_all_1));
-  /* ./parser//parser_prod.nit:7927 */
-  fra.me.REG[2] = ATTR_parser_nodes___AQualified____n_classid(fra.me.REG[0]);
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AQualified____n_id(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_parser___parser_prod___AQualified___visit_all_1));
+  /* ./parser//parser_prod.nit:8004 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -41851,32 +42370,32 @@ void parser_prod___AQualified___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7928 */
-    fra.me.REG[0] = ATTR_parser_nodes___AQualified____n_classid(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_TClassid, ID_TClassid)) /*cast TClassid*/;
+    /* ./parser//parser_prod.nit:8005 */
+    fra.me.REG[0] = ATTR_parser___parser_nodes___AQualified____n_classid(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[0]!=NIT_NULL) && VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TClassid, ID_parser___parser_nodes___TClassid)) /*cast TClassid*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7928);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 8005);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   }
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___AQualified___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___AQualified___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___AQualified___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___AQualified___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -41884,60 +42403,60 @@ void parser_prod___AQualified___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7925 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:8002 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ADoc___empty_init(val_t p0, int* init_table){
-  int itpos285 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ADoc].i;
+void parser___parser_prod___ADoc___empty_init(val_t p0, int* init_table){
+  int itpos287 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoc].i;
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
-  if (init_table[itpos285]) return;
+  if (init_table[itpos287]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7933;
-  fra.me.meth = LOCATE_parser_prod___ADoc___empty_init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 8010;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoc___empty_init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 1;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   stack_frame_head = fra.me.prev;
-  init_table[itpos285] = 1;
+  init_table[itpos287] = 1;
   return;
 }
-void parser_prod___ADoc___init_adoc(val_t p0, val_t p1, int* init_table){
-  int itpos286 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_ADoc].i;
+void parser___parser_prod___ADoc___init_adoc(val_t p0, val_t p1, int* init_table){
+  int itpos288 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___ADoc].i;
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
-  if (init_table[itpos286]) return;
+  if (init_table[itpos288]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7935;
-  fra.me.meth = LOCATE_parser_prod___ADoc___init_adoc;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 8012;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoc___init_adoc;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7939 */
-  CALL_parser_prod___ADoc___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser_prod___ADoc___init_adoc_1));
+  /* ./parser//parser_prod.nit:8016 */
+  CALL_parser___parser_prod___ADoc___empty_init(fra.me.REG[0])(fra.me.REG[0], init_table);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[1])(fra.me.REG[1], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ADoc___init_adoc_1));
   stack_frame_head = fra.me.prev;
-  init_table[itpos286] = 1;
+  init_table[itpos288] = 1;
   return;
 }
-  void OC_parser_prod___ADoc___init_adoc_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ADoc___init_adoc_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
     val_t REGB0;
     fun_t CREG[1];
     val_t tmp;
-    /* ./parser//parser_prod.nit:7940 */
+    /* ./parser//parser_prod.nit:8017 */
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ADoc___init_adoc;
+    fra.me.meth = LOCATE_parser___parser_prod___ADoc___init_adoc;
     fra.me.has_broke = 0;
     fra.me.REG_size = 2;
     fra.me.REG[0] = NIT_NULL;
@@ -41946,26 +42465,26 @@ void parser_prod___ADoc___init_adoc(val_t p0, val_t p1, int* init_table){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7941 */
-    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_TComment, ID_TComment)) /*cast TComment*/;
+    /* ./parser//parser_prod.nit:8018 */
+    REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_parser___parser_nodes___TComment, ID_parser___parser_nodes___TComment)) /*cast TComment*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7941);
+      nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 8018);
     }
-    /* ./parser//parser_prod.nit:7942 */
-    REGB0 = TAG_Bool(ATTR_parser_nodes___ADoc____n_comment(closctx->REG[0])!=NIT_NULL);
+    /* ./parser//parser_prod.nit:8019 */
+    REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(closctx->REG[0])!=NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser_prod, 7942);
+      nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8019);
     }
-    fra.me.REG[1] = ATTR_parser_nodes___ADoc____n_comment(closctx->REG[0]);
-    CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
-    /* ./parser//parser_prod.nit:7943 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+    fra.me.REG[1] = ATTR_parser___parser_nodes___ADoc____n_comment(closctx->REG[0]);
+    CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:8020 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
@@ -41974,9 +42493,9 @@ void parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
   val_t REGB4;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7947;
-  fra.me.meth = LOCATE_parser_prod___ADoc___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 8024;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoc___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -41986,31 +42505,31 @@ void parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7949 */
+  /* ./parser//parser_prod.nit:8026 */
   REGB0 = TAG_Int(0);
-  REGB1 = TAG_Bool(ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
+  REGB1 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser_prod, 7949);
+    nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8026);
   }
-  fra.me.REG[3] = ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0]);
-  REGB1 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
-  /* ./../lib/standard//kernel.nit:332 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
+  REGB1 = CALL_standard___collection___abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
+  /* ./../lib/standard//kernel.nit:335 */
   while(1) {
-    /* ./../lib/standard//kernel.nit:212 */
+    /* ./../lib/standard//kernel.nit:215 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ./../lib/standard//kernel.nit:332 */
+    /* ./../lib/standard//kernel.nit:335 */
     if (UNTAG_Bool(REGB2)) {
-      /* ./parser//parser_prod.nit:7949 */
+      /* ./parser//parser_prod.nit:8026 */
       REGB2 = REGB0;
-      /* ./parser//parser_prod.nit:7950 */
-      REGB3 = TAG_Bool(ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
+      /* ./parser//parser_prod.nit:8027 */
+      REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
       if (UNTAG_Bool(REGB3)) {
       } else {
-        nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser_prod, 7950);
+        nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8027);
       }
-      fra.me.REG[3] = ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0]);
-      fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
+      fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
+      fra.me.REG[3] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], REGB2);
       REGB3 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
       if (UNTAG_Bool(REGB3)) {
       } else {
@@ -42019,12 +42538,12 @@ void parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
           REGB4 = TAG_Bool(false);
           REGB3 = REGB4;
         } else {
-          REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+          REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
           REGB3 = REGB4;
         }
       }
       if (UNTAG_Bool(REGB3)) {
-        /* ./parser//parser_prod.nit:7951 */
+        /* ./parser//parser_prod.nit:8028 */
         REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB3)) {
         } else {
@@ -42033,53 +42552,53 @@ void parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
             REGB4 = TAG_Bool(false);
             REGB3 = REGB4;
           } else {
-            REGB4 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+            REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
             REGB3 = REGB4;
           }
         }
         REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
         if (UNTAG_Bool(REGB3)) {
-          /* ./parser//parser_prod.nit:7952 */
-          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_TComment, ID_TComment)) /*cast TComment*/;
+          /* ./parser//parser_prod.nit:8029 */
+          REGB3 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___TComment, ID_parser___parser_nodes___TComment)) /*cast TComment*/;
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7952);
+            nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 8029);
           }
-          /* ./parser//parser_prod.nit:7953 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:8030 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser_prod, 7953);
+            nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8030);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0]);
-          CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
-          /* ./parser//parser_prod.nit:7954 */
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], REGB2, fra.me.REG[2]);
+          /* ./parser//parser_prod.nit:8031 */
           REGB3 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
-            nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7954);
+            nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 8031);
           }
-          CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+          CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
         } else {
-          /* ./parser//parser_prod.nit:7956 */
-          REGB3 = TAG_Bool(ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
+          /* ./parser//parser_prod.nit:8033 */
+          REGB3 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
           if (UNTAG_Bool(REGB3)) {
           } else {
-            nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser_prod, 7956);
+            nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8033);
           }
-          fra.me.REG[3] = ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0]);
-          CALL_abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
+          fra.me.REG[3] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
+          CALL_standard___collection___abstract_collection___Map___remove_at(fra.me.REG[3])(fra.me.REG[3], REGB2);
         }
-        /* ./parser//parser_prod.nit:7958 */
+        /* ./parser//parser_prod.nit:8035 */
         goto label1;
       }
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB2 = TAG_Int(1);
-      /* ./../lib/standard//kernel.nit:215 */
+      /* ./../lib/standard//kernel.nit:218 */
       REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-      /* ./../lib/standard//kernel.nit:334 */
+      /* ./../lib/standard//kernel.nit:337 */
       REGB0 = REGB2;
     } else {
-      /* ./../lib/standard//kernel.nit:332 */
+      /* ./../lib/standard//kernel.nit:335 */
       goto label2;
     }
   }
@@ -42088,39 +42607,39 @@ void parser_prod___ADoc___replace_child(val_t p0, val_t p1, val_t p2){
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___ADoc___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___ADoc___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7963;
-  fra.me.meth = LOCATE_parser_prod___ADoc___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 8040;
+  fra.me.meth = LOCATE_parser___parser_prod___ADoc___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 2;
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[1] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7965 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:8042 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser_prod, 7965);
+    nit_abort("Uninitialized attribute %s", "_n_comment", LOCATE_parser___parser_prod, 8042);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___ADoc____n_comment(fra.me.REG[0]);
-  CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser_prod___ADoc___visit_all_1));
+  fra.me.REG[0] = ATTR_parser___parser_nodes___ADoc____n_comment(fra.me.REG[0]);
+  CALL_standard___collection___abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_parser___parser_prod___ADoc___visit_all_1));
   stack_frame_head = fra.me.prev;
   return;
 }
-  void OC_parser_prod___ADoc___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+  void OC_parser___parser_prod___ADoc___visit_all_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
     struct {struct stack_frame_t me;} fra;
     fun_t CREG[1];
     val_t tmp;
     fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-    fra.me.file = LOCATE_parser_prod;
+    fra.me.file = LOCATE_parser___parser_prod;
     fra.me.line = 0;
-    fra.me.meth = LOCATE_parser_prod___ADoc___visit_all;
+    fra.me.meth = LOCATE_parser___parser_prod___ADoc___visit_all;
     fra.me.has_broke = 0;
     fra.me.REG_size = 1;
     fra.me.REG[0] = NIT_NULL;
@@ -42128,20 +42647,20 @@ void parser_prod___ADoc___visit_all(val_t p0, val_t p1){
     fra.me.closure_funs = CREG;
     fra.me.REG[0] = p0;
     CREG[0] = clos_fun0;
-    /* ./parser//parser_prod.nit:7966 */
-    CALL_parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
+    /* ./parser//parser_prod.nit:8043 */
+    CALL_parser___parser_prod___Visitor___enter_visit(closctx->REG[1])(closctx->REG[1], fra.me.REG[0]);
     stack_frame_head = fra.me.prev;
     return;
   }
-void parser_prod___Start___init(val_t p0, val_t p1, val_t p2, int* init_table){
-  int itpos287 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_Start].i;
+void parser___parser_prod___Start___init(val_t p0, val_t p1, val_t p2, int* init_table){
+  int itpos289 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_parser___parser_nodes___Start].i;
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t tmp;
-  if (init_table[itpos287]) return;
+  if (init_table[itpos289]) return;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7972;
-  fra.me.meth = LOCATE_parser_prod___Start___init;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 8049;
+  fra.me.meth = LOCATE_parser___parser_prod___Start___init;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -42150,23 +42669,23 @@ void parser_prod___Start___init(val_t p0, val_t p1, val_t p2, int* init_table){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7976 */
-  ATTR_parser_nodes___Start____n_base(fra.me.REG[0]) = fra.me.REG[1];
-  /* ./parser//parser_prod.nit:7977 */
-  ATTR_parser_nodes___Start____n_eof(fra.me.REG[0]) = fra.me.REG[2];
+  /* ./parser//parser_prod.nit:8053 */
+  ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]) = fra.me.REG[1];
+  /* ./parser//parser_prod.nit:8054 */
+  ATTR_parser___parser_nodes___Start____n_eof(fra.me.REG[0]) = fra.me.REG[2];
   stack_frame_head = fra.me.prev;
-  init_table[itpos287] = 1;
+  init_table[itpos289] = 1;
   return;
 }
-void parser_prod___Start___replace_child(val_t p0, val_t p1, val_t p2){
+void parser___parser_prod___Start___replace_child(val_t p0, val_t p1, val_t p2){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7980;
-  fra.me.meth = LOCATE_parser_prod___Start___replace_child;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 8057;
+  fra.me.meth = LOCATE_parser___parser_prod___Start___replace_child;
   fra.me.has_broke = 0;
   fra.me.REG_size = 4;
   fra.me.REG[0] = NIT_NULL;
@@ -42176,8 +42695,8 @@ void parser_prod___Start___replace_child(val_t p0, val_t p1, val_t p2){
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
   fra.me.REG[2] = p2;
-  /* ./parser//parser_prod.nit:7982 */
-  fra.me.REG[3] = ATTR_parser_nodes___Start____n_base(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:8059 */
+  fra.me.REG[3] = ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]);
   REGB0 = TAG_Bool(IS_EQUAL_ON(fra.me.REG[1],fra.me.REG[3]));
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -42186,12 +42705,12 @@ void parser_prod___Start___replace_child(val_t p0, val_t p1, val_t p2){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
       REGB0 = REGB1;
     }
   }
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7983 */
+    /* ./parser//parser_prod.nit:8060 */
     REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB0)) {
     } else {
@@ -42200,45 +42719,45 @@ void parser_prod___Start___replace_child(val_t p0, val_t p1, val_t p2){
         REGB1 = TAG_Bool(false);
         REGB0 = REGB1;
       } else {
-        REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+        REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
         REGB0 = REGB1;
       }
     }
     if (UNTAG_Bool(REGB0)) {
     } else {
-      /* ./parser//parser_prod.nit:7985 */
+      /* ./parser//parser_prod.nit:8062 */
       REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB0)) {
-        nit_abort("Reciever is null", NULL, LOCATE_parser_prod, 7985);
+        nit_abort("Reciever is null", NULL, LOCATE_parser___parser_prod, 8062);
       }
-      CALL_parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
-      /* ./parser//parser_prod.nit:7986 */
-      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AModule, ID_AModule)) /*cast AModule*/;
+      CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+      /* ./parser//parser_prod.nit:8063 */
+      REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModule, ID_parser___parser_nodes___AModule)) /*cast AModule*/;
       if (UNTAG_Bool(REGB0)) {
       } else {
-        nit_abort("Assert failed", NULL, LOCATE_parser_prod, 7986);
+        nit_abort("Assert failed", NULL, LOCATE_parser___parser_prod, 8063);
       }
-      /* ./parser//parser_prod.nit:7987 */
-      ATTR_parser_nodes___Start____n_base(fra.me.REG[0]) = fra.me.REG[2];
+      /* ./parser//parser_prod.nit:8064 */
+      ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]) = fra.me.REG[2];
     }
-    /* ./parser//parser_prod.nit:7989 */
-    CALL_parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
-    /* ./parser//parser_prod.nit:7990 */
+    /* ./parser//parser_prod.nit:8066 */
+    CALL_parser___parser_prod___ANode___parent__eq(fra.me.REG[1])(fra.me.REG[1], NIT_NULL);
+    /* ./parser//parser_prod.nit:8067 */
     goto label1;
   }
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return;
 }
-void parser_prod___Start___visit_all(val_t p0, val_t p1){
+void parser___parser_prod___Start___visit_all(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
   val_t REGB1;
   val_t tmp;
   fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
-  fra.me.file = LOCATE_parser_prod;
-  fra.me.line = 7994;
-  fra.me.meth = LOCATE_parser_prod___Start___visit_all;
+  fra.me.file = LOCATE_parser___parser_prod;
+  fra.me.line = 8071;
+  fra.me.meth = LOCATE_parser___parser_prod___Start___visit_all;
   fra.me.has_broke = 0;
   fra.me.REG_size = 3;
   fra.me.REG[0] = NIT_NULL;
@@ -42246,8 +42765,8 @@ void parser_prod___Start___visit_all(val_t p0, val_t p1){
   fra.me.REG[2] = NIT_NULL;
   fra.me.REG[0] = p0;
   fra.me.REG[1] = p1;
-  /* ./parser//parser_prod.nit:7996 */
-  fra.me.REG[2] = ATTR_parser_nodes___Start____n_base(fra.me.REG[0]);
+  /* ./parser//parser_prod.nit:8073 */
+  fra.me.REG[2] = ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]);
   REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
@@ -42256,29 +42775,29 @@ void parser_prod___Start___visit_all(val_t p0, val_t p1){
       REGB1 = TAG_Bool(false);
       REGB0 = REGB1;
     } else {
-      REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+      REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
       REGB0 = REGB1;
     }
   }
   REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
   if (UNTAG_Bool(REGB0)) {
-    /* ./parser//parser_prod.nit:7997 */
-    fra.me.REG[2] = ATTR_parser_nodes___Start____n_base(fra.me.REG[0]);
-    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_AModule, ID_AModule)) /*cast AModule*/;
+    /* ./parser//parser_prod.nit:8074 */
+    fra.me.REG[2] = ATTR_parser___parser_nodes___Start____n_base(fra.me.REG[0]);
+    REGB0 = TAG_Bool((fra.me.REG[2]!=NIT_NULL) && VAL_ISA(fra.me.REG[2], COLOR_parser___parser_nodes___AModule, ID_parser___parser_nodes___AModule)) /*cast AModule*/;
     if (UNTAG_Bool(REGB0)) {
     } else {
-      nit_abort("Cast failed", NULL, LOCATE_parser_prod, 7997);
+      nit_abort("Cast failed", NULL, LOCATE_parser___parser_prod, 8074);
     }
-    CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+    CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
   }
-  /* ./parser//parser_prod.nit:7999 */
-  REGB0 = TAG_Bool(ATTR_parser_nodes___Start____n_eof(fra.me.REG[0])!=NIT_NULL);
+  /* ./parser//parser_prod.nit:8076 */
+  REGB0 = TAG_Bool(ATTR_parser___parser_nodes___Start____n_eof(fra.me.REG[0])!=NIT_NULL);
   if (UNTAG_Bool(REGB0)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_n_eof", LOCATE_parser_prod, 7999);
+    nit_abort("Uninitialized attribute %s", "_n_eof", LOCATE_parser___parser_prod, 8076);
   }
-  fra.me.REG[0] = ATTR_parser_nodes___Start____n_eof(fra.me.REG[0]);
-  CALL_parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+  fra.me.REG[0] = ATTR_parser___parser_nodes___Start____n_eof(fra.me.REG[0]);
+  CALL_parser___parser_prod___Visitor___enter_visit(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
   stack_frame_head = fra.me.prev;
   return;
 }