-var_obt = var19;
-{
-{ /* Inline kernel#Int#< (var_mbt,var_obt) on <var_mbt:Int> */
-/* Covariant cast for argument 0 (i) <var_obt:Int> isa OTHER */
-/* <var_obt:Int> isa OTHER */
-var25 = 1; /* easy <var_obt:Int> isa OTHER*/
-if (unlikely(!var25)) {
-var_class_name28 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name28);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
-fatal_exit(1);
-}
-var29 = var_mbt < var_obt;
-var23 = var29;
-goto RET_LABEL24;
-RET_LABEL24:(void)0;
-}
-}
-if (var23){
-var22 = var_mbt;
-} else {
-var22 = var_obt;
-}
-var_minln = var22;
-var30 = self->attrs[COLOR_core__flat__FlatString___first_byte].l; /* _first_byte on <self:FlatString> */
-var_mst = var30;
-{
-var31 = ((long(*)(val* self))(var_other->class->vft[COLOR_core__flat__FlatText__first_byte]))(var_other); /* first_byte on <var_other:Text(FlatText)>*/
-}
-var_ost = var31;
-var_i = 0l;
-var_ = var_minln;
-for(;;) {
-{
-{ /* Inline kernel#Int#< (var_i,var_) on <var_i:Int> */
-/* Covariant cast for argument 0 (i) <var_:Int> isa OTHER */
-/* <var_:Int> isa OTHER */
-var34 = 1; /* easy <var_:Int> isa OTHER*/
-if (unlikely(!var34)) {
-var_class_name37 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name37);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
-fatal_exit(1);
-}
-var38 = var_i < var_;
-var32 = var38;
-goto RET_LABEL33;
-RET_LABEL33:(void)0;
-}
-}
-if (var32){
-} else {
-goto BREAK_label;
-}
-{
-{ /* Inline native#NativeString#[] (var_myits,var_mst) on <var_myits:NativeString> */
-var41 = (unsigned char)((int)var_myits[var_mst]);
-var39 = var41;
-goto RET_LABEL40;
-RET_LABEL40:(void)0;
-}
-}
-var_my_curr_char = var39;
-{
-{ /* Inline native#NativeString#[] (var_itsits,var_ost) on <var_itsits:NativeString> */
-var44 = (unsigned char)((int)var_itsits[var_ost]);
-var42 = var44;
-goto RET_LABEL43;
-RET_LABEL43:(void)0;
-}
-}
-var_its_curr_char = var42;
-{
-{ /* Inline kernel#Byte#> (var_my_curr_char,var_its_curr_char) on <var_my_curr_char:Byte> */
-/* Covariant cast for argument 0 (i) <var_its_curr_char:Byte> isa OTHER */
-/* <var_its_curr_char:Byte> isa OTHER */
-var47 = 1; /* easy <var_its_curr_char:Byte> isa OTHER*/
-if (unlikely(!var47)) {
-var_class_name50 = type_core__Byte.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name50);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 621);
-fatal_exit(1);
-}
-var51 = var_my_curr_char > var_its_curr_char;
-var45 = var51;
-goto RET_LABEL46;
-RET_LABEL46:(void)0;
-}
-}
-if (var45){
-var = 0;
-goto RET_LABEL;
-} else {
-}
-{
-{ /* Inline kernel#Byte#< (var_my_curr_char,var_its_curr_char) on <var_my_curr_char:Byte> */
-/* Covariant cast for argument 0 (i) <var_its_curr_char:Byte> isa OTHER */
-/* <var_its_curr_char:Byte> isa OTHER */
-var54 = 1; /* easy <var_its_curr_char:Byte> isa OTHER*/
-if (unlikely(!var54)) {
-var_class_name57 = type_core__Byte.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name57);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 619);
-fatal_exit(1);
-}
-var58 = var_my_curr_char < var_its_curr_char;
-var52 = var58;
-goto RET_LABEL53;
-RET_LABEL53:(void)0;
-}
-}
-if (var52){
-var = 1;
-goto RET_LABEL;
-} else {
-}
-{
-{ /* Inline kernel#Int#+ (var_mst,1l) on <var_mst:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var61 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var61)) {
-var_class_name64 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name64);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var65 = var_mst + 1l;
-var59 = var65;
-goto RET_LABEL60;
-RET_LABEL60:(void)0;
-}
-}
-var_mst = var59;
-{
-{ /* Inline kernel#Int#+ (var_ost,1l) on <var_ost:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var68 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var68)) {
-var_class_name71 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name71);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var72 = var_ost + 1l;
-var66 = var72;
-goto RET_LABEL67;
-RET_LABEL67:(void)0;
-}
-}
-var_ost = var66;
-{
-var73 = core___core__Int___Discrete__successor(var_i, 1l);
-}
-var_i = var73;
-}
-BREAK_label: (void)0;
-{
-{ /* Inline kernel#Int#< (var_mbt,var_obt) on <var_mbt:Int> */
-/* Covariant cast for argument 0 (i) <var_obt:Int> isa OTHER */
-/* <var_obt:Int> isa OTHER */
-var76 = 1; /* easy <var_obt:Int> isa OTHER*/
-if (unlikely(!var76)) {
-var_class_name79 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name79);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 728);
-fatal_exit(1);
-}
-var80 = var_mbt < var_obt;
-var74 = var80;
-goto RET_LABEL75;
-RET_LABEL75:(void)0;
-}
-}
-var = var74;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatString#* for (self: FlatString, Int): String */
-val* core___core__FlatString___core__abstract_text__String___42d(val* self, long p0) {
-val* var /* : String */;
-long var_i /* var i: Int */;
-long var1 /* : Int */;
-long var_mybtlen /* var mybtlen: Int */;
-long var2 /* : Int */;
-short int var4 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var5 /* : Int */;
-long var_new_bytelen /* var new_bytelen: Int */;
-long var6 /* : Int */;
-long var_mylen /* var mylen: Int */;
-long var7 /* : Int */;
-short int var9 /* : Bool */;
-int cltype10;
-int idtype11;
-const char* var_class_name12;
-long var13 /* : Int */;
-long var_newlen /* var newlen: Int */;
-char* var14 /* : NativeString */;
-char* var_its /* var its: NativeString */;
-long var15 /* : Int */;
-long var_fb /* var fb: Int */;
-char* var16 /* : NativeString */;
-long var17 /* : Int */;
-short int var19 /* : Bool */;
-int cltype20;
-int idtype21;
-const char* var_class_name22;
-long var23 /* : Int */;
-char* var24 /* : NativeString */;
-char* var26 /* : NativeString */;
-char* var_ns /* var ns: NativeString */;
-long var_offset /* var offset: Int */;
-short int var28 /* : Bool */;
-short int var30 /* : Bool */;
-int cltype31;
-int idtype32;
-const char* var_class_name33;
-short int var34 /* : Bool */;
-long var36 /* : Int */;
-short int var38 /* : Bool */;
-int cltype39;
-int idtype40;
-const char* var_class_name41;
-long var42 /* : Int */;
-long var43 /* : Int */;
-short int var45 /* : Bool */;
-int cltype46;
-int idtype47;
-const char* var_class_name48;
-long var49 /* : Int */;
-val* var50 /* : FlatString */;
-var_i = p0;
-var1 = self->attrs[COLOR_core__abstract_text__FlatText___bytelen].l; /* _bytelen on <self:FlatString> */
-var_mybtlen = var1;
-{
-{ /* Inline kernel#Int#* (var_mybtlen,var_i) on <var_mybtlen:Int> */
-/* Covariant cast for argument 0 (i) <var_i:Int> isa OTHER */
-/* <var_i:Int> isa OTHER */
-var4 = 1; /* easy <var_i:Int> isa OTHER*/
-if (unlikely(!var4)) {
-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, 735);
-fatal_exit(1);
-}
-var5 = var_mybtlen * var_i;
-var2 = var5;
-goto RET_LABEL3;
-RET_LABEL3:(void)0;
-}
-}
-var_new_bytelen = var2;
-var6 = self->attrs[COLOR_core__abstract_text__FlatText___length].l; /* _length on <self:FlatString> */
-var_mylen = var6;
-{
-{ /* Inline kernel#Int#* (var_mylen,var_i) on <var_mylen:Int> */
-/* Covariant cast for argument 0 (i) <var_i:Int> isa OTHER */
-/* <var_i:Int> isa OTHER */
-var9 = 1; /* easy <var_i:Int> isa OTHER*/
-if (unlikely(!var9)) {
-var_class_name12 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name12);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 735);
-fatal_exit(1);
-}
-var13 = var_mylen * var_i;
-var7 = var13;
-goto RET_LABEL8;
-RET_LABEL8:(void)0;
-}
-}
-var_newlen = var7;
-var14 = self->attrs[COLOR_core__abstract_text__FlatText___items].str; /* _items on <self:FlatString> */
-var_its = var14;
-var15 = self->attrs[COLOR_core__flat__FlatString___first_byte].l; /* _first_byte on <self:FlatString> */
-var_fb = var15;
-var16 = NULL/*special!*/;
-{
-{ /* Inline kernel#Int#+ (var_new_bytelen,1l) on <var_new_bytelen:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var19 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var19)) {
-var_class_name22 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name22);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var23 = var_new_bytelen + 1l;
-var17 = var23;
-goto RET_LABEL18;
-RET_LABEL18:(void)0;
-}
-}
-{
-{ /* Inline native#NativeString#new (var16,var17) on <var16:NativeString> */
-var26 = (char*)nit_alloc(var17);
-var24 = var26;
-goto RET_LABEL25;
-RET_LABEL25:(void)0;
-}
-}
-var_ns = var24;
-{
-{ /* Inline native#NativeString#[]= (var_ns,var_new_bytelen,((unsigned char)0x00)) on <var_ns:NativeString> */
-var_ns[var_new_bytelen]=(unsigned char)((unsigned char)0x00);
-RET_LABEL27:(void)0;
-}
-}
-var_offset = 0l;
-for(;;) {
-{
-{ /* Inline kernel#Int#> (var_i,0l) on <var_i:Int> */
-/* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
-/* <0l:Int> isa OTHER */
-var30 = 1; /* easy <0l:Int> isa OTHER*/
-if (unlikely(!var30)) {
-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_core__kernel, 730);
-fatal_exit(1);
-}
-var34 = var_i > 0l;
-var28 = var34;
-goto RET_LABEL29;
-RET_LABEL29:(void)0;
-}
-}
-if (var28){
-{
-{ /* Inline native#NativeString#copy_to (var_its,var_ns,var_mybtlen,var_fb,var_offset) on <var_its:NativeString> */
-memmove(var_ns+var_offset,var_its+var_fb,var_mybtlen);
-RET_LABEL35:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#+ (var_offset,var_mybtlen) on <var_offset:Int> */
-/* Covariant cast for argument 0 (i) <var_mybtlen:Int> isa OTHER */
-/* <var_mybtlen:Int> isa OTHER */
-var38 = 1; /* easy <var_mybtlen:Int> isa OTHER*/
-if (unlikely(!var38)) {
-var_class_name41 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name41);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var42 = var_offset + var_mybtlen;
-var36 = var42;
-goto RET_LABEL37;
-RET_LABEL37:(void)0;
-}
-}
-var_offset = var36;
-{
-{ /* Inline kernel#Int#- (var_i,1l) on <var_i:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var45 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var45)) {
-var_class_name48 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name48);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 734);
-fatal_exit(1);
-}
-var49 = var_i - 1l;
-var43 = var49;
-goto RET_LABEL44;
-RET_LABEL44:(void)0;
-}
-}
-var_i = var43;
-} else {
-goto BREAK_label;
-}
-}
-BREAK_label: (void)0;
-var50 = NEW_core__FlatString(&type_core__FlatString);
-{
-core___core__FlatString___full(var50, var_ns, var_new_bytelen, 0l, var_newlen); /* Direct call flat#FlatString#full on <var50:FlatString>*/
-}
-var = var50;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatString#hash for (self: FlatString): Int */
-long core___core__FlatString___core__kernel__Object__hash(val* self) {
-long var /* : Int */;
-val* var1 /* : nullable Int */;
-val* var3 /* : nullable Int */;
-short int var4 /* : Bool */;
-short int var5 /* : Bool */;
-short int var7 /* : Bool */;
-long var_h /* var h: Int */;
-long var8 /* : Int */;
-long var_i /* var i: Int */;
-char* var9 /* : NativeString */;
-char* var_my_items /* var my_items: NativeString */;
-long var10 /* : Int */;
-long var_max /* var max: Int */;
-short int var11 /* : Bool */;
-short int var13 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-short int var14 /* : Bool */;
-long var15 /* : Int */;
-long var17 /* : Int */;
-long var18 /* : Int */;
-short int var20 /* : Bool */;
-int cltype21;
-int idtype22;
-const char* var_class_name23;
-long var24 /* : Int */;
-unsigned char var25 /* : Byte */;
-unsigned char var27 /* : Byte */;
-long var28 /* : Int */;
-long var30 /* : Int */;
-long var31 /* : Int */;
-short int var33 /* : Bool */;
-int cltype34;
-int idtype35;
-const char* var_class_name36;
-long var37 /* : Int */;
-long var38 /* : Int */;
-short int var40 /* : Bool */;
-int cltype41;
-int idtype42;
-const char* var_class_name43;
-long var44 /* : Int */;
-val* var46 /* : nullable Int */;
-val* var47 /* : nullable Int */;
-val* var49 /* : nullable Int */;
-long var50 /* : Int */;
-{
-{ /* Inline abstract_text#Text#hash_cache (self) on <self:FlatString> */
-var3 = self->attrs[COLOR_core__abstract_text__Text___hash_cache].val; /* _hash_cache on <self:FlatString> */
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-if (var1 == NULL) {
-var4 = 1; /* is null */
-} else {
-var4 = 0; /* arg is null but recv is not */
-}
-if (0) {
-{ /* Inline kernel#Int#== (var1,((val*)NULL)) on <var1:nullable Int> */
-var7 = 0; /* incompatible types Int vs. null; cannot be NULL */
-var5 = var7;
-goto RET_LABEL6;
-RET_LABEL6:(void)0;
-}
-var4 = var5;
-}
-if (var4){
-var_h = 5381l;
-var8 = self->attrs[COLOR_core__flat__FlatString___first_byte].l; /* _first_byte on <self:FlatString> */
-var_i = var8;
-var9 = self->attrs[COLOR_core__abstract_text__FlatText___items].str; /* _items on <self:FlatString> */
-var_my_items = var9;
-{
-var10 = core__flat___FlatText___last_byte(self);
-}
-var_max = var10;
-for(;;) {
-{
-{ /* Inline kernel#Int#<= (var_i,var_max) on <var_i:Int> */
-/* Covariant cast for argument 0 (i) <var_max:Int> isa OTHER */
-/* <var_max:Int> isa OTHER */
-var13 = 1; /* easy <var_max:Int> isa OTHER*/
-if (unlikely(!var13)) {
-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, 727);
-fatal_exit(1);
-}
-var14 = var_i <= var_max;
-var11 = var14;
-goto RET_LABEL12;
-RET_LABEL12:(void)0;
-}
-}
-if (var11){
-{
-{ /* Inline kernel#Int#<< (var_h,5l) on <var_h:Int> */
-var17 = var_h << 5l;
-var15 = var17;
-goto RET_LABEL16;
-RET_LABEL16:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#+ (var15,var_h) on <var15:Int> */
-/* Covariant cast for argument 0 (i) <var_h:Int> isa OTHER */
-/* <var_h:Int> isa OTHER */
-var20 = 1; /* easy <var_h:Int> isa OTHER*/
-if (unlikely(!var20)) {
-var_class_name23 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name23);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var24 = var15 + var_h;
-var18 = var24;
-goto RET_LABEL19;
-RET_LABEL19:(void)0;
-}
-}
-{
-{ /* Inline native#NativeString#[] (var_my_items,var_i) on <var_my_items:NativeString> */
-var27 = (unsigned char)((int)var_my_items[var_i]);
-var25 = var27;
-goto RET_LABEL26;
-RET_LABEL26:(void)0;
-}
-}
-{
-{ /* Inline kernel#Byte#to_i (var25) on <var25:Byte> */
-var30 = (long)var25;
-var28 = var30;
-goto RET_LABEL29;
-RET_LABEL29:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#+ (var18,var28) on <var18:Int> */
-/* Covariant cast for argument 0 (i) <var28:Int> isa OTHER */
-/* <var28:Int> isa OTHER */
-var33 = 1; /* easy <var28:Int> isa OTHER*/
-if (unlikely(!var33)) {
-var_class_name36 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name36);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var37 = var18 + var28;
-var31 = var37;
-goto RET_LABEL32;
-RET_LABEL32:(void)0;
-}
-}
-var_h = var31;
-{
-{ /* Inline kernel#Int#+ (var_i,1l) on <var_i:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var40 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var40)) {
-var_class_name43 = type_core__Int.name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "OTHER", var_class_name43);
-PRINT_ERROR(" (%s:%d)\n", FILE_core__kernel, 731);
-fatal_exit(1);
-}
-var44 = var_i + 1l;
-var38 = var44;
-goto RET_LABEL39;
-RET_LABEL39:(void)0;
-}
-}
-var_i = var38;
-} else {
-goto BREAK_label;
-}
-}
-BREAK_label: (void)0;
-{
-{ /* Inline abstract_text#Text#hash_cache= (self,var_h) on <self:FlatString> */
-var46 = (val*)(var_h<<2|1);
-self->attrs[COLOR_core__abstract_text__Text___hash_cache].val = var46; /* _hash_cache on <self:FlatString> */
-RET_LABEL45:(void)0;
-}
-}
-} else {
-}
-{
-{ /* Inline abstract_text#Text#hash_cache (self) on <self:FlatString> */
-var49 = self->attrs[COLOR_core__abstract_text__Text___hash_cache].val; /* _hash_cache on <self:FlatString> */
-var47 = var49;
-RET_LABEL48:(void)0;
-}
-}
-if (unlikely(var47 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Cast failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__flat, 590);
-fatal_exit(1);
-}
-var50 = (long)(var47)>>2;
-var = var50;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatString#substrings for (self: FlatString): Iterator[FlatText] */
-val* core___core__FlatString___core__abstract_text__Text__substrings(val* self) {
-val* var /* : Iterator[FlatText] */;
-val* var1 /* : FlatSubstringsIter */;
-var1 = NEW_core__flat__FlatSubstringsIter(&type_core__flat__FlatSubstringsIter);
-{
-((void(*)(val* self, val* p0))(var1->class->vft[COLOR_core__flat__FlatSubstringsIter__tgt_61d]))(var1, self); /* tgt= on <var1:FlatSubstringsIter>*/
-}
-{
-((void(*)(val* self))(var1->class->vft[COLOR_core__kernel__Object__init]))(var1); /* init on <var1:FlatSubstringsIter>*/
-}
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharReverseIterator#target for (self: FlatStringCharReverseIterator): FlatString */
-val* core__flat___core__flat__FlatStringCharReverseIterator___target(val* self) {
-val* var /* : FlatString */;
-val* var1 /* : FlatString */;
-var1 = self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___target].val; /* _target on <self:FlatStringCharReverseIterator> */
-if (unlikely(var1 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__flat, 599);
-fatal_exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharReverseIterator#target= for (self: FlatStringCharReverseIterator, FlatString) */
-void core__flat___core__flat__FlatStringCharReverseIterator___target_61d(val* self, val* p0) {
-self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___target].val = p0; /* _target on <self:FlatStringCharReverseIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringCharReverseIterator#curr_pos for (self: FlatStringCharReverseIterator): Int */
-long core__flat___core__flat__FlatStringCharReverseIterator___curr_pos(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharReverseIterator> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharReverseIterator#curr_pos= for (self: FlatStringCharReverseIterator, Int) */
-void core__flat___core__flat__FlatStringCharReverseIterator___curr_pos_61d(val* self, long p0) {
-self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___curr_pos].l = p0; /* _curr_pos on <self:FlatStringCharReverseIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringCharReverseIterator#is_ok for (self: FlatStringCharReverseIterator): Bool */
-short int core__flat___core__flat__FlatStringCharReverseIterator___core__abstract_collection__Iterator__is_ok(val* self) {
-short int var /* : Bool */;
-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 */;
-{
-{ /* Inline flat#FlatStringCharReverseIterator#curr_pos (self) on <self:FlatStringCharReverseIterator> */
-var3 = self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharReverseIterator> */
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#>= (var1,0l) on <var1:Int> */
-/* Covariant cast for argument 0 (i) <0l:Int> isa OTHER */
-/* <0l:Int> isa OTHER */
-var6 = 1; /* easy <0l: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 >= 0l;
-var4 = var7;
-goto RET_LABEL5;
-RET_LABEL5:(void)0;
-}
-}
-var = var4;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharReverseIterator#item for (self: FlatStringCharReverseIterator): Char */
-uint32_t core__flat___core__flat__FlatStringCharReverseIterator___core__abstract_collection__Iterator__item(val* self) {
-uint32_t var /* : Char */;
-val* var1 /* : FlatString */;
-val* var3 /* : FlatString */;
-long var4 /* : Int */;
-long var6 /* : Int */;
-uint32_t var7 /* : Char */;
-{
-{ /* Inline flat#FlatStringCharReverseIterator#target (self) on <self:FlatStringCharReverseIterator> */
-var3 = self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___target].val; /* _target on <self:FlatStringCharReverseIterator> */
-if (unlikely(var3 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__flat, 599);
-fatal_exit(1);
-}
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-{
-{ /* Inline flat#FlatStringCharReverseIterator#curr_pos (self) on <self:FlatStringCharReverseIterator> */
-var6 = self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharReverseIterator> */
-var4 = var6;
-RET_LABEL5:(void)0;
-}
-}
-{
-var7 = core__flat___FlatText___core__abstract_text__Text___91d_93d(var1, var4);
-}
-var = var7;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharReverseIterator#item for (self: Iterator[nullable Object]): nullable Object */
-val* VIRTUAL_core__flat___core__flat__FlatStringCharReverseIterator___core__abstract_collection__Iterator__item(val* self) {
-val* var /* : nullable Object */;
-uint32_t var1 /* : Char */;
-val* var2 /* : nullable Object */;
-var1 = core__flat___core__flat__FlatStringCharReverseIterator___core__abstract_collection__Iterator__item(self);
-var2 = (val*)((long)(var1)<<2|2);
-var = var2;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharReverseIterator#next for (self: FlatStringCharReverseIterator) */
-void core__flat___core__flat__FlatStringCharReverseIterator___core__abstract_collection__Iterator__next(val* self) {
-val* var_ /* var : FlatStringCharReverseIterator */;
-long var /* : Int */;
-long var2 /* : Int */;
-long var3 /* : Int */;
-short int var5 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var6 /* : Int */;
-var_ = self;
-{
-{ /* Inline flat#FlatStringCharReverseIterator#curr_pos (var_) on <var_:FlatStringCharReverseIterator> */
-var2 = var_->attrs[COLOR_core__flat__FlatStringCharReverseIterator___curr_pos].l; /* _curr_pos on <var_:FlatStringCharReverseIterator> */
-var = var2;
-RET_LABEL1:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#- (var,1l) on <var:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var5 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var5)) {
-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, 734);
-fatal_exit(1);
-}
-var6 = var - 1l;
-var3 = var6;
-goto RET_LABEL4;
-RET_LABEL4:(void)0;
-}
-}
-{
-{ /* Inline flat#FlatStringCharReverseIterator#curr_pos= (var_,var3) on <var_:FlatStringCharReverseIterator> */
-var_->attrs[COLOR_core__flat__FlatStringCharReverseIterator___curr_pos].l = var3; /* _curr_pos on <var_:FlatStringCharReverseIterator> */
-RET_LABEL7:(void)0;
-}
-}
-RET_LABEL:;
-}
-/* method flat#FlatStringCharReverseIterator#index for (self: FlatStringCharReverseIterator): Int */
-long core__flat___core__flat__FlatStringCharReverseIterator___core__abstract_collection__IndexedIterator__index(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-long var3 /* : Int */;
-{
-{ /* Inline flat#FlatStringCharReverseIterator#curr_pos (self) on <self:FlatStringCharReverseIterator> */
-var3 = self->attrs[COLOR_core__flat__FlatStringCharReverseIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharReverseIterator> */
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharReverseIterator#init for (self: FlatStringCharReverseIterator) */
-void core__flat___core__flat__FlatStringCharReverseIterator___core__kernel__Object__init(val* self) {
-{
-((void(*)(val* self))(self->class->vft[COLOR_core__flat___core__flat__FlatStringCharReverseIterator___core__kernel__Object__init]))(self); /* init on <self:FlatStringCharReverseIterator>*/
-}
-RET_LABEL:;
-}
-/* method flat#FlatStringCharIterator#target for (self: FlatStringCharIterator): FlatString */
-val* core__flat___core__flat__FlatStringCharIterator___target(val* self) {
-val* var /* : FlatString */;
-val* var1 /* : FlatString */;
-var1 = self->attrs[COLOR_core__flat__FlatStringCharIterator___target].val; /* _target on <self:FlatStringCharIterator> */
-if (unlikely(var1 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__flat, 616);
-fatal_exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharIterator#target= for (self: FlatStringCharIterator, FlatString) */
-void core__flat___core__flat__FlatStringCharIterator___target_61d(val* self, val* p0) {
-self->attrs[COLOR_core__flat__FlatStringCharIterator___target].val = p0; /* _target on <self:FlatStringCharIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringCharIterator#max for (self: FlatStringCharIterator): Int */
-long core__flat___core__flat__FlatStringCharIterator___max(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = self->attrs[COLOR_core__flat__FlatStringCharIterator___max].l; /* _max on <self:FlatStringCharIterator> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharIterator#max= for (self: FlatStringCharIterator, Int) */
-void core__flat___core__flat__FlatStringCharIterator___max_61d(val* self, long p0) {
-self->attrs[COLOR_core__flat__FlatStringCharIterator___max].l = p0; /* _max on <self:FlatStringCharIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringCharIterator#curr_pos for (self: FlatStringCharIterator): Int */
-long core__flat___core__flat__FlatStringCharIterator___curr_pos(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = self->attrs[COLOR_core__flat__FlatStringCharIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharIterator> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharIterator#curr_pos= for (self: FlatStringCharIterator, Int) */
-void core__flat___core__flat__FlatStringCharIterator___curr_pos_61d(val* self, long p0) {
-self->attrs[COLOR_core__flat__FlatStringCharIterator___curr_pos].l = p0; /* _curr_pos on <self:FlatStringCharIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringCharIterator#init for (self: FlatStringCharIterator) */
-void core__flat___core__flat__FlatStringCharIterator___core__kernel__Object__init(val* self) {
-val* var /* : FlatString */;
-val* var2 /* : FlatString */;
-long var3 /* : Int */;
-long var4 /* : Int */;
-short int var6 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var7 /* : Int */;
-{
-((void(*)(val* self))(self->class->vft[COLOR_core__flat___core__flat__FlatStringCharIterator___core__kernel__Object__init]))(self); /* init on <self:FlatStringCharIterator>*/
-}
-{
-{ /* Inline flat#FlatStringCharIterator#target (self) on <self:FlatStringCharIterator> */
-var2 = self->attrs[COLOR_core__flat__FlatStringCharIterator___target].val; /* _target on <self:FlatStringCharIterator> */
-if (unlikely(var2 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__flat, 616);
-fatal_exit(1);
-}
-var = var2;
-RET_LABEL1:(void)0;
-}
-}
-var3 = var->attrs[COLOR_core__abstract_text__FlatText___length].l; /* _length on <var:FlatString> */
-{
-{ /* Inline kernel#Int#- (var3,1l) on <var3: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, 734);
-fatal_exit(1);
-}
-var7 = var3 - 1l;
-var4 = var7;
-goto RET_LABEL5;
-RET_LABEL5:(void)0;
-}
-}
-{
-{ /* Inline flat#FlatStringCharIterator#max= (self,var4) on <self:FlatStringCharIterator> */
-self->attrs[COLOR_core__flat__FlatStringCharIterator___max].l = var4; /* _max on <self:FlatStringCharIterator> */
-RET_LABEL8:(void)0;
-}
-}
-RET_LABEL:;
-}
-/* method flat#FlatStringCharIterator#is_ok for (self: FlatStringCharIterator): Bool */
-short int core__flat___core__flat__FlatStringCharIterator___core__abstract_collection__Iterator__is_ok(val* self) {
-short int var /* : Bool */;
-long var1 /* : Int */;
-long var3 /* : Int */;
-long var4 /* : Int */;
-long var6 /* : Int */;
-short int var7 /* : Bool */;
-short int var9 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-short int var10 /* : Bool */;
-{
-{ /* Inline flat#FlatStringCharIterator#curr_pos (self) on <self:FlatStringCharIterator> */
-var3 = self->attrs[COLOR_core__flat__FlatStringCharIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharIterator> */
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-{
-{ /* Inline flat#FlatStringCharIterator#max (self) on <self:FlatStringCharIterator> */
-var6 = self->attrs[COLOR_core__flat__FlatStringCharIterator___max].l; /* _max on <self:FlatStringCharIterator> */
-var4 = var6;
-RET_LABEL5:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#<= (var1,var4) on <var1:Int> */
-/* Covariant cast for argument 0 (i) <var4:Int> isa OTHER */
-/* <var4:Int> isa OTHER */
-var9 = 1; /* easy <var4:Int> isa OTHER*/
-if (unlikely(!var9)) {
-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, 727);
-fatal_exit(1);
-}
-var10 = var1 <= var4;
-var7 = var10;
-goto RET_LABEL8;
-RET_LABEL8:(void)0;
-}
-}
-var = var7;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharIterator#item for (self: FlatStringCharIterator): Char */
-uint32_t core__flat___core__flat__FlatStringCharIterator___core__abstract_collection__Iterator__item(val* self) {
-uint32_t var /* : Char */;
-val* var1 /* : FlatString */;
-val* var3 /* : FlatString */;
-long var4 /* : Int */;
-long var6 /* : Int */;
-uint32_t var7 /* : Char */;
-{
-{ /* Inline flat#FlatStringCharIterator#target (self) on <self:FlatStringCharIterator> */
-var3 = self->attrs[COLOR_core__flat__FlatStringCharIterator___target].val; /* _target on <self:FlatStringCharIterator> */
-if (unlikely(var3 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__flat, 616);
-fatal_exit(1);
-}
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-{
-{ /* Inline flat#FlatStringCharIterator#curr_pos (self) on <self:FlatStringCharIterator> */
-var6 = self->attrs[COLOR_core__flat__FlatStringCharIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharIterator> */
-var4 = var6;
-RET_LABEL5:(void)0;
-}
-}
-{
-var7 = core__flat___FlatText___core__abstract_text__Text___91d_93d(var1, var4);
-}
-var = var7;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharIterator#item for (self: Iterator[nullable Object]): nullable Object */
-val* VIRTUAL_core__flat___core__flat__FlatStringCharIterator___core__abstract_collection__Iterator__item(val* self) {
-val* var /* : nullable Object */;
-uint32_t var1 /* : Char */;
-val* var2 /* : nullable Object */;
-var1 = core__flat___core__flat__FlatStringCharIterator___core__abstract_collection__Iterator__item(self);
-var2 = (val*)((long)(var1)<<2|2);
-var = var2;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharIterator#next for (self: FlatStringCharIterator) */
-void core__flat___core__flat__FlatStringCharIterator___core__abstract_collection__Iterator__next(val* self) {
-val* var_ /* var : FlatStringCharIterator */;
-long var /* : Int */;
-long var2 /* : Int */;
-long var3 /* : Int */;
-short int var5 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var6 /* : Int */;
-var_ = self;
-{
-{ /* Inline flat#FlatStringCharIterator#curr_pos (var_) on <var_:FlatStringCharIterator> */
-var2 = var_->attrs[COLOR_core__flat__FlatStringCharIterator___curr_pos].l; /* _curr_pos on <var_:FlatStringCharIterator> */
-var = var2;
-RET_LABEL1:(void)0;
-}
-}
-{
-{ /* Inline kernel#Int#+ (var,1l) on <var:Int> */
-/* Covariant cast for argument 0 (i) <1l:Int> isa OTHER */
-/* <1l:Int> isa OTHER */
-var5 = 1; /* easy <1l:Int> isa OTHER*/
-if (unlikely(!var5)) {
-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, 731);
-fatal_exit(1);
-}
-var6 = var + 1l;
-var3 = var6;
-goto RET_LABEL4;
-RET_LABEL4:(void)0;
-}
-}
-{
-{ /* Inline flat#FlatStringCharIterator#curr_pos= (var_,var3) on <var_:FlatStringCharIterator> */
-var_->attrs[COLOR_core__flat__FlatStringCharIterator___curr_pos].l = var3; /* _curr_pos on <var_:FlatStringCharIterator> */
-RET_LABEL7:(void)0;
-}
-}
-RET_LABEL:;
-}
-/* method flat#FlatStringCharIterator#index for (self: FlatStringCharIterator): Int */
-long core__flat___core__flat__FlatStringCharIterator___core__abstract_collection__IndexedIterator__index(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-long var3 /* : Int */;
-{
-{ /* Inline flat#FlatStringCharIterator#curr_pos (self) on <self:FlatStringCharIterator> */
-var3 = self->attrs[COLOR_core__flat__FlatStringCharIterator___curr_pos].l; /* _curr_pos on <self:FlatStringCharIterator> */
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharView#[] for (self: FlatStringCharView, Int): Char */
-uint32_t core__flat___core__flat__FlatStringCharView___core__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
-uint32_t var /* : Char */;
-long var_index /* var index: Int */;
-val* var1 /* : Text */;
-val* var3 /* : Text */;
-uint32_t var4 /* : Char */;
-var_index = p0;
-{
-{ /* Inline abstract_text#StringCharView#target (self) on <self:FlatStringCharView> */
-var3 = self->attrs[COLOR_core__abstract_text__StringCharView___target].val; /* _target on <self:FlatStringCharView> */
-if (unlikely(var3 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__abstract_text, 1138);
-fatal_exit(1);
-}
-var1 = var3;
-RET_LABEL2:(void)0;
-}
-}
-{
-var4 = core__flat___FlatText___core__abstract_text__Text___91d_93d(var1, var_index);
-}
-var = var4;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharView#[] for (self: SequenceRead[nullable Object], Int): nullable Object */
-val* VIRTUAL_core__flat___core__flat__FlatStringCharView___core__abstract_collection__SequenceRead___91d_93d(val* self, long p0) {
-val* var /* : nullable Object */;
-uint32_t var1 /* : Char */;
-val* var2 /* : nullable Object */;
-var1 = core__flat___core__flat__FlatStringCharView___core__abstract_collection__SequenceRead___91d_93d(self, p0);
-var2 = (val*)((long)(var1)<<2|2);
-var = var2;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharView#iterator_from for (self: FlatStringCharView, Int): IndexedIterator[Char] */
-val* core__flat___core__flat__FlatStringCharView___core__abstract_collection__SequenceRead__iterator_from(val* self, long p0) {
-val* var /* : IndexedIterator[Char] */;
-long var_start /* var start: Int */;
-val* var1 /* : FlatStringCharIterator */;
-val* var2 /* : Text */;
-val* var4 /* : Text */;
-var_start = p0;
-var1 = NEW_core__flat__FlatStringCharIterator(&type_core__flat__FlatStringCharIterator);
-{
-{ /* Inline abstract_text#StringCharView#target (self) on <self:FlatStringCharView> */
-var4 = self->attrs[COLOR_core__abstract_text__StringCharView___target].val; /* _target on <self:FlatStringCharView> */
-if (unlikely(var4 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__abstract_text, 1138);
-fatal_exit(1);
-}
-var2 = var4;
-RET_LABEL3:(void)0;
-}
-}
-{
-((void(*)(val* self, val* p0))(var1->class->vft[COLOR_core__flat__FlatStringCharIterator__target_61d]))(var1, var2); /* target= on <var1:FlatStringCharIterator>*/
-}
-{
-((void(*)(val* self, long p0))(var1->class->vft[COLOR_core__flat__FlatStringCharIterator__curr_pos_61d]))(var1, var_start); /* curr_pos= on <var1:FlatStringCharIterator>*/
-}
-{
-((void(*)(val* self))(var1->class->vft[COLOR_core__kernel__Object__init]))(var1); /* init on <var1:FlatStringCharIterator>*/
-}
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringCharView#reverse_iterator_from for (self: FlatStringCharView, Int): IndexedIterator[Char] */
-val* core__flat___core__flat__FlatStringCharView___core__abstract_collection__SequenceRead__reverse_iterator_from(val* self, long p0) {
-val* var /* : IndexedIterator[Char] */;
-long var_start /* var start: Int */;
-val* var1 /* : FlatStringCharReverseIterator */;
-val* var2 /* : Text */;
-val* var4 /* : Text */;
-var_start = p0;
-var1 = NEW_core__flat__FlatStringCharReverseIterator(&type_core__flat__FlatStringCharReverseIterator);
-{
-{ /* Inline abstract_text#StringCharView#target (self) on <self:FlatStringCharView> */
-var4 = self->attrs[COLOR_core__abstract_text__StringCharView___target].val; /* _target on <self:FlatStringCharView> */
-if (unlikely(var4 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__abstract_text, 1138);
-fatal_exit(1);
-}
-var2 = var4;
-RET_LABEL3:(void)0;
-}
-}
-{
-((void(*)(val* self, val* p0))(var1->class->vft[COLOR_core__flat__FlatStringCharReverseIterator__target_61d]))(var1, var2); /* target= on <var1:FlatStringCharReverseIterator>*/
-}
-{
-((void(*)(val* self, long p0))(var1->class->vft[COLOR_core__flat__FlatStringCharReverseIterator__curr_pos_61d]))(var1, var_start); /* curr_pos= on <var1:FlatStringCharReverseIterator>*/
-}
-{
-((void(*)(val* self))(var1->class->vft[COLOR_core__kernel__Object__init]))(var1); /* init on <var1:FlatStringCharReverseIterator>*/
-}
-var = var1;
-goto RET_LABEL;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringByteReverseIterator#target for (self: FlatStringByteReverseIterator): FlatString */
-val* core__flat___core__flat__FlatStringByteReverseIterator___target(val* self) {
-val* var /* : FlatString */;
-val* var1 /* : FlatString */;
-var1 = self->attrs[COLOR_core__flat__FlatStringByteReverseIterator___target].val; /* _target on <self:FlatStringByteReverseIterator> */
-if (unlikely(var1 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _target");
-PRINT_ERROR(" (%s:%d)\n", FILE_core__flat, 650);
-fatal_exit(1);
-}
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringByteReverseIterator#target= for (self: FlatStringByteReverseIterator, FlatString) */
-void core__flat___core__flat__FlatStringByteReverseIterator___target_61d(val* self, val* p0) {
-self->attrs[COLOR_core__flat__FlatStringByteReverseIterator___target].val = p0; /* _target on <self:FlatStringByteReverseIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringByteReverseIterator#target_items for (self: FlatStringByteReverseIterator): NativeString */
-char* core__flat___core__flat__FlatStringByteReverseIterator___target_items(val* self) {
-char* var /* : NativeString */;
-char* var1 /* : NativeString */;
-var1 = self->attrs[COLOR_core__flat__FlatStringByteReverseIterator___target_items].str; /* _target_items on <self:FlatStringByteReverseIterator> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringByteReverseIterator#target_items= for (self: FlatStringByteReverseIterator, NativeString) */
-void core__flat___core__flat__FlatStringByteReverseIterator___target_items_61d(val* self, char* p0) {
-self->attrs[COLOR_core__flat__FlatStringByteReverseIterator___target_items].str = p0; /* _target_items on <self:FlatStringByteReverseIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringByteReverseIterator#curr_pos for (self: FlatStringByteReverseIterator): Int */
-long core__flat___core__flat__FlatStringByteReverseIterator___curr_pos(val* self) {
-long var /* : Int */;
-long var1 /* : Int */;
-var1 = self->attrs[COLOR_core__flat__FlatStringByteReverseIterator___curr_pos].l; /* _curr_pos on <self:FlatStringByteReverseIterator> */
-var = var1;
-RET_LABEL:;
-return var;
-}
-/* method flat#FlatStringByteReverseIterator#curr_pos= for (self: FlatStringByteReverseIterator, Int) */
-void core__flat___core__flat__FlatStringByteReverseIterator___curr_pos_61d(val* self, long p0) {
-self->attrs[COLOR_core__flat__FlatStringByteReverseIterator___curr_pos].l = p0; /* _curr_pos on <self:FlatStringByteReverseIterator> */
-RET_LABEL:;
-}
-/* method flat#FlatStringByteReverseIterator#init for (self: FlatStringByteReverseIterator) */
-void core__flat___core__flat__FlatStringByteReverseIterator___core__kernel__Object__init(val* self) {
-val* var /* : FlatString */;
-val* var2 /* : FlatString */;
-val* var_tgt /* var tgt: FlatString */;
-char* var3 /* : NativeString */;
-val* var_ /* var : FlatStringByteReverseIterator */;
-long var5 /* : Int */;
-long var7 /* : Int */;
-long var8 /* : Int */;
-long var9 /* : Int */;
-short int var11 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-long var12 /* : Int */;
-{
-((void(*)(val* self))(self->class->vft[COLOR_core__flat___core__flat__FlatStringByteReverseIterator___core__kernel__Object__init]))(self); /* init on <self:FlatStringByteReverseIterator>*/
-}