-val* var_nodearraylist1 /* var nodearraylist1: nullable Object */;
-val* var1 /* : Array[Object] */;
-val* var_listnode2 /* var listnode2: Array[Object] */;
-val* var_pexprnode1 /* var pexprnode1: nullable Object */;
-short int var2 /* : Bool */;
-short int var3 /* : Bool */;
-long var4 /* : Int */;
-long var5 /* : Int */;
-var_p = p0;
-var_node_list = ((val*)NULL);
-{
-var = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist1 = var;
-var1 = NEW_core__Array(&type_core__Array__core__Object);
-{
-core___core__Array___core__kernel__Object__init(var1); /* Direct call array#Array#init on <var1:Array[Object]>*/
-}
-var_listnode2 = var1;
-var_pexprnode1 = var_nodearraylist1;
-if (var_pexprnode1 == NULL) {
-var2 = 0; /* is null */
-} else {
-var2 = 1; /* arg is null and recv is not */
-}
-if (0) {
-var3 = ((short int(*)(val* self, val* p0))((((long)var_pexprnode1&3)?class_info[((long)var_pexprnode1&3)]:var_pexprnode1->class)->vft[COLOR_core__kernel__Object___33d_61d]))(var_pexprnode1, ((val*)NULL)); /* != on <var_pexprnode1:nullable Object>*/
-var2 = var3;
-}
-if (var2){
-{
-core___core__Array___core__abstract_collection__SimpleCollection__add(var_listnode2, var_pexprnode1); /* Direct call array#Array#add on <var_listnode2:Array[Object]>*/
-}
-} else {
-}
-var_node_list = var_listnode2;
-var4 = self->attrs[COLOR_nitc__parser_work__ReduceAction___goto].l; /* _goto on <self:ReduceAction389> */
-{
-var5 = nitc___nitc__Parser___go_to(var_p, var4);
-}
-{
-nitc___nitc__Parser___push(var_p, var5, var_node_list); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
-}
-RET_LABEL:;
-}
-/* method parser#ReduceAction390#action for (self: ReduceAction390, Parser) */
-void nitc__parser___nitc__parser__ReduceAction390___nitc__parser_work__ReduceAction__action(val* self, val* p0) {
-val* var_p /* var p: Parser */;
-val* var_node_list /* var node_list: nullable Object */;
-val* var /* : nullable Object */;
-val* var_nodearraylist2 /* var nodearraylist2: nullable Object */;
-val* var1 /* : nullable Object */;
-val* var_nodearraylist1 /* var nodearraylist1: nullable Object */;
-val* var2 /* : Array[Object] */;
-val* var_listnode3 /* var listnode3: Array[Object] */;
-val* var_pexprnode1 /* var pexprnode1: nullable Object */;
-val* var_listnode2 /* var listnode2: nullable Object */;
-short int var3 /* : Bool */;
-int cltype;
-int idtype;
-short int var4 /* : Bool */;
-short int var5 /* : Bool */;
-val* var6 /* : Array[Object] */;
-long var7 /* : Int */;
-long var8 /* : Int */;
-var_p = p0;
-var_node_list = ((val*)NULL);
-{
-var = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist2 = var;
-{
-var1 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist1 = var1;
-var2 = NEW_core__Array(&type_core__Array__core__Object);
-{
-core___core__Array___core__kernel__Object__init(var2); /* Direct call array#Array#init on <var2:Array[Object]>*/
-}
-var_listnode3 = var2;
-var_pexprnode1 = var_nodearraylist1;
-var_listnode2 = var_nodearraylist2;
-/* <var_listnode2:nullable Object> isa Array[Object] */
-cltype = type_core__Array__core__Object.color;
-idtype = type_core__Array__core__Object.id;
-if(var_listnode2 == NULL) {
-var3 = 0;
-} else {
-if(cltype >= (((long)var_listnode2&3)?type_info[((long)var_listnode2&3)]:var_listnode2->type)->table_size) {
-var3 = 0;
-} else {
-var3 = (((long)var_listnode2&3)?type_info[((long)var_listnode2&3)]:var_listnode2->type)->type_table[cltype] == idtype;
-}
-}
-if (unlikely(!var3)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10447);
-fatal_exit(1);
-}
-if (var_pexprnode1 == NULL) {
-var4 = 0; /* is null */
-} else {
-var4 = 1; /* arg is null and recv is not */
-}
-if (0) {
-var5 = ((short int(*)(val* self, val* p0))((((long)var_pexprnode1&3)?class_info[((long)var_pexprnode1&3)]:var_pexprnode1->class)->vft[COLOR_core__kernel__Object___33d_61d]))(var_pexprnode1, ((val*)NULL)); /* != on <var_pexprnode1:nullable Object>*/
-var4 = var5;
-}
-if (var4){
-{
-core___core__Array___core__abstract_collection__SimpleCollection__add(var_listnode3, var_pexprnode1); /* Direct call array#Array#add on <var_listnode3:Array[Object]>*/
-}
-} else {
-}
-{
-var6 = nitc__parser_work___nitc__parser_work__ReduceAction___concat(self, var_listnode3, var_listnode2);
-}
-var_listnode3 = var6;
-var_node_list = var_listnode3;
-var7 = self->attrs[COLOR_nitc__parser_work__ReduceAction___goto].l; /* _goto on <self:ReduceAction390> */
-{
-var8 = nitc___nitc__Parser___go_to(var_p, var7);
-}
-{
-nitc___nitc__Parser___push(var_p, var8, var_node_list); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
-}
-RET_LABEL:;
-}
-/* method parser#ReduceAction392#action for (self: ReduceAction392, Parser) */
-void nitc__parser___nitc__parser__ReduceAction392___nitc__parser_work__ReduceAction__action(val* self, val* p0) {
-val* var_p /* var p: Parser */;
-val* var_node_list /* var node_list: nullable Object */;
-val* var /* : nullable Object */;
-val* var_nodearraylist2 /* var nodearraylist2: nullable Object */;
-val* var1 /* : nullable Object */;
-val* var_nodearraylist1 /* var nodearraylist1: nullable Object */;
-val* var_pexprnode1 /* var pexprnode1: nullable Object */;
-long var2 /* : Int */;
-long var3 /* : Int */;
-var_p = p0;
-var_node_list = ((val*)NULL);
-{
-var = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist2 = var;
-{
-var1 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist1 = var1;
-var_pexprnode1 = var_nodearraylist1;
-var_node_list = var_pexprnode1;
-var2 = self->attrs[COLOR_nitc__parser_work__ReduceAction___goto].l; /* _goto on <self:ReduceAction392> */
-{
-var3 = nitc___nitc__Parser___go_to(var_p, var2);
-}
-{
-nitc___nitc__Parser___push(var_p, var3, var_node_list); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
-}
-RET_LABEL:;
-}
-/* method parser#ReduceAction394#action for (self: ReduceAction394, Parser) */
-void nitc__parser___nitc__parser__ReduceAction394___nitc__parser_work__ReduceAction__action(val* self, val* p0) {
-val* var_p /* var p: Parser */;
-val* var_node_list /* var node_list: nullable Object */;
-val* var /* : nullable Object */;
-val* var_nodearraylist7 /* var nodearraylist7: nullable Object */;
-val* var1 /* : nullable Object */;
-val* var_nodearraylist6 /* var nodearraylist6: nullable Object */;
-val* var2 /* : nullable Object */;
-val* var_nodearraylist5 /* var nodearraylist5: nullable Object */;
-val* var3 /* : nullable Object */;
-val* var_nodearraylist4 /* var nodearraylist4: nullable Object */;
-val* var4 /* : nullable Object */;
-val* var_nodearraylist3 /* var nodearraylist3: nullable Object */;
-val* var5 /* : nullable Object */;
-val* var_nodearraylist2 /* var nodearraylist2: nullable Object */;
-val* var6 /* : nullable Object */;
-val* var_nodearraylist1 /* var nodearraylist1: nullable Object */;
-val* var_tkwifnode2 /* var tkwifnode2: nullable Object */;
-short int var7 /* : Bool */;
-int cltype;
-int idtype;
-val* var_pexprnode3 /* var pexprnode3: nullable Object */;
-short int var8 /* : Bool */;
-int cltype9;
-int idtype10;
-val* var_tkwthennode4 /* var tkwthennode4: nullable Object */;
-short int var11 /* : Bool */;
-int cltype12;
-int idtype13;
-val* var_pexprnode5 /* var pexprnode5: nullable Object */;
-short int var14 /* : Bool */;
-int cltype15;
-int idtype16;
-val* var17 /* : AIfExpr */;
-val* var_pexprnode1 /* var pexprnode1: nullable AIfExpr */;
-long var18 /* : Int */;
-long var19 /* : Int */;
-var_p = p0;
-var_node_list = ((val*)NULL);
-{
-var = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist7 = var;
-{
-var1 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist6 = var1;
-{
-var2 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist5 = var2;
-{
-var3 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist4 = var3;
-{
-var4 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist3 = var4;
-{
-var5 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist2 = var5;
-{
-var6 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist1 = var6;
-var_tkwifnode2 = var_nodearraylist1;
-/* <var_tkwifnode2:nullable Object> isa nullable TKwif */
-cltype = type_nullable__nitc__TKwif.color;
-idtype = type_nullable__nitc__TKwif.id;
-if(var_tkwifnode2 == NULL) {
-var7 = 1;
-} else {
-if(cltype >= (((long)var_tkwifnode2&3)?type_info[((long)var_tkwifnode2&3)]:var_tkwifnode2->type)->table_size) {
-var7 = 0;
-} else {
-var7 = (((long)var_tkwifnode2&3)?type_info[((long)var_tkwifnode2&3)]:var_tkwifnode2->type)->type_table[cltype] == idtype;
-}
-}
-if (unlikely(!var7)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10481);
-fatal_exit(1);
-}
-var_pexprnode3 = var_nodearraylist3;
-/* <var_pexprnode3:nullable Object> isa nullable AExpr */
-cltype9 = type_nullable__nitc__AExpr.color;
-idtype10 = type_nullable__nitc__AExpr.id;
-if(var_pexprnode3 == NULL) {
-var8 = 1;
-} else {
-if(cltype9 >= (((long)var_pexprnode3&3)?type_info[((long)var_pexprnode3&3)]:var_pexprnode3->type)->table_size) {
-var8 = 0;
-} else {
-var8 = (((long)var_pexprnode3&3)?type_info[((long)var_pexprnode3&3)]:var_pexprnode3->type)->type_table[cltype9] == idtype10;
-}
-}
-if (unlikely(!var8)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10483);
-fatal_exit(1);
-}
-var_tkwthennode4 = var_nodearraylist5;
-/* <var_tkwthennode4:nullable Object> isa nullable TKwthen */
-cltype12 = type_nullable__nitc__TKwthen.color;
-idtype13 = type_nullable__nitc__TKwthen.id;
-if(var_tkwthennode4 == NULL) {
-var11 = 1;
-} else {
-if(cltype12 >= (((long)var_tkwthennode4&3)?type_info[((long)var_tkwthennode4&3)]:var_tkwthennode4->type)->table_size) {
-var11 = 0;
-} else {
-var11 = (((long)var_tkwthennode4&3)?type_info[((long)var_tkwthennode4&3)]:var_tkwthennode4->type)->type_table[cltype12] == idtype13;
-}
-}
-if (unlikely(!var11)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10485);
-fatal_exit(1);
-}
-var_pexprnode5 = var_nodearraylist7;
-/* <var_pexprnode5:nullable Object> isa nullable AExpr */
-cltype15 = type_nullable__nitc__AExpr.color;
-idtype16 = type_nullable__nitc__AExpr.id;
-if(var_pexprnode5 == NULL) {
-var14 = 1;
-} else {
-if(cltype15 >= (((long)var_pexprnode5&3)?type_info[((long)var_pexprnode5&3)]:var_pexprnode5->type)->table_size) {
-var14 = 0;
-} else {
-var14 = (((long)var_pexprnode5&3)?type_info[((long)var_pexprnode5&3)]:var_pexprnode5->type)->type_table[cltype15] == idtype16;
-}
-}
-if (unlikely(!var14)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10487);
-fatal_exit(1);
-}
-var17 = NEW_nitc__AIfExpr(&type_nitc__AIfExpr);
-{
-nitc__parser_prod___AIfExpr___init_aifexpr(var17, var_tkwifnode2, var_pexprnode3, var_tkwthennode4, var_pexprnode5, ((val*)NULL), ((val*)NULL)); /* Direct call parser_prod#AIfExpr#init_aifexpr on <var17:AIfExpr>*/
-}
-var_pexprnode1 = var17;
-var_node_list = var_pexprnode1;
-var18 = self->attrs[COLOR_nitc__parser_work__ReduceAction___goto].l; /* _goto on <self:ReduceAction394> */
-{
-var19 = nitc___nitc__Parser___go_to(var_p, var18);
-}
-{
-nitc___nitc__Parser___push(var_p, var19, var_node_list); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
-}
-RET_LABEL:;
-}
-/* method parser#ReduceAction395#action for (self: ReduceAction395, Parser) */
-void nitc__parser___nitc__parser__ReduceAction395___nitc__parser_work__ReduceAction__action(val* self, val* p0) {
-val* var_p /* var p: Parser */;
-val* var_node_list /* var node_list: nullable Object */;
-val* var /* : nullable Object */;
-val* var_nodearraylist3 /* var nodearraylist3: nullable Object */;
-val* var1 /* : nullable Object */;
-val* var_nodearraylist2 /* var nodearraylist2: nullable Object */;
-val* var2 /* : nullable Object */;
-val* var_nodearraylist1 /* var nodearraylist1: nullable Object */;
-val* var3 /* : Array[Object] */;
-val* var_listnode4 /* var listnode4: Array[Object] */;
-val* var_listnode2 /* var listnode2: nullable Object */;
-short int var4 /* : Bool */;
-int cltype;
-int idtype;
-val* var_pexprnode3 /* var pexprnode3: nullable Object */;
-short int var5 /* : Bool */;
-int cltype6;
-int idtype7;
-val* var8 /* : Array[Object] */;
-short int var9 /* : Bool */;
-short int var10 /* : Bool */;
-val* var_other /* var other: nullable Object */;
-short int var12 /* : Bool */;
-short int var13 /* : Bool */;
-val* var_pannotationsnode5 /* var pannotationsnode5: nullable Object */;
-short int var14 /* : Bool */;
-int cltype15;
-int idtype16;
-val* var17 /* : ASuperstringExpr */;
-val* var_pexprnode1 /* var pexprnode1: nullable ASuperstringExpr */;
-long var18 /* : Int */;
-long var19 /* : Int */;
-var_p = p0;
-var_node_list = ((val*)NULL);
-{
-var = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist3 = var;
-{
-var1 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist2 = var1;
-{
-var2 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist1 = var2;
-var3 = NEW_core__Array(&type_core__Array__core__Object);
-{
-core___core__Array___core__kernel__Object__init(var3); /* Direct call array#Array#init on <var3:Array[Object]>*/
-}
-var_listnode4 = var3;
-var_listnode2 = var_nodearraylist1;
-/* <var_listnode2:nullable Object> isa Array[Object] */
-cltype = type_core__Array__core__Object.color;
-idtype = type_core__Array__core__Object.id;
-if(var_listnode2 == NULL) {
-var4 = 0;
-} else {
-if(cltype >= (((long)var_listnode2&3)?type_info[((long)var_listnode2&3)]:var_listnode2->type)->table_size) {
-var4 = 0;
-} else {
-var4 = (((long)var_listnode2&3)?type_info[((long)var_listnode2&3)]:var_listnode2->type)->type_table[cltype] == idtype;
-}
-}
-if (unlikely(!var4)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10510);
-fatal_exit(1);
-}
-var_pexprnode3 = var_nodearraylist2;
-/* <var_pexprnode3:nullable Object> isa nullable AExpr */
-cltype6 = type_nullable__nitc__AExpr.color;
-idtype7 = type_nullable__nitc__AExpr.id;
-if(var_pexprnode3 == NULL) {
-var5 = 1;
-} else {
-if(cltype6 >= (((long)var_pexprnode3&3)?type_info[((long)var_pexprnode3&3)]:var_pexprnode3->type)->table_size) {
-var5 = 0;
-} else {
-var5 = (((long)var_pexprnode3&3)?type_info[((long)var_pexprnode3&3)]:var_pexprnode3->type)->type_table[cltype6] == idtype7;
-}
-}
-if (unlikely(!var5)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10512);
-fatal_exit(1);
-}
-{
-var8 = nitc__parser_work___nitc__parser_work__ReduceAction___concat(self, var_listnode4, var_listnode2);
-}
-var_listnode4 = var8;
-if (var_pexprnode3 == NULL) {
-var9 = 0; /* is null */
-} else {
-var9 = 1; /* arg is null and recv is not */
-}
-if (0) {
-{ /* Inline kernel#Object#!= (var_pexprnode3,((val*)NULL)) on <var_pexprnode3:nullable Object(nullable AExpr)> */
-var_other = ((val*)NULL);
-{
-var12 = ((short int(*)(val* self, val* p0))(var_pexprnode3->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_pexprnode3, var_other); /* == on <var_pexprnode3:nullable AExpr(AExpr)>*/
-}
-var13 = !var12;
-var10 = var13;
-goto RET_LABEL11;
-RET_LABEL11:(void)0;
-}
-var9 = var10;
-}
-if (var9){
-{
-core___core__Array___core__abstract_collection__SimpleCollection__add(var_listnode4, var_pexprnode3); /* Direct call array#Array#add on <var_listnode4:Array[Object]>*/
-}
-} else {
-}
-var_pannotationsnode5 = var_nodearraylist3;
-/* <var_pannotationsnode5:nullable Object> isa nullable AAnnotations */
-cltype15 = type_nullable__nitc__AAnnotations.color;
-idtype16 = type_nullable__nitc__AAnnotations.id;
-if(var_pannotationsnode5 == NULL) {
-var14 = 1;
-} else {
-if(cltype15 >= (((long)var_pannotationsnode5&3)?type_info[((long)var_pannotationsnode5&3)]:var_pannotationsnode5->type)->table_size) {
-var14 = 0;
-} else {
-var14 = (((long)var_pannotationsnode5&3)?type_info[((long)var_pannotationsnode5&3)]:var_pannotationsnode5->type)->type_table[cltype15] == idtype16;
-}
-}
-if (unlikely(!var14)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10518);
-fatal_exit(1);
-}
-var17 = NEW_nitc__ASuperstringExpr(&type_nitc__ASuperstringExpr);
-{
-nitc__parser_prod___ASuperstringExpr___init_asuperstringexpr(var17, var_listnode4, var_pannotationsnode5); /* Direct call parser_prod#ASuperstringExpr#init_asuperstringexpr on <var17:ASuperstringExpr>*/
-}
-var_pexprnode1 = var17;
-var_node_list = var_pexprnode1;
-var18 = self->attrs[COLOR_nitc__parser_work__ReduceAction___goto].l; /* _goto on <self:ReduceAction395> */
-{
-var19 = nitc___nitc__Parser___go_to(var_p, var18);
-}
-{
-nitc___nitc__Parser___push(var_p, var19, var_node_list); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
-}
-RET_LABEL:;
-}
-/* method parser#ReduceAction396#action for (self: ReduceAction396, Parser) */
-void nitc__parser___nitc__parser__ReduceAction396___nitc__parser_work__ReduceAction__action(val* self, val* p0) {
-val* var_p /* var p: Parser */;
-val* var_node_list /* var node_list: nullable Object */;
-val* var /* : nullable Object */;
-val* var_nodearraylist4 /* var nodearraylist4: nullable Object */;
-val* var1 /* : nullable Object */;
-val* var_nodearraylist3 /* var nodearraylist3: nullable Object */;
-val* var2 /* : nullable Object */;
-val* var_nodearraylist2 /* var nodearraylist2: nullable Object */;
-val* var3 /* : nullable Object */;
-val* var_nodearraylist1 /* var nodearraylist1: nullable Object */;
-val* var4 /* : Array[Object] */;
-val* var_listnode5 /* var listnode5: Array[Object] */;
-val* var_listnode2 /* var listnode2: nullable Object */;
-short int var5 /* : Bool */;
-int cltype;
-int idtype;
-val* var_listnode3 /* var listnode3: nullable Object */;
-short int var6 /* : Bool */;
-int cltype7;
-int idtype8;
-val* var_pexprnode4 /* var pexprnode4: nullable Object */;
-short int var9 /* : Bool */;
-int cltype10;
-int idtype11;
-val* var12 /* : Array[Object] */;
-val* var13 /* : Array[Object] */;
-short int var14 /* : Bool */;
-short int var15 /* : Bool */;
-val* var_other /* var other: nullable Object */;
-short int var17 /* : Bool */;
-short int var18 /* : Bool */;
-val* var_pannotationsnode6 /* var pannotationsnode6: nullable Object */;
-short int var19 /* : Bool */;
-int cltype20;
-int idtype21;
-val* var22 /* : ASuperstringExpr */;
-val* var_pexprnode1 /* var pexprnode1: nullable ASuperstringExpr */;
-long var23 /* : Int */;
-long var24 /* : Int */;
-var_p = p0;
-var_node_list = ((val*)NULL);
-{
-var = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist4 = var;
-{
-var1 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist3 = var1;
-{
-var2 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist2 = var2;
-{
-var3 = nitc___nitc__Parser___pop(var_p);
-}
-var_nodearraylist1 = var3;
-var4 = NEW_core__Array(&type_core__Array__core__Object);
-{
-core___core__Array___core__kernel__Object__init(var4); /* Direct call array#Array#init on <var4:Array[Object]>*/
-}
-var_listnode5 = var4;
-var_listnode2 = var_nodearraylist1;
-/* <var_listnode2:nullable Object> isa Array[Object] */
-cltype = type_core__Array__core__Object.color;
-idtype = type_core__Array__core__Object.id;
-if(var_listnode2 == NULL) {
-var5 = 0;
-} else {
-if(cltype >= (((long)var_listnode2&3)?type_info[((long)var_listnode2&3)]:var_listnode2->type)->table_size) {
-var5 = 0;
-} else {
-var5 = (((long)var_listnode2&3)?type_info[((long)var_listnode2&3)]:var_listnode2->type)->type_table[cltype] == idtype;
-}
-}
-if (unlikely(!var5)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10538);
-fatal_exit(1);
-}
-var_listnode3 = var_nodearraylist2;
-/* <var_listnode3:nullable Object> isa Array[Object] */
-cltype7 = type_core__Array__core__Object.color;
-idtype8 = type_core__Array__core__Object.id;
-if(var_listnode3 == NULL) {
-var6 = 0;
-} else {
-if(cltype7 >= (((long)var_listnode3&3)?type_info[((long)var_listnode3&3)]:var_listnode3->type)->table_size) {
-var6 = 0;
-} else {
-var6 = (((long)var_listnode3&3)?type_info[((long)var_listnode3&3)]:var_listnode3->type)->type_table[cltype7] == idtype8;
-}
-}
-if (unlikely(!var6)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10540);
-fatal_exit(1);
-}
-var_pexprnode4 = var_nodearraylist3;
-/* <var_pexprnode4:nullable Object> isa nullable AExpr */
-cltype10 = type_nullable__nitc__AExpr.color;
-idtype11 = type_nullable__nitc__AExpr.id;
-if(var_pexprnode4 == NULL) {
-var9 = 1;
-} else {
-if(cltype10 >= (((long)var_pexprnode4&3)?type_info[((long)var_pexprnode4&3)]:var_pexprnode4->type)->table_size) {
-var9 = 0;
-} else {
-var9 = (((long)var_pexprnode4&3)?type_info[((long)var_pexprnode4&3)]:var_pexprnode4->type)->type_table[cltype10] == idtype11;
-}
-}
-if (unlikely(!var9)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10542);
-fatal_exit(1);
-}
-{
-var12 = nitc__parser_work___nitc__parser_work__ReduceAction___concat(self, var_listnode5, var_listnode2);
-}
-var_listnode5 = var12;
-{
-var13 = nitc__parser_work___nitc__parser_work__ReduceAction___concat(self, var_listnode5, var_listnode3);
-}
-var_listnode5 = var13;
-if (var_pexprnode4 == NULL) {
-var14 = 0; /* is null */
-} else {
-var14 = 1; /* arg is null and recv is not */
-}
-if (0) {
-{ /* Inline kernel#Object#!= (var_pexprnode4,((val*)NULL)) on <var_pexprnode4:nullable Object(nullable AExpr)> */
-var_other = ((val*)NULL);
-{
-var17 = ((short int(*)(val* self, val* p0))(var_pexprnode4->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_pexprnode4, var_other); /* == on <var_pexprnode4:nullable AExpr(AExpr)>*/
-}
-var18 = !var17;
-var15 = var18;
-goto RET_LABEL16;
-RET_LABEL16:(void)0;
-}
-var14 = var15;
-}
-if (var14){
-{
-core___core__Array___core__abstract_collection__SimpleCollection__add(var_listnode5, var_pexprnode4); /* Direct call array#Array#add on <var_listnode5:Array[Object]>*/
-}
-} else {
-}
-var_pannotationsnode6 = var_nodearraylist4;
-/* <var_pannotationsnode6:nullable Object> isa nullable AAnnotations */
-cltype20 = type_nullable__nitc__AAnnotations.color;
-idtype21 = type_nullable__nitc__AAnnotations.id;
-if(var_pannotationsnode6 == NULL) {
-var19 = 1;
-} else {
-if(cltype20 >= (((long)var_pannotationsnode6&3)?type_info[((long)var_pannotationsnode6&3)]:var_pannotationsnode6->type)->table_size) {
-var19 = 0;
-} else {
-var19 = (((long)var_pannotationsnode6&3)?type_info[((long)var_pannotationsnode6&3)]:var_pannotationsnode6->type)->type_table[cltype20] == idtype21;
-}
-}
-if (unlikely(!var19)) {
-PRINT_ERROR("Runtime error: %s", "Assert failed");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser, 10549);
-fatal_exit(1);
-}
-var22 = NEW_nitc__ASuperstringExpr(&type_nitc__ASuperstringExpr);
-{
-nitc__parser_prod___ASuperstringExpr___init_asuperstringexpr(var22, var_listnode5, var_pannotationsnode6); /* Direct call parser_prod#ASuperstringExpr#init_asuperstringexpr on <var22:ASuperstringExpr>*/
-}
-var_pexprnode1 = var22;
-var_node_list = var_pexprnode1;
-var23 = self->attrs[COLOR_nitc__parser_work__ReduceAction___goto].l; /* _goto on <self:ReduceAction396> */
-{
-var24 = nitc___nitc__Parser___go_to(var_p, var23);
-}
-{
-nitc___nitc__Parser___push(var_p, var24, var_node_list); /* Direct call parser_work#Parser#push on <var_p:Parser>*/
-}
-RET_LABEL:;
-}
-/* method parser#ReduceAction397#action for (self: ReduceAction397, Parser) */
-void nitc__parser___nitc__parser__ReduceAction397___nitc__parser_work__ReduceAction__action(val* self, val* p0) {
-val* var_p /* var p: Parser */;
-val* var_node_list /* var node_list: nullable Object */;
-val* var /* : nullable Object */;
-val* var_nodearraylist4 /* var nodearraylist4: nullable Object */;