nitc: FFI and nitni use MModule::c_name
[nit.git] / c_src / lexer.sep.1.c
index 5c85a60..2df9d32 100644 (file)
@@ -1,76 +1,4 @@
 #include "lexer.sep.0.h"
-/* method lexer#Token#text for (self: Token): String */
-val* lexer__Token__text(val* self) {
-val* var /* : String */;
-val* var1 /* : nullable String */;
-val* var_res /* var res: nullable String */;
-val* var2 /* : null */;
-short int var3 /* : Bool */;
-val* var4 /* : Location */;
-val* var5 /* : String */;
-var1 = self->attrs[COLOR_lexer__Token___text].val; /* _text on <self:Token> */
-var_res = var1;
-var2 = NULL;
-if (var_res == NULL) {
-var3 = 0; /* is null */
-} else {
-var3 = 1; /* arg is null and recv is not */
-}
-if (var3){
-var = var_res;
-goto RET_LABEL;
-} else {
-}
-var4 = ((val* (*)(val*))(self->class->vft[COLOR_parser_nodes__ANode__location]))(self) /* location on <self:Token>*/;
-var5 = ((val* (*)(val*))(var4->class->vft[COLOR_location__Location__text]))(var4) /* text on <var4:Location>*/;
-var_res = var5;
-self->attrs[COLOR_lexer__Token___text].val = var_res; /* _text on <self:Token> */
-var = var_res;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Token#text for (self: Object): String */
-val* VIRTUAL_lexer__Token__text(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = lexer__Token__text(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Token#text= for (self: Token, String) */
-void lexer__Token__text_61d(val* self, val* p0) {
-val* var_text /* var text: String */;
-var_text = p0;
-self->attrs[COLOR_lexer__Token___text].val = var_text; /* _text on <self:Token> */
-RET_LABEL:;
-}
-/* method lexer#Token#text= for (self: Object, String) */
-void VIRTUAL_lexer__Token__text_61d(val* self, val* p0) {
-lexer__Token__text_61d(self, p0);
-RET_LABEL:;
-}
-/* method lexer#Token#parser_index for (self: Token): Int */
-long lexer__Token__parser_index(val* self) {
-long var /* : Int */;
-const char* var_class_name;
-var_class_name = self == NULL ? "null" : self->type->name;
-fprintf(stderr, "Runtime error: Abstract method `%s` called on `%s`", "parser_index", var_class_name);
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 25);
-show_backtrace(1);
-RET_LABEL:;
-return var;
-}
-/* method lexer#Token#parser_index for (self: Object): Int */
-long VIRTUAL_lexer__Token__parser_index(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = lexer__Token__parser_index(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
 /* method lexer#TEol#parser_index for (self: TEol): Int */
 long lexer__TEol__parser_index(val* self) {
 long var /* : Int */;
@@ -99,7 +27,7 @@ RET_LABEL:;
 }
 /* method lexer#TEol#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TEol__init_tk(val* self, val* p0) {
-lexer__TEol__init_tk(self, p0);
+lexer__TEol__init_tk(self, p0); /* Direct call lexer#TEol#init_tk on <self:Object(TEol)>*/
 RET_LABEL:;
 }
 /* method lexer#TComment#parser_index for (self: TComment): Int */
@@ -130,7 +58,7 @@ RET_LABEL:;
 }
 /* method lexer#TComment#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TComment__init_tk(val* self, val* p0) {
-lexer__TComment__init_tk(self, p0);
+lexer__TComment__init_tk(self, p0); /* Direct call lexer#TComment#init_tk on <self:Object(TComment)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwpackage#parser_index for (self: TKwpackage): Int */
@@ -161,7 +89,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwpackage#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwpackage__init_tk(val* self, val* p0) {
-lexer__TKwpackage__init_tk(self, p0);
+lexer__TKwpackage__init_tk(self, p0); /* Direct call lexer#TKwpackage#init_tk on <self:Object(TKwpackage)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwmodule#parser_index for (self: TKwmodule): Int */
@@ -192,7 +120,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwmodule#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwmodule__init_tk(val* self, val* p0) {
-lexer__TKwmodule__init_tk(self, p0);
+lexer__TKwmodule__init_tk(self, p0); /* Direct call lexer#TKwmodule#init_tk on <self:Object(TKwmodule)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwimport#parser_index for (self: TKwimport): Int */
@@ -223,7 +151,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwimport#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwimport__init_tk(val* self, val* p0) {
-lexer__TKwimport__init_tk(self, p0);
+lexer__TKwimport__init_tk(self, p0); /* Direct call lexer#TKwimport#init_tk on <self:Object(TKwimport)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwclass#parser_index for (self: TKwclass): Int */
@@ -254,7 +182,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwclass#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwclass__init_tk(val* self, val* p0) {
-lexer__TKwclass__init_tk(self, p0);
+lexer__TKwclass__init_tk(self, p0); /* Direct call lexer#TKwclass#init_tk on <self:Object(TKwclass)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwabstract#parser_index for (self: TKwabstract): Int */
@@ -285,7 +213,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwabstract#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwabstract__init_tk(val* self, val* p0) {
-lexer__TKwabstract__init_tk(self, p0);
+lexer__TKwabstract__init_tk(self, p0); /* Direct call lexer#TKwabstract#init_tk on <self:Object(TKwabstract)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwinterface#parser_index for (self: TKwinterface): Int */
@@ -316,7 +244,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwinterface#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwinterface__init_tk(val* self, val* p0) {
-lexer__TKwinterface__init_tk(self, p0);
+lexer__TKwinterface__init_tk(self, p0); /* Direct call lexer#TKwinterface#init_tk on <self:Object(TKwinterface)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwenum#parser_index for (self: TKwenum): Int */
@@ -347,7 +275,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwenum#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwenum__init_tk(val* self, val* p0) {
-lexer__TKwenum__init_tk(self, p0);
+lexer__TKwenum__init_tk(self, p0); /* Direct call lexer#TKwenum#init_tk on <self:Object(TKwenum)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwend#parser_index for (self: TKwend): Int */
@@ -378,7 +306,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwend#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwend__init_tk(val* self, val* p0) {
-lexer__TKwend__init_tk(self, p0);
+lexer__TKwend__init_tk(self, p0); /* Direct call lexer#TKwend#init_tk on <self:Object(TKwend)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwmeth#parser_index for (self: TKwmeth): Int */
@@ -409,7 +337,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwmeth#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwmeth__init_tk(val* self, val* p0) {
-lexer__TKwmeth__init_tk(self, p0);
+lexer__TKwmeth__init_tk(self, p0); /* Direct call lexer#TKwmeth#init_tk on <self:Object(TKwmeth)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwtype#parser_index for (self: TKwtype): Int */
@@ -440,7 +368,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwtype#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwtype__init_tk(val* self, val* p0) {
-lexer__TKwtype__init_tk(self, p0);
+lexer__TKwtype__init_tk(self, p0); /* Direct call lexer#TKwtype#init_tk on <self:Object(TKwtype)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwinit#parser_index for (self: TKwinit): Int */
@@ -471,7 +399,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwinit#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwinit__init_tk(val* self, val* p0) {
-lexer__TKwinit__init_tk(self, p0);
+lexer__TKwinit__init_tk(self, p0); /* Direct call lexer#TKwinit#init_tk on <self:Object(TKwinit)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwredef#parser_index for (self: TKwredef): Int */
@@ -502,7 +430,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwredef#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwredef__init_tk(val* self, val* p0) {
-lexer__TKwredef__init_tk(self, p0);
+lexer__TKwredef__init_tk(self, p0); /* Direct call lexer#TKwredef#init_tk on <self:Object(TKwredef)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwis#parser_index for (self: TKwis): Int */
@@ -533,7 +461,7 @@ RET_LABEL:;
 }
 /* method lexer#TKwis#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwis__init_tk(val* self, val* p0) {
-lexer__TKwis__init_tk(self, p0);
+lexer__TKwis__init_tk(self, p0); /* Direct call lexer#TKwis#init_tk on <self:Object(TKwis)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwdo#parser_index for (self: TKwdo): Int */
@@ -564,76 +492,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwdo#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwdo__init_tk(val* self, val* p0) {
-lexer__TKwdo__init_tk(self, p0);
-RET_LABEL:;
-}
-/* method lexer#TKwreadable#parser_index for (self: TKwreadable): Int */
-long lexer__TKwreadable__parser_index(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = 16;
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method lexer#TKwreadable#parser_index for (self: Object): Int */
-long VIRTUAL_lexer__TKwreadable__parser_index(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = lexer__TKwreadable__parser_index(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#TKwreadable#init_tk for (self: TKwreadable, Location) */
-void lexer__TKwreadable__init_tk(val* self, val* p0) {
-val* var_loc /* var loc: Location */;
-var_loc = p0;
-self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TKwreadable> */
-RET_LABEL:;
-}
-/* method lexer#TKwreadable#init_tk for (self: Object, Location) */
-void VIRTUAL_lexer__TKwreadable__init_tk(val* self, val* p0) {
-lexer__TKwreadable__init_tk(self, p0);
-RET_LABEL:;
-}
-/* method lexer#TKwwritable#parser_index for (self: TKwwritable): Int */
-long lexer__TKwwritable__parser_index(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = 17;
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method lexer#TKwwritable#parser_index for (self: Object): Int */
-long VIRTUAL_lexer__TKwwritable__parser_index(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = lexer__TKwwritable__parser_index(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#TKwwritable#init_tk for (self: TKwwritable, Location) */
-void lexer__TKwwritable__init_tk(val* self, val* p0) {
-val* var_loc /* var loc: Location */;
-var_loc = p0;
-self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TKwwritable> */
-RET_LABEL:;
-}
-/* method lexer#TKwwritable#init_tk for (self: Object, Location) */
-void VIRTUAL_lexer__TKwwritable__init_tk(val* self, val* p0) {
-lexer__TKwwritable__init_tk(self, p0);
+lexer__TKwdo__init_tk(self, p0); /* Direct call lexer#TKwdo#init_tk on <self:Object(TKwdo)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwvar#parser_index for (self: TKwvar): Int */
 long lexer__TKwvar__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 18;
+var1 = 16;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -657,76 +523,76 @@ RET_LABEL:;
 }
 /* method lexer#TKwvar#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwvar__init_tk(val* self, val* p0) {
-lexer__TKwvar__init_tk(self, p0);
+lexer__TKwvar__init_tk(self, p0); /* Direct call lexer#TKwvar#init_tk on <self:Object(TKwvar)>*/
 RET_LABEL:;
 }
-/* method lexer#TKwintern#parser_index for (self: TKwintern): Int */
-long lexer__TKwintern__parser_index(val* self) {
+/* method lexer#TKwextern#parser_index for (self: TKwextern): Int */
+long lexer__TKwextern__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 19;
+var1 = 17;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
 return var;
 }
-/* method lexer#TKwintern#parser_index for (self: Object): Int */
-long VIRTUAL_lexer__TKwintern__parser_index(val* self) {
+/* method lexer#TKwextern#parser_index for (self: Object): Int */
+long VIRTUAL_lexer__TKwextern__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = lexer__TKwintern__parser_index(self);
+var1 = lexer__TKwextern__parser_index(self);
 var = var1;
 RET_LABEL:;
 return var;
 }
-/* method lexer#TKwintern#init_tk for (self: TKwintern, Location) */
-void lexer__TKwintern__init_tk(val* self, val* p0) {
+/* method lexer#TKwextern#init_tk for (self: TKwextern, Location) */
+void lexer__TKwextern__init_tk(val* self, val* p0) {
 val* var_loc /* var loc: Location */;
 var_loc = p0;
-self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TKwintern> */
+self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TKwextern> */
 RET_LABEL:;
 }
-/* method lexer#TKwintern#init_tk for (self: Object, Location) */
-void VIRTUAL_lexer__TKwintern__init_tk(val* self, val* p0) {
-lexer__TKwintern__init_tk(self, p0);
+/* method lexer#TKwextern#init_tk for (self: Object, Location) */
+void VIRTUAL_lexer__TKwextern__init_tk(val* self, val* p0) {
+lexer__TKwextern__init_tk(self, p0); /* Direct call lexer#TKwextern#init_tk on <self:Object(TKwextern)>*/
 RET_LABEL:;
 }
-/* method lexer#TKwextern#parser_index for (self: TKwextern): Int */
-long lexer__TKwextern__parser_index(val* self) {
+/* method lexer#TKwpublic#parser_index for (self: TKwpublic): Int */
+long lexer__TKwpublic__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 20;
+var1 = 18;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
 return var;
 }
-/* method lexer#TKwextern#parser_index for (self: Object): Int */
-long VIRTUAL_lexer__TKwextern__parser_index(val* self) {
+/* method lexer#TKwpublic#parser_index for (self: Object): Int */
+long VIRTUAL_lexer__TKwpublic__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = lexer__TKwextern__parser_index(self);
+var1 = lexer__TKwpublic__parser_index(self);
 var = var1;
 RET_LABEL:;
 return var;
 }
-/* method lexer#TKwextern#init_tk for (self: TKwextern, Location) */
-void lexer__TKwextern__init_tk(val* self, val* p0) {
+/* method lexer#TKwpublic#init_tk for (self: TKwpublic, Location) */
+void lexer__TKwpublic__init_tk(val* self, val* p0) {
 val* var_loc /* var loc: Location */;
 var_loc = p0;
-self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TKwextern> */
+self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TKwpublic> */
 RET_LABEL:;
 }
-/* method lexer#TKwextern#init_tk for (self: Object, Location) */
-void VIRTUAL_lexer__TKwextern__init_tk(val* self, val* p0) {
-lexer__TKwextern__init_tk(self, p0);
+/* method lexer#TKwpublic#init_tk for (self: Object, Location) */
+void VIRTUAL_lexer__TKwpublic__init_tk(val* self, val* p0) {
+lexer__TKwpublic__init_tk(self, p0); /* Direct call lexer#TKwpublic#init_tk on <self:Object(TKwpublic)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwprotected#parser_index for (self: TKwprotected): Int */
 long lexer__TKwprotected__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 21;
+var1 = 19;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -750,14 +616,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwprotected#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwprotected__init_tk(val* self, val* p0) {
-lexer__TKwprotected__init_tk(self, p0);
+lexer__TKwprotected__init_tk(self, p0); /* Direct call lexer#TKwprotected#init_tk on <self:Object(TKwprotected)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwprivate#parser_index for (self: TKwprivate): Int */
 long lexer__TKwprivate__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 22;
+var1 = 20;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -781,14 +647,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwprivate#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwprivate__init_tk(val* self, val* p0) {
-lexer__TKwprivate__init_tk(self, p0);
+lexer__TKwprivate__init_tk(self, p0); /* Direct call lexer#TKwprivate#init_tk on <self:Object(TKwprivate)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwintrude#parser_index for (self: TKwintrude): Int */
 long lexer__TKwintrude__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 23;
+var1 = 21;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -812,14 +678,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwintrude#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwintrude__init_tk(val* self, val* p0) {
-lexer__TKwintrude__init_tk(self, p0);
+lexer__TKwintrude__init_tk(self, p0); /* Direct call lexer#TKwintrude#init_tk on <self:Object(TKwintrude)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwif#parser_index for (self: TKwif): Int */
 long lexer__TKwif__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 24;
+var1 = 22;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -843,14 +709,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwif#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwif__init_tk(val* self, val* p0) {
-lexer__TKwif__init_tk(self, p0);
+lexer__TKwif__init_tk(self, p0); /* Direct call lexer#TKwif#init_tk on <self:Object(TKwif)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwthen#parser_index for (self: TKwthen): Int */
 long lexer__TKwthen__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 25;
+var1 = 23;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -874,14 +740,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwthen#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwthen__init_tk(val* self, val* p0) {
-lexer__TKwthen__init_tk(self, p0);
+lexer__TKwthen__init_tk(self, p0); /* Direct call lexer#TKwthen#init_tk on <self:Object(TKwthen)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwelse#parser_index for (self: TKwelse): Int */
 long lexer__TKwelse__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 26;
+var1 = 24;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -905,14 +771,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwelse#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwelse__init_tk(val* self, val* p0) {
-lexer__TKwelse__init_tk(self, p0);
+lexer__TKwelse__init_tk(self, p0); /* Direct call lexer#TKwelse#init_tk on <self:Object(TKwelse)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwwhile#parser_index for (self: TKwwhile): Int */
 long lexer__TKwwhile__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 27;
+var1 = 25;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -936,14 +802,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwwhile#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwwhile__init_tk(val* self, val* p0) {
-lexer__TKwwhile__init_tk(self, p0);
+lexer__TKwwhile__init_tk(self, p0); /* Direct call lexer#TKwwhile#init_tk on <self:Object(TKwwhile)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwloop#parser_index for (self: TKwloop): Int */
 long lexer__TKwloop__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 28;
+var1 = 26;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -967,14 +833,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwloop#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwloop__init_tk(val* self, val* p0) {
-lexer__TKwloop__init_tk(self, p0);
+lexer__TKwloop__init_tk(self, p0); /* Direct call lexer#TKwloop#init_tk on <self:Object(TKwloop)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwfor#parser_index for (self: TKwfor): Int */
 long lexer__TKwfor__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 29;
+var1 = 27;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -998,14 +864,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwfor#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwfor__init_tk(val* self, val* p0) {
-lexer__TKwfor__init_tk(self, p0);
+lexer__TKwfor__init_tk(self, p0); /* Direct call lexer#TKwfor#init_tk on <self:Object(TKwfor)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwin#parser_index for (self: TKwin): Int */
 long lexer__TKwin__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 30;
+var1 = 28;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1029,14 +895,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwin#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwin__init_tk(val* self, val* p0) {
-lexer__TKwin__init_tk(self, p0);
+lexer__TKwin__init_tk(self, p0); /* Direct call lexer#TKwin#init_tk on <self:Object(TKwin)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwand#parser_index for (self: TKwand): Int */
 long lexer__TKwand__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 31;
+var1 = 29;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1060,14 +926,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwand#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwand__init_tk(val* self, val* p0) {
-lexer__TKwand__init_tk(self, p0);
+lexer__TKwand__init_tk(self, p0); /* Direct call lexer#TKwand#init_tk on <self:Object(TKwand)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwor#parser_index for (self: TKwor): Int */
 long lexer__TKwor__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 32;
+var1 = 30;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1091,14 +957,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwor#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwor__init_tk(val* self, val* p0) {
-lexer__TKwor__init_tk(self, p0);
+lexer__TKwor__init_tk(self, p0); /* Direct call lexer#TKwor#init_tk on <self:Object(TKwor)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwnot#parser_index for (self: TKwnot): Int */
 long lexer__TKwnot__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 33;
+var1 = 31;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1122,14 +988,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwnot#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwnot__init_tk(val* self, val* p0) {
-lexer__TKwnot__init_tk(self, p0);
+lexer__TKwnot__init_tk(self, p0); /* Direct call lexer#TKwnot#init_tk on <self:Object(TKwnot)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwimplies#parser_index for (self: TKwimplies): Int */
 long lexer__TKwimplies__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 34;
+var1 = 32;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1153,14 +1019,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwimplies#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwimplies__init_tk(val* self, val* p0) {
-lexer__TKwimplies__init_tk(self, p0);
+lexer__TKwimplies__init_tk(self, p0); /* Direct call lexer#TKwimplies#init_tk on <self:Object(TKwimplies)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwreturn#parser_index for (self: TKwreturn): Int */
 long lexer__TKwreturn__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 35;
+var1 = 33;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1184,14 +1050,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwreturn#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwreturn__init_tk(val* self, val* p0) {
-lexer__TKwreturn__init_tk(self, p0);
+lexer__TKwreturn__init_tk(self, p0); /* Direct call lexer#TKwreturn#init_tk on <self:Object(TKwreturn)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwcontinue#parser_index for (self: TKwcontinue): Int */
 long lexer__TKwcontinue__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 36;
+var1 = 34;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1215,14 +1081,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwcontinue#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwcontinue__init_tk(val* self, val* p0) {
-lexer__TKwcontinue__init_tk(self, p0);
+lexer__TKwcontinue__init_tk(self, p0); /* Direct call lexer#TKwcontinue#init_tk on <self:Object(TKwcontinue)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwbreak#parser_index for (self: TKwbreak): Int */
 long lexer__TKwbreak__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 37;
+var1 = 35;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1246,14 +1112,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwbreak#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwbreak__init_tk(val* self, val* p0) {
-lexer__TKwbreak__init_tk(self, p0);
+lexer__TKwbreak__init_tk(self, p0); /* Direct call lexer#TKwbreak#init_tk on <self:Object(TKwbreak)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwabort#parser_index for (self: TKwabort): Int */
 long lexer__TKwabort__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 38;
+var1 = 36;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1277,14 +1143,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwabort#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwabort__init_tk(val* self, val* p0) {
-lexer__TKwabort__init_tk(self, p0);
+lexer__TKwabort__init_tk(self, p0); /* Direct call lexer#TKwabort#init_tk on <self:Object(TKwabort)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwassert#parser_index for (self: TKwassert): Int */
 long lexer__TKwassert__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 39;
+var1 = 37;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1308,14 +1174,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwassert#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwassert__init_tk(val* self, val* p0) {
-lexer__TKwassert__init_tk(self, p0);
+lexer__TKwassert__init_tk(self, p0); /* Direct call lexer#TKwassert#init_tk on <self:Object(TKwassert)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwnew#parser_index for (self: TKwnew): Int */
 long lexer__TKwnew__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 40;
+var1 = 38;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1339,14 +1205,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwnew#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwnew__init_tk(val* self, val* p0) {
-lexer__TKwnew__init_tk(self, p0);
+lexer__TKwnew__init_tk(self, p0); /* Direct call lexer#TKwnew#init_tk on <self:Object(TKwnew)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwisa#parser_index for (self: TKwisa): Int */
 long lexer__TKwisa__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 41;
+var1 = 39;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1370,14 +1236,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwisa#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwisa__init_tk(val* self, val* p0) {
-lexer__TKwisa__init_tk(self, p0);
+lexer__TKwisa__init_tk(self, p0); /* Direct call lexer#TKwisa#init_tk on <self:Object(TKwisa)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwonce#parser_index for (self: TKwonce): Int */
 long lexer__TKwonce__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 42;
+var1 = 40;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1401,14 +1267,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwonce#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwonce__init_tk(val* self, val* p0) {
-lexer__TKwonce__init_tk(self, p0);
+lexer__TKwonce__init_tk(self, p0); /* Direct call lexer#TKwonce#init_tk on <self:Object(TKwonce)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwsuper#parser_index for (self: TKwsuper): Int */
 long lexer__TKwsuper__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 43;
+var1 = 41;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1432,14 +1298,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwsuper#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwsuper__init_tk(val* self, val* p0) {
-lexer__TKwsuper__init_tk(self, p0);
+lexer__TKwsuper__init_tk(self, p0); /* Direct call lexer#TKwsuper#init_tk on <self:Object(TKwsuper)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwself#parser_index for (self: TKwself): Int */
 long lexer__TKwself__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 44;
+var1 = 42;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1463,14 +1329,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwself#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwself__init_tk(val* self, val* p0) {
-lexer__TKwself__init_tk(self, p0);
+lexer__TKwself__init_tk(self, p0); /* Direct call lexer#TKwself#init_tk on <self:Object(TKwself)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwtrue#parser_index for (self: TKwtrue): Int */
 long lexer__TKwtrue__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 45;
+var1 = 43;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1494,14 +1360,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwtrue#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwtrue__init_tk(val* self, val* p0) {
-lexer__TKwtrue__init_tk(self, p0);
+lexer__TKwtrue__init_tk(self, p0); /* Direct call lexer#TKwtrue#init_tk on <self:Object(TKwtrue)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwfalse#parser_index for (self: TKwfalse): Int */
 long lexer__TKwfalse__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 46;
+var1 = 44;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1525,14 +1391,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwfalse#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwfalse__init_tk(val* self, val* p0) {
-lexer__TKwfalse__init_tk(self, p0);
+lexer__TKwfalse__init_tk(self, p0); /* Direct call lexer#TKwfalse#init_tk on <self:Object(TKwfalse)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwnull#parser_index for (self: TKwnull): Int */
 long lexer__TKwnull__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 47;
+var1 = 45;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1556,14 +1422,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwnull#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwnull__init_tk(val* self, val* p0) {
-lexer__TKwnull__init_tk(self, p0);
+lexer__TKwnull__init_tk(self, p0); /* Direct call lexer#TKwnull#init_tk on <self:Object(TKwnull)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwas#parser_index for (self: TKwas): Int */
 long lexer__TKwas__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 48;
+var1 = 46;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1587,14 +1453,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwas#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwas__init_tk(val* self, val* p0) {
-lexer__TKwas__init_tk(self, p0);
+lexer__TKwas__init_tk(self, p0); /* Direct call lexer#TKwas#init_tk on <self:Object(TKwas)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwnullable#parser_index for (self: TKwnullable): Int */
 long lexer__TKwnullable__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 49;
+var1 = 47;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1618,14 +1484,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwnullable#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwnullable__init_tk(val* self, val* p0) {
-lexer__TKwnullable__init_tk(self, p0);
+lexer__TKwnullable__init_tk(self, p0); /* Direct call lexer#TKwnullable#init_tk on <self:Object(TKwnullable)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwisset#parser_index for (self: TKwisset): Int */
 long lexer__TKwisset__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 50;
+var1 = 48;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1649,14 +1515,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwisset#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwisset__init_tk(val* self, val* p0) {
-lexer__TKwisset__init_tk(self, p0);
+lexer__TKwisset__init_tk(self, p0); /* Direct call lexer#TKwisset#init_tk on <self:Object(TKwisset)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwlabel#parser_index for (self: TKwlabel): Int */
 long lexer__TKwlabel__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 51;
+var1 = 49;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1680,14 +1546,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwlabel#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwlabel__init_tk(val* self, val* p0) {
-lexer__TKwlabel__init_tk(self, p0);
+lexer__TKwlabel__init_tk(self, p0); /* Direct call lexer#TKwlabel#init_tk on <self:Object(TKwlabel)>*/
 RET_LABEL:;
 }
 /* method lexer#TKwdebug#parser_index for (self: TKwdebug): Int */
 long lexer__TKwdebug__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 52;
+var1 = 50;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1711,14 +1577,14 @@ RET_LABEL:;
 }
 /* method lexer#TKwdebug#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TKwdebug__init_tk(val* self, val* p0) {
-lexer__TKwdebug__init_tk(self, p0);
+lexer__TKwdebug__init_tk(self, p0); /* Direct call lexer#TKwdebug#init_tk on <self:Object(TKwdebug)>*/
 RET_LABEL:;
 }
 /* method lexer#TOpar#parser_index for (self: TOpar): Int */
 long lexer__TOpar__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 53;
+var1 = 51;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1742,14 +1608,14 @@ RET_LABEL:;
 }
 /* method lexer#TOpar#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TOpar__init_tk(val* self, val* p0) {
-lexer__TOpar__init_tk(self, p0);
+lexer__TOpar__init_tk(self, p0); /* Direct call lexer#TOpar#init_tk on <self:Object(TOpar)>*/
 RET_LABEL:;
 }
 /* method lexer#TCpar#parser_index for (self: TCpar): Int */
 long lexer__TCpar__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 54;
+var1 = 52;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1773,14 +1639,14 @@ RET_LABEL:;
 }
 /* method lexer#TCpar#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TCpar__init_tk(val* self, val* p0) {
-lexer__TCpar__init_tk(self, p0);
+lexer__TCpar__init_tk(self, p0); /* Direct call lexer#TCpar#init_tk on <self:Object(TCpar)>*/
 RET_LABEL:;
 }
 /* method lexer#TObra#parser_index for (self: TObra): Int */
 long lexer__TObra__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 55;
+var1 = 53;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1804,14 +1670,14 @@ RET_LABEL:;
 }
 /* method lexer#TObra#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TObra__init_tk(val* self, val* p0) {
-lexer__TObra__init_tk(self, p0);
+lexer__TObra__init_tk(self, p0); /* Direct call lexer#TObra#init_tk on <self:Object(TObra)>*/
 RET_LABEL:;
 }
 /* method lexer#TCbra#parser_index for (self: TCbra): Int */
 long lexer__TCbra__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 56;
+var1 = 54;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1835,14 +1701,14 @@ RET_LABEL:;
 }
 /* method lexer#TCbra#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TCbra__init_tk(val* self, val* p0) {
-lexer__TCbra__init_tk(self, p0);
+lexer__TCbra__init_tk(self, p0); /* Direct call lexer#TCbra#init_tk on <self:Object(TCbra)>*/
 RET_LABEL:;
 }
 /* method lexer#TComma#parser_index for (self: TComma): Int */
 long lexer__TComma__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 57;
