c_src: regenerate
[nit.git] / c_src / core__bytes.sep.1.c
similarity index 52%
rename from c_src/standard__bytes.sep.1.c
rename to c_src/core__bytes.sep.1.c
index a4889c1..311de57 100644 (file)
@@ -1,69 +1,69 @@
-#include "standard__bytes.sep.0.h"
+#include "core__bytes.sep.0.h"
 /* method bytes#Bytes#items for (self: Bytes): NativeString */
-char* standard___standard__Bytes___items(val* self) {
+char* core___core__Bytes___items(val* self) {
 char* var /* : NativeString */;
 char* var1 /* : NativeString */;
-var1 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var1 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method bytes#Bytes#items= for (self: Bytes, NativeString) */
-void standard___standard__Bytes___items_61d(val* self, char* p0) {
-self->attrs[COLOR_standard__bytes__Bytes___items].str = p0; /* _items on <self:Bytes> */
+void core___core__Bytes___items_61d(val* self, char* p0) {
+self->attrs[COLOR_core__bytes__Bytes___items].str = p0; /* _items on <self:Bytes> */
 RET_LABEL:;
 }
 /* method bytes#Bytes#length for (self: Bytes): Int */
-long standard___standard__Bytes___standard__abstract_collection__Collection__length(val* self) {
+long core___core__Bytes___core__abstract_collection__Collection__length(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var1 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method bytes#Bytes#length= for (self: Bytes, Int) */
-void standard___standard__Bytes___standard__array__AbstractArrayRead__length_61d(val* self, long p0) {
-self->attrs[COLOR_standard__bytes__Bytes___length].l = p0; /* _length on <self:Bytes> */
+void core___core__Bytes___core__array__AbstractArrayRead__length_61d(val* self, long p0) {
+self->attrs[COLOR_core__bytes__Bytes___length].l = p0; /* _length on <self:Bytes> */
 RET_LABEL:;
 }
 /* method bytes#Bytes#capacity for (self: Bytes): Int */
-long standard___standard__Bytes___capacity(val* self) {
+long core___core__Bytes___capacity(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var1 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method bytes#Bytes#capacity= for (self: Bytes, Int) */
-void standard___standard__Bytes___capacity_61d(val* self, long p0) {
-self->attrs[COLOR_standard__bytes__Bytes___capacity].l = p0; /* _capacity on <self:Bytes> */
+void core___core__Bytes___capacity_61d(val* self, long p0) {
+self->attrs[COLOR_core__bytes__Bytes___capacity].l = p0; /* _capacity on <self:Bytes> */
 RET_LABEL:;
 }
 /* method bytes#Bytes#persisted for (self: Bytes): Bool */
-short int standard___standard__Bytes___persisted(val* self) {
+short int core___core__Bytes___persisted(val* self) {
 short int var /* : Bool */;
 short int var1 /* : Bool */;
-var1 = self->attrs[COLOR_standard__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
+var1 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method bytes#Bytes#persisted= for (self: Bytes, Bool) */
-void standard___standard__Bytes___persisted_61d(val* self, short int p0) {
-self->attrs[COLOR_standard__bytes__Bytes___persisted].s = p0; /* _persisted on <self:Bytes> */
+void core___core__Bytes___persisted_61d(val* self, short int p0) {
+self->attrs[COLOR_core__bytes__Bytes___persisted].s = p0; /* _persisted on <self:Bytes> */
 RET_LABEL:;
 }
 /* method bytes#Bytes#empty for (self: Bytes) */
-void standard___standard__Bytes___empty(val* self) {
+void core___core__Bytes___empty(val* self) {
 char* var /* : NativeString */;
 char* var1 /* : NativeString */;
 char* var3 /* : NativeString */;
 char* var_ns /* var ns: NativeString */;
 var = NULL/*special!*/;
 {
-{ /* Inline string#NativeString#new (var,0l) on <var:NativeString> */
+{ /* Inline native#NativeString#new (var,0l) on <var:NativeString> */
 var3 = (char*)nit_alloc(0l);
 var1 = var3;
 goto RET_LABEL2;
@@ -72,21 +72,21 @@ RET_LABEL2:(void)0;
 }
 var_ns = var1;
 {
-((void(*)(val* self, char* p0))(self->class->vft[COLOR_standard__bytes__Bytes__items_61d]))(self, var_ns); /* items= on <self:Bytes>*/
+((void(*)(val* self, char* p0))(self->class->vft[COLOR_core__bytes__Bytes__items_61d]))(self, var_ns); /* items= on <self:Bytes>*/
 }
 {
-((void(*)(val* self, long p0))(self->class->vft[COLOR_standard__array__AbstractArrayRead__length_61d]))(self, 0l); /* length= on <self:Bytes>*/
+((void(*)(val* self, long p0))(self->class->vft[COLOR_core__array__AbstractArrayRead__length_61d]))(self, 0l); /* length= on <self:Bytes>*/
 }
 {
-((void(*)(val* self, long p0))(self->class->vft[COLOR_standard__bytes__Bytes__capacity_61d]))(self, 0l); /* capacity= on <self:Bytes>*/
+((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__Bytes__capacity_61d]))(self, 0l); /* capacity= on <self:Bytes>*/
 }
 {
-((void(*)(val* self))(self->class->vft[COLOR_standard__kernel__Object__init]))(self); /* init on <self:Bytes>*/
+((void(*)(val* self))(self->class->vft[COLOR_core__kernel__Object__init]))(self); /* init on <self:Bytes>*/
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#with_capacity for (self: Bytes, Int) */
-void standard___standard__Bytes___with_capacity(val* self, long p0) {
+void core___core__Bytes___with_capacity(val* self, long p0) {
 long var_cap /* var cap: Int */;
 char* var /* : NativeString */;
 char* var1 /* : NativeString */;
@@ -95,7 +95,7 @@ char* var_ns /* var ns: NativeString */;
 var_cap = p0;
 var = NULL/*special!*/;
 {
-{ /* Inline string#NativeString#new (var,var_cap) on <var:NativeString> */
+{ /* Inline native#NativeString#new (var,var_cap) on <var:NativeString> */
 var3 = (char*)nit_alloc(var_cap);
 var1 = var3;
 goto RET_LABEL2;
@@ -104,39 +104,37 @@ RET_LABEL2:(void)0;
 }
 var_ns = var1;
 {
-((void(*)(val* self, char* p0))(self->class->vft[COLOR_standard__bytes__Bytes__items_61d]))(self, var_ns); /* items= on <self:Bytes>*/
+((void(*)(val* self, char* p0))(self->class->vft[COLOR_core__bytes__Bytes__items_61d]))(self, var_ns); /* items= on <self:Bytes>*/
 }
 {
-((void(*)(val* self, long p0))(self->class->vft[COLOR_standard__array__AbstractArrayRead__length_61d]))(self, 0l); /* length= on <self:Bytes>*/
+((void(*)(val* self, long p0))(self->class->vft[COLOR_core__array__AbstractArrayRead__length_61d]))(self, 0l); /* length= on <self:Bytes>*/
 }
 {
-((void(*)(val* self, long p0))(self->class->vft[COLOR_standard__bytes__Bytes__capacity_61d]))(self, var_cap); /* capacity= on <self:Bytes>*/
+((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__Bytes__capacity_61d]))(self, var_cap); /* capacity= on <self:Bytes>*/
 }
 {
-((void(*)(val* self))(self->class->vft[COLOR_standard__kernel__Object__init]))(self); /* init on <self:Bytes>*/
+((void(*)(val* self))(self->class->vft[COLOR_core__kernel__Object__init]))(self); /* init on <self:Bytes>*/
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#is_empty for (self: Bytes): Bool */
-short int standard___standard__Bytes___standard__abstract_collection__Collection__is_empty(val* self) {
+short int core___core__Bytes___core__abstract_collection__Collection__is_empty(val* self) {
 short int var /* : Bool */;
 long var1 /* : Int */;
 long var3 /* : Int */;
 short int var4 /* : Bool */;
 short int var6 /* : Bool */;
-short int var7 /* : Bool */;
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var3 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var3 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 {
-{ /* Inline kernel#Int#!= (var1,0l) on <var1:Int> */
+{ /* Inline kernel#Int#== (var1,0l) on <var1:Int> */
 var6 = var1 == 0l;
-var7 = !var6;
-var4 = var7;
+var4 = var6;
 goto RET_LABEL5;
 RET_LABEL5:(void)0;
 }
@@ -146,9 +144,9 @@ goto RET_LABEL;
 RET_LABEL:;
 return var;
 }
-/* method bytes#Bytes#[] for (self: Bytes, Int): Int */
-long standard___standard__Bytes___standard__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
-long var /* : Int */;
+/* method bytes#Bytes#[] for (self: Bytes, Int): Byte */
+unsigned char core___core__Bytes___core__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
+unsigned char var /* : Byte */;
 long var_i /* var i: Int */;
 short int var1 /* : Bool */;
 short int var3 /* : Bool */;
@@ -166,10 +164,8 @@ const char* var_class_name13;
 short int var14 /* : Bool */;
 char* var15 /* : NativeString */;
 char* var17 /* : NativeString */;
-uint32_t var18 /* : Char */;
-uint32_t var20 /* : Char */;
-long var21 /* : Int */;
-long var23 /* : Int */;
+unsigned char var18 /* : Byte */;
+unsigned char var20 /* : Byte */;
 var_i = p0;
 {
 { /* Inline kernel#Int#>= (var_i,0l) on <var_i:Int> */
@@ -177,9 +173,9 @@ var_i = p0;
 /* <0l:Int> isa OTHER */
 var3 = 1; /* easy <0l:Int> isa OTHER*/
 if (unlikely(!var3)) {
-var_class_name = type_standard__Int.name;
+var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 535);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
 fatal_exit(1);
 }
 var4 = var_i >= 0l;
@@ -190,12 +186,12 @@ RET_LABEL2:(void)0;
 }
 if (unlikely(!var1)) {
 PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__bytes, 62);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 184);
 fatal_exit(1);
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var7 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var7 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var5 = var7;
 RET_LABEL6:(void)0;
 }
@@ -206,9 +202,9 @@ RET_LABEL6:(void)0;
 /* <var5:Int> isa OTHER */
 var10 = 1; /* easy <var5:Int> isa OTHER*/
 if (unlikely(!var10)) {
-var_class_name13 = type_standard__Int.name;
+var_class_name13 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name13);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 534);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
 fatal_exit(1);
 }
 var14 = var_i < var5;
@@ -219,56 +215,48 @@ RET_LABEL9:(void)0;
 }
 if (unlikely(!var8)) {
 PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__bytes, 63);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 185);
 fatal_exit(1);
 }
 {
 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var17 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var17 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var15 = var17;
 RET_LABEL16:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#[] (var15,var_i) on <var15:NativeString> */
-var20 = (uint32_t)(unsigned char)var15[var_i];
+{ /* Inline native#NativeString#[] (var15,var_i) on <var15:NativeString> */
+var20 = (unsigned char)((int)var15[var_i]);
 var18 = var20;
 goto RET_LABEL19;
 RET_LABEL19:(void)0;
 }
 }
-{
-{ /* Inline kernel#Char#ascii (var18) on <var18:Char> */
-var23 = (long)var18;
-var21 = var23;
-goto RET_LABEL22;
-RET_LABEL22:(void)0;
-}
-}
-var = var21;
+var = var18;
 goto RET_LABEL;
 RET_LABEL:;
 return var;
 }
 /* method bytes#Bytes#[] for (self: SequenceRead[nullable Object], Int): nullable Object */
-val* VIRTUAL_standard___standard__Bytes___standard__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
+val* VIRTUAL_core___core__Bytes___core__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
 val* var /* : nullable Object */;
-long var1 /* : Int */;
+unsigned char var1 /* : Byte */;
 val* var2 /* : nullable Object */;
-var1 = standard___standard__Bytes___standard__abstract_collection__SequenceRead___91d_93d(self, p0);
-var2 = (val*)(var1<<2|1);
+var1 = core___core__Bytes___core__abstract_collection__SequenceRead___91d_93d(self, p0);
+var2 = BOX_core__Byte(var1); /* autobox from Byte to nullable Object */
 var = var2;
 RET_LABEL:;
 return var;
 }
-/* method bytes#Bytes#[]= for (self: Bytes, Int, Int) */
-void standard___standard__Bytes___standard__abstract_collection__Sequence___91d_93d_61d(val* self, long p0, long p1) {
+/* method bytes#Bytes#[]= for (self: Bytes, Int, Byte) */
+void core___core__Bytes___core__abstract_collection__Sequence___91d_93d_61d(val* self, long p0, unsigned char p1) {
 short int var /* : Bool */;
 int cltype;
 int idtype;
 const char* var_class_name;
 long var_i /* var i: Int */;
-long var_v /* var v: Int */;
+unsigned char var_v /* var v: Byte */;
 short int var1 /* : Bool */;
 short int var3 /* : Bool */;
 short int var4 /* : Bool */;
@@ -291,29 +279,27 @@ short int var24 /* : Bool */;
 short int var26 /* : Bool */;
 char* var27 /* : NativeString */;
 char* var29 /* : NativeString */;
-uint32_t var30 /* : Char */;
-uint32_t var32 /* : Char */;
-/* Covariant cast for argument 1 (v) <p1:Int> isa Int */
-/* <p1:Int> isa Int */
-var = 1; /* easy <p1:Int> isa Int*/
+/* Covariant cast for argument 1 (v) <p1:Byte> isa Byte */
+/* <p1:Byte> isa Byte */
+var = 1; /* easy <p1:Byte> isa Byte*/
 if (unlikely(!var)) {
-var_class_name = type_standard__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Int", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__bytes, 67);
+var_class_name = type_core__Byte.name;
+PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Byte", var_class_name);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 268);
 fatal_exit(1);
 }
 var_i = p0;
 var_v = p1;
 {
 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
-var3 = self->attrs[COLOR_standard__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
+var3 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 if (var1){
 {
-standard___standard__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
+core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
 }
 } else {
 }
@@ -323,9 +309,9 @@ standard___standard__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <s
 /* <0l:Int> isa OTHER */
 var6 = 1; /* easy <0l:Int> isa OTHER*/
 if (unlikely(!var6)) {
-var_class_name9 = type_standard__Int.name;
+var_class_name9 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name9);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 535);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
 fatal_exit(1);
 }
 var10 = var_i >= 0l;
@@ -336,12 +322,12 @@ RET_LABEL5:(void)0;
 }
 if (unlikely(!var4)) {
 PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__bytes, 72);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 273);
 fatal_exit(1);
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var13 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var13 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var11 = var13;
 RET_LABEL12:(void)0;
 }
@@ -352,9 +338,9 @@ RET_LABEL12:(void)0;
 /* <var11:Int> isa OTHER */
 var16 = 1; /* easy <var11:Int> isa OTHER*/
 if (unlikely(!var16)) {
-var_class_name19 = type_standard__Int.name;
+var_class_name19 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name19);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 533);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 727);
 fatal_exit(1);
 }
 var20 = var_i <= var11;
@@ -365,12 +351,12 @@ RET_LABEL15:(void)0;
 }
 if (unlikely(!var14)) {
 PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__bytes, 73);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 274);
 fatal_exit(1);
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var23 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var23 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var21 = var23;
 RET_LABEL22:(void)0;
 }
@@ -385,47 +371,39 @@ RET_LABEL25:(void)0;
 }
 if (var24){
 {
-standard___standard__Bytes___standard__abstract_collection__SimpleCollection__add(self, var_v); /* Direct call bytes#Bytes#add on <self:Bytes>*/
+core___core__Bytes___core__abstract_collection__SimpleCollection__add(self, var_v); /* Direct call bytes#Bytes#add on <self:Bytes>*/
 }
 } else {
 }
 {
 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var29 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var29 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var27 = var29;
 RET_LABEL28:(void)0;
 }
 }
 {
-{ /* Inline kernel#Int#ascii (var_v) on <var_v:Int> */
-var32 = (uint32_t)var_v;
-var30 = var32;
-goto RET_LABEL31;
-RET_LABEL31:(void)0;
-}
-}
-{
-{ /* Inline string#NativeString#[]= (var27,var_i,var30) on <var27:NativeString> */
-var27[var_i]=(unsigned char)var30;
-RET_LABEL33:(void)0;
+{ /* Inline native#NativeString#[]= (var27,var_i,var_v) on <var27:NativeString> */
+var27[var_i]=(unsigned char)var_v;
+RET_LABEL30:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#[]= for (self: Sequence[nullable Object], Int, nullable Object) */
-void VIRTUAL_standard___standard__Bytes___standard__abstract_collection__Sequence___91d_93d_61d(val* self, long p0, val* p1) {
-long var /* : Int */;
-var = (long)(p1)>>2;
-standard___standard__Bytes___standard__abstract_collection__Sequence___91d_93d_61d(self, p0, var); /* Direct call bytes#Bytes#[]= on <self:Sequence[nullable Object](Bytes)>*/
+void VIRTUAL_core___core__Bytes___core__abstract_collection__Sequence___91d_93d_61d(val* self, long p0, val* p1) {
+unsigned char var /* : Byte */;
+var = ((struct instance_core__Byte*)p1)->value; /* autounbox from nullable Object to Byte */;
+core___core__Bytes___core__abstract_collection__Sequence___91d_93d_61d(self, p0, var); /* Direct call bytes#Bytes#[]= on <self:Sequence[nullable Object](Bytes)>*/
 RET_LABEL:;
 }
-/* method bytes#Bytes#add for (self: Bytes, Int) */
-void standard___standard__Bytes___standard__abstract_collection__SimpleCollection__add(val* self, long p0) {
+/* method bytes#Bytes#add for (self: Bytes, Byte) */
+void core___core__Bytes___core__abstract_collection__SimpleCollection__add(val* self, unsigned char p0) {
 short int var /* : Bool */;
 int cltype;
 int idtype;
 const char* var_class_name;
-long var_c /* var c: Int */;
+unsigned char var_c /* var c: Byte */;
 short int var1 /* : Bool */;
 short int var3 /* : Bool */;
 long var4 /* : Int */;
@@ -444,50 +422,48 @@ char* var20 /* : NativeString */;
 char* var22 /* : NativeString */;
 long var23 /* : Int */;
 long var25 /* : Int */;
-uint32_t var26 /* : Char */;
-uint32_t var28 /* : Char */;
 val* var_ /* var : Bytes */;
+long var27 /* : Int */;
+long var29 /* : Int */;
 long var30 /* : Int */;
-long var32 /* : Int */;
-long var33 /* : Int */;
-short int var35 /* : Bool */;
-int cltype36;
-int idtype37;
-const char* var_class_name38;
-long var39 /* : Int */;
-/* Covariant cast for argument 0 (c) <p0:Int> isa Int */
-/* <p0:Int> isa Int */
-var = 1; /* easy <p0:Int> isa Int*/
+short int var32 /* : Bool */;
+int cltype33;
+int idtype34;
+const char* var_class_name35;
+long var36 /* : Int */;
+/* Covariant cast for argument 0 (c) <p0:Byte> isa Byte */
+/* <p0:Byte> isa Byte */
+var = 1; /* easy <p0:Byte> isa Byte*/
 if (unlikely(!var)) {
-var_class_name = type_standard__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Int", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__bytes, 78);
+var_class_name = type_core__Byte.name;
+PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Byte", var_class_name);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 279);
 fatal_exit(1);
 }
 var_c = p0;
 {
 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
-var3 = self->attrs[COLOR_standard__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
+var3 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 if (var1){
 {
-standard___standard__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
+core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
 }
 } else {
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var6 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var6 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var4 = var6;
 RET_LABEL5:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var9 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var9 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var7 = var9;
 RET_LABEL8:(void)0;
 }
@@ -498,9 +474,9 @@ RET_LABEL8:(void)0;
 /* <var7:Int> isa OTHER */
 var12 = 1; /* easy <var7:Int> isa OTHER*/
 if (unlikely(!var12)) {
-var_class_name15 = type_standard__Int.name;
+var_class_name15 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name15);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 535);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
 fatal_exit(1);
 }
 var16 = var4 >= var7;
@@ -512,91 +488,83 @@ RET_LABEL11:(void)0;
 if (var10){
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var19 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var19 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var17 = var19;
 RET_LABEL18:(void)0;
 }
 }
 {
-standard___standard__Bytes___standard__array__AbstractArray__enlarge(self, var17); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
+core___core__Bytes___core__array__AbstractArray__enlarge(self, var17); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
 }
 } else {
 }
 {
 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var22 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var22 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var20 = var22;
 RET_LABEL21:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var25 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var25 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var23 = var25;
 RET_LABEL24:(void)0;
 }
 }
 {
-{ /* Inline kernel#Int#ascii (var_c) on <var_c:Int> */
-var28 = (uint32_t)var_c;
-var26 = var28;
-goto RET_LABEL27;
-RET_LABEL27:(void)0;
-}
-}
-{
-{ /* Inline string#NativeString#[]= (var20,var23,var26) on <var20:NativeString> */
-var20[var23]=(unsigned char)var26;
-RET_LABEL29:(void)0;
+{ /* Inline native#NativeString#[]= (var20,var23,var_c) on <var20:NativeString> */
+var20[var23]=(unsigned char)var_c;
+RET_LABEL26:(void)0;
 }
 }
 var_ = self;
 {
 { /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
-var32 = var_->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
-var30 = var32;
-RET_LABEL31:(void)0;
+var29 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
+var27 = var29;
+RET_LABEL28:(void)0;
 }
 }
 {
-{ /* Inline kernel#Int#+ (var30,1l) on <var30:Int> */
+{ /* Inline kernel#Int#+ (var27,1l) on <var27:Int> */
 /* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
 /* <1l:Int> isa OTHER */
-var35 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var35)) {
-var_class_name38 = type_standard__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name38);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+var32 = 1; /* easy <1l:Int> isa OTHER*/
+if (unlikely(!var32)) {
+var_class_name35 = type_core__Int.name;
+PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
-var39 = var30 + 1l;
-var33 = var39;
-goto RET_LABEL34;
-RET_LABEL34:(void)0;
+var36 = var27 + 1l;
+var30 = var36;
+goto RET_LABEL31;
+RET_LABEL31:(void)0;
 }
 }
 {
-{ /* Inline bytes#Bytes#length= (var_,var33) on <var_:Bytes> */
-var_->attrs[COLOR_standard__bytes__Bytes___length].l = var33; /* _length on <var_:Bytes> */
-RET_LABEL40:(void)0;
+{ /* Inline bytes#Bytes#length= (var_,var30) on <var_:Bytes> */
+var_->attrs[COLOR_core__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
+RET_LABEL37:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#add for (self: SimpleCollection[nullable Object], nullable Object) */
-void VIRTUAL_standard___standard__Bytes___standard__abstract_collection__SimpleCollection__add(val* self, val* p0) {
-long var /* : Int */;
-var = (long)(p0)>>2;
-standard___standard__Bytes___standard__abstract_collection__SimpleCollection__add(self, var); /* Direct call bytes#Bytes#add on <self:SimpleCollection[nullable Object](Bytes)>*/
+void VIRTUAL_core___core__Bytes___core__abstract_collection__SimpleCollection__add(val* self, val* p0) {
+unsigned char var /* : Byte */;
+var = ((struct instance_core__Byte*)p0)->value; /* autounbox from nullable Object to Byte */;
+core___core__Bytes___core__abstract_collection__SimpleCollection__add(self, var); /* Direct call bytes#Bytes#add on <self:SimpleCollection[nullable Object](Bytes)>*/
 RET_LABEL:;
 }
-/* method bytes#Bytes#append for (self: Bytes, Collection[Int]) */
-void standard___standard__Bytes___standard__abstract_collection__Sequence__append(val* self, val* p0) {
+/* method bytes#Bytes#append for (self: Bytes, Collection[Byte]) */
+void core___core__Bytes___core__abstract_collection__Sequence__append(val* self, val* p0) {
 short int var /* : Bool */;
 int cltype;
 int idtype;
 const char* var_class_name;
-val* var_arr /* var arr: Collection[Int] */;
+val* var_arr /* var arr: Collection[Byte] */;
 short int var1 /* : Bool */;
 int cltype2;
 int idtype3;
@@ -604,26 +572,26 @@ char* var4 /* : NativeString */;
 char* var6 /* : NativeString */;
 long var7 /* : Int */;
 long var9 /* : Int */;
-val* var_ /* var : Collection[Int] */;
+val* var_ /* var : Collection[Byte] */;
 val* var10 /* : Iterator[nullable Object] */;
-val* var_11 /* var : Iterator[Int] */;
+val* var_11 /* var : Iterator[Byte] */;
 short int var12 /* : Bool */;
 val* var13 /* : nullable Object */;
-long var14 /* : Int */;
-long var_i /* var i: Int */;
-/* Covariant cast for argument 0 (arr) <p0:Collection[Int]> isa Collection[Int] */
-/* <p0:Collection[Int]> isa Collection[Int] */
-var = 1; /* easy <p0:Collection[Int]> isa Collection[Int]*/
+unsigned char var14 /* : Byte */;
+unsigned char var_i /* var i: Byte */;
+/* Covariant cast for argument 0 (arr) <p0:Collection[Byte]> isa Collection[Byte] */
+/* <p0:Collection[Byte]> isa Collection[Byte] */
+var = 1; /* easy <p0:Collection[Byte]> isa Collection[Byte]*/
 if (unlikely(!var)) {
 var_class_name = p0 == NULL ? "null" : (((long)p0&3)?type_info[((long)p0&3)]:p0->type)->name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[Int]", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__bytes, 90);
+PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection[Byte]", var_class_name);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 306);
 fatal_exit(1);
 }
 var_arr = p0;
-/* <var_arr:Collection[Int]> isa Bytes */
-cltype2 = type_standard__Bytes.color;
-idtype3 = type_standard__Bytes.id;
+/* <var_arr:Collection[Byte]> isa Bytes */
+cltype2 = type_core__Bytes.color;
+idtype3 = type_core__Bytes.id;
 if(cltype2 >= (((long)var_arr&3)?type_info[((long)var_arr&3)]:var_arr->type)->table_size) {
 var1 = 0;
 } else {
@@ -631,67 +599,191 @@ var1 = (((long)var_arr&3)?type_info[((long)var_arr&3)]:var_arr->type)->type_tabl
 }
 if (var1){
 {
-{ /* Inline bytes#Bytes#items (var_arr) on <var_arr:Collection[Int](Bytes)> */
-var6 = var_arr->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <var_arr:Collection[Int](Bytes)> */
+{ /* Inline bytes#Bytes#items (var_arr) on <var_arr:Collection[Byte](Bytes)> */
+var6 = var_arr->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <var_arr:Collection[Byte](Bytes)> */
 var4 = var6;
 RET_LABEL5:(void)0;
 }
 }
 {
-{ /* Inline bytes#Bytes#length (var_arr) on <var_arr:Collection[Int](Bytes)> */
-var9 = var_arr->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <var_arr:Collection[Int](Bytes)> */
+{ /* Inline bytes#Bytes#length (var_arr) on <var_arr:Collection[Byte](Bytes)> */
+var9 = var_arr->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_arr:Collection[Byte](Bytes)> */
 var7 = var9;
 RET_LABEL8:(void)0;
 }
 }
 {
-standard___standard__Bytes___append_ns(self, var4, var7); /* Direct call bytes#Bytes#append_ns on <self:Bytes>*/
+core___core__Bytes___append_ns(self, var4, var7); /* Direct call bytes#Bytes#append_ns on <self:Bytes>*/
 }
 } else {
 var_ = var_arr;
 {
-var10 = ((val*(*)(val* self))((((long)var_&3)?class_info[((long)var_&3)]:var_->class)->vft[COLOR_standard__abstract_collection__Collection__iterator]))(var_); /* iterator on <var_:Collection[Int]>*/
+var10 = ((val*(*)(val* self))((((long)var_&3)?class_info[((long)var_&3)]:var_->class)->vft[COLOR_core__abstract_collection__Collection__iterator]))(var_); /* iterator on <var_:Collection[Byte]>*/
 }
 var_11 = var10;
 for(;;) {
 {
-var12 = ((short int(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_standard__abstract_collection__Iterator__is_ok]))(var_11); /* is_ok on <var_11:Iterator[Int]>*/
+var12 = ((short int(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__is_ok]))(var_11); /* is_ok on <var_11:Iterator[Byte]>*/
 }
 if (var12){
+} else {
+goto BREAK_label;
+}
 {
-var13 = ((val*(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_standard__abstract_collection__Iterator__item]))(var_11); /* item on <var_11:Iterator[Int]>*/
+var13 = ((val*(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__item]))(var_11); /* item on <var_11:Iterator[Byte]>*/
 }
-var14 = (long)(var13)>>2;
+var14 = ((struct instance_core__Byte*)var13)->value; /* autounbox from nullable Object to Byte */;
 var_i = var14;
 {
-standard___standard__Bytes___standard__abstract_collection__SimpleCollection__add(self, var_i); /* Direct call bytes#Bytes#add on <self:Bytes>*/
+core___core__Bytes___core__abstract_collection__SimpleCollection__add(self, var_i); /* Direct call bytes#Bytes#add on <self:Bytes>*/
 }
 {
-((void(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_standard__abstract_collection__Iterator__next]))(var_11); /* next on <var_11:Iterator[Int]>*/
-}
-} else {
-goto BREAK_label;
+((void(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__next]))(var_11); /* next on <var_11:Iterator[Byte]>*/
 }
 }
 BREAK_label: (void)0;
 {
-((void(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_standard__abstract_collection__Iterator__finish]))(var_11); /* finish on <var_11:Iterator[Int]>*/
+((void(*)(val* self))((((long)var_11&3)?class_info[((long)var_11&3)]:var_11->class)->vft[COLOR_core__abstract_collection__Iterator__finish]))(var_11); /* finish on <var_11:Iterator[Byte]>*/
 }
 }
 RET_LABEL:;
 }
+/* method bytes#Bytes#pop for (self: Bytes): Byte */
+unsigned char core___core__Bytes___core__abstract_collection__Sequence__pop(val* self) {
+unsigned char var /* : Byte */;
+long var1 /* : Int */;
+long var3 /* : Int */;
+short int var4 /* : Bool */;
+short int var6 /* : Bool */;
+int cltype;
+int idtype;
+const char* var_class_name;
+short int var7 /* : Bool */;
+val* var_ /* var : Bytes */;
+long var8 /* : Int */;
+long var10 /* : Int */;
+long var11 /* : Int */;
+short int var13 /* : Bool */;
+int cltype14;
+int idtype15;
+const char* var_class_name16;
+long var17 /* : Int */;
+char* var19 /* : NativeString */;
+char* var21 /* : NativeString */;
+long var22 /* : Int */;
+long var24 /* : Int */;
+unsigned char var25 /* : Byte */;
+unsigned char var27 /* : Byte */;
+{
+{ /* Inline bytes#Bytes#length (self) on <self:Bytes> */
+var3 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var1 = var3;
+RET_LABEL2:(void)0;
+}
+}
+{
+{ /* Inline kernel#Int#>= (var1,1l) on <var1:Int> */
+/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
+/* <1l:Int> isa OTHER */
+var6 = 1; /* easy <1l:Int> isa OTHER*/
+if (unlikely(!var6)) {
+var_class_name = type_core__Int.name;
+PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
+fatal_exit(1);
+}
+var7 = var1 >= 1l;
+var4 = var7;
+goto RET_LABEL5;
+RET_LABEL5:(void)0;
+}
+}
+if (unlikely(!var4)) {
+PRINT_ERROR("Runtime error: %s", "Assert failed");
+PRINT_ERROR(" (%s:%d)\n", FILE_core__bytes, 322);
+fatal_exit(1);
+}
+var_ = self;
+{
+{ /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
+var10 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
+var8 = var10;
+RET_LABEL9:(void)0;
+}
+}
+{
+{ /* Inline kernel#Int#- (var8,1l) on <var8:Int> */
+/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
+/* <1l:Int> isa OTHER */
+var13 = 1; /* easy <1l:Int> isa OTHER*/
+if (unlikely(!var13)) {
+var_class_name16 = type_core__Int.name;
+PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name16);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 734);
+fatal_exit(1);
+}
+var17 = var8 - 1l;
+var11 = var17;
+goto RET_LABEL12;
+RET_LABEL12:(void)0;
+}
+}
+{
+{ /* Inline bytes#Bytes#length= (var_,var11) on <var_:Bytes> */
+var_->attrs[COLOR_core__bytes__Bytes___length].l = var11; /* _length on <var_:Bytes> */
+RET_LABEL18:(void)0;
+}
+}
+{
+{ /* Inline bytes#Bytes#items (self) on <self:Bytes> */
+var21 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var19 = var21;
+RET_LABEL20:(void)0;
+}
+}
+{
+{ /* Inline bytes#Bytes#length (self) on <self:Bytes> */
+var24 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var22 = var24;
+RET_LABEL23:(void)0;
+}
+}
+{
+{ /* Inline native#NativeString#[] (var19,var22) on <var19:NativeString> */
+var27 = (unsigned char)((int)var19[var22]);
+var25 = var27;
+goto RET_LABEL26;
+RET_LABEL26:(void)0;
+}
+}
+var = var25;
+goto RET_LABEL;
+RET_LABEL:;
+return var;
+}
+/* method bytes#Bytes#pop for (self: Sequence[nullable Object]): nullable Object */
+val* VIRTUAL_core___core__Bytes___core__abstract_collection__Sequence__pop(val* self) {
+val* var /* : nullable Object */;
+unsigned char var1 /* : Byte */;
+val* var2 /* : nullable Object */;
+var1 = core___core__Bytes___core__abstract_collection__Sequence__pop(self);
+var2 = BOX_core__Byte(var1); /* autobox from Byte to nullable Object */
+var = var2;
+RET_LABEL:;
+return var;
+}
 /* method bytes#Bytes#clear for (self: Bytes) */
-void standard___standard__Bytes___standard__abstract_collection__RemovableCollection__clear(val* self) {
+void core___core__Bytes___core__abstract_collection__RemovableCollection__clear(val* self) {
 {
 { /* Inline bytes#Bytes#length= (self,0l) on <self:Bytes> */
-self->attrs[COLOR_standard__bytes__Bytes___length].l = 0l; /* _length on <self:Bytes> */
+self->attrs[COLOR_core__bytes__Bytes___length].l = 0l; /* _length on <self:Bytes> */
 RET_LABEL1:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#regen for (self: Bytes) */
-void standard___standard__Bytes___regen(val* self) {
+void core___core__Bytes___regen(val* self) {
 char* var /* : NativeString */;
 long var1 /* : Int */;
 long var3 /* : Int */;
@@ -705,13 +797,13 @@ long var12 /* : Int */;
 var = NULL/*special!*/;
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var3 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var3 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#new (var,var1) on <var:NativeString> */
+{ /* Inline native#NativeString#new (var,var1) on <var:NativeString> */
 var6 = (char*)nit_alloc(var1);
 var4 = var6;
 goto RET_LABEL5;
@@ -721,34 +813,34 @@ RET_LABEL5:(void)0;
 var_nns = var4;
 {
 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var9 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var9 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var7 = var9;
 RET_LABEL8:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var12 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var12 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var10 = var12;
 RET_LABEL11:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#copy_to (var7,var_nns,var10,0l,0l) on <var7:NativeString> */
+{ /* Inline native#NativeString#copy_to (var7,var_nns,var10,0l,0l) on <var7:NativeString> */
 memmove(var_nns+0l,var7+0l,var10);
 RET_LABEL13:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#persisted= (self,0) on <self:Bytes> */
-self->attrs[COLOR_standard__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
+self->attrs[COLOR_core__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
 RET_LABEL14:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#append_ns for (self: Bytes, NativeString, Int) */
-void standard___standard__Bytes___append_ns(val* self, char* p0, long p1) {
+void core___core__Bytes___append_ns(val* self, char* p0, long p1) {
 char* var_ns /* var ns: NativeString */;
 long var_ln /* var ln: Int */;
 short int var /* : Bool */;
@@ -787,20 +879,20 @@ var_ns = p0;
 var_ln = p1;
 {
 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
-var2 = self->attrs[COLOR_standard__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
+var2 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
 var = var2;
 RET_LABEL1:(void)0;
 }
 }
 if (var){
 {
-standard___standard__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
+core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
 }
 } else {
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var5 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var5 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var3 = var5;
 RET_LABEL4:(void)0;
 }
@@ -811,9 +903,9 @@ RET_LABEL4:(void)0;
 /* <var_ln:Int> isa OTHER */
 var8 = 1; /* easy <var_ln:Int> isa OTHER*/
 if (unlikely(!var8)) {
-var_class_name = type_standard__Int.name;
+var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var9 = var3 + var_ln;
@@ -825,7 +917,7 @@ RET_LABEL7:(void)0;
 var_nlen = var6;
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var12 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var12 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var10 = var12;
 RET_LABEL11:(void)0;
 }
@@ -836,9 +928,9 @@ RET_LABEL11:(void)0;
 /* <var10:Int> isa OTHER */
 var15 = 1; /* easy <var10:Int> isa OTHER*/
 if (unlikely(!var15)) {
-var_class_name18 = type_standard__Int.name;
+var_class_name18 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name18);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 536);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 730);
 fatal_exit(1);
 }
 var19 = var_nlen > var10;
@@ -849,26 +941,26 @@ RET_LABEL14:(void)0;
 }
 if (var13){
 {
-standard___standard__Bytes___standard__array__AbstractArray__enlarge(self, var_nlen); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
+core___core__Bytes___core__array__AbstractArray__enlarge(self, var_nlen); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
 }
 } else {
 }
 {
 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var22 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var22 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var20 = var22;
 RET_LABEL21:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var25 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var25 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var23 = var25;
 RET_LABEL24:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#copy_to (var_ns,var20,var_ln,0l,var23) on <var_ns:NativeString> */
+{ /* Inline native#NativeString#copy_to (var_ns,var20,var_ln,0l,var23) on <var_ns:NativeString> */
 memmove(var20+var23,var_ns+0l,var_ln);
 RET_LABEL26:(void)0;
 }
@@ -876,7 +968,7 @@ RET_LABEL26:(void)0;
 var_ = self;
 {
 { /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
-var29 = var_->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
+var29 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
 var27 = var29;
 RET_LABEL28:(void)0;
 }
@@ -887,9 +979,9 @@ RET_LABEL28:(void)0;
 /* <var_ln:Int> isa OTHER */
 var32 = 1; /* easy <var_ln:Int> isa OTHER*/
 if (unlikely(!var32)) {
-var_class_name35 = type_standard__Int.name;
+var_class_name35 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var36 = var27 + var_ln;
@@ -900,14 +992,14 @@ RET_LABEL31:(void)0;
 }
 {
 { /* Inline bytes#Bytes#length= (var_,var30) on <var_:Bytes> */
-var_->attrs[COLOR_standard__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
+var_->attrs[COLOR_core__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
 RET_LABEL37:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#append_ns_from for (self: Bytes, NativeString, Int, Int) */
-void standard___standard__Bytes___append_ns_from(val* self, char* p0, long p1, long p2) {
+void core___core__Bytes___append_ns_from(val* self, char* p0, long p1, long p2) {
 char* var_ns /* var ns: NativeString */;
 long var_ln /* var ln: Int */;
 long var_from /* var from: Int */;
@@ -948,20 +1040,20 @@ var_ln = p1;
 var_from = p2;
 {
 { /* Inline bytes#Bytes#persisted (self) on <self:Bytes> */
-var2 = self->attrs[COLOR_standard__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
+var2 = self->attrs[COLOR_core__bytes__Bytes___persisted].s; /* _persisted on <self:Bytes> */
 var = var2;
 RET_LABEL1:(void)0;
 }
 }
 if (var){
 {
-standard___standard__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
+core___core__Bytes___regen(self); /* Direct call bytes#Bytes#regen on <self:Bytes>*/
 }
 } else {
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var5 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var5 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var3 = var5;
 RET_LABEL4:(void)0;
 }
@@ -972,9 +1064,9 @@ RET_LABEL4:(void)0;
 /* <var_ln:Int> isa OTHER */
 var8 = 1; /* easy <var_ln:Int> isa OTHER*/
 if (unlikely(!var8)) {
-var_class_name = type_standard__Int.name;
+var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var9 = var3 + var_ln;
@@ -986,7 +1078,7 @@ RET_LABEL7:(void)0;
 var_nlen = var6;
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var12 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var12 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var10 = var12;
 RET_LABEL11:(void)0;
 }
@@ -997,9 +1089,9 @@ RET_LABEL11:(void)0;
 /* <var10:Int> isa OTHER */
 var15 = 1; /* easy <var10:Int> isa OTHER*/
 if (unlikely(!var15)) {
-var_class_name18 = type_standard__Int.name;
+var_class_name18 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name18);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 536);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 730);
 fatal_exit(1);
 }
 var19 = var_nlen > var10;
@@ -1010,26 +1102,26 @@ RET_LABEL14:(void)0;
 }
 if (var13){
 {
-standard___standard__Bytes___standard__array__AbstractArray__enlarge(self, var_nlen); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
+core___core__Bytes___core__array__AbstractArray__enlarge(self, var_nlen); /* Direct call bytes#Bytes#enlarge on <self:Bytes>*/
 }
 } else {
 }
 {
 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var22 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var22 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var20 = var22;
 RET_LABEL21:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var25 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var25 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var23 = var25;
 RET_LABEL24:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#copy_to (var_ns,var20,var_ln,var_from,var23) on <var_ns:NativeString> */
+{ /* Inline native#NativeString#copy_to (var_ns,var20,var_ln,var_from,var23) on <var_ns:NativeString> */
 memmove(var20+var23,var_ns+var_from,var_ln);
 RET_LABEL26:(void)0;
 }
@@ -1037,7 +1129,7 @@ RET_LABEL26:(void)0;
 var_ = self;
 {
 { /* Inline bytes#Bytes#length (var_) on <var_:Bytes> */
-var29 = var_->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
+var29 = var_->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_:Bytes> */
 var27 = var29;
 RET_LABEL28:(void)0;
 }
@@ -1048,9 +1140,9 @@ RET_LABEL28:(void)0;
 /* <var_ln:Int> isa OTHER */
 var32 = 1; /* easy <var_ln:Int> isa OTHER*/
 if (unlikely(!var32)) {
-var_class_name35 = type_standard__Int.name;
+var_class_name35 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name35);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var36 = var27 + var_ln;
@@ -1061,14 +1153,14 @@ RET_LABEL31:(void)0;
 }
 {
 { /* Inline bytes#Bytes#length= (var_,var30) on <var_:Bytes> */
-var_->attrs[COLOR_standard__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
+var_->attrs[COLOR_core__bytes__Bytes___length].l = var30; /* _length on <var_:Bytes> */
 RET_LABEL37:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#enlarge for (self: Bytes, Int) */
-void standard___standard__Bytes___standard__array__AbstractArray__enlarge(val* self, long p0) {
+void core___core__Bytes___core__array__AbstractArray__enlarge(val* self, long p0) {
 long var_sz /* var sz: Int */;
 long var /* : Int */;
 long var2 /* : Int */;
@@ -1113,7 +1205,7 @@ long var48 /* : Int */;
 var_sz = p0;
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var2 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var2 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var = var2;
 RET_LABEL1:(void)0;
 }
@@ -1124,9 +1216,9 @@ RET_LABEL1:(void)0;
 /* <var_sz:Int> isa OTHER */
 var5 = 1; /* easy <var_sz:Int> isa OTHER*/
 if (unlikely(!var5)) {
-var_class_name = type_standard__Int.name;
+var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 535);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 729);
 fatal_exit(1);
 }
 var6 = var >= var_sz;
@@ -1141,14 +1233,14 @@ goto RET_LABEL;
 }
 {
 { /* Inline bytes#Bytes#persisted= (self,0) on <self:Bytes> */
-self->attrs[COLOR_standard__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
+self->attrs[COLOR_core__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
 RET_LABEL7:(void)0;
 }
 }
 for(;;) {
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var10 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var10 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var8 = var10;
 RET_LABEL9:(void)0;
 }
@@ -1159,9 +1251,9 @@ RET_LABEL9:(void)0;
 /* <var_sz:Int> isa OTHER */
 var13 = 1; /* easy <var_sz:Int> isa OTHER*/
 if (unlikely(!var13)) {
-var_class_name16 = type_standard__Int.name;
+var_class_name16 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name16);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 534);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
 fatal_exit(1);
 }
 var17 = var8 < var_sz;
@@ -1173,7 +1265,7 @@ RET_LABEL12:(void)0;
 if (var11){
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var20 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var20 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var18 = var20;
 RET_LABEL19:(void)0;
 }
@@ -1184,9 +1276,9 @@ RET_LABEL19:(void)0;
 /* <2l:Int> isa OTHER */
 var23 = 1; /* easy <2l:Int> isa OTHER*/
 if (unlikely(!var23)) {
-var_class_name26 = type_standard__Int.name;
+var_class_name26 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name26);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 541);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 735);
 fatal_exit(1);
 }
 var27 = var18 * 2l;
@@ -1201,9 +1293,9 @@ RET_LABEL22:(void)0;
 /* <2l:Int> isa OTHER */
 var30 = 1; /* easy <2l:Int> isa OTHER*/
 if (unlikely(!var30)) {
-var_class_name33 = type_standard__Int.name;
+var_class_name33 = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name33);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var34 = var21 + 2l;
@@ -1214,7 +1306,7 @@ RET_LABEL29:(void)0;
 }
 {
 { /* Inline bytes#Bytes#capacity= (self,var28) on <self:Bytes> */
-self->attrs[COLOR_standard__bytes__Bytes___capacity].l = var28; /* _capacity on <self:Bytes> */
+self->attrs[COLOR_core__bytes__Bytes___capacity].l = var28; /* _capacity on <self:Bytes> */
 RET_LABEL35:(void)0;
 }
 }
@@ -1226,13 +1318,13 @@ BREAK_label: (void)0;
 var36 = NULL/*special!*/;
 {
 { /* Inline bytes#Bytes#capacity (self) on <self:Bytes> */
-var39 = self->attrs[COLOR_standard__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
+var39 = self->attrs[COLOR_core__bytes__Bytes___capacity].l; /* _capacity on <self:Bytes> */
 var37 = var39;
 RET_LABEL38:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#new (var36,var37) on <var36:NativeString> */
+{ /* Inline native#NativeString#new (var36,var37) on <var36:NativeString> */
 var42 = (char*)nit_alloc(var37);
 var40 = var42;
 goto RET_LABEL41;
@@ -1242,108 +1334,115 @@ RET_LABEL41:(void)0;
 var_ns = var40;
 {
 { /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var45 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
+var45 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var43 = var45;
 RET_LABEL44:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var48 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var48 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
 var46 = var48;
 RET_LABEL47:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#copy_to (var43,var_ns,var46,0l,0l) on <var43:NativeString> */
+{ /* Inline native#NativeString#copy_to (var43,var_ns,var46,0l,0l) on <var43:NativeString> */
 memmove(var_ns+0l,var43+0l,var46);
 RET_LABEL49:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#items= (self,var_ns) on <self:Bytes> */
-self->attrs[COLOR_standard__bytes__Bytes___items].str = var_ns; /* _items on <self:Bytes> */
+self->attrs[COLOR_core__bytes__Bytes___items].str = var_ns; /* _items on <self:Bytes> */
 RET_LABEL50:(void)0;
 }
 }
 RET_LABEL:;
 }
 /* method bytes#Bytes#to_s for (self: Bytes): String */
-val* standard___standard__Bytes___standard__string__Object__to_s(val* self) {
+val* core___core__Bytes___core__abstract_text__Object__to_s(val* self) {
 val* var /* : String */;
-val* var2 /* : FlatString */;
-char* var3 /* : NativeString */;
-char* var5 /* : NativeString */;
-long var6 /* : Int */;
-long var8 /* : Int */;
-long var9 /* : Int */;
-long var11 /* : Int */;
-long var12 /* : Int */;
-short int var14 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var15 /* : Int */;
+val* var_b /* var b: Bytes */;
+char* var2 /* : NativeString */;
+char* var4 /* : NativeString */;
+long var5 /* : Int */;
+long var7 /* : Int */;
+val* var8 /* : FlatString */;
+val* var_r /* var r: FlatString */;
+char* var9 /* : NativeString */;
+char* var11 /* : NativeString */;
+short int var12 /* : Bool */;
+val* var_other /* var other: nullable Object */;
+val* var14 /* : nullable Object */;
+short int var15 /* : Bool */;
+short int var16 /* : Bool */;
 {
 { /* Inline bytes#Bytes#persisted= (self,1) on <self:Bytes> */
-self->attrs[COLOR_standard__bytes__Bytes___persisted].s = 1; /* _persisted on <self:Bytes> */
+self->attrs[COLOR_core__bytes__Bytes___persisted].s = 1; /* _persisted on <self:Bytes> */
 RET_LABEL1:(void)0;
 }
 }
-var2 = NEW_standard__FlatString(&type_standard__FlatString);
+var_b = self;
 {
-{ /* Inline bytes#Bytes#items (self) on <self:Bytes> */
-var5 = self->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <self:Bytes> */
-var3 = var5;
-RET_LABEL4:(void)0;
+{ /* Inline bytes#Bytes#items (var_b) on <var_b:Bytes> */
+var4 = var_b->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <var_b:Bytes> */
+var2 = var4;
+RET_LABEL3:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var8 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
-var6 = var8;
-RET_LABEL7:(void)0;
+var7 = self->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var5 = var7;
+RET_LABEL6:(void)0;
 }
 }
 {
-{ /* Inline bytes#Bytes#length (self) on <self:Bytes> */
-var11 = self->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <self:Bytes> */
+var8 = core__flat___NativeString___to_s_with_length(var2, var5);
+}
+var_r = var8;
+{
+{ /* Inline bytes#Bytes#items (self) on <self:Bytes> */
+var11 = self->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <self:Bytes> */
 var9 = var11;
 RET_LABEL10:(void)0;
 }
 }
 {
-{ /* Inline kernel#Int#- (var9,1l) on <var9:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var14 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var14)) {
-var_class_name = type_standard__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 540);
-fatal_exit(1);
+{ /* Inline kernel#Object#!= (var_r,var9) on <var_r:FlatString> */
+var14 = BOX_core__NativeString(var9); /* autobox from NativeString to nullable Object */
+var_other = var14;
+{
+var15 = ((short int(*)(val* self, val* p0))(var_r->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_r, var_other); /* == on <var_r:FlatString>*/
 }
-var15 = var9 - 1l;
-var12 = var15;
+var16 = !var15;
+var12 = var16;
 goto RET_LABEL13;
 RET_LABEL13:(void)0;
 }
 }
+if (var12){
 {
-standard___standard__FlatString___with_infos(var2, var3, var6, 0l, var12); /* Direct call string#FlatString#with_infos on <var2:FlatString>*/
+{ /* Inline bytes#Bytes#persisted= (self,0) on <self:Bytes> */
+self->attrs[COLOR_core__bytes__Bytes___persisted].s = 0; /* _persisted on <self:Bytes> */
+RET_LABEL17:(void)0;
 }
-var = var2;
+}
+} else {
+}
+var = var_r;
 goto RET_LABEL;
 RET_LABEL:;
 return var;
 }
-/* method bytes#Bytes#iterator for (self: Bytes): Iterator[Int] */
-val* standard___standard__Bytes___standard__abstract_collection__Collection__iterator(val* self) {
-val* var /* : Iterator[Int] */;
+/* method bytes#Bytes#iterator for (self: Bytes): Iterator[Byte] */
+val* core___core__Bytes___core__abstract_collection__Collection__iterator(val* self) {
+val* var /* : Iterator[Byte] */;
 val* var1 /* : BytesIterator */;
-var1 = NEW_standard__bytes__BytesIterator(&type_standard__bytes__BytesIterator);
+var1 = NEW_core__bytes__BytesIterator(&type_core__bytes__BytesIterator);
 {
-standard__bytes___standard__bytes__BytesIterator___with_buffer(var1, self); /* Direct call bytes#BytesIterator#with_buffer on <var1:BytesIterator>*/
+core__bytes___core__bytes__BytesIterator___with_buffer(var1, self); /* Direct call bytes#BytesIterator#with_buffer on <var1:BytesIterator>*/
 }
 var = var1;
 goto RET_LABEL;
@@ -1351,115 +1450,92 @@ RET_LABEL:;
 return var;
 }
 /* method bytes#Bytes#init for (self: Bytes) */
-void standard___standard__Bytes___standard__kernel__Object__init(val* self) {
+void core___core__Bytes___core__kernel__Object__init(val* self) {
 {
-((void(*)(val* self))(self->class->vft[COLOR_standard___standard__Bytes___standard__kernel__Object__init]))(self); /* init on <self:Bytes>*/
+((void(*)(val* self))(self->class->vft[COLOR_core___core__Bytes___core__kernel__Object__init]))(self); /* init on <self:Bytes>*/
 }
 RET_LABEL:;
 }
 /* method bytes#BytesIterator#tgt for (self: BytesIterator): NativeString */
-char* standard__bytes___standard__bytes__BytesIterator___tgt(val* self) {
+char* core__bytes___core__bytes__BytesIterator___tgt(val* self) {
 char* var /* : NativeString */;
 char* var1 /* : NativeString */;
-var1 = self->attrs[COLOR_standard__bytes__BytesIterator___tgt].str; /* _tgt on <self:BytesIterator> */
+var1 = self->attrs[COLOR_core__bytes__BytesIterator___tgt].str; /* _tgt on <self:BytesIterator> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method bytes#BytesIterator#tgt= for (self: BytesIterator, NativeString) */
-void standard__bytes___standard__bytes__BytesIterator___tgt_61d(val* self, char* p0) {
-self->attrs[COLOR_standard__bytes__BytesIterator___tgt].str = p0; /* _tgt on <self:BytesIterator> */
+void core__bytes___core__bytes__BytesIterator___tgt_61d(val* self, char* p0) {
+self->attrs[COLOR_core__bytes__BytesIterator___tgt].str = p0; /* _tgt on <self:BytesIterator> */
 RET_LABEL:;
 }
 /* method bytes#BytesIterator#index for (self: BytesIterator): Int */
-long standard__bytes___standard__bytes__BytesIterator___standard__abstract_collection__IndexedIterator__index(val* self) {
+long core__bytes___core__bytes__BytesIterator___core__abstract_collection__IndexedIterator__index(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = self->attrs[COLOR_standard__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
+var1 = self->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method bytes#BytesIterator#index= for (self: BytesIterator, Int) */
-void standard__bytes___standard__bytes__BytesIterator___index_61d(val* self, long p0) {
-self->attrs[COLOR_standard__bytes__BytesIterator___index].l = p0; /* _index on <self:BytesIterator> */
+void core__bytes___core__bytes__BytesIterator___index_61d(val* self, long p0) {
+self->attrs[COLOR_core__bytes__BytesIterator___index].l = p0; /* _index on <self:BytesIterator> */
 RET_LABEL:;
 }
 /* method bytes#BytesIterator#max for (self: BytesIterator): Int */
-long standard__bytes___standard__bytes__BytesIterator___max(val* self) {
+long core__bytes___core__bytes__BytesIterator___max(val* self) {
 long var /* : Int */;
 long var1 /* : Int */;
-var1 = self->attrs[COLOR_standard__bytes__BytesIterator___max].l; /* _max on <self:BytesIterator> */
+var1 = self->attrs[COLOR_core__bytes__BytesIterator___max].l; /* _max on <self:BytesIterator> */
 var = var1;
 RET_LABEL:;
 return var;
 }
 /* method bytes#BytesIterator#max= for (self: BytesIterator, Int) */
-void standard__bytes___standard__bytes__BytesIterator___max_61d(val* self, long p0) {
-self->attrs[COLOR_standard__bytes__BytesIterator___max].l = p0; /* _max on <self:BytesIterator> */
+void core__bytes___core__bytes__BytesIterator___max_61d(val* self, long p0) {
+self->attrs[COLOR_core__bytes__BytesIterator___max].l = p0; /* _max on <self:BytesIterator> */
 RET_LABEL:;
 }
 /* method bytes#BytesIterator#with_buffer for (self: BytesIterator, Bytes) */
-void standard__bytes___standard__bytes__BytesIterator___with_buffer(val* self, val* p0) {
+void core__bytes___core__bytes__BytesIterator___with_buffer(val* self, val* p0) {
 val* var_b /* var b: Bytes */;
 char* var /* : NativeString */;
 char* var2 /* : NativeString */;
 long var3 /* : Int */;
 long var5 /* : Int */;
-long var6 /* : Int */;
-short int var8 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var9 /* : Int */;
 var_b = p0;
 {
 { /* Inline bytes#Bytes#items (var_b) on <var_b:Bytes> */
-var2 = var_b->attrs[COLOR_standard__bytes__Bytes___items].str; /* _items on <var_b:Bytes> */
+var2 = var_b->attrs[COLOR_core__bytes__Bytes___items].str; /* _items on <var_b:Bytes> */
 var = var2;
 RET_LABEL1:(void)0;
 }
 }
 {
 { /* Inline bytes#Bytes#length (var_b) on <var_b:Bytes> */
-var5 = var_b->attrs[COLOR_standard__bytes__Bytes___length].l; /* _length on <var_b:Bytes> */
+var5 = var_b->attrs[COLOR_core__bytes__Bytes___length].l; /* _length on <var_b:Bytes> */
 var3 = var5;
 RET_LABEL4:(void)0;
 }
 }
 {
-{ /* Inline kernel#Int#- (var3,1l) on <var3:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var8 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var8)) {
-var_class_name = type_standard__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 540);
-fatal_exit(1);
-}
-var9 = var3 - 1l;
-var6 = var9;
-goto RET_LABEL7;
-RET_LABEL7:(void)0;
-}
+((void(*)(val* self, char* p0))(self->class->vft[COLOR_core__bytes__BytesIterator__tgt_61d]))(self, var); /* tgt= on <self:BytesIterator>*/
 }
 {
-((void(*)(val* self, char* p0))(self->class->vft[COLOR_standard__bytes__BytesIterator__tgt_61d]))(self, var); /* tgt= on <self:BytesIterator>*/
+((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__BytesIterator__index_61d]))(self, 0l); /* index= on <self:BytesIterator>*/
 }
 {
-((void(*)(val* self, long p0))(self->class->vft[COLOR_standard__bytes__BytesIterator__index_61d]))(self, 0l); /* index= on <self:BytesIterator>*/
+((void(*)(val* self, long p0))(self->class->vft[COLOR_core__bytes__BytesIterator__max_61d]))(self, var3); /* max= on <self:BytesIterator>*/
 }
 {
-((void(*)(val* self, long p0))(self->class->vft[COLOR_standard__bytes__BytesIterator__max_61d]))(self, var6); /* max= on <self:BytesIterator>*/
-}
-{
-((void(*)(val* self))(self->class->vft[COLOR_standard__kernel__Object__init]))(self); /* init on <self:BytesIterator>*/
+((void(*)(val* self))(self->class->vft[COLOR_core__kernel__Object__init]))(self); /* init on <self:BytesIterator>*/
 }
 RET_LABEL:;
 }
 /* method bytes#BytesIterator#is_ok for (self: BytesIterator): Bool */
-short int standard__bytes___standard__bytes__BytesIterator___standard__abstract_collection__Iterator__is_ok(val* self) {
+short int core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__is_ok(val* self) {
 short int var /* : Bool */;
 long var1 /* : Int */;
 long var3 /* : Int */;
@@ -1473,14 +1549,14 @@ const char* var_class_name;
 short int var10 /* : Bool */;
 {
 { /* Inline bytes#BytesIterator#index (self) on <self:BytesIterator> */
-var3 = self->attrs[COLOR_standard__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
+var3 = self->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 {
 { /* Inline bytes#BytesIterator#max (self) on <self:BytesIterator> */
-var6 = self->attrs[COLOR_standard__bytes__BytesIterator___max].l; /* _max on <self:BytesIterator> */
+var6 = self->attrs[COLOR_core__bytes__BytesIterator___max].l; /* _max on <self:BytesIterator> */
 var4 = var6;
 RET_LABEL5:(void)0;
 }
@@ -1491,9 +1567,9 @@ RET_LABEL5:(void)0;
 /* <var4:Int> isa OTHER */
 var9 = 1; /* easy <var4:Int> isa OTHER*/
 if (unlikely(!var9)) {
-var_class_name = type_standard__Int.name;
+var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 534);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
 fatal_exit(1);
 }
 var10 = var1 < var4;
@@ -1508,7 +1584,7 @@ RET_LABEL:;
 return var;
 }
 /* method bytes#BytesIterator#next for (self: BytesIterator) */
-void standard__bytes___standard__bytes__BytesIterator___standard__abstract_collection__Iterator__next(val* self) {
+void core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__next(val* self) {
 val* var_ /* var : BytesIterator */;
 long var /* : Int */;
 long var2 /* : Int */;
@@ -1521,7 +1597,7 @@ long var6 /* : Int */;
 var_ = self;
 {
 { /* Inline bytes#BytesIterator#index (var_) on <var_:BytesIterator> */
-var2 = var_->attrs[COLOR_standard__bytes__BytesIterator___index].l; /* _index on <var_:BytesIterator> */
+var2 = var_->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <var_:BytesIterator> */
 var = var2;
 RET_LABEL1:(void)0;
 }
@@ -1532,9 +1608,9 @@ RET_LABEL1:(void)0;
 /* <1l:Int> isa OTHER */
 var5 = 1; /* easy <1l:Int> isa OTHER*/
 if (unlikely(!var5)) {
-var_class_name = type_standard__Int.name;
+var_class_name = type_core__Int.name;
 PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_standard__kernel, 537);
+PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
 fatal_exit(1);
 }
 var6 = var + 1l;
@@ -1545,73 +1621,63 @@ RET_LABEL4:(void)0;
 }
 {
 { /* Inline bytes#BytesIterator#index= (var_,var3) on <var_:BytesIterator> */
-var_->attrs[COLOR_standard__bytes__BytesIterator___index].l = var3; /* _index on <var_:BytesIterator> */
+var_->attrs[COLOR_core__bytes__BytesIterator___index].l = var3; /* _index on <var_:BytesIterator> */
 RET_LABEL7:(void)0;
 }
 }
 RET_LABEL:;
 }
-/* method bytes#BytesIterator#item for (self: BytesIterator): Int */
-long standard__bytes___standard__bytes__BytesIterator___standard__abstract_collection__Iterator__item(val* self) {
-long var /* : Int */;
+/* method bytes#BytesIterator#item for (self: BytesIterator): Byte */
+unsigned char core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__item(val* self) {
+unsigned char var /* : Byte */;
 char* var1 /* : NativeString */;
 char* var3 /* : NativeString */;
 long var4 /* : Int */;
 long var6 /* : Int */;
-uint32_t var7 /* : Char */;
-uint32_t var9 /* : Char */;
-long var10 /* : Int */;
-long var12 /* : Int */;
+unsigned char var7 /* : Byte */;
+unsigned char var9 /* : Byte */;
 {
 { /* Inline bytes#BytesIterator#tgt (self) on <self:BytesIterator> */
-var3 = self->attrs[COLOR_standard__bytes__BytesIterator___tgt].str; /* _tgt on <self:BytesIterator> */
+var3 = self->attrs[COLOR_core__bytes__BytesIterator___tgt].str; /* _tgt on <self:BytesIterator> */
 var1 = var3;
 RET_LABEL2:(void)0;
 }
 }
 {
 { /* Inline bytes#BytesIterator#index (self) on <self:BytesIterator> */
-var6 = self->attrs[COLOR_standard__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
+var6 = self->attrs[COLOR_core__bytes__BytesIterator___index].l; /* _index on <self:BytesIterator> */
 var4 = var6;
 RET_LABEL5:(void)0;
 }
 }
 {
-{ /* Inline string#NativeString#[] (var1,var4) on <var1:NativeString> */
-var9 = (uint32_t)(unsigned char)var1[var4];
+{ /* Inline native#NativeString#[] (var1,var4) on <var1:NativeString> */
+var9 = (unsigned char)((int)var1[var4]);
 var7 = var9;
 goto RET_LABEL8;
 RET_LABEL8:(void)0;
 }
 }
-{
-{ /* Inline kernel#Char#ascii (var7) on <var7:Char> */
-var12 = (long)var7;
-var10 = var12;
-goto RET_LABEL11;
-RET_LABEL11:(void)0;
-}
-}
-var = var10;
+var = var7;
 goto RET_LABEL;
 RET_LABEL:;
 return var;
 }
 /* method bytes#BytesIterator#item for (self: Iterator[nullable Object]): nullable Object */
-val* VIRTUAL_standard__bytes___standard__bytes__BytesIterator___standard__abstract_collection__Iterator__item(val* self) {
+val* VIRTUAL_core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__item(val* self) {
 val* var /* : nullable Object */;
-long var1 /* : Int */;
+unsigned char var1 /* : Byte */;
 val* var2 /* : nullable Object */;
-var1 = standard__bytes___standard__bytes__BytesIterator___standard__abstract_collection__Iterator__item(self);
-var2 = (val*)(var1<<2|1);
+var1 = core__bytes___core__bytes__BytesIterator___core__abstract_collection__Iterator__item(self);
+var2 = BOX_core__Byte(var1); /* autobox from Byte to nullable Object */
 var = var2;
 RET_LABEL:;
 return var;
 }
 /* method bytes#BytesIterator#init for (self: BytesIterator) */
-void standard__bytes___standard__bytes__BytesIterator___standard__kernel__Object__init(val* self) {
+void core__bytes___core__bytes__BytesIterator___core__kernel__Object__init(val* self) {
 {
-((void(*)(val* self))(self->class->vft[COLOR_standard__bytes___standard__bytes__BytesIterator___standard__kernel__Object__init]))(self); /* init on <self:BytesIterator>*/
+((void(*)(val* self))(self->class->vft[COLOR_core__bytes___core__bytes__BytesIterator___core__kernel__Object__init]))(self); /* init on <self:BytesIterator>*/
 }
 RET_LABEL:;
 }