-/* method parser_prod#ACrangeExpr#replace_child for (self: ACrangeExpr, ANode, nullable ANode) */
-void nitc__parser_prod___ACrangeExpr___nitc__parser_nodes__ANode__replace_child(val* self, val* p0, val* p1) {
-val* var_old_child /* var old_child: ANode */;
-val* var_new_child /* var new_child: nullable ANode */;
-val* var /* : TObra */;
-short int var1 /* : Bool */;
-val* var_other /* var other: nullable Object */;
-short int var3 /* : Bool */;
-short int var5 /* : Bool */;
-short int var6 /* : Bool */;
-int cltype;
-int idtype;
-const char* var_class_name;
-val* var7 /* : AExpr */;
-short int var8 /* : Bool */;
-short int var10 /* : Bool */;
-short int var12 /* : Bool */;
-short int var13 /* : Bool */;
-int cltype14;
-int idtype15;
-const char* var_class_name16;
-val* var17 /* : TDotdot */;
-short int var18 /* : Bool */;
-short int var20 /* : Bool */;
-short int var22 /* : Bool */;
-short int var23 /* : Bool */;
-int cltype24;
-int idtype25;
-const char* var_class_name26;
-val* var27 /* : AExpr */;
-short int var28 /* : Bool */;
-short int var30 /* : Bool */;
-short int var32 /* : Bool */;
-short int var33 /* : Bool */;
-int cltype34;
-int idtype35;
-const char* var_class_name36;
-val* var37 /* : TCbra */;
-short int var38 /* : Bool */;
-short int var40 /* : Bool */;
-short int var42 /* : Bool */;
-short int var43 /* : Bool */;
-int cltype44;
-int idtype45;
-const char* var_class_name46;
-val* var47 /* : nullable AAnnotations */;
-short int var48 /* : Bool */;
-short int var49 /* : Bool */;
-short int var51 /* : Bool */;
-short int var53 /* : Bool */;
-short int var54 /* : Bool */;
-int cltype55;
-int idtype56;
-const char* var_class_name57;
-var_old_child = p0;
-var_new_child = p1;
-var = self->attrs[COLOR_nitc__parser_nodes__ACrangeExpr___n_obra].val; /* _n_obra on <self:ACrangeExpr> */
-if (unlikely(var == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_obra");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 5996);
-fatal_exit(1);
-}
-{
-{ /* Inline kernel#Object#== (var,var_old_child) on <var:TObra> */
-var_other = var_old_child;
-{
-{ /* Inline kernel#Object#is_same_instance (var,var_other) on <var:TObra> */
-var5 = var == var_other;
-var3 = var5;
-goto RET_LABEL4;
-RET_LABEL4:(void)0;
-}
-}
-var1 = var3;
-goto RET_LABEL2;
-RET_LABEL2:(void)0;
-}
-}
-if (var1){
-/* <var_new_child:nullable ANode> isa TObra */
-cltype = type_nitc__TObra.color;
-idtype = type_nitc__TObra.id;
-if(var_new_child == NULL) {
-var6 = 0;
-} else {
-if(cltype >= var_new_child->type->table_size) {
-var6 = 0;
-} else {
-var6 = var_new_child->type->type_table[cltype] == idtype;
-}
-}
-if (unlikely(!var6)) {
-var_class_name = var_new_child == NULL ? "null" : var_new_child->type->name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TObra", var_class_name);
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 5997);
-fatal_exit(1);
-}
-{
-nitc__parser_prod___ACrangeExpr___n_obra_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_obra= on <self:ACrangeExpr>*/
-}
-goto RET_LABEL;
-} else {
-}
-var7 = self->attrs[COLOR_nitc__parser_nodes__ARangeExpr___n_expr].val; /* _n_expr on <self:ACrangeExpr> */
-if (unlikely(var7 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6000);
-fatal_exit(1);
-}
-{
-{ /* Inline kernel#Object#== (var7,var_old_child) on <var7:AExpr> */
-var_other = var_old_child;
-{
-{ /* Inline kernel#Object#is_same_instance (var7,var_other) on <var7:AExpr> */
-var12 = var7 == var_other;
-var10 = var12;
-goto RET_LABEL11;
-RET_LABEL11:(void)0;
-}
-}
-var8 = var10;
-goto RET_LABEL9;
-RET_LABEL9:(void)0;
-}
-}
-if (var8){
-/* <var_new_child:nullable ANode> isa AExpr */
-cltype14 = type_nitc__AExpr.color;
-idtype15 = type_nitc__AExpr.id;
-if(var_new_child == NULL) {
-var13 = 0;
-} else {
-if(cltype14 >= var_new_child->type->table_size) {
-var13 = 0;
-} else {
-var13 = var_new_child->type->type_table[cltype14] == idtype15;
-}
-}
-if (unlikely(!var13)) {
-var_class_name16 = var_new_child == NULL ? "null" : var_new_child->type->name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name16);
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6001);
-fatal_exit(1);
-}
-{
-nitc__parser_prod___ACrangeExpr___nitc__parser_nodes__ARangeExpr__n_expr_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_expr= on <self:ACrangeExpr>*/
-}
-goto RET_LABEL;
-} else {
-}
-var17 = self->attrs[COLOR_nitc__parser_nodes__ARangeExpr___n_dotdot].val; /* _n_dotdot on <self:ACrangeExpr> */
-if (unlikely(var17 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_dotdot");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6004);
-fatal_exit(1);
-}
-{
-{ /* Inline kernel#Object#== (var17,var_old_child) on <var17:TDotdot> */
-var_other = var_old_child;
-{
-{ /* Inline kernel#Object#is_same_instance (var17,var_other) on <var17:TDotdot> */
-var22 = var17 == var_other;
-var20 = var22;
-goto RET_LABEL21;
-RET_LABEL21:(void)0;
-}
-}
-var18 = var20;
-goto RET_LABEL19;
-RET_LABEL19:(void)0;
-}
-}
-if (var18){
-/* <var_new_child:nullable ANode> isa TDotdot */
-cltype24 = type_nitc__TDotdot.color;
-idtype25 = type_nitc__TDotdot.id;
-if(var_new_child == NULL) {
-var23 = 0;
-} else {
-if(cltype24 >= var_new_child->type->table_size) {
-var23 = 0;
-} else {
-var23 = var_new_child->type->type_table[cltype24] == idtype25;
-}
-}
-if (unlikely(!var23)) {
-var_class_name26 = var_new_child == NULL ? "null" : var_new_child->type->name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TDotdot", var_class_name26);
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6005);
-fatal_exit(1);
-}
-{
-nitc__parser_prod___ACrangeExpr___nitc__parser_nodes__ARangeExpr__n_dotdot_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_dotdot= on <self:ACrangeExpr>*/
-}
-goto RET_LABEL;
-} else {
-}
-var27 = self->attrs[COLOR_nitc__parser_nodes__ARangeExpr___n_expr2].val; /* _n_expr2 on <self:ACrangeExpr> */
-if (unlikely(var27 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_expr2");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6008);
-fatal_exit(1);
-}
-{
-{ /* Inline kernel#Object#== (var27,var_old_child) on <var27:AExpr> */
-var_other = var_old_child;
-{
-{ /* Inline kernel#Object#is_same_instance (var27,var_other) on <var27:AExpr> */
-var32 = var27 == var_other;
-var30 = var32;
-goto RET_LABEL31;
-RET_LABEL31:(void)0;
-}
-}
-var28 = var30;
-goto RET_LABEL29;
-RET_LABEL29:(void)0;
-}
-}
-if (var28){
-/* <var_new_child:nullable ANode> isa AExpr */
-cltype34 = type_nitc__AExpr.color;
-idtype35 = type_nitc__AExpr.id;
-if(var_new_child == NULL) {
-var33 = 0;
-} else {
-if(cltype34 >= var_new_child->type->table_size) {
-var33 = 0;
-} else {
-var33 = var_new_child->type->type_table[cltype34] == idtype35;
-}
-}
-if (unlikely(!var33)) {
-var_class_name36 = var_new_child == NULL ? "null" : var_new_child->type->name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "AExpr", var_class_name36);
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6009);
-fatal_exit(1);
-}
-{
-nitc__parser_prod___ACrangeExpr___nitc__parser_nodes__ARangeExpr__n_expr2_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_expr2= on <self:ACrangeExpr>*/
-}
-goto RET_LABEL;
-} else {
-}
-var37 = self->attrs[COLOR_nitc__parser_nodes__ACrangeExpr___n_cbra].val; /* _n_cbra on <self:ACrangeExpr> */
-if (unlikely(var37 == NULL)) {
-PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_cbra");
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6012);
-fatal_exit(1);
-}
-{
-{ /* Inline kernel#Object#== (var37,var_old_child) on <var37:TCbra> */
-var_other = var_old_child;
-{
-{ /* Inline kernel#Object#is_same_instance (var37,var_other) on <var37:TCbra> */
-var42 = var37 == var_other;
-var40 = var42;
-goto RET_LABEL41;
-RET_LABEL41:(void)0;
-}
-}
-var38 = var40;
-goto RET_LABEL39;
-RET_LABEL39:(void)0;
-}
-}
-if (var38){
-/* <var_new_child:nullable ANode> isa TCbra */
-cltype44 = type_nitc__TCbra.color;
-idtype45 = type_nitc__TCbra.id;
-if(var_new_child == NULL) {
-var43 = 0;
-} else {
-if(cltype44 >= var_new_child->type->table_size) {
-var43 = 0;
-} else {
-var43 = var_new_child->type->type_table[cltype44] == idtype45;
-}
-}
-if (unlikely(!var43)) {
-var_class_name46 = var_new_child == NULL ? "null" : var_new_child->type->name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "TCbra", var_class_name46);
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6013);
-fatal_exit(1);
-}
-{
-nitc__parser_prod___ACrangeExpr___n_cbra_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_cbra= on <self:ACrangeExpr>*/
-}
-goto RET_LABEL;
-} else {
-}
-var47 = self->attrs[COLOR_nitc__parser_nodes__Prod___n_annotations].val; /* _n_annotations on <self:ACrangeExpr> */
-if (var47 == NULL) {
-var48 = 0; /* <var_old_child:ANode> cannot be null */
-} else {
-{ /* Inline kernel#Object#== (var47,var_old_child) on <var47:nullable AAnnotations> */
-var_other = var_old_child;
-{
-{ /* Inline kernel#Object#is_same_instance (var47,var_other) on <var47:nullable AAnnotations(AAnnotations)> */
-var53 = var47 == var_other;
-var51 = var53;
-goto RET_LABEL52;
-RET_LABEL52:(void)0;
-}
-}
-var49 = var51;
-goto RET_LABEL50;
-RET_LABEL50:(void)0;
-}
-var48 = var49;
-}
-if (var48){
-/* <var_new_child:nullable ANode> isa nullable AAnnotations */
-cltype55 = type_nullable__nitc__AAnnotations.color;
-idtype56 = type_nullable__nitc__AAnnotations.id;
-if(var_new_child == NULL) {
-var54 = 1;
-} else {
-if(cltype55 >= var_new_child->type->table_size) {
-var54 = 0;
-} else {
-var54 = var_new_child->type->type_table[cltype55] == idtype56;
-}
-}
-if (unlikely(!var54)) {
-var_class_name57 = var_new_child == NULL ? "null" : var_new_child->type->name;
-PRINT_ERROR("Runtime error: Cast failed. Expected `%s`, got `%s`", "nullable AAnnotations", var_class_name57);
-PRINT_ERROR(" (%s:%d)\n", FILE_nitc__parser_prod, 6017);
-fatal_exit(1);
-}
-{
-nitc__parser_prod___ACrangeExpr___nitc__parser_nodes__Prod__n_annotations_61d(self, var_new_child); /* Direct call parser_prod#ACrangeExpr#n_annotations= on <self:ACrangeExpr>*/
-}
-goto RET_LABEL;
-} else {
-}
-RET_LABEL:;
-}
-/* method parser_prod#ACrangeExpr#n_obra= for (self: ACrangeExpr, TObra) */
-void nitc__parser_prod___ACrangeExpr___n_obra_61d(val* self, val* p0) {
-val* var_node /* var node: TObra */;
-var_node = p0;
-self->attrs[COLOR_nitc__parser_nodes__ACrangeExpr___n_obra].val = var_node; /* _n_obra on <self:ACrangeExpr> */
-{
-{ /* Inline parser_nodes#ANode#parent= (var_node,self) on <var_node:TObra> */
-var_node->attrs[COLOR_nitc__parser_nodes__ANode___parent].val = self; /* _parent on <var_node:TObra> */
-RET_LABEL1:(void)0;
-}
-}
-RET_LABEL:;
-}
-/* method parser_prod#ACrangeExpr#n_expr= for (self: ACrangeExpr, AExpr) */
-void nitc__parser_prod___ACrangeExpr___nitc__parser_nodes__ARangeExpr__n_expr_61d(val* self, val* p0) {