+var1 = 55;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1866,14 +1732,14 @@ RET_LABEL:;
 }
 /* method lexer#TComma#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TComma__init_tk(val* self, val* p0) {
-lexer__TComma__init_tk(self, p0);
+lexer__TComma__init_tk(self, p0); /* Direct call lexer#TComma#init_tk on <self:Object(TComma)>*/
 RET_LABEL:;
 }
 /* method lexer#TColumn#parser_index for (self: TColumn): Int */
 long lexer__TColumn__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 58;
+var1 = 56;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1897,14 +1763,14 @@ RET_LABEL:;
 }
 /* method lexer#TColumn#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TColumn__init_tk(val* self, val* p0) {
-lexer__TColumn__init_tk(self, p0);
+lexer__TColumn__init_tk(self, p0); /* Direct call lexer#TColumn#init_tk on <self:Object(TColumn)>*/
 RET_LABEL:;
 }
 /* method lexer#TQuad#parser_index for (self: TQuad): Int */
 long lexer__TQuad__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 59;
+var1 = 57;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1928,14 +1794,14 @@ RET_LABEL:;
 }
 /* method lexer#TQuad#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TQuad__init_tk(val* self, val* p0) {
-lexer__TQuad__init_tk(self, p0);
+lexer__TQuad__init_tk(self, p0); /* Direct call lexer#TQuad#init_tk on <self:Object(TQuad)>*/
 RET_LABEL:;
 }
 /* method lexer#TAssign#parser_index for (self: TAssign): Int */
 long lexer__TAssign__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 60;
+var1 = 58;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1959,14 +1825,14 @@ RET_LABEL:;
 }
 /* method lexer#TAssign#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TAssign__init_tk(val* self, val* p0) {
-lexer__TAssign__init_tk(self, p0);
+lexer__TAssign__init_tk(self, p0); /* Direct call lexer#TAssign#init_tk on <self:Object(TAssign)>*/
 RET_LABEL:;
 }
 /* method lexer#TPluseq#parser_index for (self: TPluseq): Int */
 long lexer__TPluseq__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 61;
+var1 = 59;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -1990,14 +1856,14 @@ RET_LABEL:;
 }
 /* method lexer#TPluseq#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TPluseq__init_tk(val* self, val* p0) {
-lexer__TPluseq__init_tk(self, p0);
+lexer__TPluseq__init_tk(self, p0); /* Direct call lexer#TPluseq#init_tk on <self:Object(TPluseq)>*/
 RET_LABEL:;
 }
 /* method lexer#TMinuseq#parser_index for (self: TMinuseq): Int */
 long lexer__TMinuseq__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 62;
+var1 = 60;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2021,14 +1887,14 @@ RET_LABEL:;
 }
 /* method lexer#TMinuseq#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TMinuseq__init_tk(val* self, val* p0) {
-lexer__TMinuseq__init_tk(self, p0);
+lexer__TMinuseq__init_tk(self, p0); /* Direct call lexer#TMinuseq#init_tk on <self:Object(TMinuseq)>*/
 RET_LABEL:;
 }
 /* method lexer#TDotdotdot#parser_index for (self: TDotdotdot): Int */
 long lexer__TDotdotdot__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 63;
+var1 = 61;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2052,14 +1918,14 @@ RET_LABEL:;
 }
 /* method lexer#TDotdotdot#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TDotdotdot__init_tk(val* self, val* p0) {
-lexer__TDotdotdot__init_tk(self, p0);
+lexer__TDotdotdot__init_tk(self, p0); /* Direct call lexer#TDotdotdot#init_tk on <self:Object(TDotdotdot)>*/
 RET_LABEL:;
 }
 /* method lexer#TDotdot#parser_index for (self: TDotdot): Int */
 long lexer__TDotdot__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 64;
+var1 = 62;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2083,14 +1949,14 @@ RET_LABEL:;
 }
 /* method lexer#TDotdot#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TDotdot__init_tk(val* self, val* p0) {
-lexer__TDotdot__init_tk(self, p0);
+lexer__TDotdot__init_tk(self, p0); /* Direct call lexer#TDotdot#init_tk on <self:Object(TDotdot)>*/
 RET_LABEL:;
 }
 /* method lexer#TDot#parser_index for (self: TDot): Int */
 long lexer__TDot__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 65;
+var1 = 63;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2114,14 +1980,14 @@ RET_LABEL:;
 }
 /* method lexer#TDot#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TDot__init_tk(val* self, val* p0) {
-lexer__TDot__init_tk(self, p0);
+lexer__TDot__init_tk(self, p0); /* Direct call lexer#TDot#init_tk on <self:Object(TDot)>*/
 RET_LABEL:;
 }
 /* method lexer#TPlus#parser_index for (self: TPlus): Int */
 long lexer__TPlus__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 66;
+var1 = 64;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2145,14 +2011,14 @@ RET_LABEL:;
 }
 /* method lexer#TPlus#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TPlus__init_tk(val* self, val* p0) {
-lexer__TPlus__init_tk(self, p0);
+lexer__TPlus__init_tk(self, p0); /* Direct call lexer#TPlus#init_tk on <self:Object(TPlus)>*/
 RET_LABEL:;
 }
 /* method lexer#TMinus#parser_index for (self: TMinus): Int */
 long lexer__TMinus__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 67;
+var1 = 65;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2176,14 +2042,14 @@ RET_LABEL:;
 }
 /* method lexer#TMinus#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TMinus__init_tk(val* self, val* p0) {
-lexer__TMinus__init_tk(self, p0);
+lexer__TMinus__init_tk(self, p0); /* Direct call lexer#TMinus#init_tk on <self:Object(TMinus)>*/
 RET_LABEL:;
 }
 /* method lexer#TStar#parser_index for (self: TStar): Int */
 long lexer__TStar__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 68;
+var1 = 66;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2207,14 +2073,45 @@ RET_LABEL:;
 }
 /* method lexer#TStar#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TStar__init_tk(val* self, val* p0) {
-lexer__TStar__init_tk(self, p0);
+lexer__TStar__init_tk(self, p0); /* Direct call lexer#TStar#init_tk on <self:Object(TStar)>*/
+RET_LABEL:;
+}
+/* method lexer#TStarstar#parser_index for (self: TStarstar): Int */
+long lexer__TStarstar__parser_index(val* self) {
+long var /* : Int */;
+long var1 /* : Int */;
+var1 = 67;
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method lexer#TStarstar#parser_index for (self: Object): Int */
+long VIRTUAL_lexer__TStarstar__parser_index(val* self) {
+long var /* : Int */;
+long var1 /* : Int */;
+var1 = lexer__TStarstar__parser_index(self);
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method lexer#TStarstar#init_tk for (self: TStarstar, Location) */
+void lexer__TStarstar__init_tk(val* self, val* p0) {
+val* var_loc /* var loc: Location */;
+var_loc = p0;
+self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TStarstar> */
+RET_LABEL:;
+}
+/* method lexer#TStarstar#init_tk for (self: Object, Location) */
+void VIRTUAL_lexer__TStarstar__init_tk(val* self, val* p0) {
+lexer__TStarstar__init_tk(self, p0); /* Direct call lexer#TStarstar#init_tk on <self:Object(TStarstar)>*/
 RET_LABEL:;
 }
 /* method lexer#TSlash#parser_index for (self: TSlash): Int */
 long lexer__TSlash__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 69;
+var1 = 68;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2238,14 +2135,14 @@ RET_LABEL:;
 }
 /* method lexer#TSlash#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TSlash__init_tk(val* self, val* p0) {
-lexer__TSlash__init_tk(self, p0);
+lexer__TSlash__init_tk(self, p0); /* Direct call lexer#TSlash#init_tk on <self:Object(TSlash)>*/
 RET_LABEL:;
 }
 /* method lexer#TPercent#parser_index for (self: TPercent): Int */
 long lexer__TPercent__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 70;
+var1 = 69;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2269,14 +2166,14 @@ RET_LABEL:;
 }
 /* method lexer#TPercent#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TPercent__init_tk(val* self, val* p0) {
-lexer__TPercent__init_tk(self, p0);
+lexer__TPercent__init_tk(self, p0); /* Direct call lexer#TPercent#init_tk on <self:Object(TPercent)>*/
 RET_LABEL:;
 }
 /* method lexer#TEq#parser_index for (self: TEq): Int */
 long lexer__TEq__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 71;
+var1 = 70;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2300,14 +2197,14 @@ RET_LABEL:;
 }
 /* method lexer#TEq#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TEq__init_tk(val* self, val* p0) {
-lexer__TEq__init_tk(self, p0);
+lexer__TEq__init_tk(self, p0); /* Direct call lexer#TEq#init_tk on <self:Object(TEq)>*/
 RET_LABEL:;
 }
 /* method lexer#TNe#parser_index for (self: TNe): Int */
 long lexer__TNe__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 72;
+var1 = 71;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2331,14 +2228,14 @@ RET_LABEL:;
 }
 /* method lexer#TNe#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TNe__init_tk(val* self, val* p0) {
-lexer__TNe__init_tk(self, p0);
+lexer__TNe__init_tk(self, p0); /* Direct call lexer#TNe#init_tk on <self:Object(TNe)>*/
 RET_LABEL:;
 }
 /* method lexer#TLt#parser_index for (self: TLt): Int */
 long lexer__TLt__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 73;
+var1 = 72;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2362,14 +2259,14 @@ RET_LABEL:;
 }
 /* method lexer#TLt#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TLt__init_tk(val* self, val* p0) {
-lexer__TLt__init_tk(self, p0);
+lexer__TLt__init_tk(self, p0); /* Direct call lexer#TLt#init_tk on <self:Object(TLt)>*/
 RET_LABEL:;
 }
 /* method lexer#TLe#parser_index for (self: TLe): Int */
 long lexer__TLe__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 74;
+var1 = 73;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2393,14 +2290,14 @@ RET_LABEL:;
 }
 /* method lexer#TLe#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TLe__init_tk(val* self, val* p0) {
-lexer__TLe__init_tk(self, p0);
+lexer__TLe__init_tk(self, p0); /* Direct call lexer#TLe#init_tk on <self:Object(TLe)>*/
 RET_LABEL:;
 }
 /* method lexer#TLl#parser_index for (self: TLl): Int */
 long lexer__TLl__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 75;
+var1 = 74;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2424,14 +2321,14 @@ RET_LABEL:;
 }
 /* method lexer#TLl#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TLl__init_tk(val* self, val* p0) {
-lexer__TLl__init_tk(self, p0);
+lexer__TLl__init_tk(self, p0); /* Direct call lexer#TLl#init_tk on <self:Object(TLl)>*/
 RET_LABEL:;
 }
 /* method lexer#TGt#parser_index for (self: TGt): Int */
 long lexer__TGt__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 76;
+var1 = 75;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2455,14 +2352,14 @@ RET_LABEL:;
 }
 /* method lexer#TGt#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TGt__init_tk(val* self, val* p0) {
-lexer__TGt__init_tk(self, p0);
+lexer__TGt__init_tk(self, p0); /* Direct call lexer#TGt#init_tk on <self:Object(TGt)>*/
 RET_LABEL:;
 }
 /* method lexer#TGe#parser_index for (self: TGe): Int */
 long lexer__TGe__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 77;
+var1 = 76;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2486,14 +2383,14 @@ RET_LABEL:;
 }
 /* method lexer#TGe#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TGe__init_tk(val* self, val* p0) {
-lexer__TGe__init_tk(self, p0);
+lexer__TGe__init_tk(self, p0); /* Direct call lexer#TGe#init_tk on <self:Object(TGe)>*/
 RET_LABEL:;
 }
 /* method lexer#TGg#parser_index for (self: TGg): Int */
 long lexer__TGg__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 78;
+var1 = 77;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2517,14 +2414,14 @@ RET_LABEL:;
 }
 /* method lexer#TGg#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TGg__init_tk(val* self, val* p0) {
-lexer__TGg__init_tk(self, p0);
+lexer__TGg__init_tk(self, p0); /* Direct call lexer#TGg#init_tk on <self:Object(TGg)>*/
 RET_LABEL:;
 }
 /* method lexer#TStarship#parser_index for (self: TStarship): Int */
 long lexer__TStarship__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 79;
+var1 = 78;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2548,14 +2445,14 @@ RET_LABEL:;
 }
 /* method lexer#TStarship#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TStarship__init_tk(val* self, val* p0) {
-lexer__TStarship__init_tk(self, p0);
+lexer__TStarship__init_tk(self, p0); /* Direct call lexer#TStarship#init_tk on <self:Object(TStarship)>*/
 RET_LABEL:;
 }
 /* method lexer#TBang#parser_index for (self: TBang): Int */
 long lexer__TBang__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 80;
+var1 = 79;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2579,14 +2476,14 @@ RET_LABEL:;
 }
 /* method lexer#TBang#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TBang__init_tk(val* self, val* p0) {
-lexer__TBang__init_tk(self, p0);
+lexer__TBang__init_tk(self, p0); /* Direct call lexer#TBang#init_tk on <self:Object(TBang)>*/
 RET_LABEL:;
 }
 /* method lexer#TAt#parser_index for (self: TAt): Int */
 long lexer__TAt__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 81;
+var1 = 80;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2610,14 +2507,14 @@ RET_LABEL:;
 }
 /* method lexer#TAt#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TAt__init_tk(val* self, val* p0) {
-lexer__TAt__init_tk(self, p0);
+lexer__TAt__init_tk(self, p0); /* Direct call lexer#TAt#init_tk on <self:Object(TAt)>*/
 RET_LABEL:;
 }
 /* method lexer#TClassid#parser_index for (self: TClassid): Int */
 long lexer__TClassid__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 82;
+var1 = 81;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2641,14 +2538,14 @@ RET_LABEL:;
 }
 /* method lexer#TClassid#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TClassid__init_tk(val* self, val* p0) {
-lexer__TClassid__init_tk(self, p0);
+lexer__TClassid__init_tk(self, p0); /* Direct call lexer#TClassid#init_tk on <self:Object(TClassid)>*/
 RET_LABEL:;
 }
 /* method lexer#TId#parser_index for (self: TId): Int */
 long lexer__TId__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 83;
+var1 = 82;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2672,14 +2569,14 @@ RET_LABEL:;
 }
 /* method lexer#TId#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TId__init_tk(val* self, val* p0) {
-lexer__TId__init_tk(self, p0);
+lexer__TId__init_tk(self, p0); /* Direct call lexer#TId#init_tk on <self:Object(TId)>*/
 RET_LABEL:;
 }
 /* method lexer#TAttrid#parser_index for (self: TAttrid): Int */
 long lexer__TAttrid__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 84;
+var1 = 83;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2703,14 +2600,14 @@ RET_LABEL:;
 }
 /* method lexer#TAttrid#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TAttrid__init_tk(val* self, val* p0) {
-lexer__TAttrid__init_tk(self, p0);
+lexer__TAttrid__init_tk(self, p0); /* Direct call lexer#TAttrid#init_tk on <self:Object(TAttrid)>*/
 RET_LABEL:;
 }
 /* method lexer#TNumber#parser_index for (self: TNumber): Int */
 long lexer__TNumber__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 85;
+var1 = 84;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
@@ -2734,38 +2631,69 @@ RET_LABEL:;
 }
 /* method lexer#TNumber#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TNumber__init_tk(val* self, val* p0) {
-lexer__TNumber__init_tk(self, p0);
+lexer__TNumber__init_tk(self, p0); /* Direct call lexer#TNumber#init_tk on <self:Object(TNumber)>*/
 RET_LABEL:;
 }
-/* method lexer#TFloat#parser_index for (self: TFloat): Int */
-long lexer__TFloat__parser_index(val* self) {
+/* method lexer#THexNumber#parser_index for (self: THexNumber): Int */
+long lexer__THexNumber__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = 86;
+var1 = 85;
 var = var1;
 goto RET_LABEL;
 RET_LABEL:;
 return var;
 }
-/* method lexer#TFloat#parser_index for (self: Object): Int */
-long VIRTUAL_lexer__TFloat__parser_index(val* self) {
+/* method lexer#THexNumber#parser_index for (self: Object): Int */
+long VIRTUAL_lexer__THexNumber__parser_index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = lexer__TFloat__parser_index(self);
+var1 = lexer__THexNumber__parser_index(self);
 var = var1;
 RET_LABEL:;
 return var;
 }
-/* method lexer#TFloat#init_tk for (self: TFloat, Location) */
-void lexer__TFloat__init_tk(val* self, val* p0) {
+/* method lexer#THexNumber#init_tk for (self: THexNumber, Location) */
+void lexer__THexNumber__init_tk(val* self, val* p0) {
 val* var_loc /* var loc: Location */;
 var_loc = p0;
-self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TFloat> */
+self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:THexNumber> */
 RET_LABEL:;
 }
-/* method lexer#TFloat#init_tk for (self: Object, Location) */
+/* method lexer#THexNumber#init_tk for (self: Object, Location) */
+void VIRTUAL_lexer__THexNumber__init_tk(val* self, val* p0) {
+lexer__THexNumber__init_tk(self, p0); /* Direct call lexer#THexNumber#init_tk on <self:Object(THexNumber)>*/
+RET_LABEL:;
+}
+/* method lexer#TFloat#parser_index for (self: TFloat): Int */
+long lexer__TFloat__parser_index(val* self) {
+long var /* : Int */;
+long var1 /* : Int */;
+var1 = 86;
+var = var1;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method lexer#TFloat#parser_index for (self: Object): Int */
+long VIRTUAL_lexer__TFloat__parser_index(val* self) {
+long var /* : Int */;
+long var1 /* : Int */;
+var1 = lexer__TFloat__parser_index(self);
+var = var1;
+RET_LABEL:;
+return var;
+}
+/* method lexer#TFloat#init_tk for (self: TFloat, Location) */
+void lexer__TFloat__init_tk(val* self, val* p0) {
+val* var_loc /* var loc: Location */;
+var_loc = p0;
+self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:TFloat> */
+RET_LABEL:;
+}
+/* method lexer#TFloat#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TFloat__init_tk(val* self, val* p0) {
-lexer__TFloat__init_tk(self, p0);
+lexer__TFloat__init_tk(self, p0); /* Direct call lexer#TFloat#init_tk on <self:Object(TFloat)>*/
 RET_LABEL:;
 }
 /* method lexer#TString#parser_index for (self: TString): Int */
@@ -2796,7 +2724,7 @@ RET_LABEL:;
 }
 /* method lexer#TString#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TString__init_tk(val* self, val* p0) {
-lexer__TString__init_tk(self, p0);
+lexer__TString__init_tk(self, p0); /* Direct call lexer#TString#init_tk on <self:Object(TString)>*/
 RET_LABEL:;
 }
 /* method lexer#TStartString#parser_index for (self: TStartString): Int */
@@ -2827,7 +2755,7 @@ RET_LABEL:;
 }
 /* method lexer#TStartString#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TStartString__init_tk(val* self, val* p0) {
-lexer__TStartString__init_tk(self, p0);
+lexer__TStartString__init_tk(self, p0); /* Direct call lexer#TStartString#init_tk on <self:Object(TStartString)>*/
 RET_LABEL:;
 }
 /* method lexer#TMidString#parser_index for (self: TMidString): Int */
@@ -2858,7 +2786,7 @@ RET_LABEL:;
 }
 /* method lexer#TMidString#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TMidString__init_tk(val* self, val* p0) {
-lexer__TMidString__init_tk(self, p0);
+lexer__TMidString__init_tk(self, p0); /* Direct call lexer#TMidString#init_tk on <self:Object(TMidString)>*/
 RET_LABEL:;
 }
 /* method lexer#TEndString#parser_index for (self: TEndString): Int */
@@ -2889,7 +2817,7 @@ RET_LABEL:;
 }
 /* method lexer#TEndString#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TEndString__init_tk(val* self, val* p0) {
-lexer__TEndString__init_tk(self, p0);
+lexer__TEndString__init_tk(self, p0); /* Direct call lexer#TEndString#init_tk on <self:Object(TEndString)>*/
 RET_LABEL:;
 }
 /* method lexer#TChar#parser_index for (self: TChar): Int */
@@ -2920,7 +2848,7 @@ RET_LABEL:;
 }
 /* method lexer#TChar#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TChar__init_tk(val* self, val* p0) {
-lexer__TChar__init_tk(self, p0);
+lexer__TChar__init_tk(self, p0); /* Direct call lexer#TChar#init_tk on <self:Object(TChar)>*/
 RET_LABEL:;
 }
 /* method lexer#TBadString#parser_index for (self: TBadString): Int */
@@ -2951,7 +2879,7 @@ RET_LABEL:;
 }
 /* method lexer#TBadString#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TBadString__init_tk(val* self, val* p0) {
-lexer__TBadString__init_tk(self, p0);
+lexer__TBadString__init_tk(self, p0); /* Direct call lexer#TBadString#init_tk on <self:Object(TBadString)>*/
 RET_LABEL:;
 }
 /* method lexer#TBadChar#parser_index for (self: TBadChar): Int */
@@ -2982,7 +2910,7 @@ RET_LABEL:;
 }
 /* method lexer#TBadChar#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TBadChar__init_tk(val* self, val* p0) {
-lexer__TBadChar__init_tk(self, p0);
+lexer__TBadChar__init_tk(self, p0); /* Direct call lexer#TBadChar#init_tk on <self:Object(TBadChar)>*/
 RET_LABEL:;
 }
 /* method lexer#TExternCodeSegment#parser_index for (self: TExternCodeSegment): Int */
@@ -3013,7 +2941,7 @@ RET_LABEL:;
 }
 /* method lexer#TExternCodeSegment#init_tk for (self: Object, Location) */
 void VIRTUAL_lexer__TExternCodeSegment__init_tk(val* self, val* p0) {
-lexer__TExternCodeSegment__init_tk(self, p0);
+lexer__TExternCodeSegment__init_tk(self, p0); /* Direct call lexer#TExternCodeSegment#init_tk on <self:Object(TExternCodeSegment)>*/
 RET_LABEL:;
 }
 /* method lexer#EOF#parser_index for (self: EOF): Int */
@@ -3035,2958 +2963,2304 @@ var = var1;
 RET_LABEL:;
 return var;
 }
-/* method lexer#EOF#init_tk for (self: EOF, Location) */
-void lexer__EOF__init_tk(val* self, val* p0) {
-val* var_loc /* var loc: Location */;
-static val* varonce;
-val* var /* : String */;
-char* var1 /* : NativeString */;
-long var2 /* : Int */;
-val* var3 /* : String */;
-var_loc = p0;
-if (varonce) {
-var = varonce;
-} else {
-var1 = "";
-var2 = 0;
-var3 = string__NativeString__to_s_with_length(var1, var2);
-var = var3;
-varonce = var;
-}
-self->attrs[COLOR_lexer__Token___text].val = var; /* _text on <self:EOF> */
-self->attrs[COLOR_parser_nodes__ANode___location].val = var_loc; /* _location on <self:EOF> */
-RET_LABEL:;
-}
-/* method lexer#EOF#init_tk for (self: Object, Location) */
-void VIRTUAL_lexer__EOF__init_tk(val* self, val* p0) {
-lexer__EOF__init_tk(self, p0);
-RET_LABEL:;
-}
-/* method lexer#AError#message for (self: AError): String */
-val* lexer__AError__message(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = self->attrs[COLOR_lexer__AError___message].val; /* _message on <self:AError> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _message");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1183);
-show_backtrace(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#AError#message for (self: Object): String */
-val* VIRTUAL_lexer__AError__message(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = lexer__AError__message(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#AError#init_error for (self: AError, String, Location) */
-void lexer__AError__init_error(val* self, val* p0, val* p1) {
-val* var_message /* var message: String */;
-val* var_loc /* var loc: Location */;
-var_message = p0;
-var_loc = p1;
-((void (*)(val*, val*))(self->class->vft[COLOR_lexer__EOF__init_tk]))(self, var_loc) /* init_tk on <self:AError>*/;
-self->attrs[COLOR_lexer__AError___message].val = var_message; /* _message on <self:AError> */
-RET_LABEL:;
-}
-/* method lexer#AError#init_error for (self: Object, String, Location) */
-void VIRTUAL_lexer__AError__init_error(val* self, val* p0, val* p1) {
-lexer__AError__init_error(self, p0, p1);
-RET_LABEL:;
-}
-/* method lexer#ALexerError#string for (self: ALexerError): String */
-val* lexer__ALexerError__string(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = self->attrs[COLOR_lexer__ALexerError___string].val; /* _string on <self:ALexerError> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _string");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1193);
-show_backtrace(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#ALexerError#string for (self: Object): String */
-val* VIRTUAL_lexer__ALexerError__string(val* self) {
-val* var /* : String */;
-val* var1 /* : String */;
-var1 = lexer__ALexerError__string(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#ALexerError#init_lexer_error for (self: ALexerError, String, Location, String) */
-void lexer__ALexerError__init_lexer_error(val* self, val* p0, val* p1, val* p2) {
-val* var_message /* var message: String */;
-val* var_loc /* var loc: Location */;
-val* var_string /* var string: String */;
-var_message = p0;
-var_loc = p1;
-var_string = p2;
-((void (*)(val*, val*, val*))(self->class->vft[COLOR_lexer__AError__init_error]))(self, var_message, var_loc) /* init_error on <self:ALexerError>*/;
-self->attrs[COLOR_lexer__ALexerError___string].val = var_string; /* _string on <self:ALexerError> */
-RET_LABEL:;
-}
-/* method lexer#ALexerError#init_lexer_error for (self: Object, String, Location, String) */
-void VIRTUAL_lexer__ALexerError__init_lexer_error(val* self, val* p0, val* p1, val* p2) {
-lexer__ALexerError__init_lexer_error(self, p0, p1, p2);
-RET_LABEL:;
-}
-/* method lexer#AParserError#token for (self: AParserError): Token */
-val* lexer__AParserError__token(val* self) {
-val* var /* : Token */;
-val* var1 /* : Token */;
-var1 = self->attrs[COLOR_lexer__AParserError___token].val; /* _token on <self:AParserError> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _token");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1203);
-show_backtrace(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#AParserError#token for (self: Object): Token */
-val* VIRTUAL_lexer__AParserError__token(val* self) {
+/* method lexer#Lexer#make_token for (self: Lexer, Int, Location): Token */
+val* lexer__Lexer__make_token(val* self, long p0, val* p1) {
 val* var /* : Token */;
-val* var1 /* : Token */;
-var1 = lexer__AParserError__token(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#AParserError#init_parser_error for (self: AParserError, String, Location, Token) */
-void lexer__AParserError__init_parser_error(val* self, val* p0, val* p1, val* p2) {
-val* var_message /* var message: String */;
-val* var_loc /* var loc: Location */;
-val* var_token /* var token: Token */;
-var_message = p0;
-var_loc = p1;
-var_token = p2;
-((void (*)(val*, val*, val*))(self->class->vft[COLOR_lexer__AError__init_error]))(self, var_message, var_loc) /* init_error on <self:AParserError>*/;
-self->attrs[COLOR_lexer__AParserError___token].val = var_token; /* _token on <self:AParserError> */
-RET_LABEL:;
-}
-/* method lexer#AParserError#init_parser_error for (self: Object, String, Location, Token) */
-void VIRTUAL_lexer__AParserError__init_parser_error(val* self, val* p0, val* p1, val* p2) {
-lexer__AParserError__init_parser_error(self, p0, p1, p2);
-RET_LABEL:;
-}
-/* method lexer#Lexer#file for (self: Lexer): SourceFile */
-val* lexer__Lexer__file(val* self) {
-val* var /* : SourceFile */;
-val* var1 /* : SourceFile */;
-var1 = self->attrs[COLOR_lexer__Lexer___file].val; /* _file on <self:Lexer> */
-if (var1 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _file");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1222);
-show_backtrace(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#file for (self: Object): SourceFile */
-val* VIRTUAL_lexer__Lexer__file(val* self) {
-val* var /* : SourceFile */;
-val* var1 /* : SourceFile */;
-var1 = lexer__Lexer__file(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#state_initial for (self: Lexer): Int */
-long lexer__Lexer__state_initial(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = 0;
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#state_initial for (self: Object): Int */
-long VIRTUAL_lexer__Lexer__state_initial(val* self) {
-long var /* : Int */;
+long var_accept_token /* var accept_token: Int */;
+val* var_location /* var location: Location */;
 long var1 /* : Int */;
-var1 = lexer__Lexer__state_initial(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#init for (self: Lexer, SourceFile) */
-void lexer__Lexer__init(val* self, val* p0) {
-val* var_file /* var file: SourceFile */;
-var_file = p0;
-self->attrs[COLOR_lexer__Lexer___file].val = var_file; /* _file on <self:Lexer> */
-RET_LABEL:;
-}
-/* method lexer#Lexer#init for (self: Object, SourceFile) */
-void VIRTUAL_lexer__Lexer__init(val* self, val* p0) {
-lexer__Lexer__init(self, p0);
-RET_LABEL:;
-}
-/* method lexer#Lexer#last_token for (self: Lexer): nullable Token */
-val* lexer__Lexer__last_token(val* self) {
-val* var /* : nullable Token */;
-val* var1 /* : nullable Token */;
-var1 = self->attrs[COLOR_lexer__Lexer___64dlast_token].val; /* @last_token on <self:Lexer> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#last_token for (self: Object): nullable Token */
-val* VIRTUAL_lexer__Lexer__last_token(val* self) {
-val* var /* : nullable Token */;
-val* var1 /* : nullable Token */;
-var1 = lexer__Lexer__last_token(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#last_token= for (self: Lexer, nullable Token) */
-void lexer__Lexer__last_token_61d(val* self, val* p0) {
-self->attrs[COLOR_lexer__Lexer___64dlast_token].val = p0; /* @last_token on <self:Lexer> */
-RET_LABEL:;
-}
-/* method lexer#Lexer#last_token= for (self: Object, nullable Token) */
-void VIRTUAL_lexer__Lexer__last_token_61d(val* self, val* p0) {
-lexer__Lexer__last_token_61d(self, p0);
-RET_LABEL:;
-}
-/* method lexer#Lexer#peek for (self: Lexer): Token */
-val* lexer__Lexer__peek(val* self) {
-val* var /* : Token */;
-val* var1 /* : nullable Token */;
-val* var_t /* var t: nullable Token */;
-val* var2 /* : null */;
+short int var2 /* : Bool */;
 short int var3 /* : Bool */;
-val* var4 /* : nullable Token */;
-val* var5 /* : null */;
-short int var6 /* : Bool */;
-val* var7 /* : nullable Token */;
-val* var8 /* : nullable Token */;
-val* var_l /* var l: nullable Token */;
-val* var9 /* : null */;
-short int var10 /* : Bool */;
-var1 = self->attrs[COLOR_lexer__Lexer___token].val; /* _token on <self:Lexer> */
-var_t = var1;
-var2 = NULL;
-if (var_t == NULL) {
-var3 = 0; /* is null */
-} else {
-var3 = 1; /* arg is null and recv is not */
-}
-if (var3){
-var = var_t;
-goto RET_LABEL;
-} else {
-}
-var4 = ((val* (*)(val*))(self->class->vft[COLOR_lexer__Lexer__get_token]))(self) /* get_token on <self:Lexer>*/;
-var_t = var4;
-for(;;) {
-var5 = NULL;
-if (var_t == NULL) {
-var6 = 1; /* is null */
-} else {
-var6 = 0; /* arg is null but recv is not */
-}
-if (!var6) break;
-var7 = ((val* (*)(val*))(self->class->vft[COLOR_lexer__Lexer__get_token]))(self) /* get_token on <self:Lexer>*/;
-var_t = var7;
-CONTINUE_label: (void)0;
-}
-BREAK_label: (void)0;
-var8 = ((val* (*)(val*))(self->class->vft[COLOR_lexer__Lexer__last_token]))(self) /* last_token on <self:Lexer>*/;
-var_l = var8;
-var9 = NULL;
-if (var_l == NULL) {
-var10 = 0; /* is null */
-} else {
-var10 = 1; /* arg is null and recv is not */
-}
-if (var10){
-((void (*)(val*, val*))(var_l->class->vft[COLOR_parser_nodes__Token__next_token_61d]))(var_l, var_t) /* next_token= on <var_l:nullable Token(Token)>*/;
-((void (*)(val*, val*))(var_t->class->vft[COLOR_parser_nodes__Token__prev_token_61d]))(var_t, var_l) /* prev_token= on <var_t:nullable Token(Token)>*/;
-} else {
-}
-((void (*)(val*, val*))(self->class->vft[COLOR_lexer__Lexer__last_token_61d]))(self, var_t) /* last_token= on <self:Lexer>*/;
-self->attrs[COLOR_lexer__Lexer___token].val = var_t; /* _token on <self:Lexer> */
-var = var_t;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#peek for (self: Object): Token */
-val* VIRTUAL_lexer__Lexer__peek(val* self) {
-val* var /* : Token */;
-val* var1 /* : Token */;
-var1 = lexer__Lexer__peek(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#next for (self: Lexer): Token */
-val* lexer__Lexer__next(val* self) {
-val* var /* : Token */;
-val* var1 /* : Token */;
-val* var_result /* var result: Token */;
-val* var2 /* : null */;
-var1 = ((val* (*)(val*))(self->class->vft[COLOR_lexer__Lexer__peek]))(self) /* peek on <self:Lexer>*/;
-var_result = var1;
-var2 = NULL;
-self->attrs[COLOR_lexer__Lexer___token].val = var2; /* _token on <self:Lexer> */
-var = var_result;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#next for (self: Object): Token */
-val* VIRTUAL_lexer__Lexer__next(val* self) {
-val* var /* : Token */;
-val* var1 /* : Token */;
-var1 = lexer__Lexer__next(self);
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method lexer#Lexer#get_token for (self: Lexer): nullable Token */
-val* lexer__Lexer__get_token(val* self) {
-val* var /* : nullable Token */;
-long var1 /* : Int */;
-long var_dfa_state /* var dfa_state: Int */;
-long var2 /* : Int */;
-long var_sp /* var sp: Int */;
-long var_start_stream_pos /* var start_stream_pos: Int */;
-long var3 /* : Int */;
-long var_start_pos /* var start_pos: Int */;
-long var4 /* : Int */;
-long var_start_line /* var start_line: Int */;
-val* var5 /* : SourceFile */;
-val* var6 /* : String */;
-val* var_string /* var string: String */;
+short int var5 /* : Bool */;
+val* var6 /* : TEol */;
 long var7 /* : Int */;
-long var_string_len /* var string_len: Int */;
-long var8 /* : Int */;
-long var9 /* : Int */;
-long var11 /* : Int */;
-long var_accept_state /* var accept_state: Int */;
-long var12 /* : Int */;
+short int var8 /* : Bool */;
+short int var9 /* : Bool */;
+short int var11 /* : Bool */;
+val* var12 /* : TComment */;
 long var13 /* : Int */;
-long var15 /* : Int */;
-long var_accept_token /* var accept_token: Int */;
-long var16 /* : Int */;
-long var17 /* : Int */;
+short int var14 /* : Bool */;
+short int var15 /* : Bool */;
+short int var17 /* : Bool */;
+val* var18 /* : TKwpackage */;
 long var19 /* : Int */;
-long var_accept_length /* var accept_length: Int */;
-long var20 /* : Int */;
-long var21 /* : Int */;
-long var23 /* : Int */;
-long var_accept_pos /* var accept_pos: Int */;
-long var24 /* : Int */;
+short int var20 /* : Bool */;
+short int var21 /* : Bool */;
+short int var23 /* : Bool */;
+val* var24 /* : TKwmodule */;
 long var25 /* : Int */;
-long var27 /* : Int */;
-long var_accept_line /* var accept_line: Int */;
-short int var28 /* : Bool */;
-short int var30 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-short int var31 /* : Bool */;
-long var32 /* : Int */;
-long var33 /* : Int */;
-long var35 /* : Int */;
-val* var36 /* : nullable Object */;
+short int var26 /* : Bool */;
+short int var27 /* : Bool */;
+short int var29 /* : Bool */;
+val* var30 /* : TKwimport */;
+long var31 /* : Int */;
+short int var32 /* : Bool */;
+short int var33 /* : Bool */;
+short int var35 /* : Bool */;
+val* var36 /* : TKwclass */;
 long var37 /* : Int */;
-char var39 /* : Char */;
-long var40 /* : Int */;
-long var_c /* var c: Int */;
-long var41 /* : Int */;
-long var42 /* : Int */;
-long var44 /* : Int */;
+short int var38 /* : Bool */;
+short int var39 /* : Bool */;
+short int var41 /* : Bool */;
+val* var42 /* : TKwabstract */;
+long var43 /* : Int */;
+short int var44 /* : Bool */;
 short int var45 /* : Bool */;
-short int var_cr /* var cr: Bool */;
-long var46 /* : Int */;
-long var_line /* var line: Int */;
-long var47 /* : Int */;
-long var_pos /* var pos: Int */;
-long var48 /* : Int */;
-short int var49 /* : Bool */;
+short int var47 /* : Bool */;
+val* var48 /* : TKwinterface */;
+long var49 /* : Int */;
+short int var50 /* : Bool */;
 short int var51 /* : Bool */;
-short int var52 /* : Bool */;
-val* var53 /* : SourceFile */;
-val* var54 /* : Array[Int] */;
-val* var55 /* : nullable Object */;
-long var56 /* : Int */;
-long var57 /* : Int */;
-long var59 /* : Int */;
-long var60 /* : Int */;
-val* var61 /* : SourceFile */;
-val* var62 /* : Array[Int] */;
-val* var63 /* : nullable Object */;
-long var64 /* : Int */;
+short int var53 /* : Bool */;
+val* var54 /* : TKwenum */;
+long var55 /* : Int */;
+short int var56 /* : Bool */;
+short int var57 /* : Bool */;
+short int var59 /* : Bool */;
+val* var60 /* : TKwend */;
+long var61 /* : Int */;
+short int var62 /* : Bool */;
+short int var63 /* : Bool */;
 short int var65 /* : Bool */;
-short int var67 /* : Bool */;
-long var68 /* : Int */;
-long var69 /* : Int */;
-long var71 /* : Int */;
-long var72 /* : Int */;
-short int var73 /* : Bool */;
-val* var74 /* : SourceFile */;
-val* var75 /* : Array[Int] */;
-val* var76 /* : nullable Object */;
-long var77 /* : Int */;
-long var78 /* : Int */;
-long var80 /* : Int */;
+val* var66 /* : TKwmeth */;
+long var67 /* : Int */;
+short int var68 /* : Bool */;
+short int var69 /* : Bool */;
+short int var71 /* : Bool */;
+val* var72 /* : TKwtype */;
+long var73 /* : Int */;
+short int var74 /* : Bool */;
+short int var75 /* : Bool */;
+short int var77 /* : Bool */;
+val* var78 /* : TKwinit */;
+long var79 /* : Int */;
+short int var80 /* : Bool */;
 short int var81 /* : Bool */;
-long var_old_state /* var old_state: Int */;
-long var82 /* : Int */;
-long var83 /* : Int */;
+short int var83 /* : Bool */;
+val* var84 /* : TKwredef */;
 long var85 /* : Int */;
 short int var86 /* : Bool */;
-short int var88 /* : Bool */;
-int cltype89;
-int idtype90;
-const char* var_class_name91;
+short int var87 /* : Bool */;
+short int var89 /* : Bool */;
+val* var90 /* : TKwis */;
+long var91 /* : Int */;
 short int var92 /* : Bool */;
-long var93 /* : Int */;
-long var94 /* : Int */;
-long var96 /* : Int */;
+short int var93 /* : Bool */;
+short int var95 /* : Bool */;
+val* var96 /* : TKwdo */;
 long var97 /* : Int */;
-long var99 /* : Int */;
-long var100 /* : Int */;
-long var101 /* : Int */;
+short int var98 /* : Bool */;
+short int var99 /* : Bool */;
+short int var101 /* : Bool */;
+val* var102 /* : TKwvar */;
 long var103 /* : Int */;
-long var104 /* : Int */;
-long var_low /* var low: Int */;
-long var105 /* : Int */;
-long var106 /* : Int */;
-long var107 /* : Int */;
-long var108 /* : Int */;
-long var110 /* : Int */;
-long var_high /* var high: Int */;
-long var111 /* : Int */;
-short int var112 /* : Bool */;
-short int var114 /* : Bool */;
-int cltype115;
-int idtype116;
-const char* var_class_name117;
-short int var118 /* : Bool */;
+short int var104 /* : Bool */;
+short int var105 /* : Bool */;
+short int var107 /* : Bool */;
+val* var108 /* : TKwextern */;
+long var109 /* : Int */;
+short int var110 /* : Bool */;
+short int var111 /* : Bool */;
+short int var113 /* : Bool */;
+val* var114 /* : TKwpublic */;
+long var115 /* : Int */;
+short int var116 /* : Bool */;
+short int var117 /* : Bool */;
 short int var119 /* : Bool */;
-short int var121 /* : Bool */;
-int cltype122;
-int idtype123;
-const char* var_class_name124;
+val* var120 /* : TKwprotected */;
+long var121 /* : Int */;
+short int var122 /* : Bool */;
+short int var123 /* : Bool */;
 short int var125 /* : Bool */;
-long var126 /* : Int */;
-long var128 /* : Int */;
-long var129 /* : Int */;
-long var130 /* : Int */;
-long var132 /* : Int */;
-long var_middle /* var middle: Int */;
+val* var126 /* : TKwprivate */;
+long var127 /* : Int */;
+short int var128 /* : Bool */;
+short int var129 /* : Bool */;
+short int var131 /* : Bool */;
+val* var132 /* : TKwintrude */;
 long var133 /* : Int */;
-long var134 /* : Int */;
-long var136 /* : Int */;
-long var137 /* : Int */;
-long var138 /* : Int */;
-long var140 /* : Int */;
-long var_offset /* var offset: Int */;
-long var141 /* : Int */;
-short int var142 /* : Bool */;
-short int var144 /* : Bool */;
-int cltype145;
-int idtype146;
-const char* var_class_name147;
-short int var148 /* : Bool */;
-long var149 /* : Int */;
-long var150 /* : Int */;
-long var152 /* : Int */;
-long var153 /* : Int */;
-long var154 /* : Int */;
-long var156 /* : Int */;
+short int var134 /* : Bool */;
+short int var135 /* : Bool */;
+short int var137 /* : Bool */;
+val* var138 /* : TKwif */;
+long var139 /* : Int */;
+short int var140 /* : Bool */;
+short int var141 /* : Bool */;
+short int var143 /* : Bool */;
+val* var144 /* : TKwthen */;
+long var145 /* : Int */;
+short int var146 /* : Bool */;
+short int var147 /* : Bool */;
+short int var149 /* : Bool */;
+val* var150 /* : TKwelse */;
+long var151 /* : Int */;
+short int var152 /* : Bool */;
+short int var153 /* : Bool */;
+short int var155 /* : Bool */;
+val* var156 /* : TKwwhile */;
 long var157 /* : Int */;
 short int var158 /* : Bool */;
-short int var160 /* : Bool */;
-int cltype161;
-int idtype162;
-const char* var_class_name163;
+short int var159 /* : Bool */;
+short int var161 /* : Bool */;
+val* var162 /* : TKwloop */;
+long var163 /* : Int */;
 short int var164 /* : Bool */;
-long var165 /* : Int */;
-long var166 /* : Int */;
-long var168 /* : Int */;
+short int var165 /* : Bool */;
+short int var167 /* : Bool */;
+val* var168 /* : TKwfor */;
 long var169 /* : Int */;
-long var170 /* : Int */;
-long var172 /* : Int */;
-long var173 /* : Int */;
-long var174 /* : Int */;
+short int var170 /* : Bool */;
+short int var171 /* : Bool */;
+short int var173 /* : Bool */;
+val* var174 /* : TKwin */;
 long var175 /* : Int */;
-long var177 /* : Int */;
-short int var178 /* : Bool */;
-short int var180 /* : Bool */;
-int cltype181;
-int idtype182;
-const char* var_class_name183;
-short int var184 /* : Bool */;
-long var186 /* : Int */;
-short int var187 /* : Bool */;
+short int var176 /* : Bool */;
+short int var177 /* : Bool */;
+short int var179 /* : Bool */;
+val* var180 /* : TKwand */;
+long var181 /* : Int */;
+short int var182 /* : Bool */;
+short int var183 /* : Bool */;
+short int var185 /* : Bool */;
+val* var186 /* : TKwor */;
+long var187 /* : Int */;
+short int var188 /* : Bool */;
 short int var189 /* : Bool */;
-int cltype190;
-int idtype191;
-const char* var_class_name192;
-short int var193 /* : Bool */;
-long var194 /* : Int */;
-long var_tok /* var tok: Int */;
-long var195 /* : Int */;
-long var196 /* : Int */;
-long var198 /* : Int */;
-short int var199 /* : Bool */;
+short int var191 /* : Bool */;
+val* var192 /* : TKwnot */;
+long var193 /* : Int */;
+short int var194 /* : Bool */;
+short int var195 /* : Bool */;
+short int var197 /* : Bool */;
+val* var198 /* : TKwimplies */;
+long var199 /* : Int */;
+short int var200 /* : Bool */;
 short int var201 /* : Bool */;
-short int var202 /* : Bool */;
-long var203 /* : Int */;
+short int var203 /* : Bool */;
+val* var204 /* : TKwreturn */;
 long var205 /* : Int */;
-long var206 /* : Int */;
-long var207 /* : Int */;
-long var208 /* : Int */;
-long var209 /* : Int */;
+short int var206 /* : Bool */;
+short int var207 /* : Bool */;
+short int var209 /* : Bool */;
+val* var210 /* : TKwcontinue */;
 long var211 /* : Int */;
 short int var212 /* : Bool */;
-short int var214 /* : Bool */;
+short int var213 /* : Bool */;
 short int var215 /* : Bool */;
-val* var216 /* : Location */;
-val* var217 /* : SourceFile */;
-long var218 /* : Int */;
-long var219 /* : Int */;
-long var221 /* : Int */;
-long var222 /* : Int */;
+val* var216 /* : TKwbreak */;
+long var217 /* : Int */;
+short int var218 /* : Bool */;
+short int var219 /* : Bool */;
+short int var221 /* : Bool */;
+val* var222 /* : TKwabort */;
 long var223 /* : Int */;
-long var225 /* : Int */;
-long var226 /* : Int */;
-long var227 /* : Int */;
+short int var224 /* : Bool */;
+short int var225 /* : Bool */;
+short int var227 /* : Bool */;
+val* var228 /* : TKwassert */;
 long var229 /* : Int */;
-val* var_location /* var location: Location */;
-long var230 /* : Int */;
-long var232 /* : Int */;
-long var233 /* : Int */;
-short int var234 /* : Bool */;
+short int var230 /* : Bool */;
+short int var231 /* : Bool */;
+short int var233 /* : Bool */;
+val* var234 /* : TKwnew */;
+long var235 /* : Int */;
 short int var236 /* : Bool */;
-val* var237 /* : null */;
-long var238 /* : Int */;
+short int var237 /* : Bool */;
 short int var239 /* : Bool */;
-short int var241 /* : Bool */;
-val* var242 /* : TEol */;
-long var243 /* : Int */;
-short int var244 /* : Bool */;
-short int var246 /* : Bool */;
-val* var247 /* : TComment */;
-long var248 /* : Int */;
+val* var240 /* : TKwisa */;
+long var241 /* : Int */;
+short int var242 /* : Bool */;
+short int var243 /* : Bool */;
+short int var245 /* : Bool */;
+val* var246 /* : TKwonce */;
+long var247 /* : Int */;
+short int var248 /* : Bool */;
 short int var249 /* : Bool */;
 short int var251 /* : Bool */;
-val* var252 /* : TKwpackage */;
+val* var252 /* : TKwsuper */;
 long var253 /* : Int */;
 short int var254 /* : Bool */;
-short int var256 /* : Bool */;
-val* var257 /* : TKwmodule */;
-long var258 /* : Int */;
-short int var259 /* : Bool */;
+short int var255 /* : Bool */;
+short int var257 /* : Bool */;
+val* var258 /* : TKwself */;
+long var259 /* : Int */;
+short int var260 /* : Bool */;
 short int var261 /* : Bool */;
-val* var262 /* : TKwimport */;
-long var263 /* : Int */;
-short int var264 /* : Bool */;
+short int var263 /* : Bool */;
+val* var264 /* : TKwtrue */;
+long var265 /* : Int */;
 short int var266 /* : Bool */;
-val* var267 /* : TKwclass */;
-long var268 /* : Int */;
+short int var267 /* : Bool */;
 short int var269 /* : Bool */;
-short int var271 /* : Bool */;
-val* var272 /* : TKwabstract */;
-long var273 /* : Int */;
-short int var274 /* : Bool */;
-short int var276 /* : Bool */;
-val* var277 /* : TKwinterface */;
-long var278 /* : Int */;
+val* var270 /* : TKwfalse */;
+long var271 /* : Int */;
+short int var272 /* : Bool */;
+short int var273 /* : Bool */;
+short int var275 /* : Bool */;
+val* var276 /* : TKwnull */;
+long var277 /* : Int */;
+short int var278 /* : Bool */;
 short int var279 /* : Bool */;
 short int var281 /* : Bool */;
-val* var282 /* : TKwenum */;
+val* var282 /* : TKwas */;
 long var283 /* : Int */;
 short int var284 /* : Bool */;
-short int var286 /* : Bool */;
-val* var287 /* : TKwend */;
-long var288 /* : Int */;
-short int var289 /* : Bool */;
+short int var285 /* : Bool */;
+short int var287 /* : Bool */;
+val* var288 /* : TKwnullable */;
+long var289 /* : Int */;
+short int var290 /* : Bool */;
 short int var291 /* : Bool */;
-val* var292 /* : TKwmeth */;
-long var293 /* : Int */;
-short int var294 /* : Bool */;
+short int var293 /* : Bool */;
+val* var294 /* : TKwisset */;
+long var295 /* : Int */;
 short int var296 /* : Bool */;
-val* var297 /* : TKwtype */;
-long var298 /* : Int */;
+short int var297 /* : Bool */;
 short int var299 /* : Bool */;
-short int var301 /* : Bool */;
-val* var302 /* : TKwinit */;
-long var303 /* : Int */;
-short int var304 /* : Bool */;
-short int var306 /* : Bool */;
-val* var307 /* : TKwredef */;
-long var308 /* : Int */;
+val* var300 /* : TKwlabel */;
+long var301 /* : Int */;
+short int var302 /* : Bool */;
+short int var303 /* : Bool */;
+short int var305 /* : Bool */;
+val* var306 /* : TKwdebug */;
+long var307 /* : Int */;
+short int var308 /* : Bool */;
 short int var309 /* : Bool */;
 short int var311 /* : Bool */;
-val* var312 /* : TKwis */;
+val* var312 /* : TOpar */;
 long var313 /* : Int */;
 short int var314 /* : Bool */;
-short int var316 /* : Bool */;
-val* var317 /* : TKwdo */;
-long var318 /* : Int */;
-short int var319 /* : Bool */;
+short int var315 /* : Bool */;
+short int var317 /* : Bool */;
+val* var318 /* : TCpar */;
+long var319 /* : Int */;
+short int var320 /* : Bool */;
 short int var321 /* : Bool */;
-val* var322 /* : TKwreadable */;
-long var323 /* : Int */;
-short int var324 /* : Bool */;
+short int var323 /* : Bool */;
+val* var324 /* : TObra */;
+long var325 /* : Int */;
 short int var326 /* : Bool */;
-val* var327 /* : TKwwritable */;
-long var328 /* : Int */;
+short int var327 /* : Bool */;
 short int var329 /* : Bool */;
-short int var331 /* : Bool */;
-val* var332 /* : TKwvar */;
-long var333 /* : Int */;
-short int var334 /* : Bool */;
-short int var336 /* : Bool */;
-val* var337 /* : TKwintern */;
-long var338 /* : Int */;
+val* var330 /* : TCbra */;
+long var331 /* : Int */;
+short int var332 /* : Bool */;
+short int var333 /* : Bool */;
+short int var335 /* : Bool */;
+val* var336 /* : TComma */;
+long var337 /* : Int */;
+short int var338 /* : Bool */;
 short int var339 /* : Bool */;
 short int var341 /* : Bool */;
-val* var342 /* : TKwextern */;
+val* var342 /* : TColumn */;
 long var343 /* : Int */;
 short int var344 /* : Bool */;
-short int var346 /* : Bool */;
-val* var347 /* : TKwprotected */;
-long var348 /* : Int */;
-short int var349 /* : Bool */;
+short int var345 /* : Bool */;
+short int var347 /* : Bool */;
+val* var348 /* : TQuad */;
+long var349 /* : Int */;
+short int var350 /* : Bool */;
 short int var351 /* : Bool */;
-val* var352 /* : TKwprivate */;
-long var353 /* : Int */;
-short int var354 /* : Bool */;
+short int var353 /* : Bool */;
+val* var354 /* : TAssign */;
+long var355 /* : Int */;
 short int var356 /* : Bool */;
-val* var357 /* : TKwintrude */;
-long var358 /* : Int */;
+short int var357 /* : Bool */;
 short int var359 /* : Bool */;
-short int var361 /* : Bool */;
-val* var362 /* : TKwif */;
-long var363 /* : Int */;
-short int var364 /* : Bool */;
-short int var366 /* : Bool */;
-val* var367 /* : TKwthen */;
-long var368 /* : Int */;
+val* var360 /* : TPluseq */;
+long var361 /* : Int */;
+short int var362 /* : Bool */;
+short int var363 /* : Bool */;
+short int var365 /* : Bool */;
+val* var366 /* : TMinuseq */;
+long var367 /* : Int */;
+short int var368 /* : Bool */;
 short int var369 /* : Bool */;
 short int var371 /* : Bool */;
-val* var372 /* : TKwelse */;
+val* var372 /* : TDotdotdot */;
 long var373 /* : Int */;
 short int var374 /* : Bool */;
-short int var376 /* : Bool */;
-val* var377 /* : TKwwhile */;
-long var378 /* : Int */;
-short int var379 /* : Bool */;
+short int var375 /* : Bool */;
+short int var377 /* : Bool */;
+val* var378 /* : TDotdot */;
+long var379 /* : Int */;
+short int var380 /* : Bool */;
 short int var381 /* : Bool */;
-val* var382 /* : TKwloop */;
-long var383 /* : Int */;
-short int var384 /* : Bool */;
+short int var383 /* : Bool */;
+val* var384 /* : TDot */;
+long var385 /* : Int */;
 short int var386 /* : Bool */;
-val* var387 /* : TKwfor */;
-long var388 /* : Int */;
+short int var387 /* : Bool */;
 short int var389 /* : Bool */;
-short int var391 /* : Bool */;
-val* var392 /* : TKwin */;
-long var393 /* : Int */;
-short int var394 /* : Bool */;
-short int var396 /* : Bool */;
-val* var397 /* : TKwand */;
-long var398 /* : Int */;
+val* var390 /* : TPlus */;
+long var391 /* : Int */;
+short int var392 /* : Bool */;
+short int var393 /* : Bool */;
+short int var395 /* : Bool */;
+val* var396 /* : TMinus */;
+long var397 /* : Int */;
+short int var398 /* : Bool */;
 short int var399 /* : Bool */;
 short int var401 /* : Bool */;
-val* var402 /* : TKwor */;
+val* var402 /* : TStar */;
 long var403 /* : Int */;
 short int var404 /* : Bool */;
-short int var406 /* : Bool */;
-val* var407 /* : TKwnot */;
-long var408 /* : Int */;
-short int var409 /* : Bool */;
+short int var405 /* : Bool */;
+short int var407 /* : Bool */;
+val* var408 /* : TStarstar */;
+long var409 /* : Int */;
+short int var410 /* : Bool */;
 short int var411 /* : Bool */;
-val* var412 /* : TKwimplies */;
-long var413 /* : Int */;
-short int var414 /* : Bool */;
+short int var413 /* : Bool */;
+val* var414 /* : TSlash */;
+long var415 /* : Int */;
 short int var416 /* : Bool */;
-val* var417 /* : TKwreturn */;
-long var418 /* : Int */;
+short int var417 /* : Bool */;
 short int var419 /* : Bool */;
-short int var421 /* : Bool */;
-val* var422 /* : TKwcontinue */;
-long var423 /* : Int */;
-short int var424 /* : Bool */;
-short int var426 /* : Bool */;
-val* var427 /* : TKwbreak */;
-long var428 /* : Int */;
+val* var420 /* : TPercent */;
+long var421 /* : Int */;
+short int var422 /* : Bool */;
+short int var423 /* : Bool */;
+short int var425 /* : Bool */;
+val* var426 /* : TEq */;
+long var427 /* : Int */;
+short int var428 /* : Bool */;
 short int var429 /* : Bool */;
 short int var431 /* : Bool */;
-val* var432 /* : TKwabort */;
+val* var432 /* : TNe */;
 long var433 /* : Int */;
 short int var434 /* : Bool */;
-short int var436 /* : Bool */;
-val* var437 /* : TKwassert */;
-long var438 /* : Int */;
-short int var439 /* : Bool */;
+short int var435 /* : Bool */;
+short int var437 /* : Bool */;
+val* var438 /* : TLt */;
+long var439 /* : Int */;
+short int var440 /* : Bool */;
 short int var441 /* : Bool */;
-val* var442 /* : TKwnew */;
-long var443 /* : Int */;
-short int var444 /* : Bool */;
+short int var443 /* : Bool */;
+val* var444 /* : TLe */;
+long var445 /* : Int */;
 short int var446 /* : Bool */;
-val* var447 /* : TKwisa */;
-long var448 /* : Int */;
+short int var447 /* : Bool */;
 short int var449 /* : Bool */;
-short int var451 /* : Bool */;
-val* var452 /* : TKwonce */;
-long var453 /* : Int */;
-short int var454 /* : Bool */;
-short int var456 /* : Bool */;
-val* var457 /* : TKwsuper */;
-long var458 /* : Int */;
+val* var450 /* : TLl */;
+long var451 /* : Int */;
+short int var452 /* : Bool */;
+short int var453 /* : Bool */;
+short int var455 /* : Bool */;
+val* var456 /* : TGt */;
+long var457 /* : Int */;
+short int var458 /* : Bool */;
 short int var459 /* : Bool */;
 short int var461 /* : Bool */;
-val* var462 /* : TKwself */;
+val* var462 /* : TGe */;
 long var463 /* : Int */;
 short int var464 /* : Bool */;
-short int var466 /* : Bool */;
-val* var467 /* : TKwtrue */;
-long var468 /* : Int */;
-short int var469 /* : Bool */;
+short int var465 /* : Bool */;
+short int var467 /* : Bool */;
+val* var468 /* : TGg */;
+long var469 /* : Int */;
+short int var470 /* : Bool */;
 short int var471 /* : Bool */;
-val* var472 /* : TKwfalse */;
-long var473 /* : Int */;
-short int var474 /* : Bool */;
+short int var473 /* : Bool */;
+val* var474 /* : TStarship */;
+long var475 /* : Int */;
 short int var476 /* : Bool */;
-val* var477 /* : TKwnull */;
-long var478 /* : Int */;
+short int var477 /* : Bool */;
 short int var479 /* : Bool */;
-short int var481 /* : Bool */;
-val* var482 /* : TKwas */;
-long var483 /* : Int */;
-short int var484 /* : Bool */;
-short int var486 /* : Bool */;
-val* var487 /* : TKwnullable */;
-long var488 /* : Int */;
+val* var480 /* : TBang */;
+long var481 /* : Int */;
+short int var482 /* : Bool */;
+short int var483 /* : Bool */;
+short int var485 /* : Bool */;
+val* var486 /* : TAt */;
+long var487 /* : Int */;
+short int var488 /* : Bool */;
 short int var489 /* : Bool */;
 short int var491 /* : Bool */;
-val* var492 /* : TKwisset */;
+val* var492 /* : TClassid */;
 long var493 /* : Int */;
 short int var494 /* : Bool */;
-short int var496 /* : Bool */;
-val* var497 /* : TKwlabel */;
-long var498 /* : Int */;
-short int var499 /* : Bool */;
+short int var495 /* : Bool */;
+short int var497 /* : Bool */;
+val* var498 /* : TId */;
+long var499 /* : Int */;
+short int var500 /* : Bool */;
 short int var501 /* : Bool */;
-val* var502 /* : TKwdebug */;
-long var503 /* : Int */;
-short int var504 /* : Bool */;
+short int var503 /* : Bool */;
+val* var504 /* : TAttrid */;
+long var505 /* : Int */;
 short int var506 /* : Bool */;
-val* var507 /* : TOpar */;
-long var508 /* : Int */;
+short int var507 /* : Bool */;
 short int var509 /* : Bool */;
-short int var511 /* : Bool */;
-val* var512 /* : TCpar */;
-long var513 /* : Int */;
-short int var514 /* : Bool */;
-short int var516 /* : Bool */;
-val* var517 /* : TObra */;
-long var518 /* : Int */;
+val* var510 /* : TNumber */;
+long var511 /* : Int */;
+short int var512 /* : Bool */;
+short int var513 /* : Bool */;
+short int var515 /* : Bool */;
+val* var516 /* : THexNumber */;
+long var517 /* : Int */;
+short int var518 /* : Bool */;
 short int var519 /* : Bool */;
 short int var521 /* : Bool */;
-val* var522 /* : TCbra */;
+val* var522 /* : TFloat */;
 long var523 /* : Int */;
 short int var524 /* : Bool */;
-short int var526 /* : Bool */;
-val* var527 /* : TComma */;
-long var528 /* : Int */;
-short int var529 /* : Bool */;
+short int var525 /* : Bool */;
+short int var527 /* : Bool */;
+val* var528 /* : TString */;
+long var529 /* : Int */;
+short int var530 /* : Bool */;
 short int var531 /* : Bool */;
-val* var532 /* : TColumn */;
-long var533 /* : Int */;
-short int var534 /* : Bool */;
+short int var533 /* : Bool */;
+val* var534 /* : TStartString */;
+long var535 /* : Int */;
 short int var536 /* : Bool */;
-val* var537 /* : TQuad */;
-long var538 /* : Int */;
+short int var537 /* : Bool */;
 short int var539 /* : Bool */;
-short int var541 /* : Bool */;
-val* var542 /* : TAssign */;
-long var543 /* : Int */;
-short int var544 /* : Bool */;
-short int var546 /* : Bool */;
-val* var547 /* : TPluseq */;
-long var548 /* : Int */;
+val* var540 /* : TMidString */;
+long var541 /* : Int */;
+short int var542 /* : Bool */;
+short int var543 /* : Bool */;
+short int var545 /* : Bool */;
+val* var546 /* : TEndString */;
+long var547 /* : Int */;
+short int var548 /* : Bool */;
 short int var549 /* : Bool */;
 short int var551 /* : Bool */;
-val* var552 /* : TMinuseq */;
+val* var552 /* : TChar */;
 long var553 /* : Int */;
 short int var554 /* : Bool */;
-short int var556 /* : Bool */;
-val* var557 /* : TDotdotdot */;
-long var558 /* : Int */;
-short int var559 /* : Bool */;
+short int var555 /* : Bool */;
+short int var557 /* : Bool */;
+val* var558 /* : TBadString */;
+long var559 /* : Int */;
+short int var560 /* : Bool */;
 short int var561 /* : Bool */;
-val* var562 /* : TDotdot */;
-long var563 /* : Int */;
-short int var564 /* : Bool */;
+short int var563 /* : Bool */;
+val* var564 /* : TBadChar */;
+long var565 /* : Int */;
 short int var566 /* : Bool */;
-val* var567 /* : TDot */;
-long var568 /* : Int */;
+short int var567 /* : Bool */;
 short int var569 /* : Bool */;
-short int var571 /* : Bool */;
-val* var572 /* : TPlus */;
-long var573 /* : Int */;
-short int var574 /* : Bool */;
-short int var576 /* : Bool */;
-val* var577 /* : TMinus */;
-long var578 /* : Int */;
-short int var579 /* : Bool */;
-short int var581 /* : Bool */;
-val* var582 /* : TStar */;
-long var583 /* : Int */;
-short int var584 /* : Bool */;
-short int var586 /* : Bool */;
-val* var587 /* : TSlash */;
-long var588 /* : Int */;
-short int var589 /* : Bool */;
-short int var591 /* : Bool */;
-val* var592 /* : TPercent */;
-long var593 /* : Int */;
-short int var594 /* : Bool */;
-short int var596 /* : Bool */;
-val* var597 /* : TEq */;
-long var598 /* : Int */;
-short int var599 /* : Bool */;
-short int var601 /* : Bool */;
-val* var602 /* : TNe */;
-long var603 /* : Int */;
-short int var604 /* : Bool */;
-short int var606 /* : Bool */;
-val* var607 /* : TLt */;
-long var608 /* : Int */;
-short int var609 /* : Bool */;
-short int var611 /* : Bool */;
-val* var612 /* : TLe */;
-long var613 /* : Int */;
-short int var614 /* : Bool */;
-short int var616 /* : Bool */;
-val* var617 /* : TLl */;
-long var618 /* : Int */;
-short int var619 /* : Bool */;
-short int var621 /* : Bool */;
-val* var622 /* : TGt */;
-long var623 /* : Int */;
-short int var624 /* : Bool */;
-short int var626 /* : Bool */;
-val* var627 /* : TGe */;
-long var628 /* : Int */;
-short int var629 /* : Bool */;
-short int var631 /* : Bool */;
-val* var632 /* : TGg */;
-long var633 /* : Int */;
-short int var634 /* : Bool */;
-short int var636 /* : Bool */;
-val* var637 /* : TStarship */;
-long var638 /* : Int */;
-short int var639 /* : Bool */;
-short int var641 /* : Bool */;
-val* var642 /* : TBang */;
-long var643 /* : Int */;
-short int var644 /* : Bool */;
-short int var646 /* : Bool */;
-val* var647 /* : TAt */;
-long var648 /* : Int */;
-short int var649 /* : Bool */;
-short int var651 /* : Bool */;
-val* var652 /* : TClassid */;
-long var653 /* : Int */;
-short int var654 /* : Bool */;
-short int var656 /* : Bool */;
-val* var657 /* : TId */;
-long var658 /* : Int */;
-short int var659 /* : Bool */;
-short int var661 /* : Bool */;
-val* var662 /* : TAttrid */;
-long var663 /* : Int */;
-short int var664 /* : Bool */;
-short int var666 /* : Bool */;
-val* var667 /* : TNumber */;
-long var668 /* : Int */;
-short int var669 /* : Bool */;
-short int var671 /* : Bool */;
-val* var672 /* : TFloat */;
-long var673 /* : Int */;
-short int var674 /* : Bool */;
-short int var676 /* : Bool */;
-val* var677 /* : TString */;
-long var678 /* : Int */;
-short int var679 /* : Bool */;
-short int var681 /* : Bool */;
-val* var682 /* : TStartString */;
-long var683 /* : Int */;
-short int var684 /* : Bool */;
-short int var686 /* : Bool */;
-val* var687 /* : TMidString */;
-long var688 /* : Int */;
-short int var689 /* : Bool */;
-short int var691 /* : Bool */;
-val* var692 /* : TEndString */;
-long var693 /* : Int */;
-short int var694 /* : Bool */;
-short int var696 /* : Bool */;
-val* var697 /* : TChar */;
-long var698 /* : Int */;
-short int var699 /* : Bool */;
-short int var701 /* : Bool */;
-val* var702 /* : TBadString */;
-long var703 /* : Int */;
-short int var704 /* : Bool */;
-short int var706 /* : Bool */;
-val* var707 /* : TBadChar */;
-long var708 /* : Int */;
-short int var709 /* : Bool */;
-short int var711 /* : Bool */;
-val* var712 /* : TExternCodeSegment */;
-val* var713 /* : Location */;
-val* var714 /* : SourceFile */;
-long var715 /* : Int */;
-long var716 /* : Int */;
-long var718 /* : Int */;
-long var719 /* : Int */;
-long var720 /* : Int */;
-long var722 /* : Int */;
-long var723 /* : Int */;
-long var724 /* : Int */;
-long var726 /* : Int */;
-long var727 /* : Int */;
-long var728 /* : Int */;
-long var730 /* : Int */;
-val* var_location731 /* var location: Location */;
-short int var732 /* : Bool */;
-short int var734 /* : Bool */;
-int cltype735;
-int idtype736;
-const char* var_class_name737;
-short int var738 /* : Bool */;
-long var739 /* : Int */;
-long var741 /* : Int */;
-val* var742 /* : String */;
-val* var_text /* var text: String */;
-val* var743 /* : ALexerError */;
-val* var744 /* : Array[Object] */;
-long var745 /* : Int */;
-val* var_ /* var : Array[Object] */;
-static val* varonce;
-val* var746 /* : String */;
-char* var747 /* : NativeString */;
-long var748 /* : Int */;
-val* var749 /* : String */;
-static val* varonce750;
-val* var751 /* : String */;
-char* var752 /* : NativeString */;
-long var753 /* : Int */;
-val* var754 /* : String */;
-val* var755 /* : String */;
-val* var_token /* var token: ALexerError */;
-val* var756 /* : EOF */;
-val* var_token757 /* var token: EOF */;
-var1 = 0;
-var_dfa_state = var1;
-var2 = self->attrs[COLOR_lexer__Lexer___stream_pos].l; /* _stream_pos on <self:Lexer> */
-var_sp = var2;
-var_start_stream_pos = var_sp;
-var3 = self->attrs[COLOR_lexer__Lexer___pos].l; /* _pos on <self:Lexer> */
-var_start_pos = var3;
-var4 = self->attrs[COLOR_lexer__Lexer___line].l; /* _line on <self:Lexer> */
-var_start_line = var4;
-var5 = self->attrs[COLOR_lexer__Lexer___file].val; /* _file on <self:Lexer> */
-if (var5 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _file");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1287);
-show_backtrace(1);
+val* var570 /* : TExternCodeSegment */;
+var_accept_token = p0;
+var_location = p1;
+var1 = 1;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var1) on <var_accept_token:Int> */
+var5 = var_accept_token == var1;
+var3 = var5;
+goto RET_LABEL4;
+RET_LABEL4:(void)0;
+}
+var2 = var3;
+}
+if (var2){
+var6 = NEW_parser_nodes__TEol(&type_parser_nodes__TEol);
+{
+lexer__TEol__init_tk(var6, var_location); /* Direct call lexer#TEol#init_tk on <var6:TEol>*/
+}
+var = var6;
+goto RET_LABEL;
+} else {
 }
-var6 = ((val* (*)(val*))(var5->class->vft[COLOR_location__SourceFile__string]))(var5) /* string on <var5:SourceFile>*/;
-var_string = var6;
-var7 = ((long (*)(val*))(var_string->class->vft[COLOR_abstract_collection__Collection__length]))(var_string) /* length on <var_string:String>*/;
-var_string_len = var7;
-var8 = 1;
-{ /* Inline kernel#Int#unary - (var8) */
-var11 = -var8;
+var7 = 2;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var7) on <var_accept_token:Int> */
+var11 = var_accept_token == var7;
 var9 = var11;
 goto RET_LABEL10;
 RET_LABEL10:(void)0;
 }
-var_accept_state = var9;
-var12 = 1;
-{ /* Inline kernel#Int#unary - (var12) */
-var15 = -var12;
-var13 = var15;
-goto RET_LABEL14;
-RET_LABEL14:(void)0;
-}
-var_accept_token = var13;
-var16 = 1;
-{ /* Inline kernel#Int#unary - (var16) */
-var19 = -var16;
-var17 = var19;
-goto RET_LABEL18;
-RET_LABEL18:(void)0;
-}
-var_accept_length = var17;
-var20 = 1;
-{ /* Inline kernel#Int#unary - (var20) */
-var23 = -var20;
-var21 = var23;
-goto RET_LABEL22;
-RET_LABEL22:(void)0;
-}
-var_accept_pos = var21;
-var24 = 1;
-{ /* Inline kernel#Int#unary - (var24) */
-var27 = -var24;
-var25 = var27;
-goto RET_LABEL26;
-RET_LABEL26:(void)0;
-}
-var_accept_line = var25;
-for(;;) {
-{ /* Inline kernel#Int#>= (var_sp,var_string_len) */
-/* Covariant cast for argument 0 (i) <var_string_len:Int> isa OTHER */
-/* <var_string_len:Int> isa OTHER */
-var30 = 1; /* easy <var_string_len:Int> isa OTHER*/
-if (!var30) {
-var_class_name = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 262);
-show_backtrace(1);
-}
-var31 = var_sp >= var_string_len;
-var28 = var31;
-goto RET_LABEL29;
-RET_LABEL29:(void)0;
+var8 = var9;
 }
-if (var28){
-var32 = 1;
-{ /* Inline kernel#Int#unary - (var32) */
-var35 = -var32;
-var33 = var35;
-goto RET_LABEL34;
-RET_LABEL34:(void)0;
+if (var8){
+var12 = NEW_parser_nodes__TComment(&type_parser_nodes__TComment);
+{
+lexer__TComment__init_tk(var12, var_location); /* Direct call lexer#TComment#init_tk on <var12:TComment>*/
 }
-var_dfa_state = var33;
+var = var12;
+goto RET_LABEL;
 } else {
-var36 = ((val* (*)(val*, long))(var_string->class->vft[COLOR_abstract_collection__SequenceRead___91d_93d]))(var_string, var_sp) /* [] on <var_string:String>*/;
-{ /* Inline kernel#Char#ascii (var36) */
-var39 = ((struct instance_kernel__Char*)var36)->value; /* autounbox from nullable Object to Char */;
-var40 = (unsigned char)var39;
-var37 = var40;
-goto RET_LABEL38;
-RET_LABEL38:(void)0;
-}
-var_c = var37;
-var41 = 1;
-{ /* Inline kernel#Int#+ (var_sp,var41) */
-var44 = var_sp + var41;
-var42 = var44;
-goto RET_LABEL43;
-RET_LABEL43:(void)0;
-}
-var_sp = var42;
-var45 = self->attrs[COLOR_lexer__Lexer___cr].s; /* _cr on <self:Lexer> */
-var_cr = var45;
-var46 = self->attrs[COLOR_lexer__Lexer___line].l; /* _line on <self:Lexer> */
-var_line = var46;
-var47 = self->attrs[COLOR_lexer__Lexer___pos].l; /* _pos on <self:Lexer> */
-var_pos = var47;
-var48 = 10;
-{ /* Inline kernel#Int#== (var_c,var48) */
-var51 = var_c == var48;
-var49 = var51;
-goto RET_LABEL50;
-RET_LABEL50:(void)0;
-}
-if (var49){
-if (var_cr){
-var52 = 0;
-var_cr = var52;
-var53 = self->attrs[COLOR_lexer__Lexer___file].val; /* _file on <self:Lexer> */
-if (var53 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _file");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1309);
-show_backtrace(1);
 }
-var54 = ((val* (*)(val*))(var53->class->vft[COLOR_location__SourceFile__line_starts]))(var53) /* line_starts on <var53:SourceFile>*/;
-var55 = BOX_kernel__Int(var_sp); /* autobox from Int to nullable Object */
-((void (*)(val*, long, val*))(var54->class->vft[COLOR_abstract_collection__Sequence___91d_93d_61d]))(var54, var_line, var55) /* []= on <var54:Array[Int]>*/;
-} else {
-var56 = 1;
-{ /* Inline kernel#Int#+ (var_line,var56) */
-var59 = var_line + var56;
-var57 = var59;
-goto RET_LABEL58;
-RET_LABEL58:(void)0;
+var13 = 3;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var13) on <var_accept_token:Int> */
+var17 = var_accept_token == var13;
+var15 = var17;
+goto RET_LABEL16;
+RET_LABEL16:(void)0;
 }
-var_line = var57;
-var60 = 0;
-var_pos = var60;
-var61 = self->attrs[COLOR_lexer__Lexer___file].val; /* _file on <self:Lexer> */
-if (var61 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _file");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1313);
-show_backtrace(1);
+var14 = var15;
 }
-var62 = ((val* (*)(val*))(var61->class->vft[COLOR_location__SourceFile__line_starts]))(var61) /* line_starts on <var61:SourceFile>*/;
-var63 = BOX_kernel__Int(var_sp); /* autobox from Int to nullable Object */
-((void (*)(val*, long, val*))(var62->class->vft[COLOR_abstract_collection__Sequence___91d_93d_61d]))(var62, var_line, var63) /* []= on <var62:Array[Int]>*/;
+if (var14){
+var18 = NEW_parser_nodes__TKwpackage(&type_parser_nodes__TKwpackage);
+{
+lexer__TKwpackage__init_tk(var18, var_location); /* Direct call lexer#TKwpackage#init_tk on <var18:TKwpackage>*/
 }
+var = var18;
+goto RET_LABEL;
 } else {
-var64 = 13;
-{ /* Inline kernel#Int#== (var_c,var64) */
-var67 = var_c == var64;
-var65 = var67;
-goto RET_LABEL66;
-RET_LABEL66:(void)0;
-}
-if (var65){
-var68 = 1;
-{ /* Inline kernel#Int#+ (var_line,var68) */
-var71 = var_line + var68;
-var69 = var71;
-goto RET_LABEL70;
-RET_LABEL70:(void)0;
 }
-var_line = var69;
-var72 = 0;
-var_pos = var72;
-var73 = 1;
-var_cr = var73;
-var74 = self->attrs[COLOR_lexer__Lexer___file].val; /* _file on <self:Lexer> */
-if (var74 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _file");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1319);
-show_backtrace(1);
+var19 = 4;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var19) on <var_accept_token:Int> */
+var23 = var_accept_token == var19;
+var21 = var23;
+goto RET_LABEL22;
+RET_LABEL22:(void)0;
 }
-var75 = ((val* (*)(val*))(var74->class->vft[COLOR_location__SourceFile__line_starts]))(var74) /* line_starts on <var74:SourceFile>*/;
-var76 = BOX_kernel__Int(var_sp); /* autobox from Int to nullable Object */
-((void (*)(val*, long, val*))(var75->class->vft[COLOR_abstract_collection__Sequence___91d_93d_61d]))(var75, var_line, var76) /* []= on <var75:Array[Int]>*/;
-} else {
-var77 = 1;
-{ /* Inline kernel#Int#+ (var_pos,var77) */
-var80 = var_pos + var77;
-var78 = var80;
-goto RET_LABEL79;
-RET_LABEL79:(void)0;
-}
-var_pos = var78;
-var81 = 0;
-var_cr = var81;
-}
-}
-for(;;) {
-var_old_state = var_dfa_state;
-var82 = 1;
-{ /* Inline kernel#Int#unary - (var82) */
-var85 = -var82;
-var83 = var85;
-goto RET_LABEL84;
-RET_LABEL84:(void)0;
-}
-{ /* Inline kernel#Int#< (var_dfa_state,var83) */
-/* Covariant cast for argument 0 (i) <var83:Int> isa OTHER */
-/* <var83:Int> isa OTHER */
-var88 = 1; /* easy <var83:Int> isa OTHER*/
-if (!var88) {
-var_class_name91 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name91);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 261);
-show_backtrace(1);
+var20 = var21;
 }
-var92 = var_dfa_state < var83;
-var86 = var92;
-goto RET_LABEL87;
-RET_LABEL87:(void)0;
+if (var20){
+var24 = NEW_parser_nodes__TKwmodule(&type_parser_nodes__TKwmodule);
+{
+lexer__TKwmodule__init_tk(var24, var_location); /* Direct call lexer#TKwmodule#init_tk on <var24:TKwmodule>*/
 }
-if (var86){
-var93 = 2;
-{ /* Inline kernel#Int#unary - (var93) */
-var96 = -var93;
-var94 = var96;
-goto RET_LABEL95;
-RET_LABEL95:(void)0;
-}
-{ /* Inline kernel#Int#- (var94,var_dfa_state) */
-var99 = var94 - var_dfa_state;
-var97 = var99;
-goto RET_LABEL98;
-RET_LABEL98:(void)0;
-}
-var_old_state = var97;
+var = var24;
+goto RET_LABEL;
 } else {
 }
-var100 = 1;
-{ /* Inline kernel#Int#unary - (var100) */
-var103 = -var100;
-var101 = var103;
-goto RET_LABEL102;
-RET_LABEL102:(void)0;
-}
-var_dfa_state = var101;
-var104 = 0;
-var_low = var104;
-var105 = 0;
-var106 = ((long (*)(val*, long, long))(self->class->vft[COLOR_tables__TablesCapable__lexer_goto]))(self, var_old_state, var105) /* lexer_goto on <self:Lexer>*/;
-var107 = 1;
-{ /* Inline kernel#Int#- (var106,var107) */
-var110 = var106 - var107;
-var108 = var110;
-goto RET_LABEL109;
-RET_LABEL109:(void)0;
-}
-var_high = var108;
-var111 = 0;
-{ /* Inline kernel#Int#>= (var_high,var111) */
-/* Covariant cast for argument 0 (i) <var111:Int> isa OTHER */
-/* <var111:Int> isa OTHER */
-var114 = 1; /* easy <var111:Int> isa OTHER*/
-if (!var114) {
-var_class_name117 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name117);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 262);
-show_backtrace(1);
+var25 = 5;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var25) on <var_accept_token:Int> */
+var29 = var_accept_token == var25;
+var27 = var29;
+goto RET_LABEL28;
+RET_LABEL28:(void)0;
 }
-var118 = var_high >= var111;
-var112 = var118;
-goto RET_LABEL113;
-RET_LABEL113:(void)0;
-}
-if (var112){
-for(;;) {
-{ /* Inline kernel#Int#<= (var_low,var_high) */
-/* Covariant cast for argument 0 (i) <var_high:Int> isa OTHER */
-/* <var_high:Int> isa OTHER */
-var121 = 1; /* easy <var_high:Int> isa OTHER*/
-if (!var121) {
-var_class_name124 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name124);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 260);
-show_backtrace(1);
+var26 = var27;
 }
-var125 = var_low <= var_high;
-var119 = var125;
-goto RET_LABEL120;
-RET_LABEL120:(void)0;
-}
-if (!var119) break;
-{ /* Inline kernel#Int#+ (var_low,var_high) */
-var128 = var_low + var_high;
-var126 = var128;
-goto RET_LABEL127;
-RET_LABEL127:(void)0;
-}
-var129 = 2;
-{ /* Inline kernel#Int#/ (var126,var129) */
-var132 = var126 / var129;
-var130 = var132;
-goto RET_LABEL131;
-RET_LABEL131:(void)0;
-}
-var_middle = var130;
-var133 = 3;
-{ /* Inline kernel#Int#* (var_middle,var133) */
-var136 = var_middle * var133;
-var134 = var136;
-goto RET_LABEL135;
-RET_LABEL135:(void)0;
-}
-var137 = 1;
-{ /* Inline kernel#Int#+ (var134,var137) */
-var140 = var134 + var137;
-var138 = var140;
-goto RET_LABEL139;
-RET_LABEL139:(void)0;
-}
-var_offset = var138;
-var141 = ((long (*)(val*, long, long))(self->class->vft[COLOR_tables__TablesCapable__lexer_goto]))(self, var_old_state, var_offset) /* lexer_goto on <self:Lexer>*/;
-{ /* Inline kernel#Int#< (var_c,var141) */
-/* Covariant cast for argument 0 (i) <var141:Int> isa OTHER */
-/* <var141:Int> isa OTHER */
-var144 = 1; /* easy <var141:Int> isa OTHER*/
-if (!var144) {
-var_class_name147 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name147);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 261);
-show_backtrace(1);
+if (var26){
+var30 = NEW_parser_nodes__TKwimport(&type_parser_nodes__TKwimport);
+{
+lexer__TKwimport__init_tk(var30, var_location); /* Direct call lexer#TKwimport#init_tk on <var30:TKwimport>*/
 }
-var148 = var_c < var141;
-var142 = var148;
-goto RET_LABEL143;
-RET_LABEL143:(void)0;
+var = var30;
+goto RET_LABEL;
+} else {
 }
-if (var142){
-var149 = 1;
-{ /* Inline kernel#Int#- (var_middle,var149) */
-var152 = var_middle - var149;
-var150 = var152;
-goto RET_LABEL151;
-RET_LABEL151:(void)0;
+var31 = 6;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var31) on <var_accept_token:Int> */
+var35 = var_accept_token == var31;
+var33 = var35;
+goto RET_LABEL34;
+RET_LABEL34:(void)0;
 }
-var_high = var150;
-} else {
-var153 = 1;
-{ /* Inline kernel#Int#+ (var_offset,var153) */
-var156 = var_offset + var153;
-var154 = var156;
-goto RET_LABEL155;
-RET_LABEL155:(void)0;
-}
-var157 = ((long (*)(val*, long, long))(self->class->vft[COLOR_tables__TablesCapable__lexer_goto]))(self, var_old_state, var154) /* lexer_goto on <self:Lexer>*/;
-{ /* Inline kernel#Int#> (var_c,var157) */
-/* Covariant cast for argument 0 (i) <var157:Int> isa OTHER */
-/* <var157:Int> isa OTHER */
-var160 = 1; /* easy <var157:Int> isa OTHER*/
-if (!var160) {
-var_class_name163 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name163);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 263);
-show_backtrace(1);
+var32 = var33;
 }
-var164 = var_c > var157;
-var158 = var164;
-goto RET_LABEL159;
-RET_LABEL159:(void)0;
+if (var32){
+var36 = NEW_parser_nodes__TKwclass(&type_parser_nodes__TKwclass);
+{
+lexer__TKwclass__init_tk(var36, var_location); /* Direct call lexer#TKwclass#init_tk on <var36:TKwclass>*/
 }
-if (var158){
-var165 = 1;
-{ /* Inline kernel#Int#+ (var_middle,var165) */
-var168 = var_middle + var165;
-var166 = var168;
-goto RET_LABEL167;
-RET_LABEL167:(void)0;
-}
-var_low = var166;
+var = var36;
+goto RET_LABEL;
 } else {
-var169 = 2;
-{ /* Inline kernel#Int#+ (var_offset,var169) */
-var172 = var_offset + var169;
-var170 = var172;
-goto RET_LABEL171;
-RET_LABEL171:(void)0;
 }
-var173 = ((long (*)(val*, long, long))(self->class->vft[COLOR_tables__TablesCapable__lexer_goto]))(self, var_old_state, var170) /* lexer_goto on <self:Lexer>*/;
-var_dfa_state = var173;
-goto BREAK_label;
+var37 = 7;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var37) on <var_accept_token:Int> */
+var41 = var_accept_token == var37;
+var39 = var41;
+goto RET_LABEL40;
+RET_LABEL40:(void)0;
 }
+var38 = var39;
 }
-CONTINUE_label: (void)0;
+if (var38){
+var42 = NEW_parser_nodes__TKwabstract(&type_parser_nodes__TKwabstract);
+{
+lexer__TKwabstract__init_tk(var42, var_location); /* Direct call lexer#TKwabstract#init_tk on <var42:TKwabstract>*/
 }
-BREAK_label: (void)0;
+var = var42;
+goto RET_LABEL;
 } else {
 }
-var174 = 2;
-{ /* Inline kernel#Int#unary - (var174) */
-var177 = -var174;
-var175 = var177;
-goto RET_LABEL176;
-RET_LABEL176:(void)0;
-}
-{ /* Inline kernel#Int#> (var_dfa_state,var175) */
-/* Covariant cast for argument 0 (i) <var175:Int> isa OTHER */
-/* <var175:Int> isa OTHER */
-var180 = 1; /* easy <var175:Int> isa OTHER*/
-if (!var180) {
-var_class_name183 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name183);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 263);
-show_backtrace(1);
-}
-var184 = var_dfa_state > var175;
-var178 = var184;
-goto RET_LABEL179;
-RET_LABEL179:(void)0;
+var43 = 8;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var43) on <var_accept_token:Int> */
+var47 = var_accept_token == var43;
+var45 = var47;
+goto RET_LABEL46;
+RET_LABEL46:(void)0;
 }
-if (var178){
-goto BREAK_label185;
-} else {
+var44 = var45;
 }
-CONTINUE_label185: (void)0;
-}
-BREAK_label185: (void)0;
-self->attrs[COLOR_lexer__Lexer___cr].s = var_cr; /* _cr on <self:Lexer> */
-self->attrs[COLOR_lexer__Lexer___line].l = var_line; /* _line on <self:Lexer> */
-self->attrs[COLOR_lexer__Lexer___pos].l = var_pos; /* _pos on <self:Lexer> */
-}
-var186 = 0;
-{ /* Inline kernel#Int#>= (var_dfa_state,var186) */
-/* Covariant cast for argument 0 (i) <var186:Int> isa OTHER */
-/* <var186:Int> isa OTHER */
-var189 = 1; /* easy <var186:Int> isa OTHER*/
-if (!var189) {
-var_class_name192 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name192);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 262);
-show_backtrace(1);
+if (var44){
+var48 = NEW_parser_nodes__TKwinterface(&type_parser_nodes__TKwinterface);
+{
+lexer__TKwinterface__init_tk(var48, var_location); /* Direct call lexer#TKwinterface#init_tk on <var48:TKwinterface>*/
 }
-var193 = var_dfa_state >= var186;
-var187 = var193;
-goto RET_LABEL188;
-RET_LABEL188:(void)0;
-}
-if (var187){
-var194 = ((long (*)(val*, long))(self->class->vft[COLOR_tables__TablesCapable__lexer_accept]))(self, var_dfa_state) /* lexer_accept on <self:Lexer>*/;
-var_tok = var194;
-var195 = 1;
-{ /* Inline kernel#Int#unary - (var195) */
-var198 = -var195;
-var196 = var198;
-goto RET_LABEL197;
-RET_LABEL197:(void)0;
-}
-{ /* Inline kernel#Int#!= (var_tok,var196) */
-var201 = var_tok == var196;
-var202 = !var201;
-var199 = var202;
-goto RET_LABEL200;
-RET_LABEL200:(void)0;
-}
-if (var199){
-var_accept_state = var_dfa_state;
-var_accept_token = var_tok;
-{ /* Inline kernel#Int#- (var_sp,var_start_stream_pos) */
-var205 = var_sp - var_start_stream_pos;
-var203 = var205;
-goto RET_LABEL204;
-RET_LABEL204:(void)0;
-}
-var_accept_length = var203;
-var206 = self->attrs[COLOR_lexer__Lexer___pos].l; /* _pos on <self:Lexer> */
-var_accept_pos = var206;
-var207 = self->attrs[COLOR_lexer__Lexer___line].l; /* _line on <self:Lexer> */
-var_accept_line = var207;
+var = var48;
+goto RET_LABEL;
 } else {
 }
-} else {
-var208 = 1;
-{ /* Inline kernel#Int#unary - (var208) */
-var211 = -var208;
-var209 = var211;
-goto RET_LABEL210;
-RET_LABEL210:(void)0;
-}
-{ /* Inline kernel#Int#!= (var_accept_state,var209) */
-var214 = var_accept_state == var209;
-var215 = !var214;
-var212 = var215;
-goto RET_LABEL213;
-RET_LABEL213:(void)0;
+var49 = 9;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var49) on <var_accept_token:Int> */
+var53 = var_accept_token == var49;
+var51 = var53;
+goto RET_LABEL52;
+RET_LABEL52:(void)0;
 }
-if (var212){
-var216 = NEW_location__Location(&type_location__Location);
-var217 = self->attrs[COLOR_lexer__Lexer___file].val; /* _file on <self:Lexer> */
-if (var217 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _file");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1370);
-show_backtrace(1);
+var50 = var51;
 }
-var218 = 1;
-{ /* Inline kernel#Int#+ (var_start_line,var218) */
-var221 = var_start_line + var218;
-var219 = var221;
-goto RET_LABEL220;
-RET_LABEL220:(void)0;
+if (var50){
+var54 = NEW_parser_nodes__TKwenum(&type_parser_nodes__TKwenum);
+{
+lexer__TKwenum__init_tk(var54, var_location); /* Direct call lexer#TKwenum#init_tk on <var54:TKwenum>*/
 }
-var222 = 1;
-{ /* Inline kernel#Int#+ (var_accept_line,var222) */
-var225 = var_accept_line + var222;
-var223 = var225;
-goto RET_LABEL224;
-RET_LABEL224:(void)0;
-}
-var226 = 1;
-{ /* Inline kernel#Int#+ (var_start_pos,var226) */
-var229 = var_start_pos + var226;
-var227 = var229;
-goto RET_LABEL228;
-RET_LABEL228:(void)0;
-}
-((void (*)(val*, val*, long, long, long, long))(var216->class->vft[COLOR_location__Location__init]))(var216, var217, var219, var223, var227, var_accept_pos) /* init on <var216:Location>*/;
-var_location = var216;
-self->attrs[COLOR_lexer__Lexer___pos].l = var_accept_pos; /* _pos on <self:Lexer> */
-self->attrs[COLOR_lexer__Lexer___line].l = var_accept_line; /* _line on <self:Lexer> */
-{ /* Inline kernel#Int#+ (var_start_stream_pos,var_accept_length) */
-var232 = var_start_stream_pos + var_accept_length;
-var230 = var232;
-goto RET_LABEL231;
-RET_LABEL231:(void)0;
-}
-self->attrs[COLOR_lexer__Lexer___stream_pos].l = var230; /* _stream_pos on <self:Lexer> */
-var233 = 0;
-{ /* Inline kernel#Int#== (var_accept_token,var233) */
-var236 = var_accept_token == var233;
-var234 = var236;
-goto RET_LABEL235;
-RET_LABEL235:(void)0;
-}
-if (var234){
-var237 = NULL;
-var = var237;
+var = var54;
 goto RET_LABEL;
 } else {
 }
-var238 = 1;
-{ /* Inline kernel#Int#== (var_accept_token,var238) */
-var241 = var_accept_token == var238;
-var239 = var241;
-goto RET_LABEL240;
-RET_LABEL240:(void)0;
+var55 = 10;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var55) on <var_accept_token:Int> */
+var59 = var_accept_token == var55;
+var57 = var59;
+goto RET_LABEL58;
+RET_LABEL58:(void)0;
 }
-if (var239){
-var242 = NEW_parser_nodes__TEol(&type_parser_nodes__TEol);
-((void (*)(val*, val*))(var242->class->vft[COLOR_lexer__TEol__init_tk]))(var242, var_location) /* init_tk on <var242:TEol>*/;
-var = var242;
-goto RET_LABEL;
-} else {
+var56 = var57;
 }
-var243 = 2;
-{ /* Inline kernel#Int#== (var_accept_token,var243) */
-var246 = var_accept_token == var243;
-var244 = var246;
-goto RET_LABEL245;
-RET_LABEL245:(void)0;
+if (var56){
+var60 = NEW_parser_nodes__TKwend(&type_parser_nodes__TKwend);
+{
+lexer__TKwend__init_tk(var60, var_location); /* Direct call lexer#TKwend#init_tk on <var60:TKwend>*/
 }
-if (var244){
-var247 = NEW_parser_nodes__TComment(&type_parser_nodes__TComment);
-((void (*)(val*, val*))(var247->class->vft[COLOR_lexer__TComment__init_tk]))(var247, var_location) /* init_tk on <var247:TComment>*/;
-var = var247;
+var = var60;
 goto RET_LABEL;
 } else {
 }
-var248 = 3;
-{ /* Inline kernel#Int#== (var_accept_token,var248) */
-var251 = var_accept_token == var248;
-var249 = var251;
-goto RET_LABEL250;
-RET_LABEL250:(void)0;
+var61 = 11;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var61) on <var_accept_token:Int> */
+var65 = var_accept_token == var61;
+var63 = var65;
+goto RET_LABEL64;
+RET_LABEL64:(void)0;
 }
-if (var249){
-var252 = NEW_parser_nodes__TKwpackage(&type_parser_nodes__TKwpackage);
-((void (*)(val*, val*))(var252->class->vft[COLOR_lexer__TKwpackage__init_tk]))(var252, var_location) /* init_tk on <var252:TKwpackage>*/;
-var = var252;
-goto RET_LABEL;
-} else {
+var62 = var63;
 }
-var253 = 4;
-{ /* Inline kernel#Int#== (var_accept_token,var253) */
-var256 = var_accept_token == var253;
-var254 = var256;
-goto RET_LABEL255;
-RET_LABEL255:(void)0;
+if (var62){
+var66 = NEW_parser_nodes__TKwmeth(&type_parser_nodes__TKwmeth);
+{
+lexer__TKwmeth__init_tk(var66, var_location); /* Direct call lexer#TKwmeth#init_tk on <var66:TKwmeth>*/
 }
-if (var254){
-var257 = NEW_parser_nodes__TKwmodule(&type_parser_nodes__TKwmodule);
-((void (*)(val*, val*))(var257->class->vft[COLOR_lexer__TKwmodule__init_tk]))(var257, var_location) /* init_tk on <var257:TKwmodule>*/;
-var = var257;
+var = var66;
 goto RET_LABEL;
 } else {
 }
-var258 = 5;
-{ /* Inline kernel#Int#== (var_accept_token,var258) */
-var261 = var_accept_token == var258;
-var259 = var261;
-goto RET_LABEL260;
-RET_LABEL260:(void)0;
+var67 = 12;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var67) on <var_accept_token:Int> */
+var71 = var_accept_token == var67;
+var69 = var71;
+goto RET_LABEL70;
+RET_LABEL70:(void)0;
 }
-if (var259){
-var262 = NEW_parser_nodes__TKwimport(&type_parser_nodes__TKwimport);
-((void (*)(val*, val*))(var262->class->vft[COLOR_lexer__TKwimport__init_tk]))(var262, var_location) /* init_tk on <var262:TKwimport>*/;
-var = var262;
-goto RET_LABEL;
-} else {
+var68 = var69;
 }
-var263 = 6;
-{ /* Inline kernel#Int#== (var_accept_token,var263) */
-var266 = var_accept_token == var263;
-var264 = var266;
-goto RET_LABEL265;
-RET_LABEL265:(void)0;
+if (var68){
+var72 = NEW_parser_nodes__TKwtype(&type_parser_nodes__TKwtype);
+{
+lexer__TKwtype__init_tk(var72, var_location); /* Direct call lexer#TKwtype#init_tk on <var72:TKwtype>*/
 }
-if (var264){
-var267 = NEW_parser_nodes__TKwclass(&type_parser_nodes__TKwclass);
-((void (*)(val*, val*))(var267->class->vft[COLOR_lexer__TKwclass__init_tk]))(var267, var_location) /* init_tk on <var267:TKwclass>*/;
-var = var267;
+var = var72;
 goto RET_LABEL;
 } else {
 }
-var268 = 7;
-{ /* Inline kernel#Int#== (var_accept_token,var268) */
-var271 = var_accept_token == var268;
-var269 = var271;
-goto RET_LABEL270;
-RET_LABEL270:(void)0;
+var73 = 13;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var73) on <var_accept_token:Int> */
+var77 = var_accept_token == var73;
+var75 = var77;
+goto RET_LABEL76;
+RET_LABEL76:(void)0;
 }
-if (var269){
-var272 = NEW_parser_nodes__TKwabstract(&type_parser_nodes__TKwabstract);
-((void (*)(val*, val*))(var272->class->vft[COLOR_lexer__TKwabstract__init_tk]))(var272, var_location) /* init_tk on <var272:TKwabstract>*/;
-var = var272;
-goto RET_LABEL;
-} else {
+var74 = var75;
 }
-var273 = 8;
-{ /* Inline kernel#Int#== (var_accept_token,var273) */
-var276 = var_accept_token == var273;
-var274 = var276;
-goto RET_LABEL275;
-RET_LABEL275:(void)0;
+if (var74){
+var78 = NEW_parser_nodes__TKwinit(&type_parser_nodes__TKwinit);
+{
+lexer__TKwinit__init_tk(var78, var_location); /* Direct call lexer#TKwinit#init_tk on <var78:TKwinit>*/
 }
-if (var274){
-var277 = NEW_parser_nodes__TKwinterface(&type_parser_nodes__TKwinterface);
-((void (*)(val*, val*))(var277->class->vft[COLOR_lexer__TKwinterface__init_tk]))(var277, var_location) /* init_tk on <var277:TKwinterface>*/;
-var = var277;
+var = var78;
 goto RET_LABEL;
 } else {
 }
-var278 = 9;
-{ /* Inline kernel#Int#== (var_accept_token,var278) */
-var281 = var_accept_token == var278;
-var279 = var281;
-goto RET_LABEL280;
-RET_LABEL280:(void)0;
+var79 = 14;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var79) on <var_accept_token:Int> */
+var83 = var_accept_token == var79;
+var81 = var83;
+goto RET_LABEL82;
+RET_LABEL82:(void)0;
 }
-if (var279){
-var282 = NEW_parser_nodes__TKwenum(&type_parser_nodes__TKwenum);
-((void (*)(val*, val*))(var282->class->vft[COLOR_lexer__TKwenum__init_tk]))(var282, var_location) /* init_tk on <var282:TKwenum>*/;
-var = var282;
-goto RET_LABEL;
-} else {
+var80 = var81;
 }
-var283 = 10;
-{ /* Inline kernel#Int#== (var_accept_token,var283) */
-var286 = var_accept_token == var283;
-var284 = var286;
-goto RET_LABEL285;
-RET_LABEL285:(void)0;
+if (var80){
+var84 = NEW_parser_nodes__TKwredef(&type_parser_nodes__TKwredef);
+{
+lexer__TKwredef__init_tk(var84, var_location); /* Direct call lexer#TKwredef#init_tk on <var84:TKwredef>*/
 }
-if (var284){
-var287 = NEW_parser_nodes__TKwend(&type_parser_nodes__TKwend);
-((void (*)(val*, val*))(var287->class->vft[COLOR_lexer__TKwend__init_tk]))(var287, var_location) /* init_tk on <var287:TKwend>*/;
-var = var287;
+var = var84;
 goto RET_LABEL;
 } else {
 }
-var288 = 11;
-{ /* Inline kernel#Int#== (var_accept_token,var288) */
-var291 = var_accept_token == var288;
-var289 = var291;
-goto RET_LABEL290;
-RET_LABEL290:(void)0;
+var85 = 15;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var85) on <var_accept_token:Int> */
+var89 = var_accept_token == var85;
+var87 = var89;
+goto RET_LABEL88;
+RET_LABEL88:(void)0;
 }
-if (var289){
-var292 = NEW_parser_nodes__TKwmeth(&type_parser_nodes__TKwmeth);
-((void (*)(val*, val*))(var292->class->vft[COLOR_lexer__TKwmeth__init_tk]))(var292, var_location) /* init_tk on <var292:TKwmeth>*/;
-var = var292;
-goto RET_LABEL;
-} else {
+var86 = var87;
 }
-var293 = 12;
-{ /* Inline kernel#Int#== (var_accept_token,var293) */
-var296 = var_accept_token == var293;
-var294 = var296;
-goto RET_LABEL295;
-RET_LABEL295:(void)0;
+if (var86){
+var90 = NEW_parser_nodes__TKwis(&type_parser_nodes__TKwis);
+{
+lexer__TKwis__init_tk(var90, var_location); /* Direct call lexer#TKwis#init_tk on <var90:TKwis>*/
 }
-if (var294){
-var297 = NEW_parser_nodes__TKwtype(&type_parser_nodes__TKwtype);
-((void (*)(val*, val*))(var297->class->vft[COLOR_lexer__TKwtype__init_tk]))(var297, var_location) /* init_tk on <var297:TKwtype>*/;
-var = var297;
+var = var90;
 goto RET_LABEL;
 } else {
 }
-var298 = 13;
-{ /* Inline kernel#Int#== (var_accept_token,var298) */
-var301 = var_accept_token == var298;
-var299 = var301;
-goto RET_LABEL300;
-RET_LABEL300:(void)0;
+var91 = 16;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var91) on <var_accept_token:Int> */
+var95 = var_accept_token == var91;
+var93 = var95;
+goto RET_LABEL94;
+RET_LABEL94:(void)0;
 }
-if (var299){
-var302 = NEW_parser_nodes__TKwinit(&type_parser_nodes__TKwinit);
-((void (*)(val*, val*))(var302->class->vft[COLOR_lexer__TKwinit__init_tk]))(var302, var_location) /* init_tk on <var302:TKwinit>*/;
-var = var302;
-goto RET_LABEL;
-} else {
+var92 = var93;
 }
-var303 = 14;
-{ /* Inline kernel#Int#== (var_accept_token,var303) */
-var306 = var_accept_token == var303;
-var304 = var306;
-goto RET_LABEL305;
-RET_LABEL305:(void)0;
+if (var92){
+var96 = NEW_parser_nodes__TKwdo(&type_parser_nodes__TKwdo);
+{
+lexer__TKwdo__init_tk(var96, var_location); /* Direct call lexer#TKwdo#init_tk on <var96:TKwdo>*/
 }
-if (var304){
-var307 = NEW_parser_nodes__TKwredef(&type_parser_nodes__TKwredef);
-((void (*)(val*, val*))(var307->class->vft[COLOR_lexer__TKwredef__init_tk]))(var307, var_location) /* init_tk on <var307:TKwredef>*/;
-var = var307;
+var = var96;
 goto RET_LABEL;
 } else {
 }
-var308 = 15;
-{ /* Inline kernel#Int#== (var_accept_token,var308) */
-var311 = var_accept_token == var308;
-var309 = var311;
-goto RET_LABEL310;
-RET_LABEL310:(void)0;
+var97 = 17;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var97) on <var_accept_token:Int> */
+var101 = var_accept_token == var97;
+var99 = var101;
+goto RET_LABEL100;
+RET_LABEL100:(void)0;
 }
-if (var309){
-var312 = NEW_parser_nodes__TKwis(&type_parser_nodes__TKwis);
-((void (*)(val*, val*))(var312->class->vft[COLOR_lexer__TKwis__init_tk]))(var312, var_location) /* init_tk on <var312:TKwis>*/;
-var = var312;
-goto RET_LABEL;
-} else {
+var98 = var99;
 }
-var313 = 16;
-{ /* Inline kernel#Int#== (var_accept_token,var313) */
-var316 = var_accept_token == var313;
-var314 = var316;
-goto RET_LABEL315;
-RET_LABEL315:(void)0;
+if (var98){
+var102 = NEW_parser_nodes__TKwvar(&type_parser_nodes__TKwvar);
+{
+lexer__TKwvar__init_tk(var102, var_location); /* Direct call lexer#TKwvar#init_tk on <var102:TKwvar>*/
 }
-if (var314){
-var317 = NEW_parser_nodes__TKwdo(&type_parser_nodes__TKwdo);
-((void (*)(val*, val*))(var317->class->vft[COLOR_lexer__TKwdo__init_tk]))(var317, var_location) /* init_tk on <var317:TKwdo>*/;
-var = var317;
+var = var102;
 goto RET_LABEL;
 } else {
 }
-var318 = 17;
-{ /* Inline kernel#Int#== (var_accept_token,var318) */
-var321 = var_accept_token == var318;
-var319 = var321;
-goto RET_LABEL320;
-RET_LABEL320:(void)0;
+var103 = 18;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var103) on <var_accept_token:Int> */
+var107 = var_accept_token == var103;
+var105 = var107;
+goto RET_LABEL106;
+RET_LABEL106:(void)0;
 }
-if (var319){
-var322 = NEW_parser_nodes__TKwreadable(&type_parser_nodes__TKwreadable);
-((void (*)(val*, val*))(var322->class->vft[COLOR_lexer__TKwreadable__init_tk]))(var322, var_location) /* init_tk on <var322:TKwreadable>*/;
-var = var322;
-goto RET_LABEL;
-} else {
+var104 = var105;
 }
-var323 = 18;
-{ /* Inline kernel#Int#== (var_accept_token,var323) */
-var326 = var_accept_token == var323;
-var324 = var326;
-goto RET_LABEL325;
-RET_LABEL325:(void)0;
+if (var104){
+var108 = NEW_parser_nodes__TKwextern(&type_parser_nodes__TKwextern);
+{
+lexer__TKwextern__init_tk(var108, var_location); /* Direct call lexer#TKwextern#init_tk on <var108:TKwextern>*/
 }
-if (var324){
-var327 = NEW_parser_nodes__TKwwritable(&type_parser_nodes__TKwwritable);
-((void (*)(val*, val*))(var327->class->vft[COLOR_lexer__TKwwritable__init_tk]))(var327, var_location) /* init_tk on <var327:TKwwritable>*/;
-var = var327;
+var = var108;
 goto RET_LABEL;
 } else {
 }
-var328 = 19;
-{ /* Inline kernel#Int#== (var_accept_token,var328) */
-var331 = var_accept_token == var328;
-var329 = var331;
-goto RET_LABEL330;
-RET_LABEL330:(void)0;
+var109 = 19;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var109) on <var_accept_token:Int> */
+var113 = var_accept_token == var109;
+var111 = var113;
+goto RET_LABEL112;
+RET_LABEL112:(void)0;
 }
-if (var329){
-var332 = NEW_parser_nodes__TKwvar(&type_parser_nodes__TKwvar);
-((void (*)(val*, val*))(var332->class->vft[COLOR_lexer__TKwvar__init_tk]))(var332, var_location) /* init_tk on <var332:TKwvar>*/;
-var = var332;
-goto RET_LABEL;
-} else {
+var110 = var111;
 }
-var333 = 20;
-{ /* Inline kernel#Int#== (var_accept_token,var333) */
-var336 = var_accept_token == var333;
-var334 = var336;
-goto RET_LABEL335;
-RET_LABEL335:(void)0;
+if (var110){
+var114 = NEW_parser_nodes__TKwpublic(&type_parser_nodes__TKwpublic);
+{
+lexer__TKwpublic__init_tk(var114, var_location); /* Direct call lexer#TKwpublic#init_tk on <var114:TKwpublic>*/
 }
-if (var334){
-var337 = NEW_parser_nodes__TKwintern(&type_parser_nodes__TKwintern);
-((void (*)(val*, val*))(var337->class->vft[COLOR_lexer__TKwintern__init_tk]))(var337, var_location) /* init_tk on <var337:TKwintern>*/;
-var = var337;
+var = var114;
 goto RET_LABEL;
 } else {
 }
-var338 = 21;
-{ /* Inline kernel#Int#== (var_accept_token,var338) */
-var341 = var_accept_token == var338;
-var339 = var341;
-goto RET_LABEL340;
-RET_LABEL340:(void)0;
+var115 = 20;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var115) on <var_accept_token:Int> */
+var119 = var_accept_token == var115;
+var117 = var119;
+goto RET_LABEL118;
+RET_LABEL118:(void)0;
 }
-if (var339){
-var342 = NEW_parser_nodes__TKwextern(&type_parser_nodes__TKwextern);
-((void (*)(val*, val*))(var342->class->vft[COLOR_lexer__TKwextern__init_tk]))(var342, var_location) /* init_tk on <var342:TKwextern>*/;
-var = var342;
-goto RET_LABEL;
-} else {
+var116 = var117;
 }
-var343 = 22;
-{ /* Inline kernel#Int#== (var_accept_token,var343) */
-var346 = var_accept_token == var343;
-var344 = var346;
-goto RET_LABEL345;
-RET_LABEL345:(void)0;
+if (var116){
+var120 = NEW_parser_nodes__TKwprotected(&type_parser_nodes__TKwprotected);
+{
+lexer__TKwprotected__init_tk(var120, var_location); /* Direct call lexer#TKwprotected#init_tk on <var120:TKwprotected>*/
 }
-if (var344){
-var347 = NEW_parser_nodes__TKwprotected(&type_parser_nodes__TKwprotected);
-((void (*)(val*, val*))(var347->class->vft[COLOR_lexer__TKwprotected__init_tk]))(var347, var_location) /* init_tk on <var347:TKwprotected>*/;
-var = var347;
+var = var120;
 goto RET_LABEL;
 } else {
 }
-var348 = 23;
-{ /* Inline kernel#Int#== (var_accept_token,var348) */
-var351 = var_accept_token == var348;
-var349 = var351;
-goto RET_LABEL350;
-RET_LABEL350:(void)0;
+var121 = 21;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var121) on <var_accept_token:Int> */
+var125 = var_accept_token == var121;
+var123 = var125;
+goto RET_LABEL124;
+RET_LABEL124:(void)0;
+}
+var122 = var123;
+}
+if (var122){
+var126 = NEW_parser_nodes__TKwprivate(&type_parser_nodes__TKwprivate);
+{
+lexer__TKwprivate__init_tk(var126, var_location); /* Direct call lexer#TKwprivate#init_tk on <var126:TKwprivate>*/
 }
-if (var349){
-var352 = NEW_parser_nodes__TKwprivate(&type_parser_nodes__TKwprivate);
-((void (*)(val*, val*))(var352->class->vft[COLOR_lexer__TKwprivate__init_tk]))(var352, var_location) /* init_tk on <var352:TKwprivate>*/;
-var = var352;
+var = var126;
 goto RET_LABEL;
 } else {
 }
-var353 = 24;
-{ /* Inline kernel#Int#== (var_accept_token,var353) */
-var356 = var_accept_token == var353;
-var354 = var356;
-goto RET_LABEL355;
-RET_LABEL355:(void)0;
+var127 = 22;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var127) on <var_accept_token:Int> */
+var131 = var_accept_token == var127;
+var129 = var131;
+goto RET_LABEL130;
+RET_LABEL130:(void)0;
 }
-if (var354){
-var357 = NEW_parser_nodes__TKwintrude(&type_parser_nodes__TKwintrude);
-((void (*)(val*, val*))(var357->class->vft[COLOR_lexer__TKwintrude__init_tk]))(var357, var_location) /* init_tk on <var357:TKwintrude>*/;
-var = var357;
+var128 = var129;
+}
+if (var128){
+var132 = NEW_parser_nodes__TKwintrude(&type_parser_nodes__TKwintrude);
+{
+lexer__TKwintrude__init_tk(var132, var_location); /* Direct call lexer#TKwintrude#init_tk on <var132:TKwintrude>*/
+}
+var = var132;
 goto RET_LABEL;
 } else {
 }
-var358 = 25;
-{ /* Inline kernel#Int#== (var_accept_token,var358) */
-var361 = var_accept_token == var358;
-var359 = var361;
-goto RET_LABEL360;
-RET_LABEL360:(void)0;
+var133 = 23;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var133) on <var_accept_token:Int> */
+var137 = var_accept_token == var133;
+var135 = var137;
+goto RET_LABEL136;
+RET_LABEL136:(void)0;
+}
+var134 = var135;
+}
+if (var134){
+var138 = NEW_parser_nodes__TKwif(&type_parser_nodes__TKwif);
+{
+lexer__TKwif__init_tk(var138, var_location); /* Direct call lexer#TKwif#init_tk on <var138:TKwif>*/
 }
-if (var359){
-var362 = NEW_parser_nodes__TKwif(&type_parser_nodes__TKwif);
-((void (*)(val*, val*))(var362->class->vft[COLOR_lexer__TKwif__init_tk]))(var362, var_location) /* init_tk on <var362:TKwif>*/;
-var = var362;
+var = var138;
 goto RET_LABEL;
 } else {
 }
-var363 = 26;
-{ /* Inline kernel#Int#== (var_accept_token,var363) */
-var366 = var_accept_token == var363;
-var364 = var366;
-goto RET_LABEL365;
-RET_LABEL365:(void)0;
+var139 = 24;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var139) on <var_accept_token:Int> */
+var143 = var_accept_token == var139;
+var141 = var143;
+goto RET_LABEL142;
+RET_LABEL142:(void)0;
 }
-if (var364){
-var367 = NEW_parser_nodes__TKwthen(&type_parser_nodes__TKwthen);
-((void (*)(val*, val*))(var367->class->vft[COLOR_lexer__TKwthen__init_tk]))(var367, var_location) /* init_tk on <var367:TKwthen>*/;
-var = var367;
+var140 = var141;
+}
+if (var140){
+var144 = NEW_parser_nodes__TKwthen(&type_parser_nodes__TKwthen);
+{
+lexer__TKwthen__init_tk(var144, var_location); /* Direct call lexer#TKwthen#init_tk on <var144:TKwthen>*/
+}
+var = var144;
 goto RET_LABEL;
 } else {
 }
-var368 = 27;
-{ /* Inline kernel#Int#== (var_accept_token,var368) */
-var371 = var_accept_token == var368;
-var369 = var371;
-goto RET_LABEL370;
-RET_LABEL370:(void)0;
+var145 = 25;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var145) on <var_accept_token:Int> */
+var149 = var_accept_token == var145;
+var147 = var149;
+goto RET_LABEL148;
+RET_LABEL148:(void)0;
 }
-if (var369){
-var372 = NEW_parser_nodes__TKwelse(&type_parser_nodes__TKwelse);
-((void (*)(val*, val*))(var372->class->vft[COLOR_lexer__TKwelse__init_tk]))(var372, var_location) /* init_tk on <var372:TKwelse>*/;
-var = var372;
+var146 = var147;
+}
+if (var146){
+var150 = NEW_parser_nodes__TKwelse(&type_parser_nodes__TKwelse);
+{
+lexer__TKwelse__init_tk(var150, var_location); /* Direct call lexer#TKwelse#init_tk on <var150:TKwelse>*/
+}
+var = var150;
 goto RET_LABEL;
 } else {
 }
-var373 = 28;
-{ /* Inline kernel#Int#== (var_accept_token,var373) */
-var376 = var_accept_token == var373;
-var374 = var376;
-goto RET_LABEL375;
-RET_LABEL375:(void)0;
+var151 = 26;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var151) on <var_accept_token:Int> */
+var155 = var_accept_token == var151;
+var153 = var155;
+goto RET_LABEL154;
+RET_LABEL154:(void)0;
 }
-if (var374){
-var377 = NEW_parser_nodes__TKwwhile(&type_parser_nodes__TKwwhile);
-((void (*)(val*, val*))(var377->class->vft[COLOR_lexer__TKwwhile__init_tk]))(var377, var_location) /* init_tk on <var377:TKwwhile>*/;
-var = var377;
+var152 = var153;
+}
+if (var152){
+var156 = NEW_parser_nodes__TKwwhile(&type_parser_nodes__TKwwhile);
+{
+lexer__TKwwhile__init_tk(var156, var_location); /* Direct call lexer#TKwwhile#init_tk on <var156:TKwwhile>*/
+}
+var = var156;
 goto RET_LABEL;
 } else {
 }
-var378 = 29;
-{ /* Inline kernel#Int#== (var_accept_token,var378) */
-var381 = var_accept_token == var378;
-var379 = var381;
-goto RET_LABEL380;
-RET_LABEL380:(void)0;
+var157 = 27;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var157) on <var_accept_token:Int> */
+var161 = var_accept_token == var157;
+var159 = var161;
+goto RET_LABEL160;
+RET_LABEL160:(void)0;
+}
+var158 = var159;
+}
+if (var158){
+var162 = NEW_parser_nodes__TKwloop(&type_parser_nodes__TKwloop);
+{
+lexer__TKwloop__init_tk(var162, var_location); /* Direct call lexer#TKwloop#init_tk on <var162:TKwloop>*/
 }
-if (var379){
-var382 = NEW_parser_nodes__TKwloop(&type_parser_nodes__TKwloop);
-((void (*)(val*, val*))(var382->class->vft[COLOR_lexer__TKwloop__init_tk]))(var382, var_location) /* init_tk on <var382:TKwloop>*/;
-var = var382;
+var = var162;
 goto RET_LABEL;
 } else {
 }
-var383 = 30;
-{ /* Inline kernel#Int#== (var_accept_token,var383) */
-var386 = var_accept_token == var383;
-var384 = var386;
-goto RET_LABEL385;
-RET_LABEL385:(void)0;
+var163 = 28;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var163) on <var_accept_token:Int> */
+var167 = var_accept_token == var163;
+var165 = var167;
+goto RET_LABEL166;
+RET_LABEL166:(void)0;
+}
+var164 = var165;
 }
-if (var384){
-var387 = NEW_parser_nodes__TKwfor(&type_parser_nodes__TKwfor);
-((void (*)(val*, val*))(var387->class->vft[COLOR_lexer__TKwfor__init_tk]))(var387, var_location) /* init_tk on <var387:TKwfor>*/;
-var = var387;
+if (var164){
+var168 = NEW_parser_nodes__TKwfor(&type_parser_nodes__TKwfor);
+{
+lexer__TKwfor__init_tk(var168, var_location); /* Direct call lexer#TKwfor#init_tk on <var168:TKwfor>*/
+}
+var = var168;
 goto RET_LABEL;
 } else {
 }
-var388 = 31;
-{ /* Inline kernel#Int#== (var_accept_token,var388) */
-var391 = var_accept_token == var388;
-var389 = var391;
-goto RET_LABEL390;
-RET_LABEL390:(void)0;
+var169 = 29;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var169) on <var_accept_token:Int> */
+var173 = var_accept_token == var169;
+var171 = var173;
+goto RET_LABEL172;
+RET_LABEL172:(void)0;
+}
+var170 = var171;
 }
-if (var389){
-var392 = NEW_parser_nodes__TKwin(&type_parser_nodes__TKwin);
-((void (*)(val*, val*))(var392->class->vft[COLOR_lexer__TKwin__init_tk]))(var392, var_location) /* init_tk on <var392:TKwin>*/;
-var = var392;
+if (var170){
+var174 = NEW_parser_nodes__TKwin(&type_parser_nodes__TKwin);
+{
+lexer__TKwin__init_tk(var174, var_location); /* Direct call lexer#TKwin#init_tk on <var174:TKwin>*/
+}
+var = var174;
 goto RET_LABEL;
 } else {
 }
-var393 = 32;
-{ /* Inline kernel#Int#== (var_accept_token,var393) */
-var396 = var_accept_token == var393;
-var394 = var396;
-goto RET_LABEL395;
-RET_LABEL395:(void)0;
+var175 = 30;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var175) on <var_accept_token:Int> */
+var179 = var_accept_token == var175;
+var177 = var179;
+goto RET_LABEL178;
+RET_LABEL178:(void)0;
+}
+var176 = var177;
+}
+if (var176){
+var180 = NEW_parser_nodes__TKwand(&type_parser_nodes__TKwand);
+{
+lexer__TKwand__init_tk(var180, var_location); /* Direct call lexer#TKwand#init_tk on <var180:TKwand>*/
 }
-if (var394){
-var397 = NEW_parser_nodes__TKwand(&type_parser_nodes__TKwand);
-((void (*)(val*, val*))(var397->class->vft[COLOR_lexer__TKwand__init_tk]))(var397, var_location) /* init_tk on <var397:TKwand>*/;
-var = var397;
+var = var180;
 goto RET_LABEL;
 } else {
 }
-var398 = 33;
-{ /* Inline kernel#Int#== (var_accept_token,var398) */
-var401 = var_accept_token == var398;
-var399 = var401;
-goto RET_LABEL400;
-RET_LABEL400:(void)0;
+var181 = 31;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var181) on <var_accept_token:Int> */
+var185 = var_accept_token == var181;
+var183 = var185;
+goto RET_LABEL184;
+RET_LABEL184:(void)0;
 }
-if (var399){
-var402 = NEW_parser_nodes__TKwor(&type_parser_nodes__TKwor);
-((void (*)(val*, val*))(var402->class->vft[COLOR_lexer__TKwor__init_tk]))(var402, var_location) /* init_tk on <var402:TKwor>*/;
-var = var402;
+var182 = var183;
+}
+if (var182){
+var186 = NEW_parser_nodes__TKwor(&type_parser_nodes__TKwor);
+{
+lexer__TKwor__init_tk(var186, var_location); /* Direct call lexer#TKwor#init_tk on <var186:TKwor>*/
+}
+var = var186;
 goto RET_LABEL;
 } else {
 }
-var403 = 34;
-{ /* Inline kernel#Int#== (var_accept_token,var403) */
-var406 = var_accept_token == var403;
-var404 = var406;
-goto RET_LABEL405;
-RET_LABEL405:(void)0;
+var187 = 32;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var187) on <var_accept_token:Int> */
+var191 = var_accept_token == var187;
+var189 = var191;
+goto RET_LABEL190;
+RET_LABEL190:(void)0;
 }
-if (var404){
-var407 = NEW_parser_nodes__TKwnot(&type_parser_nodes__TKwnot);
-((void (*)(val*, val*))(var407->class->vft[COLOR_lexer__TKwnot__init_tk]))(var407, var_location) /* init_tk on <var407:TKwnot>*/;
-var = var407;
+var188 = var189;
+}
+if (var188){
+var192 = NEW_parser_nodes__TKwnot(&type_parser_nodes__TKwnot);
+{
+lexer__TKwnot__init_tk(var192, var_location); /* Direct call lexer#TKwnot#init_tk on <var192:TKwnot>*/
+}
+var = var192;
 goto RET_LABEL;
 } else {
 }
-var408 = 35;
-{ /* Inline kernel#Int#== (var_accept_token,var408) */
-var411 = var_accept_token == var408;
-var409 = var411;
-goto RET_LABEL410;
-RET_LABEL410:(void)0;
+var193 = 33;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var193) on <var_accept_token:Int> */
+var197 = var_accept_token == var193;
+var195 = var197;
+goto RET_LABEL196;
+RET_LABEL196:(void)0;
+}
+var194 = var195;
 }
-if (var409){
-var412 = NEW_parser_nodes__TKwimplies(&type_parser_nodes__TKwimplies);
-((void (*)(val*, val*))(var412->class->vft[COLOR_lexer__TKwimplies__init_tk]))(var412, var_location) /* init_tk on <var412:TKwimplies>*/;
-var = var412;
+if (var194){
+var198 = NEW_parser_nodes__TKwimplies(&type_parser_nodes__TKwimplies);
+{
+lexer__TKwimplies__init_tk(var198, var_location); /* Direct call lexer#TKwimplies#init_tk on <var198:TKwimplies>*/
+}
+var = var198;
 goto RET_LABEL;
 } else {
 }
-var413 = 36;
-{ /* Inline kernel#Int#== (var_accept_token,var413) */
-var416 = var_accept_token == var413;
-var414 = var416;
-goto RET_LABEL415;
-RET_LABEL415:(void)0;
+var199 = 34;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var199) on <var_accept_token:Int> */
+var203 = var_accept_token == var199;
+var201 = var203;
+goto RET_LABEL202;
+RET_LABEL202:(void)0;
+}
+var200 = var201;
 }
-if (var414){
-var417 = NEW_parser_nodes__TKwreturn(&type_parser_nodes__TKwreturn);
-((void (*)(val*, val*))(var417->class->vft[COLOR_lexer__TKwreturn__init_tk]))(var417, var_location) /* init_tk on <var417:TKwreturn>*/;
-var = var417;
+if (var200){
+var204 = NEW_parser_nodes__TKwreturn(&type_parser_nodes__TKwreturn);
+{
+lexer__TKwreturn__init_tk(var204, var_location); /* Direct call lexer#TKwreturn#init_tk on <var204:TKwreturn>*/
+}
+var = var204;
 goto RET_LABEL;
 } else {
 }
-var418 = 37;
-{ /* Inline kernel#Int#== (var_accept_token,var418) */
-var421 = var_accept_token == var418;
-var419 = var421;
-goto RET_LABEL420;
-RET_LABEL420:(void)0;
+var205 = 35;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var205) on <var_accept_token:Int> */
+var209 = var_accept_token == var205;
+var207 = var209;
+goto RET_LABEL208;
+RET_LABEL208:(void)0;
+}
+var206 = var207;
 }
-if (var419){
-var422 = NEW_parser_nodes__TKwcontinue(&type_parser_nodes__TKwcontinue);
-((void (*)(val*, val*))(var422->class->vft[COLOR_lexer__TKwcontinue__init_tk]))(var422, var_location) /* init_tk on <var422:TKwcontinue>*/;
-var = var422;
+if (var206){
+var210 = NEW_parser_nodes__TKwcontinue(&type_parser_nodes__TKwcontinue);
+{
+lexer__TKwcontinue__init_tk(var210, var_location); /* Direct call lexer#TKwcontinue#init_tk on <var210:TKwcontinue>*/
+}
+var = var210;
 goto RET_LABEL;
 } else {
 }
-var423 = 38;
-{ /* Inline kernel#Int#== (var_accept_token,var423) */
-var426 = var_accept_token == var423;
-var424 = var426;
-goto RET_LABEL425;
-RET_LABEL425:(void)0;
+var211 = 36;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var211) on <var_accept_token:Int> */
+var215 = var_accept_token == var211;
+var213 = var215;
+goto RET_LABEL214;
+RET_LABEL214:(void)0;
+}
+var212 = var213;
+}
+if (var212){
+var216 = NEW_parser_nodes__TKwbreak(&type_parser_nodes__TKwbreak);
+{
+lexer__TKwbreak__init_tk(var216, var_location); /* Direct call lexer#TKwbreak#init_tk on <var216:TKwbreak>*/
 }
-if (var424){
-var427 = NEW_parser_nodes__TKwbreak(&type_parser_nodes__TKwbreak);
-((void (*)(val*, val*))(var427->class->vft[COLOR_lexer__TKwbreak__init_tk]))(var427, var_location) /* init_tk on <var427:TKwbreak>*/;
-var = var427;
+var = var216;
 goto RET_LABEL;
 } else {
 }
-var428 = 39;
-{ /* Inline kernel#Int#== (var_accept_token,var428) */
-var431 = var_accept_token == var428;
-var429 = var431;
-goto RET_LABEL430;
-RET_LABEL430:(void)0;
+var217 = 37;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var217) on <var_accept_token:Int> */
+var221 = var_accept_token == var217;
+var219 = var221;
+goto RET_LABEL220;
+RET_LABEL220:(void)0;
 }
-if (var429){
-var432 = NEW_parser_nodes__TKwabort(&type_parser_nodes__TKwabort);
-((void (*)(val*, val*))(var432->class->vft[COLOR_lexer__TKwabort__init_tk]))(var432, var_location) /* init_tk on <var432:TKwabort>*/;
-var = var432;
+var218 = var219;
+}
+if (var218){
+var222 = NEW_parser_nodes__TKwabort(&type_parser_nodes__TKwabort);
+{
+lexer__TKwabort__init_tk(var222, var_location); /* Direct call lexer#TKwabort#init_tk on <var222:TKwabort>*/
+}
+var = var222;
 goto RET_LABEL;
 } else {
 }
-var433 = 40;
-{ /* Inline kernel#Int#== (var_accept_token,var433) */
-var436 = var_accept_token == var433;
-var434 = var436;
-goto RET_LABEL435;
-RET_LABEL435:(void)0;
+var223 = 38;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var223) on <var_accept_token:Int> */
+var227 = var_accept_token == var223;
+var225 = var227;
+goto RET_LABEL226;
+RET_LABEL226:(void)0;
 }
-if (var434){
-var437 = NEW_parser_nodes__TKwassert(&type_parser_nodes__TKwassert);
-((void (*)(val*, val*))(var437->class->vft[COLOR_lexer__TKwassert__init_tk]))(var437, var_location) /* init_tk on <var437:TKwassert>*/;
-var = var437;
+var224 = var225;
+}
+if (var224){
+var228 = NEW_parser_nodes__TKwassert(&type_parser_nodes__TKwassert);
+{
+lexer__TKwassert__init_tk(var228, var_location); /* Direct call lexer#TKwassert#init_tk on <var228:TKwassert>*/
+}
+var = var228;
 goto RET_LABEL;
 } else {
 }
-var438 = 41;
-{ /* Inline kernel#Int#== (var_accept_token,var438) */
-var441 = var_accept_token == var438;
-var439 = var441;
-goto RET_LABEL440;
-RET_LABEL440:(void)0;
+var229 = 39;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var229) on <var_accept_token:Int> */
+var233 = var_accept_token == var229;
+var231 = var233;
+goto RET_LABEL232;
+RET_LABEL232:(void)0;
 }
-if (var439){
-var442 = NEW_parser_nodes__TKwnew(&type_parser_nodes__TKwnew);
-((void (*)(val*, val*))(var442->class->vft[COLOR_lexer__TKwnew__init_tk]))(var442, var_location) /* init_tk on <var442:TKwnew>*/;
-var = var442;
+var230 = var231;
+}
+if (var230){
+var234 = NEW_parser_nodes__TKwnew(&type_parser_nodes__TKwnew);
+{
+lexer__TKwnew__init_tk(var234, var_location); /* Direct call lexer#TKwnew#init_tk on <var234:TKwnew>*/
+}
+var = var234;
 goto RET_LABEL;
 } else {
 }
-var443 = 42;
-{ /* Inline kernel#Int#== (var_accept_token,var443) */
-var446 = var_accept_token == var443;
-var444 = var446;
-goto RET_LABEL445;
-RET_LABEL445:(void)0;
+var235 = 40;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var235) on <var_accept_token:Int> */
+var239 = var_accept_token == var235;
+var237 = var239;
+goto RET_LABEL238;
+RET_LABEL238:(void)0;
+}
+var236 = var237;
 }
-if (var444){
-var447 = NEW_parser_nodes__TKwisa(&type_parser_nodes__TKwisa);
-((void (*)(val*, val*))(var447->class->vft[COLOR_lexer__TKwisa__init_tk]))(var447, var_location) /* init_tk on <var447:TKwisa>*/;
-var = var447;
+if (var236){
+var240 = NEW_parser_nodes__TKwisa(&type_parser_nodes__TKwisa);
+{
+lexer__TKwisa__init_tk(var240, var_location); /* Direct call lexer#TKwisa#init_tk on <var240:TKwisa>*/
+}
+var = var240;
 goto RET_LABEL;
 } else {
 }
-var448 = 43;
-{ /* Inline kernel#Int#== (var_accept_token,var448) */
-var451 = var_accept_token == var448;
-var449 = var451;
-goto RET_LABEL450;
-RET_LABEL450:(void)0;
+var241 = 41;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var241) on <var_accept_token:Int> */
+var245 = var_accept_token == var241;
+var243 = var245;
+goto RET_LABEL244;
+RET_LABEL244:(void)0;
+}
+var242 = var243;
 }
-if (var449){
-var452 = NEW_parser_nodes__TKwonce(&type_parser_nodes__TKwonce);
-((void (*)(val*, val*))(var452->class->vft[COLOR_lexer__TKwonce__init_tk]))(var452, var_location) /* init_tk on <var452:TKwonce>*/;
-var = var452;
+if (var242){
+var246 = NEW_parser_nodes__TKwonce(&type_parser_nodes__TKwonce);
+{
+lexer__TKwonce__init_tk(var246, var_location); /* Direct call lexer#TKwonce#init_tk on <var246:TKwonce>*/
+}
+var = var246;
 goto RET_LABEL;
 } else {
 }
-var453 = 44;
-{ /* Inline kernel#Int#== (var_accept_token,var453) */
-var456 = var_accept_token == var453;
-var454 = var456;
-goto RET_LABEL455;
-RET_LABEL455:(void)0;
+var247 = 42;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var247) on <var_accept_token:Int> */
+var251 = var_accept_token == var247;
+var249 = var251;
+goto RET_LABEL250;
+RET_LABEL250:(void)0;
 }
-if (var454){
-var457 = NEW_parser_nodes__TKwsuper(&type_parser_nodes__TKwsuper);
-((void (*)(val*, val*))(var457->class->vft[COLOR_lexer__TKwsuper__init_tk]))(var457, var_location) /* init_tk on <var457:TKwsuper>*/;
-var = var457;
+var248 = var249;
+}
+if (var248){
+var252 = NEW_parser_nodes__TKwsuper(&type_parser_nodes__TKwsuper);
+{
+lexer__TKwsuper__init_tk(var252, var_location); /* Direct call lexer#TKwsuper#init_tk on <var252:TKwsuper>*/
+}
+var = var252;
 goto RET_LABEL;
 } else {
 }
-var458 = 45;
-{ /* Inline kernel#Int#== (var_accept_token,var458) */
-var461 = var_accept_token == var458;
-var459 = var461;
-goto RET_LABEL460;
-RET_LABEL460:(void)0;
+var253 = 43;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var253) on <var_accept_token:Int> */
+var257 = var_accept_token == var253;
+var255 = var257;
+goto RET_LABEL256;
+RET_LABEL256:(void)0;
 }
-if (var459){
-var462 = NEW_parser_nodes__TKwself(&type_parser_nodes__TKwself);
-((void (*)(val*, val*))(var462->class->vft[COLOR_lexer__TKwself__init_tk]))(var462, var_location) /* init_tk on <var462:TKwself>*/;
-var = var462;
+var254 = var255;
+}
+if (var254){
+var258 = NEW_parser_nodes__TKwself(&type_parser_nodes__TKwself);
+{
+lexer__TKwself__init_tk(var258, var_location); /* Direct call lexer#TKwself#init_tk on <var258:TKwself>*/
+}
+var = var258;
 goto RET_LABEL;
 } else {
 }
-var463 = 46;
-{ /* Inline kernel#Int#== (var_accept_token,var463) */
-var466 = var_accept_token == var463;
-var464 = var466;
-goto RET_LABEL465;
-RET_LABEL465:(void)0;
+var259 = 44;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var259) on <var_accept_token:Int> */
+var263 = var_accept_token == var259;
+var261 = var263;
+goto RET_LABEL262;
+RET_LABEL262:(void)0;
 }
-if (var464){
-var467 = NEW_parser_nodes__TKwtrue(&type_parser_nodes__TKwtrue);
-((void (*)(val*, val*))(var467->class->vft[COLOR_lexer__TKwtrue__init_tk]))(var467, var_location) /* init_tk on <var467:TKwtrue>*/;
-var = var467;
+var260 = var261;
+}
+if (var260){
+var264 = NEW_parser_nodes__TKwtrue(&type_parser_nodes__TKwtrue);
+{
+lexer__TKwtrue__init_tk(var264, var_location); /* Direct call lexer#TKwtrue#init_tk on <var264:TKwtrue>*/
+}
+var = var264;
 goto RET_LABEL;
 } else {
 }
-var468 = 47;
-{ /* Inline kernel#Int#== (var_accept_token,var468) */
-var471 = var_accept_token == var468;
-var469 = var471;
-goto RET_LABEL470;
-RET_LABEL470:(void)0;
+var265 = 45;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var265) on <var_accept_token:Int> */
+var269 = var_accept_token == var265;
+var267 = var269;
+goto RET_LABEL268;
+RET_LABEL268:(void)0;
+}
+var266 = var267;
 }
-if (var469){
-var472 = NEW_parser_nodes__TKwfalse(&type_parser_nodes__TKwfalse);
-((void (*)(val*, val*))(var472->class->vft[COLOR_lexer__TKwfalse__init_tk]))(var472, var_location) /* init_tk on <var472:TKwfalse>*/;
-var = var472;
+if (var266){
+var270 = NEW_parser_nodes__TKwfalse(&type_parser_nodes__TKwfalse);
+{
+lexer__TKwfalse__init_tk(var270, var_location); /* Direct call lexer#TKwfalse#init_tk on <var270:TKwfalse>*/
+}
+var = var270;
 goto RET_LABEL;
 } else {
 }
-var473 = 48;
-{ /* Inline kernel#Int#== (var_accept_token,var473) */
-var476 = var_accept_token == var473;
-var474 = var476;
-goto RET_LABEL475;
-RET_LABEL475:(void)0;
+var271 = 46;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var271) on <var_accept_token:Int> */
+var275 = var_accept_token == var271;
+var273 = var275;
+goto RET_LABEL274;
+RET_LABEL274:(void)0;
+}
+var272 = var273;
 }
-if (var474){
-var477 = NEW_parser_nodes__TKwnull(&type_parser_nodes__TKwnull);
-((void (*)(val*, val*))(var477->class->vft[COLOR_lexer__TKwnull__init_tk]))(var477, var_location) /* init_tk on <var477:TKwnull>*/;
-var = var477;
+if (var272){
+var276 = NEW_parser_nodes__TKwnull(&type_parser_nodes__TKwnull);
+{
+lexer__TKwnull__init_tk(var276, var_location); /* Direct call lexer#TKwnull#init_tk on <var276:TKwnull>*/
+}
+var = var276;
 goto RET_LABEL;
 } else {
 }
-var478 = 49;
-{ /* Inline kernel#Int#== (var_accept_token,var478) */
-var481 = var_accept_token == var478;
-var479 = var481;
-goto RET_LABEL480;
-RET_LABEL480:(void)0;
+var277 = 47;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var277) on <var_accept_token:Int> */
+var281 = var_accept_token == var277;
+var279 = var281;
+goto RET_LABEL280;
+RET_LABEL280:(void)0;
+}
+var278 = var279;
+}
+if (var278){
+var282 = NEW_parser_nodes__TKwas(&type_parser_nodes__TKwas);
+{
+lexer__TKwas__init_tk(var282, var_location); /* Direct call lexer#TKwas#init_tk on <var282:TKwas>*/
 }
-if (var479){
-var482 = NEW_parser_nodes__TKwas(&type_parser_nodes__TKwas);
-((void (*)(val*, val*))(var482->class->vft[COLOR_lexer__TKwas__init_tk]))(var482, var_location) /* init_tk on <var482:TKwas>*/;
-var = var482;
+var = var282;
 goto RET_LABEL;
 } else {
 }
-var483 = 50;
-{ /* Inline kernel#Int#== (var_accept_token,var483) */
-var486 = var_accept_token == var483;
-var484 = var486;
-goto RET_LABEL485;
-RET_LABEL485:(void)0;
+var283 = 48;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var283) on <var_accept_token:Int> */
+var287 = var_accept_token == var283;
+var285 = var287;
+goto RET_LABEL286;
+RET_LABEL286:(void)0;
+}
+var284 = var285;
 }
-if (var484){
-var487 = NEW_parser_nodes__TKwnullable(&type_parser_nodes__TKwnullable);
-((void (*)(val*, val*))(var487->class->vft[COLOR_lexer__TKwnullable__init_tk]))(var487, var_location) /* init_tk on <var487:TKwnullable>*/;
-var = var487;
+if (var284){
+var288 = NEW_parser_nodes__TKwnullable(&type_parser_nodes__TKwnullable);
+{
+lexer__TKwnullable__init_tk(var288, var_location); /* Direct call lexer#TKwnullable#init_tk on <var288:TKwnullable>*/
+}
+var = var288;
 goto RET_LABEL;
 } else {
 }
-var488 = 51;
-{ /* Inline kernel#Int#== (var_accept_token,var488) */
-var491 = var_accept_token == var488;
-var489 = var491;
-goto RET_LABEL490;
-RET_LABEL490:(void)0;
+var289 = 49;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var289) on <var_accept_token:Int> */
+var293 = var_accept_token == var289;
+var291 = var293;
+goto RET_LABEL292;
+RET_LABEL292:(void)0;
 }
-if (var489){
-var492 = NEW_parser_nodes__TKwisset(&type_parser_nodes__TKwisset);
-((void (*)(val*, val*))(var492->class->vft[COLOR_lexer__TKwisset__init_tk]))(var492, var_location) /* init_tk on <var492:TKwisset>*/;
-var = var492;
+var290 = var291;
+}
+if (var290){
+var294 = NEW_parser_nodes__TKwisset(&type_parser_nodes__TKwisset);
+{
+lexer__TKwisset__init_tk(var294, var_location); /* Direct call lexer#TKwisset#init_tk on <var294:TKwisset>*/
+}
+var = var294;
 goto RET_LABEL;
 } else {
 }
-var493 = 52;
-{ /* Inline kernel#Int#== (var_accept_token,var493) */
-var496 = var_accept_token == var493;
-var494 = var496;
-goto RET_LABEL495;
-RET_LABEL495:(void)0;
+var295 = 50;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var295) on <var_accept_token:Int> */
+var299 = var_accept_token == var295;
+var297 = var299;
+goto RET_LABEL298;
+RET_LABEL298:(void)0;
 }
-if (var494){
-var497 = NEW_parser_nodes__TKwlabel(&type_parser_nodes__TKwlabel);
-((void (*)(val*, val*))(var497->class->vft[COLOR_lexer__TKwlabel__init_tk]))(var497, var_location) /* init_tk on <var497:TKwlabel>*/;
-var = var497;
+var296 = var297;
+}
+if (var296){
+var300 = NEW_parser_nodes__TKwlabel(&type_parser_nodes__TKwlabel);
+{
+lexer__TKwlabel__init_tk(var300, var_location); /* Direct call lexer#TKwlabel#init_tk on <var300:TKwlabel>*/
+}
+var = var300;
 goto RET_LABEL;
 } else {
 }
-var498 = 53;
-{ /* Inline kernel#Int#== (var_accept_token,var498) */
-var501 = var_accept_token == var498;
-var499 = var501;
-goto RET_LABEL500;
-RET_LABEL500:(void)0;
+var301 = 51;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var301) on <var_accept_token:Int> */
+var305 = var_accept_token == var301;
+var303 = var305;
+goto RET_LABEL304;
+RET_LABEL304:(void)0;
+}
+var302 = var303;
+}
+if (var302){
+var306 = NEW_parser_nodes__TKwdebug(&type_parser_nodes__TKwdebug);
+{
+lexer__TKwdebug__init_tk(var306, var_location); /* Direct call lexer#TKwdebug#init_tk on <var306:TKwdebug>*/
 }
-if (var499){
-var502 = NEW_parser_nodes__TKwdebug(&type_parser_nodes__TKwdebug);
-((void (*)(val*, val*))(var502->class->vft[COLOR_lexer__TKwdebug__init_tk]))(var502, var_location) /* init_tk on <var502:TKwdebug>*/;
-var = var502;
+var = var306;
 goto RET_LABEL;
 } else {
 }
-var503 = 54;
-{ /* Inline kernel#Int#== (var_accept_token,var503) */
-var506 = var_accept_token == var503;
-var504 = var506;
-goto RET_LABEL505;
-RET_LABEL505:(void)0;
+var307 = 52;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var307) on <var_accept_token:Int> */
+var311 = var_accept_token == var307;
+var309 = var311;
+goto RET_LABEL310;
+RET_LABEL310:(void)0;
+}
+var308 = var309;
 }
-if (var504){
-var507 = NEW_parser_nodes__TOpar(&type_parser_nodes__TOpar);
-((void (*)(val*, val*))(var507->class->vft[COLOR_lexer__TOpar__init_tk]))(var507, var_location) /* init_tk on <var507:TOpar>*/;
-var = var507;
+if (var308){
+var312 = NEW_parser_nodes__TOpar(&type_parser_nodes__TOpar);
+{
+lexer__TOpar__init_tk(var312, var_location); /* Direct call lexer#TOpar#init_tk on <var312:TOpar>*/
+}
+var = var312;
 goto RET_LABEL;
 } else {
 }
-var508 = 55;
-{ /* Inline kernel#Int#== (var_accept_token,var508) */
-var511 = var_accept_token == var508;
-var509 = var511;
-goto RET_LABEL510;
-RET_LABEL510:(void)0;
+var313 = 53;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var313) on <var_accept_token:Int> */
+var317 = var_accept_token == var313;
+var315 = var317;
+goto RET_LABEL316;
+RET_LABEL316:(void)0;
+}
+var314 = var315;
+}
+if (var314){
+var318 = NEW_parser_nodes__TCpar(&type_parser_nodes__TCpar);
+{
+lexer__TCpar__init_tk(var318, var_location); /* Direct call lexer#TCpar#init_tk on <var318:TCpar>*/
 }
-if (var509){
-var512 = NEW_parser_nodes__TCpar(&type_parser_nodes__TCpar);
-((void (*)(val*, val*))(var512->class->vft[COLOR_lexer__TCpar__init_tk]))(var512, var_location) /* init_tk on <var512:TCpar>*/;
-var = var512;
+var = var318;
 goto RET_LABEL;
 } else {
 }
-var513 = 56;
-{ /* Inline kernel#Int#== (var_accept_token,var513) */
-var516 = var_accept_token == var513;
-var514 = var516;
-goto RET_LABEL515;
-RET_LABEL515:(void)0;
+var319 = 54;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var319) on <var_accept_token:Int> */
+var323 = var_accept_token == var319;
+var321 = var323;
+goto RET_LABEL322;
+RET_LABEL322:(void)0;
+}
+var320 = var321;
 }
-if (var514){
-var517 = NEW_parser_nodes__TObra(&type_parser_nodes__TObra);
-((void (*)(val*, val*))(var517->class->vft[COLOR_lexer__TObra__init_tk]))(var517, var_location) /* init_tk on <var517:TObra>*/;
-var = var517;
+if (var320){
+var324 = NEW_parser_nodes__TObra(&type_parser_nodes__TObra);
+{
+lexer__TObra__init_tk(var324, var_location); /* Direct call lexer#TObra#init_tk on <var324:TObra>*/
+}
+var = var324;
 goto RET_LABEL;
 } else {
 }
-var518 = 57;
-{ /* Inline kernel#Int#== (var_accept_token,var518) */
-var521 = var_accept_token == var518;
-var519 = var521;
-goto RET_LABEL520;
-RET_LABEL520:(void)0;
+var325 = 55;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var325) on <var_accept_token:Int> */
+var329 = var_accept_token == var325;
+var327 = var329;
+goto RET_LABEL328;
+RET_LABEL328:(void)0;
 }
-if (var519){
-var522 = NEW_parser_nodes__TCbra(&type_parser_nodes__TCbra);
-((void (*)(val*, val*))(var522->class->vft[COLOR_lexer__TCbra__init_tk]))(var522, var_location) /* init_tk on <var522:TCbra>*/;
-var = var522;
+var326 = var327;
+}
+if (var326){
+var330 = NEW_parser_nodes__TCbra(&type_parser_nodes__TCbra);
+{
+lexer__TCbra__init_tk(var330, var_location); /* Direct call lexer#TCbra#init_tk on <var330:TCbra>*/
+}
+var = var330;
 goto RET_LABEL;
 } else {
 }
-var523 = 58;
-{ /* Inline kernel#Int#== (var_accept_token,var523) */
-var526 = var_accept_token == var523;
-var524 = var526;
-goto RET_LABEL525;
-RET_LABEL525:(void)0;
+var331 = 56;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var331) on <var_accept_token:Int> */
+var335 = var_accept_token == var331;
+var333 = var335;
+goto RET_LABEL334;
+RET_LABEL334:(void)0;
 }
-if (var524){
-var527 = NEW_parser_nodes__TComma(&type_parser_nodes__TComma);
-((void (*)(val*, val*))(var527->class->vft[COLOR_lexer__TComma__init_tk]))(var527, var_location) /* init_tk on <var527:TComma>*/;
-var = var527;
+var332 = var333;
+}
+if (var332){
+var336 = NEW_parser_nodes__TComma(&type_parser_nodes__TComma);
+{
+lexer__TComma__init_tk(var336, var_location); /* Direct call lexer#TComma#init_tk on <var336:TComma>*/
+}
+var = var336;
 goto RET_LABEL;
 } else {
 }
-var528 = 59;
-{ /* Inline kernel#Int#== (var_accept_token,var528) */
-var531 = var_accept_token == var528;
-var529 = var531;
-goto RET_LABEL530;
-RET_LABEL530:(void)0;
+var337 = 57;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var337) on <var_accept_token:Int> */
+var341 = var_accept_token == var337;
+var339 = var341;
+goto RET_LABEL340;
+RET_LABEL340:(void)0;
+}
+var338 = var339;
+}
+if (var338){
+var342 = NEW_parser_nodes__TColumn(&type_parser_nodes__TColumn);
+{
+lexer__TColumn__init_tk(var342, var_location); /* Direct call lexer#TColumn#init_tk on <var342:TColumn>*/
 }
-if (var529){
-var532 = NEW_parser_nodes__TColumn(&type_parser_nodes__TColumn);
-((void (*)(val*, val*))(var532->class->vft[COLOR_lexer__TColumn__init_tk]))(var532, var_location) /* init_tk on <var532:TColumn>*/;
-var = var532;
+var = var342;
 goto RET_LABEL;
 } else {
 }
-var533 = 60;
-{ /* Inline kernel#Int#== (var_accept_token,var533) */
-var536 = var_accept_token == var533;
-var534 = var536;
-goto RET_LABEL535;
-RET_LABEL535:(void)0;
+var343 = 58;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var343) on <var_accept_token:Int> */
+var347 = var_accept_token == var343;
+var345 = var347;
+goto RET_LABEL346;
+RET_LABEL346:(void)0;
+}
+var344 = var345;
+}
+if (var344){
+var348 = NEW_parser_nodes__TQuad(&type_parser_nodes__TQuad);
+{
+lexer__TQuad__init_tk(var348, var_location); /* Direct call lexer#TQuad#init_tk on <var348:TQuad>*/
 }
-if (var534){
-var537 = NEW_parser_nodes__TQuad(&type_parser_nodes__TQuad);
-((void (*)(val*, val*))(var537->class->vft[COLOR_lexer__TQuad__init_tk]))(var537, var_location) /* init_tk on <var537:TQuad>*/;
-var = var537;
+var = var348;
 goto RET_LABEL;
 } else {
 }
-var538 = 61;
-{ /* Inline kernel#Int#== (var_accept_token,var538) */
-var541 = var_accept_token == var538;
-var539 = var541;
-goto RET_LABEL540;
-RET_LABEL540:(void)0;
+var349 = 59;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var349) on <var_accept_token:Int> */
+var353 = var_accept_token == var349;
+var351 = var353;
+goto RET_LABEL352;
+RET_LABEL352:(void)0;
 }
-if (var539){
-var542 = NEW_parser_nodes__TAssign(&type_parser_nodes__TAssign);
-((void (*)(val*, val*))(var542->class->vft[COLOR_lexer__TAssign__init_tk]))(var542, var_location) /* init_tk on <var542:TAssign>*/;
-var = var542;
+var350 = var351;
+}
+if (var350){
+var354 = NEW_parser_nodes__TAssign(&type_parser_nodes__TAssign);
+{
+lexer__TAssign__init_tk(var354, var_location); /* Direct call lexer#TAssign#init_tk on <var354:TAssign>*/
+}
+var = var354;
 goto RET_LABEL;
 } else {
 }
-var543 = 62;
-{ /* Inline kernel#Int#== (var_accept_token,var543) */
-var546 = var_accept_token == var543;
-var544 = var546;
-goto RET_LABEL545;
-RET_LABEL545:(void)0;
+var355 = 60;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var355) on <var_accept_token:Int> */
+var359 = var_accept_token == var355;
+var357 = var359;
+goto RET_LABEL358;
+RET_LABEL358:(void)0;
+}
+var356 = var357;
+}
+if (var356){
+var360 = NEW_parser_nodes__TPluseq(&type_parser_nodes__TPluseq);
+{
+lexer__TPluseq__init_tk(var360, var_location); /* Direct call lexer#TPluseq#init_tk on <var360:TPluseq>*/
 }
-if (var544){
-var547 = NEW_parser_nodes__TPluseq(&type_parser_nodes__TPluseq);
-((void (*)(val*, val*))(var547->class->vft[COLOR_lexer__TPluseq__init_tk]))(var547, var_location) /* init_tk on <var547:TPluseq>*/;
-var = var547;
+var = var360;
 goto RET_LABEL;
 } else {
 }
-var548 = 63;
-{ /* Inline kernel#Int#== (var_accept_token,var548) */
-var551 = var_accept_token == var548;
-var549 = var551;
-goto RET_LABEL550;
-RET_LABEL550:(void)0;
+var361 = 61;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var361) on <var_accept_token:Int> */
+var365 = var_accept_token == var361;
+var363 = var365;
+goto RET_LABEL364;
+RET_LABEL364:(void)0;
 }
-if (var549){
-var552 = NEW_parser_nodes__TMinuseq(&type_parser_nodes__TMinuseq);
-((void (*)(val*, val*))(var552->class->vft[COLOR_lexer__TMinuseq__init_tk]))(var552, var_location) /* init_tk on <var552:TMinuseq>*/;
-var = var552;
+var362 = var363;
+}
+if (var362){
+var366 = NEW_parser_nodes__TMinuseq(&type_parser_nodes__TMinuseq);
+{
+lexer__TMinuseq__init_tk(var366, var_location); /* Direct call lexer#TMinuseq#init_tk on <var366:TMinuseq>*/
+}
+var = var366;
 goto RET_LABEL;
 } else {
 }
-var553 = 64;
-{ /* Inline kernel#Int#== (var_accept_token,var553) */
-var556 = var_accept_token == var553;
-var554 = var556;
-goto RET_LABEL555;
-RET_LABEL555:(void)0;
+var367 = 62;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var367) on <var_accept_token:Int> */
+var371 = var_accept_token == var367;
+var369 = var371;
+goto RET_LABEL370;
+RET_LABEL370:(void)0;
+}
+var368 = var369;
 }
-if (var554){
-var557 = NEW_parser_nodes__TDotdotdot(&type_parser_nodes__TDotdotdot);
-((void (*)(val*, val*))(var557->class->vft[COLOR_lexer__TDotdotdot__init_tk]))(var557, var_location) /* init_tk on <var557:TDotdotdot>*/;
-var = var557;
+if (var368){
+var372 = NEW_parser_nodes__TDotdotdot(&type_parser_nodes__TDotdotdot);
+{
+lexer__TDotdotdot__init_tk(var372, var_location); /* Direct call lexer#TDotdotdot#init_tk on <var372:TDotdotdot>*/
+}
+var = var372;
 goto RET_LABEL;
 } else {
 }
-var558 = 65;
-{ /* Inline kernel#Int#== (var_accept_token,var558) */
-var561 = var_accept_token == var558;
-var559 = var561;
-goto RET_LABEL560;
-RET_LABEL560:(void)0;
+var373 = 63;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var373) on <var_accept_token:Int> */
+var377 = var_accept_token == var373;
+var375 = var377;
+goto RET_LABEL376;
+RET_LABEL376:(void)0;
+}
+var374 = var375;
+}
+if (var374){
+var378 = NEW_parser_nodes__TDotdot(&type_parser_nodes__TDotdot);
+{
+lexer__TDotdot__init_tk(var378, var_location); /* Direct call lexer#TDotdot#init_tk on <var378:TDotdot>*/
 }
-if (var559){
-var562 = NEW_parser_nodes__TDotdot(&type_parser_nodes__TDotdot);
-((void (*)(val*, val*))(var562->class->vft[COLOR_lexer__TDotdot__init_tk]))(var562, var_location) /* init_tk on <var562:TDotdot>*/;
-var = var562;
+var = var378;
 goto RET_LABEL;
 } else {
 }
-var563 = 66;
-{ /* Inline kernel#Int#== (var_accept_token,var563) */
-var566 = var_accept_token == var563;
-var564 = var566;
-goto RET_LABEL565;
-RET_LABEL565:(void)0;
+var379 = 64;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var379) on <var_accept_token:Int> */
+var383 = var_accept_token == var379;
+var381 = var383;
+goto RET_LABEL382;
+RET_LABEL382:(void)0;
 }
-if (var564){
-var567 = NEW_parser_nodes__TDot(&type_parser_nodes__TDot);
-((void (*)(val*, val*))(var567->class->vft[COLOR_lexer__TDot__init_tk]))(var567, var_location) /* init_tk on <var567:TDot>*/;
-var = var567;
+var380 = var381;
+}
+if (var380){
+var384 = NEW_parser_nodes__TDot(&type_parser_nodes__TDot);
+{
+lexer__TDot__init_tk(var384, var_location); /* Direct call lexer#TDot#init_tk on <var384:TDot>*/
+}
+var = var384;
 goto RET_LABEL;
 } else {
 }
-var568 = 67;
-{ /* Inline kernel#Int#== (var_accept_token,var568) */
-var571 = var_accept_token == var568;
-var569 = var571;
-goto RET_LABEL570;
-RET_LABEL570:(void)0;
+var385 = 65;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var385) on <var_accept_token:Int> */
+var389 = var_accept_token == var385;
+var387 = var389;
+goto RET_LABEL388;
+RET_LABEL388:(void)0;
+}
+var386 = var387;
+}
+if (var386){
+var390 = NEW_parser_nodes__TPlus(&type_parser_nodes__TPlus);
+{
+lexer__TPlus__init_tk(var390, var_location); /* Direct call lexer#TPlus#init_tk on <var390:TPlus>*/
 }
-if (var569){
-var572 = NEW_parser_nodes__TPlus(&type_parser_nodes__TPlus);
-((void (*)(val*, val*))(var572->class->vft[COLOR_lexer__TPlus__init_tk]))(var572, var_location) /* init_tk on <var572:TPlus>*/;
-var = var572;
+var = var390;
 goto RET_LABEL;
 } else {
 }
-var573 = 68;
-{ /* Inline kernel#Int#== (var_accept_token,var573) */
-var576 = var_accept_token == var573;
-var574 = var576;
-goto RET_LABEL575;
-RET_LABEL575:(void)0;
+var391 = 66;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var391) on <var_accept_token:Int> */
+var395 = var_accept_token == var391;
+var393 = var395;
+goto RET_LABEL394;
+RET_LABEL394:(void)0;
 }
-if (var574){
-var577 = NEW_parser_nodes__TMinus(&type_parser_nodes__TMinus);
-((void (*)(val*, val*))(var577->class->vft[COLOR_lexer__TMinus__init_tk]))(var577, var_location) /* init_tk on <var577:TMinus>*/;
-var = var577;
+var392 = var393;
+}
+if (var392){
+var396 = NEW_parser_nodes__TMinus(&type_parser_nodes__TMinus);
+{
+lexer__TMinus__init_tk(var396, var_location); /* Direct call lexer#TMinus#init_tk on <var396:TMinus>*/
+}
+var = var396;
 goto RET_LABEL;
 } else {
 }
-var578 = 69;
-{ /* Inline kernel#Int#== (var_accept_token,var578) */
-var581 = var_accept_token == var578;
-var579 = var581;
-goto RET_LABEL580;
-RET_LABEL580:(void)0;
+var397 = 67;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var397) on <var_accept_token:Int> */
+var401 = var_accept_token == var397;
+var399 = var401;
+goto RET_LABEL400;
+RET_LABEL400:(void)0;
 }
-if (var579){
-var582 = NEW_parser_nodes__TStar(&type_parser_nodes__TStar);
-((void (*)(val*, val*))(var582->class->vft[COLOR_lexer__TStar__init_tk]))(var582, var_location) /* init_tk on <var582:TStar>*/;
-var = var582;
+var398 = var399;
+}
+if (var398){
+var402 = NEW_parser_nodes__TStar(&type_parser_nodes__TStar);
+{
+lexer__TStar__init_tk(var402, var_location); /* Direct call lexer#TStar#init_tk on <var402:TStar>*/
+}
+var = var402;
 goto RET_LABEL;
 } else {
 }
-var583 = 70;
-{ /* Inline kernel#Int#== (var_accept_token,var583) */
-var586 = var_accept_token == var583;
-var584 = var586;
-goto RET_LABEL585;
-RET_LABEL585:(void)0;
+var403 = 68;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var403) on <var_accept_token:Int> */
+var407 = var_accept_token == var403;
+var405 = var407;
+goto RET_LABEL406;
+RET_LABEL406:(void)0;
+}
+var404 = var405;
 }
-if (var584){
-var587 = NEW_parser_nodes__TSlash(&type_parser_nodes__TSlash);
-((void (*)(val*, val*))(var587->class->vft[COLOR_lexer__TSlash__init_tk]))(var587, var_location) /* init_tk on <var587:TSlash>*/;
-var = var587;
+if (var404){
+var408 = NEW_parser_nodes__TStarstar(&type_parser_nodes__TStarstar);
+{
+lexer__TStarstar__init_tk(var408, var_location); /* Direct call lexer#TStarstar#init_tk on <var408:TStarstar>*/
+}
+var = var408;
 goto RET_LABEL;
 } else {
 }
-var588 = 71;
-{ /* Inline kernel#Int#== (var_accept_token,var588) */
-var591 = var_accept_token == var588;
-var589 = var591;
-goto RET_LABEL590;
-RET_LABEL590:(void)0;
+var409 = 69;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var409) on <var_accept_token:Int> */
+var413 = var_accept_token == var409;
+var411 = var413;
+goto RET_LABEL412;
+RET_LABEL412:(void)0;
+}
+var410 = var411;
+}
+if (var410){
+var414 = NEW_parser_nodes__TSlash(&type_parser_nodes__TSlash);
+{
+lexer__TSlash__init_tk(var414, var_location); /* Direct call lexer#TSlash#init_tk on <var414:TSlash>*/
 }
-if (var589){
-var592 = NEW_parser_nodes__TPercent(&type_parser_nodes__TPercent);
-((void (*)(val*, val*))(var592->class->vft[COLOR_lexer__TPercent__init_tk]))(var592, var_location) /* init_tk on <var592:TPercent>*/;
-var = var592;
+var = var414;
 goto RET_LABEL;
 } else {
 }
-var593 = 72;
-{ /* Inline kernel#Int#== (var_accept_token,var593) */
-var596 = var_accept_token == var593;
-var594 = var596;
-goto RET_LABEL595;
-RET_LABEL595:(void)0;
+var415 = 70;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var415) on <var_accept_token:Int> */
+var419 = var_accept_token == var415;
+var417 = var419;
+goto RET_LABEL418;
+RET_LABEL418:(void)0;
 }
-if (var594){
-var597 = NEW_parser_nodes__TEq(&type_parser_nodes__TEq);
-((void (*)(val*, val*))(var597->class->vft[COLOR_lexer__TEq__init_tk]))(var597, var_location) /* init_tk on <var597:TEq>*/;
-var = var597;
+var416 = var417;
+}
+if (var416){
+var420 = NEW_parser_nodes__TPercent(&type_parser_nodes__TPercent);
+{
+lexer__TPercent__init_tk(var420, var_location); /* Direct call lexer#TPercent#init_tk on <var420:TPercent>*/
+}
+var = var420;
 goto RET_LABEL;
 } else {
 }
-var598 = 73;
-{ /* Inline kernel#Int#== (var_accept_token,var598) */
-var601 = var_accept_token == var598;
-var599 = var601;
-goto RET_LABEL600;
-RET_LABEL600:(void)0;
+var421 = 71;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var421) on <var_accept_token:Int> */
+var425 = var_accept_token == var421;
+var423 = var425;
+goto RET_LABEL424;
+RET_LABEL424:(void)0;
+}
+var422 = var423;
+}
+if (var422){
+var426 = NEW_parser_nodes__TEq(&type_parser_nodes__TEq);
+{
+lexer__TEq__init_tk(var426, var_location); /* Direct call lexer#TEq#init_tk on <var426:TEq>*/
 }
-if (var599){
-var602 = NEW_parser_nodes__TNe(&type_parser_nodes__TNe);
-((void (*)(val*, val*))(var602->class->vft[COLOR_lexer__TNe__init_tk]))(var602, var_location) /* init_tk on <var602:TNe>*/;
-var = var602;
+var = var426;
 goto RET_LABEL;
 } else {
 }
-var603 = 74;
-{ /* Inline kernel#Int#== (var_accept_token,var603) */
-var606 = var_accept_token == var603;
-var604 = var606;
-goto RET_LABEL605;
-RET_LABEL605:(void)0;
+var427 = 72;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var427) on <var_accept_token:Int> */
+var431 = var_accept_token == var427;
+var429 = var431;
+goto RET_LABEL430;
+RET_LABEL430:(void)0;
+}
+var428 = var429;
 }
-if (var604){
-var607 = NEW_parser_nodes__TLt(&type_parser_nodes__TLt);
-((void (*)(val*, val*))(var607->class->vft[COLOR_lexer__TLt__init_tk]))(var607, var_location) /* init_tk on <var607:TLt>*/;
-var = var607;
+if (var428){
+var432 = NEW_parser_nodes__TNe(&type_parser_nodes__TNe);
+{
+lexer__TNe__init_tk(var432, var_location); /* Direct call lexer#TNe#init_tk on <var432:TNe>*/
+}
+var = var432;
 goto RET_LABEL;
 } else {
 }
-var608 = 75;
-{ /* Inline kernel#Int#== (var_accept_token,var608) */
-var611 = var_accept_token == var608;
-var609 = var611;
-goto RET_LABEL610;
-RET_LABEL610:(void)0;
+var433 = 73;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var433) on <var_accept_token:Int> */
+var437 = var_accept_token == var433;
+var435 = var437;
+goto RET_LABEL436;
+RET_LABEL436:(void)0;
+}
+var434 = var435;
+}
+if (var434){
+var438 = NEW_parser_nodes__TLt(&type_parser_nodes__TLt);
+{
+lexer__TLt__init_tk(var438, var_location); /* Direct call lexer#TLt#init_tk on <var438:TLt>*/
 }
-if (var609){
-var612 = NEW_parser_nodes__TLe(&type_parser_nodes__TLe);
-((void (*)(val*, val*))(var612->class->vft[COLOR_lexer__TLe__init_tk]))(var612, var_location) /* init_tk on <var612:TLe>*/;
-var = var612;
+var = var438;
 goto RET_LABEL;
 } else {
 }
-var613 = 76;
-{ /* Inline kernel#Int#== (var_accept_token,var613) */
-var616 = var_accept_token == var613;
-var614 = var616;
-goto RET_LABEL615;
-RET_LABEL615:(void)0;
+var439 = 74;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var439) on <var_accept_token:Int> */
+var443 = var_accept_token == var439;
+var441 = var443;
+goto RET_LABEL442;
+RET_LABEL442:(void)0;
+}
+var440 = var441;
 }
-if (var614){
-var617 = NEW_parser_nodes__TLl(&type_parser_nodes__TLl);
-((void (*)(val*, val*))(var617->class->vft[COLOR_lexer__TLl__init_tk]))(var617, var_location) /* init_tk on <var617:TLl>*/;
-var = var617;
+if (var440){
+var444 = NEW_parser_nodes__TLe(&type_parser_nodes__TLe);
+{
+lexer__TLe__init_tk(var444, var_location); /* Direct call lexer#TLe#init_tk on <var444:TLe>*/
+}
+var = var444;
 goto RET_LABEL;
 } else {
 }
-var618 = 77;
-{ /* Inline kernel#Int#== (var_accept_token,var618) */
-var621 = var_accept_token == var618;
-var619 = var621;
-goto RET_LABEL620;
-RET_LABEL620:(void)0;
+var445 = 75;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var445) on <var_accept_token:Int> */
+var449 = var_accept_token == var445;
+var447 = var449;
+goto RET_LABEL448;
+RET_LABEL448:(void)0;
+}
+var446 = var447;
 }
-if (var619){
-var622 = NEW_parser_nodes__TGt(&type_parser_nodes__TGt);
-((void (*)(val*, val*))(var622->class->vft[COLOR_lexer__TGt__init_tk]))(var622, var_location) /* init_tk on <var622:TGt>*/;
-var = var622;
+if (var446){
+var450 = NEW_parser_nodes__TLl(&type_parser_nodes__TLl);
+{
+lexer__TLl__init_tk(var450, var_location); /* Direct call lexer#TLl#init_tk on <var450:TLl>*/
+}
+var = var450;
 goto RET_LABEL;
 } else {
 }
-var623 = 78;
-{ /* Inline kernel#Int#== (var_accept_token,var623) */
-var626 = var_accept_token == var623;
-var624 = var626;
-goto RET_LABEL625;
-RET_LABEL625:(void)0;
+var451 = 76;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var451) on <var_accept_token:Int> */
+var455 = var_accept_token == var451;
+var453 = var455;
+goto RET_LABEL454;
+RET_LABEL454:(void)0;
+}
+var452 = var453;
 }
-if (var624){
-var627 = NEW_parser_nodes__TGe(&type_parser_nodes__TGe);
-((void (*)(val*, val*))(var627->class->vft[COLOR_lexer__TGe__init_tk]))(var627, var_location) /* init_tk on <var627:TGe>*/;
-var = var627;
+if (var452){
+var456 = NEW_parser_nodes__TGt(&type_parser_nodes__TGt);
+{
+lexer__TGt__init_tk(var456, var_location); /* Direct call lexer#TGt#init_tk on <var456:TGt>*/
+}
+var = var456;
 goto RET_LABEL;
 } else {
 }
-var628 = 79;
-{ /* Inline kernel#Int#== (var_accept_token,var628) */
-var631 = var_accept_token == var628;
-var629 = var631;
-goto RET_LABEL630;
-RET_LABEL630:(void)0;
+var457 = 77;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var457) on <var_accept_token:Int> */
+var461 = var_accept_token == var457;
+var459 = var461;
+goto RET_LABEL460;
+RET_LABEL460:(void)0;
+}
+var458 = var459;
 }
-if (var629){
-var632 = NEW_parser_nodes__TGg(&type_parser_nodes__TGg);
-((void (*)(val*, val*))(var632->class->vft[COLOR_lexer__TGg__init_tk]))(var632, var_location) /* init_tk on <var632:TGg>*/;
-var = var632;
+if (var458){
+var462 = NEW_parser_nodes__TGe(&type_parser_nodes__TGe);
+{
+lexer__TGe__init_tk(var462, var_location); /* Direct call lexer#TGe#init_tk on <var462:TGe>*/
+}
+var = var462;
 goto RET_LABEL;
 } else {
 }
-var633 = 80;
-{ /* Inline kernel#Int#== (var_accept_token,var633) */
-var636 = var_accept_token == var633;
-var634 = var636;
-goto RET_LABEL635;
-RET_LABEL635:(void)0;
+var463 = 78;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var463) on <var_accept_token:Int> */
+var467 = var_accept_token == var463;
+var465 = var467;
+goto RET_LABEL466;
+RET_LABEL466:(void)0;
 }
-if (var634){
-var637 = NEW_parser_nodes__TStarship(&type_parser_nodes__TStarship);
-((void (*)(val*, val*))(var637->class->vft[COLOR_lexer__TStarship__init_tk]))(var637, var_location) /* init_tk on <var637:TStarship>*/;
-var = var637;
+var464 = var465;
+}
+if (var464){
+var468 = NEW_parser_nodes__TGg(&type_parser_nodes__TGg);
+{
+lexer__TGg__init_tk(var468, var_location); /* Direct call lexer#TGg#init_tk on <var468:TGg>*/
+}
+var = var468;
 goto RET_LABEL;
 } else {
 }
-var638 = 81;
-{ /* Inline kernel#Int#== (var_accept_token,var638) */
-var641 = var_accept_token == var638;
-var639 = var641;
-goto RET_LABEL640;
-RET_LABEL640:(void)0;
+var469 = 79;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var469) on <var_accept_token:Int> */
+var473 = var_accept_token == var469;
+var471 = var473;
+goto RET_LABEL472;
+RET_LABEL472:(void)0;
+}
+var470 = var471;
 }
-if (var639){
-var642 = NEW_parser_nodes__TBang(&type_parser_nodes__TBang);
-((void (*)(val*, val*))(var642->class->vft[COLOR_lexer__TBang__init_tk]))(var642, var_location) /* init_tk on <var642:TBang>*/;
-var = var642;
+if (var470){
+var474 = NEW_parser_nodes__TStarship(&type_parser_nodes__TStarship);
+{
+lexer__TStarship__init_tk(var474, var_location); /* Direct call lexer#TStarship#init_tk on <var474:TStarship>*/
+}
+var = var474;
 goto RET_LABEL;
 } else {
 }
-var643 = 82;
-{ /* Inline kernel#Int#== (var_accept_token,var643) */
-var646 = var_accept_token == var643;
-var644 = var646;
-goto RET_LABEL645;
-RET_LABEL645:(void)0;
+var475 = 80;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var475) on <var_accept_token:Int> */
+var479 = var_accept_token == var475;
+var477 = var479;
+goto RET_LABEL478;
+RET_LABEL478:(void)0;
+}
+var476 = var477;
 }
-if (var644){
-var647 = NEW_parser_nodes__TAt(&type_parser_nodes__TAt);
-((void (*)(val*, val*))(var647->class->vft[COLOR_lexer__TAt__init_tk]))(var647, var_location) /* init_tk on <var647:TAt>*/;
-var = var647;
+if (var476){
+var480 = NEW_parser_nodes__TBang(&type_parser_nodes__TBang);
+{
+lexer__TBang__init_tk(var480, var_location); /* Direct call lexer#TBang#init_tk on <var480:TBang>*/
+}
+var = var480;
 goto RET_LABEL;
 } else {
 }
-var648 = 83;
-{ /* Inline kernel#Int#== (var_accept_token,var648) */
-var651 = var_accept_token == var648;
-var649 = var651;
-goto RET_LABEL650;
-RET_LABEL650:(void)0;
+var481 = 81;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var481) on <var_accept_token:Int> */
+var485 = var_accept_token == var481;
+var483 = var485;
+goto RET_LABEL484;
+RET_LABEL484:(void)0;
+}
+var482 = var483;
 }
-if (var649){
-var652 = NEW_parser_nodes__TClassid(&type_parser_nodes__TClassid);
-((void (*)(val*, val*))(var652->class->vft[COLOR_lexer__TClassid__init_tk]))(var652, var_location) /* init_tk on <var652:TClassid>*/;
-var = var652;
+if (var482){
+var486 = NEW_parser_nodes__TAt(&type_parser_nodes__TAt);
+{
+lexer__TAt__init_tk(var486, var_location); /* Direct call lexer#TAt#init_tk on <var486:TAt>*/
+}
+var = var486;
 goto RET_LABEL;
 } else {
 }
-var653 = 84;
-{ /* Inline kernel#Int#== (var_accept_token,var653) */
-var656 = var_accept_token == var653;
-var654 = var656;
-goto RET_LABEL655;
-RET_LABEL655:(void)0;
+var487 = 82;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var487) on <var_accept_token:Int> */
+var491 = var_accept_token == var487;
+var489 = var491;
+goto RET_LABEL490;
+RET_LABEL490:(void)0;
 }
-if (var654){
-var657 = NEW_parser_nodes__TId(&type_parser_nodes__TId);
-((void (*)(val*, val*))(var657->class->vft[COLOR_lexer__TId__init_tk]))(var657, var_location) /* init_tk on <var657:TId>*/;
-var = var657;
+var488 = var489;
+}
+if (var488){
+var492 = NEW_parser_nodes__TClassid(&type_parser_nodes__TClassid);
+{
+lexer__TClassid__init_tk(var492, var_location); /* Direct call lexer#TClassid#init_tk on <var492:TClassid>*/
+}
+var = var492;
 goto RET_LABEL;
 } else {
 }
-var658 = 85;
-{ /* Inline kernel#Int#== (var_accept_token,var658) */
-var661 = var_accept_token == var658;
-var659 = var661;
-goto RET_LABEL660;
-RET_LABEL660:(void)0;
+var493 = 83;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var493) on <var_accept_token:Int> */
+var497 = var_accept_token == var493;
+var495 = var497;
+goto RET_LABEL496;
+RET_LABEL496:(void)0;
+}
+var494 = var495;
 }
-if (var659){
-var662 = NEW_parser_nodes__TAttrid(&type_parser_nodes__TAttrid);
-((void (*)(val*, val*))(var662->class->vft[COLOR_lexer__TAttrid__init_tk]))(var662, var_location) /* init_tk on <var662:TAttrid>*/;
-var = var662;
+if (var494){
+var498 = NEW_parser_nodes__TId(&type_parser_nodes__TId);
+{
+lexer__TId__init_tk(var498, var_location); /* Direct call lexer#TId#init_tk on <var498:TId>*/
+}
+var = var498;
 goto RET_LABEL;
 } else {
 }
-var663 = 86;
-{ /* Inline kernel#Int#== (var_accept_token,var663) */
-var666 = var_accept_token == var663;
-var664 = var666;
-goto RET_LABEL665;
-RET_LABEL665:(void)0;
+var499 = 84;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var499) on <var_accept_token:Int> */
+var503 = var_accept_token == var499;
+var501 = var503;
+goto RET_LABEL502;
+RET_LABEL502:(void)0;
+}
+var500 = var501;
+}
+if (var500){
+var504 = NEW_parser_nodes__TAttrid(&type_parser_nodes__TAttrid);
+{
+lexer__TAttrid__init_tk(var504, var_location); /* Direct call lexer#TAttrid#init_tk on <var504:TAttrid>*/
 }
-if (var664){
-var667 = NEW_parser_nodes__TNumber(&type_parser_nodes__TNumber);
-((void (*)(val*, val*))(var667->class->vft[COLOR_lexer__TNumber__init_tk]))(var667, var_location) /* init_tk on <var667:TNumber>*/;
-var = var667;
+var = var504;
 goto RET_LABEL;
 } else {
 }
-var668 = 87;
-{ /* Inline kernel#Int#== (var_accept_token,var668) */
-var671 = var_accept_token == var668;
-var669 = var671;
-goto RET_LABEL670;
-RET_LABEL670:(void)0;
+var505 = 85;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var505) on <var_accept_token:Int> */
+var509 = var_accept_token == var505;
+var507 = var509;
+goto RET_LABEL508;
+RET_LABEL508:(void)0;
 }
-if (var669){
-var672 = NEW_parser_nodes__TFloat(&type_parser_nodes__TFloat);
-((void (*)(val*, val*))(var672->class->vft[COLOR_lexer__TFloat__init_tk]))(var672, var_location) /* init_tk on <var672:TFloat>*/;
-var = var672;
+var506 = var507;
+}
+if (var506){
+var510 = NEW_parser_nodes__TNumber(&type_parser_nodes__TNumber);
+{
+lexer__TNumber__init_tk(var510, var_location); /* Direct call lexer#TNumber#init_tk on <var510:TNumber>*/
+}
+var = var510;
 goto RET_LABEL;
 } else {
 }
-var673 = 88;
-{ /* Inline kernel#Int#== (var_accept_token,var673) */
-var676 = var_accept_token == var673;
-var674 = var676;
-goto RET_LABEL675;
-RET_LABEL675:(void)0;
+var511 = 86;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var511) on <var_accept_token:Int> */
+var515 = var_accept_token == var511;
+var513 = var515;
+goto RET_LABEL514;
+RET_LABEL514:(void)0;
+}
+var512 = var513;
+}
+if (var512){
+var516 = NEW_parser_nodes__THexNumber(&type_parser_nodes__THexNumber);
+{
+lexer__THexNumber__init_tk(var516, var_location); /* Direct call lexer#THexNumber#init_tk on <var516:THexNumber>*/
 }
-if (var674){
-var677 = NEW_parser_nodes__TString(&type_parser_nodes__TString);
-((void (*)(val*, val*))(var677->class->vft[COLOR_lexer__TString__init_tk]))(var677, var_location) /* init_tk on <var677:TString>*/;
-var = var677;
+var = var516;
 goto RET_LABEL;
 } else {
 }
-var678 = 89;
-{ /* Inline kernel#Int#== (var_accept_token,var678) */
-var681 = var_accept_token == var678;
-var679 = var681;
-goto RET_LABEL680;
-RET_LABEL680:(void)0;
+var517 = 87;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var517) on <var_accept_token:Int> */
+var521 = var_accept_token == var517;
+var519 = var521;
+goto RET_LABEL520;
+RET_LABEL520:(void)0;
+}
+var518 = var519;
 }
-if (var679){
-var682 = NEW_parser_nodes__TStartString(&type_parser_nodes__TStartString);
-((void (*)(val*, val*))(var682->class->vft[COLOR_lexer__TStartString__init_tk]))(var682, var_location) /* init_tk on <var682:TStartString>*/;
-var = var682;
+if (var518){
+var522 = NEW_parser_nodes__TFloat(&type_parser_nodes__TFloat);
+{
+lexer__TFloat__init_tk(var522, var_location); /* Direct call lexer#TFloat#init_tk on <var522:TFloat>*/
+}
+var = var522;
 goto RET_LABEL;
 } else {
 }
-var683 = 90;
-{ /* Inline kernel#Int#== (var_accept_token,var683) */
-var686 = var_accept_token == var683;
-var684 = var686;
-goto RET_LABEL685;
-RET_LABEL685:(void)0;
+var523 = 88;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var523) on <var_accept_token:Int> */
+var527 = var_accept_token == var523;
+var525 = var527;
+goto RET_LABEL526;
+RET_LABEL526:(void)0;
+}
+var524 = var525;
+}
+if (var524){
+var528 = NEW_parser_nodes__TString(&type_parser_nodes__TString);
+{
+lexer__TString__init_tk(var528, var_location); /* Direct call lexer#TString#init_tk on <var528:TString>*/
 }
-if (var684){
-var687 = NEW_parser_nodes__TMidString(&type_parser_nodes__TMidString);
-((void (*)(val*, val*))(var687->class->vft[COLOR_lexer__TMidString__init_tk]))(var687, var_location) /* init_tk on <var687:TMidString>*/;
-var = var687;
+var = var528;
 goto RET_LABEL;
 } else {
 }
-var688 = 91;
-{ /* Inline kernel#Int#== (var_accept_token,var688) */
-var691 = var_accept_token == var688;
-var689 = var691;
-goto RET_LABEL690;
-RET_LABEL690:(void)0;
+var529 = 89;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var529) on <var_accept_token:Int> */
+var533 = var_accept_token == var529;
+var531 = var533;
+goto RET_LABEL532;
+RET_LABEL532:(void)0;
 }
-if (var689){
-var692 = NEW_parser_nodes__TEndString(&type_parser_nodes__TEndString);
-((void (*)(val*, val*))(var692->class->vft[COLOR_lexer__TEndString__init_tk]))(var692, var_location) /* init_tk on <var692:TEndString>*/;
-var = var692;
+var530 = var531;
+}
+if (var530){
+var534 = NEW_parser_nodes__TStartString(&type_parser_nodes__TStartString);
+{
+lexer__TStartString__init_tk(var534, var_location); /* Direct call lexer#TStartString#init_tk on <var534:TStartString>*/
+}
+var = var534;
 goto RET_LABEL;
 } else {
 }
-var693 = 92;
-{ /* Inline kernel#Int#== (var_accept_token,var693) */
-var696 = var_accept_token == var693;
-var694 = var696;
-goto RET_LABEL695;
-RET_LABEL695:(void)0;
+var535 = 90;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var535) on <var_accept_token:Int> */
+var539 = var_accept_token == var535;
+var537 = var539;
+goto RET_LABEL538;
+RET_LABEL538:(void)0;
+}
+var536 = var537;
+}
+if (var536){
+var540 = NEW_parser_nodes__TMidString(&type_parser_nodes__TMidString);
+{
+lexer__TMidString__init_tk(var540, var_location); /* Direct call lexer#TMidString#init_tk on <var540:TMidString>*/
 }
-if (var694){
-var697 = NEW_parser_nodes__TChar(&type_parser_nodes__TChar);
-((void (*)(val*, val*))(var697->class->vft[COLOR_lexer__TChar__init_tk]))(var697, var_location) /* init_tk on <var697:TChar>*/;
-var = var697;
+var = var540;
 goto RET_LABEL;
 } else {
 }
-var698 = 93;
-{ /* Inline kernel#Int#== (var_accept_token,var698) */
-var701 = var_accept_token == var698;
-var699 = var701;
-goto RET_LABEL700;
-RET_LABEL700:(void)0;
+var541 = 91;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var541) on <var_accept_token:Int> */
+var545 = var_accept_token == var541;
+var543 = var545;
+goto RET_LABEL544;
+RET_LABEL544:(void)0;
 }
-if (var699){
-var702 = NEW_parser_nodes__TBadString(&type_parser_nodes__TBadString);
-((void (*)(val*, val*))(var702->class->vft[COLOR_lexer__TBadString__init_tk]))(var702, var_location) /* init_tk on <var702:TBadString>*/;
-var = var702;
+var542 = var543;
+}
+if (var542){
+var546 = NEW_parser_nodes__TEndString(&type_parser_nodes__TEndString);
+{
+lexer__TEndString__init_tk(var546, var_location); /* Direct call lexer#TEndString#init_tk on <var546:TEndString>*/
+}
+var = var546;
 goto RET_LABEL;
 } else {
 }
-var703 = 94;
-{ /* Inline kernel#Int#== (var_accept_token,var703) */
-var706 = var_accept_token == var703;
-var704 = var706;
-goto RET_LABEL705;
-RET_LABEL705:(void)0;
+var547 = 92;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var547) on <var_accept_token:Int> */
+var551 = var_accept_token == var547;
+var549 = var551;
+goto RET_LABEL550;
+RET_LABEL550:(void)0;
+}
+var548 = var549;
 }
-if (var704){
-var707 = NEW_parser_nodes__TBadChar(&type_parser_nodes__TBadChar);
-((void (*)(val*, val*))(var707->class->vft[COLOR_lexer__TBadChar__init_tk]))(var707, var_location) /* init_tk on <var707:TBadChar>*/;
-var = var707;
+if (var548){
+var552 = NEW_parser_nodes__TChar(&type_parser_nodes__TChar);
+{
+lexer__TChar__init_tk(var552, var_location); /* Direct call lexer#TChar#init_tk on <var552:TChar>*/
+}
+var = var552;
 goto RET_LABEL;
 } else {
 }
-var708 = 95;
-{ /* Inline kernel#Int#== (var_accept_token,var708) */
-var711 = var_accept_token == var708;
-var709 = var711;
-goto RET_LABEL710;
-RET_LABEL710:(void)0;
+var553 = 93;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var553) on <var_accept_token:Int> */
+var557 = var_accept_token == var553;
+var555 = var557;
+goto RET_LABEL556;
+RET_LABEL556:(void)0;
 }
-if (var709){
-var712 = NEW_parser_nodes__TExternCodeSegment(&type_parser_nodes__TExternCodeSegment);
-((void (*)(val*, val*))(var712->class->vft[COLOR_lexer__TExternCodeSegment__init_tk]))(var712, var_location) /* init_tk on <var712:TExternCodeSegment>*/;
-var = var712;
+var554 = var555;
+}
+if (var554){
+var558 = NEW_parser_nodes__TBadString(&type_parser_nodes__TBadString);
+{
+lexer__TBadString__init_tk(var558, var_location); /* Direct call lexer#TBadString#init_tk on <var558:TBadString>*/
+}
+var = var558;
 goto RET_LABEL;
 } else {
 }
-} else {
-self->attrs[COLOR_lexer__Lexer___stream_pos].l = var_sp; /* _stream_pos on <self:Lexer> */
-var713 = NEW_location__Location(&type_location__Location);
-var714 = self->attrs[COLOR_lexer__Lexer___file].val; /* _file on <self:Lexer> */
-if (var714 == NULL) {
-fprintf(stderr, "Runtime error: %s", "Uninitialized attribute _file");
-fprintf(stderr, " (%s:%d)\n", "src/parser/lexer.nit", 1664);
-show_backtrace(1);
+var559 = 94;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var559) on <var_accept_token:Int> */
+var563 = var_accept_token == var559;
+var561 = var563;
+goto RET_LABEL562;
+RET_LABEL562:(void)0;
 }
-var715 = 1;
-{ /* Inline kernel#Int#+ (var_start_line,var715) */
-var718 = var_start_line + var715;
-var716 = var718;
-goto RET_LABEL717;
-RET_LABEL717:(void)0;
-}
-var719 = 1;
-{ /* Inline kernel#Int#+ (var_start_line,var719) */
-var722 = var_start_line + var719;
-var720 = var722;
-goto RET_LABEL721;
-RET_LABEL721:(void)0;
-}
-var723 = 1;
-{ /* Inline kernel#Int#+ (var_start_pos,var723) */
-var726 = var_start_pos + var723;
-var724 = var726;
-goto RET_LABEL725;
-RET_LABEL725:(void)0;
-}
-var727 = 1;
-{ /* Inline kernel#Int#+ (var_start_pos,var727) */
-var730 = var_start_pos + var727;
-var728 = var730;
-goto RET_LABEL729;
-RET_LABEL729:(void)0;
-}
-((void (*)(val*, val*, long, long, long, long))(var713->class->vft[COLOR_location__Location__init]))(var713, var714, var716, var720, var724, var728) /* init on <var713:Location>*/;
-var_location731 = var713;
-{ /* Inline kernel#Int#> (var_sp,var_start_stream_pos) */
-/* Covariant cast for argument 0 (i) <var_start_stream_pos:Int> isa OTHER */
-/* <var_start_stream_pos:Int> isa OTHER */
-var734 = 1; /* easy <var_start_stream_pos:Int> isa OTHER*/
-if (!var734) {
-var_class_name737 = type_kernel__Int.name;
-fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name737);
-fprintf(stderr, " (%s:%d)\n", "lib/standard/kernel.nit", 263);
-show_backtrace(1);
+var560 = var561;
 }
-var738 = var_sp > var_start_stream_pos;
-var732 = var738;
-goto RET_LABEL733;
-RET_LABEL733:(void)0;
-}
-if (var732){
-{ /* Inline kernel#Int#- (var_sp,var_start_stream_pos) */
-var741 = var_sp - var_start_stream_pos;
-var739 = var741;
-goto RET_LABEL740;
-RET_LABEL740:(void)0;
-}
-var742 = ((val* (*)(val*, long, long))(var_string->class->vft[COLOR_string__AbstractString__substring]))(var_string, var_start_stream_pos, var739) /* substring on <var_string:String>*/;
-var_text = var742;
-var743 = NEW_parser_nodes__ALexerError(&type_parser_nodes__ALexerError);
-var744 = NEW_array__Array(&type_array__Arraykernel__Object);
-var745 = 3;
-((void (*)(val*, long))(var744->class->vft[COLOR_array__Array__with_capacity]))(var744, var745) /* with_capacity on <var744:Array[Object]>*/;
-var_ = var744;
-if (varonce) {
-var746 = varonce;
-} else {
-var747 = "Syntax error: unknown token ";
-var748 = 28;
-var749 = string__NativeString__to_s_with_length(var747, var748);
-var746 = var749;
-varonce = var746;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var746) /* add on <var_:Array[Object]>*/;
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var_text) /* add on <var_:Array[Object]>*/;
-if (varonce750) {
-var751 = varonce750;
-} else {
-var752 = ".";
-var753 = 1;
-var754 = string__NativeString__to_s_with_length(var752, var753);
-var751 = var754;
-varonce750 = var751;
-}
-((void (*)(val*, val*))(var_->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var_, var751) /* add on <var_:Array[Object]>*/;
-var755 = ((val* (*)(val*))(var_->class->vft[COLOR_string__Object__to_s]))(var_) /* to_s on <var_:Array[Object]>*/;
-((void (*)(val*, val*, val*, val*))(var743->class->vft[COLOR_lexer__ALexerError__init_lexer_error]))(var743, var755, var_location731, var_text) /* init_lexer_error on <var743:ALexerError>*/;
-var_token = var743;
-var = var_token;
+if (var560){
+var564 = NEW_parser_nodes__TBadChar(&type_parser_nodes__TBadChar);
+{
+lexer__TBadChar__init_tk(var564, var_location); /* Direct call lexer#TBadChar#init_tk on <var564:TBadChar>*/
+}
+var = var564;
 goto RET_LABEL;
 } else {
-var756 = NEW_parser_nodes__EOF(&type_parser_nodes__EOF);
-((void (*)(val*, val*))(var756->class->vft[COLOR_lexer__EOF__init_tk]))(var756, var_location731) /* init_tk on <var756:EOF>*/;
-var_token757 = var756;
-var = var_token757;
-goto RET_LABEL;
 }
+var565 = 95;
+{
+{ /* Inline kernel#Int#== (var_accept_token,var565) on <var_accept_token:Int> */
+var569 = var_accept_token == var565;
+var567 = var569;
+goto RET_LABEL568;
+RET_LABEL568:(void)0;
 }
+var566 = var567;
 }
-CONTINUE_label758: (void)0;
+if (var566){
+var570 = NEW_parser_nodes__TExternCodeSegment(&type_parser_nodes__TExternCodeSegment);
+{
+lexer__TExternCodeSegment__init_tk(var570, var_location); /* Direct call lexer#TExternCodeSegment#init_tk on <var570:TExternCodeSegment>*/
+}
+var = var570;
+goto RET_LABEL;
+} else {
 }
-BREAK_label758: (void)0;
+PRINT_ERROR("Runtime error: %s", "Aborted");
+PRINT_ERROR(" (%s:%d)\n", "parser/lexer.nit", 1445);
+show_backtrace(1);
 RET_LABEL:;
 return var;
 }
-/* method lexer#Lexer#get_token for (self: Object): nullable Token */
-val* VIRTUAL_lexer__Lexer__get_token(val* self) {
-val* var /* : nullable Token */;
-val* var1 /* : nullable Token */;
-var1 = lexer__Lexer__get_token(self);
+/* method lexer#Lexer#make_token for (self: Object, Int, Location): Token */
+val* VIRTUAL_lexer__Lexer__make_token(val* self, long p0, val* p1) {
+val* var /* : Token */;
+val* var1 /* : Token */;
+var1 = lexer__Lexer__make_token(self, p0, p1);
 var = var1;
 RET_LABEL:;
 return var;